499998
518656300 387194409 932155140 704140568 931940655 967872302 973976343 848476777 728643062 224713708 326986785 395015863 953503739 597976578 877137158 230793861 7592846 605195208 829267216 556395484 752252231 140064367 557280131 346221491 724603392 898053386 589964217 955190626 742009246 257603551 74194241 121363579 983766130 86570999 380383253 62182792 459471845 850938696 187535283 951013155 852946694 200429554 272975703 75663261 959165592 347592310 610303113 442421470 916011554 639762312 580269945 940061469 848308316 355272350 724906051 754764680 707551376 726031692 721557117 302884829 223593235 968267502 697123868 703452841 983030257 511493901 335587208 942452074 609128522 736111155 70966690 484593384 480472697 500151801 47810496 923409637 830988458 483074971 347558826 663390178 14330212 973798350 409877078 959808270 324669028 515808272 21489936 782415676 186252212 731064627 273089065 557633470 240137305 827874517 549019668 964897873 920096813 786006054 805098761 485288141 529487659 987473898 587947785 881230872 877334885 898595074 863032868 395707433 50333471 816748289 942150991 810954136 942927581 531164973 770989576 524617484 620534580 400996972 354172522 655042460 679879604 361094481 539352153 480490135 882846144 903139265 956548701 927269327 146501011 943699263 877590741 973095572 798927745 650727420 244670545 630429198 871661869 806217740 180998612 816701587 312978162 210271246 82826301 902102905 439614415 31638504 159667024 884709540 552898358 978625875 721571063 389067789 111821835 631913510 552572067 145792244 471765834 794631266 36247390 451398807 35649789 358074394 794076994 3734879 754364039 851257613 104364398 142088837 489385136 217390556 612477472 140885057 117484026 622270044 911585001 836875175 272491265 746147410 371157815 698218358 290842923 593410836 827423956 225720502 958955119 193064258 281153982 177174799 917343804 956647743 867987649 365660178 314007535 424144651 783279013 764591523 963729903 573204829 397844521 290527530 909179940 487364709 95570173 628484710 919192273 621788988 825405587 857830238 379305692 860346224 670989236 628727070 901939014 153057225 240466050 805141724 670989236 794076171 564884701 937009172 201533706 935059569 84052231 526310434 141789419 404116720 847516727 81706479 928512909 363111601 441879966 738854528 22379778 684305918 671163419 728676394 735608275 877434603 944985707 58399040 717054798 731881742 887464707 731529505 698625825 508668167 592690741 346524793 819282906 27541316 625157812 692938718 642320652 769912206 849434806 83625779 109201271 819513476 910633272 959861720 933526803 154262850 911640339 468416817 772698075 538100295 283539171 48615608 702471415 769882966 916202205 839423402 996180787 364172165 656030546 963638461 751735552 885592196 892971990 900907502 947232263 271547144 573114554 982820430 552302157 727326857 942853781 725915283 775035744 995695910 176861655 857066511 297370071 30449661 140654764 500423808 195461372 246616549 695945468 570491433 348534216 987905276 684895697 771694564 61095411 749998022 178761161 932109232 804654974 737812024 513451450 860683656 395787728 807006708 947232733 948714746 997165153 799886827 742000401 577086487 687081978 255250753 152631585 324805152 99773532 874153094 825521974 990180510 935717771 570181850 753300771 892430090 815643206 390278591 382759250 816991777 983268340 631334450 796290508 969132768 446163543 128951550 393053140 40218743 894655102 158436807 974544759 151875859 961483397 796944681 618627969 919611905 334278950 621806677 515371094 243130519 685599787 285163297 419344538 662588567 591654359 22965266 511608870 989225757 560169248 534172512 175463994 803292800 972106103 300704649 862818777 964847727 101811422 615618250 173575610 806074920 347915563 921468047 819818355 517513581 173062506 289756850 263376379 910256871 289417124 927207683 107894810 828671997 831575934 747505542 575975081 858996101 965956873 75463631 327134164 705889763 930289481 828546355 268153701 313324907 610778307 278089478 316178423 44527895 893755362 282258655 709727691 714374809 822229371 149654408 237502048 831884350 805436292 729147005 450732772 78244727 1501219 609098017 378180706 371408559 725447570 459941536 701557695 684085904 457984726 759424718 398303059 745128581 773664287 7496879 779418429 688661320 798776705 305546176 46124322 923204395 256682293 813660123 250351942 865215190 821199088 808088823 881344790 313708708 679241428 606173116 517017219 239709701 801184270 785927048 882570030 73169367 892648445 394901557 316074413 40480674 566233804 891945134 45209965 226145992 986512744 935018503 794501442 463046432 381848588 94913371 718715972 945204548 44739869 462687123 866870674 283964547 746051486 436776620 739212923 675565632 586389992 372607181 719844382 376828036 996618406 210155731 738120605 632443678 328649484 942631493 502111555 148360878 891893286 864918230 881091761 915498061 416984304 474278506 791397172 453850204 481381656 613370066 655916216 829748834 903958727 837312777 418728430 816150967 512094111 892465507 906066775 16704945 843905480 729743792 49641590 680660263 144050825 32594888 31107141 78998042 827439756 789145338 465462480 670989236 789317471 886871976 296808166 738070970 411148696 965941419 297312549 5897001 688170629 165784785 277308511 193429861 626147657 90359540 715198639 815358926 17091305 932757152 840702194 423523817 513013798 869327290 192763715 450251167 334172581 287219197 424731519 946793300 408791960 970096566 278591636 217484373 324741433 309020697 610382822 694243864 845940394 700047135 211463865 909547679 917036705 683349450 241907492 533284374 702113629 670989236 565657950 108453787 561110528 815902522 105966138 982054469 984987158 275454036 736917761 648720813 17002443 828464019 808219763 431077649 698818253 425286142 5985826 766505316 404339048 747693297 695717208 907179856 72337965 53432796 38864416 315678320 423088895 810140382 815531211 81322605 446921744 545174913 199431452 511351493 389151239 749950357 842110621 990818642 672854693 875456651 119038037 610459377 158442541 977227008 47578359 730755125 950596744 424043356 393346964 554280171 869812744 427391576 749327575 838070727 934153088 670989236 695764976 857032904 585185059 316604636 671921027 253385852 116759665 444662218 915102837 35754376 730888957 712144817 751592138 134550693 857102634 922589531 812215884 402037311 555802569 454847030 968645102 586612137 746641132 92689633 42814869 681403689 740528896 843272612 388827793 610735848 931173489 987335987 167252355 321668286 670989236 148459373 839332778 904341777 89390397 776459539 769149918 808691287 912663432 715673626 994441049 285185738 844189225 851478942 449924044 979195666 790505330 335678286 183495708 506661996 810595634 860089227 648590104 785555570 565424043 961941352 836480105 97807666 145557848 909960770 333693899 263121384 74821169 782910026 706148204 823210408 720201815 376327813 729190162 940550065 58282909 357522943 723190661 771637810 107406340 42990582 702796558 160381255 857103149 643790220 670989236 555191956 166968047 332777312 637027652 18079969 254078963 385258255 650173312 784041839 335377471 437813614 670179639 872663987 279739012 486303235 905072273 307668232 942932489 662797469 315464812 318733330 335559832 516843764 747907344 964981961 939337976 233280223 821785657 365946621 52290642 100923900 186069322 637656492 359478950 218506682 285009136 868631154 780341522 942729478 968749057 182097295 615090068 595674936 603093211 833334330 920046352 459459596 575227119 842194341 146308762 267321202 327518509 695676593 227820253 900739461 747680212 979080442 840831233 352424631 170795723 881796812 753860713 377310601 650144430 416968432 525992365 452065793 137137701 982254624 360704400 211735337 689975541 413496042 813965647 919054891 856760910 551554721 695113732 348440514 682637692 58236507 421465850 251248198 683391871 523885435 280866010 339250364 461364108 451566922 855674856 168874162 992851276 999172955 882654105 719606660 726663393 704476418 683595269 38938415 569081514 68341803 380198748 963767876 910692433 474010850 765226799 935335819 726353283 635612555 676984595 752258842 903985532 487517596 726895904 611344305 967180363 871317259 197640342 40021478 315279509 882560631 540249771 808157082 594986244 539780367 979175725 670989236 623538753 687642479 349376225 744235479 504959969 788810337 85098127 277034846 706850965 960252182 922502413 910989577 287208707 28907891 382110873 718663238 3656634 466778621 700278102 760582849 712582458 928517384 70727121 859622760 825774667 838835616 226174996 486372481 688756161 941666670 320572149 535666476 673561556 267224644 61091903 797224000 699385641 381173902 75569031 243751423 49598643 599351201 892307439 924701241 594650140 362636694 846640325 843722975 101459450 960314967 767283332 921758466 305916500 427369911 781576052 938405191 805274606 712618433 968609719 415675366 87833699 383059851 712685858 57747369 694092825 872497346 983381031 537800062 869680953 911086448 784575656 818431189 797394937 737842817 372118770 912709063 243415542 879860232 778525689 838135474 251293980 870177377 172329484 939203525 705042492 902441706 969021338 507168169 114246024 944468613 778604733 768360634 834006824 876993978 12335736 617851915 163595070 814330240 874379705 506389265 838223422 11116405 910664447 763744936 28261713 451992505 763761635 682239857 999876929 823462174 155071860 829701732 285751785 412544417 856101313 808034581 91326259 928180281 693479533 760512221 554099762 283546013 806659593 384259311 730744878 309074346 58954128 570512896 962523064 776848607 772187993 495183842 413173011 192265321 401393406 121506825 252725636 906232669 869213370 958501261 617373687 437189225 208272468 943502512 126782334 429759312 897854002 936704967 803435830 919653145 270760693 95742067 930952610 793416060 743311874 762742957 719452306 842242388 816996154 978886204 806513775 582316430 400174128 670989236 639769863 877078725 836516747 857906507 832969336 525722913 791973290 56755117 705004397 403739615 819630348 584169419 720014237 687883559 129799947 307483049 52923603 847732566 860012224 57323189 740605426 234926699 732623132 348232770 70439874 3918258 613895204 412115528 836773696 283940181 687693545 483118301 682354774 136626277 592828312 456418278 730762431 629831419 378789791 324844906 899468582 833083931 107227589 321222896 390763878 706030682 814265603 241765626 929992027 745126253 135564324 259220332 769158620 783617002 899092101 679473468 458818618 428211597 606382109 885990249 579182086 766206036 264940562 670989236 727754671 85626742 361916106 647195806 980014624 691723041 599603547 873277056 697616675 884443422 582872344 752161052 411060830 202851938 998211963 347823046 802786672 626267365 296471174 666830902 174051317 206513792 789875485 916748240 400534306 259761392 483164370 904251745 650763152 337431750 909001082 493561497 769906233 687859694 901598763 300319610 854747897 825893978 847835693 784431995 427619796 840580179 556230231 750766636 670989236 532343349 689894191 42968360 962047541 806367172 778136431 682155843 994272209 73494206 60439245 396956193 893204830 475067785 773041096 635697324 588089061 67210954 828745124 742129470 646493470 809453260 734983354 734763120 706314323 398646408 553353085 641715186 902641272 895167482 543531198 381298126 961000078 347878069 288681817 659943890 853749253 537499297 70880205 888414568 897651196 692704447 769838073 959111498 930250648 634879985 41736054 918014722 779940965 83305823 534945673 806736776 820319164 457115599 915145703 489549202 24110401 997376095 523689811 887941015 930184728 72811745 977201115 291737790 201916288 795909197 516308039 116304513 343979703 118297243 977739561 475158654 569232906 558127789 659517155 613315212 615535716 115501045 912411715 819900799 761752310 199600630 869422740 233150713 558021290 873921545 134941429 773359420 678030879 496414820 382983002 768197901 204497590 180945715 761590969 209397580 25169308 61062164 523754811 215045161 725527915 421269515 238186790 699874031 414406317 911702658 154848224 461463463 842223378 249824361 627768366 294279616 757333088 600913454 887776150 430024395 824336176 651498329 826027015 526084274 658423099 125483386 839781073 958018813 429373461 950422360 677538320 99498538 791060628 646501850 962029472 772637290 18281889 986731195 233308407 788119006 812289907 908653735 688038220 616625599 805429300 110431515 962297305 32356251 842742807 275555522 136245217 158965863 995577257 316729777 967146924 877426583 870127588 597267863 738280853 810335548 235663338 781574090 164662529 377920645 674202506 807656464 722068139 611929606 773861333 860353045 994673857 461555946 758251147 716100264 797536278 125536610 705204149 211365302 502578125 211515308 849825889 704467114 23198836 893212098 725510445 892398172 939047906 912318347 894743075 767297205 210209123 996740987 699423963 768337229 977584838 369921037 10553454 842590094 917781170 889124216 972830431 736269033 24916978 680865428 879916759 471848279 127652492 418718072 144054831 459870381 358916561 103123028 905641260 443211302 883775051 583343698 499507372 604946206 962037106 174675634 458775256 997710061 675611628 311345146 261199256 298633422 137879235 641690885 881023541 155970265 998488481 822949372 157644465 646840065 804144565 623825146 602416141 613810566 991138650 766631439 242602861 536475104 688585396 942738388 704016084 390012228 235945078 576529525 738828500 330021480 647521502 914739193 489195123 774249491 742723444 843769059 469007903 684747005 988934180 510787955 955366034 944228871 126519044 993863236 95273450 752900664 561104964 244099058 147382041 78923890 924731755 783796833 776571227 37237370 384275100 850699807 944314980 361579303 61310546 504324937 847391759 61704470 270932018 790764769 864432284 150354458 112415355 373722061 108707252 339201165 176642147 853760479 775123553 822748282 76409799 696779796 79528633 883055849 644007969 938391938 720502717 879908027 671207223 910889964 230921464 622920868 204533499 144629282 867827022 621479352 824743767 866892735 892354087 838283844 935880371 767346163 717956187 962560716 549892207 670989236 187114023 842908684 950901682 961687776 935387400 744298294 798545223 670989236 791501515 685094323 493880227 787187691 176631001 133715917 664569273 745042565 566441748 192211448 998145327 975720690 773808871 831906936 148935597 898716631 965167046 216952108 921579834 837748374 91272635 926533896 212288555 519238296 300847616 695974688 603702259 396355696 929985622 664134310 710321788 850629180 740047735 789972026 454573828 807479836 140801149 358449780 691989759 253231529 176371633 848208351 365596472 477622675 299492393 917164419 208325984 635183394 988645983 66375449 913343267 891215060 689368322 696227020 437335116 309499425 671056026 712164170 819188972 273014288 322774459 815418829 963158552 396544694 961922619 982981177 995822458 591945111 456273671 973760021 959736567 730016375 791685751 149493208 65129627 356480187 684243300 528022062 543483314 987194234 21541906 745974282 236274813 47302495 698401303 937359767 920514813 163244214 687766694 776487021 866712554 75362713 650511530 846769394 401230733 671135476 942520082 805412694 728675593 158981550 997604947 224196852 769437989 789117893 132966761 818186298 441019513 296232754 776779006 478191679 958445040 858145874 756394666 518777303 761436120 864906713 4166511 860645035 75327876 997508438 517233196 501875092 726818387 423815995 382153356 493710189 34490042 333311816 853553539 396793163 737619755 682128340 419919039 865170836 210060621 865267111 210836360 337773613 552592414 76574407 282864189 70404307 221065875 138432427 49836764 780865076 609522195 715262478 995874773 876067845 720802774 582697892 210686838 729364107 539234016 992590762 209402086 336092568 450813237 924482746 756226566 875876324 380820981 914033812 661700986 715901347 786060934 82966552 448498251 558690111 508799952 836105190 206471494 817812236 664655524 670989236 675764085 971622546 744857962 71033963 161926132 612035566 374084392 18164630 803290572 350631826 480447038 190237179 819317450 792546585 764651073 863664802 614529346 912771690 731833719 171576215 972558099 570910741 977547857 339606194 707052752 434884098 697250190 723095775 669296547 704505981 972047177 751014959 129602795 831723743 769953509 13447478 977292218 639943625 472310115 999342873 889638898 725888410 274879871 996524949 706774806 45313128 241060201 877618060 727280753 817470943 671891095 915396090 46072190 710101604 520559497 742820256 934124201 971646507 924240910 748344265 641181065 998065976 791178255 390936184 641119055 736648039 633458970 777594396 976113064 956617230 92476228 618791550 992242953 214963778 233660544 847729406 93131660 185190765 275533572 898961471 24129954 911435118 97465181 808212066 932969125 219981672 637348900 733629792 670989236 754270715 868850709 16909044 221742666 983749406 963127290 166090729 425790940 250080573 213600929 834127597 760283713 812411343 236699732 275637837 677200063 224086209 793207757 451820194 921372745 32388340 553464889 848352099 586930491 603285277 495169776 846179991 982188393 617980295 691051424 844631222 797670019 514988813 20030240 677158250 496249201 179460821 485524588 785566364 953341701 850678724 425949394 732528970 954132618 3718172 333486591 870686696 900490534 189206257 676312103 444108172 215481536 967839567 320759811 996796205 380546849 782521410 268234631 747968642 226870543 762900632 745508937 423550657 788712289 675541949 707108504 988622642 925824672 966180172 225619445 787576289 290241106 526472504 92674581 774630871 50342287 188484942 62480601 716671578 142409757 992100296 894838945 863277895 987197168 889794832 181389220 16000182 829652612 380445130 785645976 238715045 849847467 31069447 35045956 861866459 828149978 595808394 123854161 548866712 898559999 403531143 661370748 749086060 256208980 31553314 801442044 361633448 519820779 770135468 943319607 735183913 915375634 499790721 141728734 691003637 884785104 997050423 665999169 916920102 207486962 35531115 628230816 730448378 977207936 464769381 115597075 246052634 866695221 416696185 379775984 912490497 443238522 873393733 667665774 672028910 766539169 217448780 952112516 572977833 426157613 837088721 813078385 252862458 729630418 401690426 891841016 688995585 59428262 197823219 738286936 977283663 121344245 676278691 270957939 471840699 593143181 125897272 701282882 454054900 683109233 689293429 830273784 281646658 306503440 227003901 290055666 759441953 316322920 613757254 732368249 491883923 670070702 950384047 809773581 628672284 753994054 45682858 974080118 816615993 81011973 856741510 819682852 766453299 460548095 380488938 796857691 567583679 156211863 17128628 585769233 847673162 350352709 386872250 537680890 843053382 223332486 929823931 558958699 204348731 867812126 985039447 809150404 670989236 581182146 845615702 340422876 550205352 141279666 87210846 350128326 965569185 722400784 10052984 289290840 379223921 110954135 684888489 187673884 753130760 604359362 45928169 723185599 903048086 726443060 66398116 200489150 707420084 846595809 364688590 355993700 852421106 155550688 687340700 327162521 971967543 496739392 683858579 735639804 52120628 585564397 397883057 159101670 76962003 362343768 30481926 843979455 802332386 256675782 249652376 501751964 201856727 681624578 523415365 60844409 795584961 833443041 497923521 995032782 794595347 902349313 506149326 991743531 102370108 872701160 664013093 698786407 350162513 135038389 299791060 490810615 694245450 41815401 81332353 872772666 309199786 702271307 857556227 392205762 829820229 815528567 985576744 32714043 718097441 98584415 126935279 846594720 343283894 212482026 845183123 961408855 890142779 151674387 321540624 864706064 689132988 568671302 423950256 535951266 841185912 420610664 139865864 487970886 765695597 791518199 837889257 975429773 322558600 256358820 727823391 115335512 949860729 900018029 442578470 999617924 796771334 84635660 88721591 816016521 778027653 863080123 960189153 216938070 311155368 681916093 184533156 745046657 244550037 279202981 221839633 964890546 510426575 305146450 837487780 897785109 901736151 923951886 736176623 868913832 42879912 500322535 674866853 570717347 445851758 423975006 671328755 501620215 875478243 251988204 187185899 349366031 757652659 443846545 333431319 244894788 871582339 403518199 692507738 869739153 710561284 496418484 335960146 236590525 883576652 292398861 114411685 791451564 921365781 260505208 906355680 562475693 617369937 546081993 685503489 470421253 800288143 271352278 987592725 685516902 980557615 833654912 434368750 920307697 702311838 472800033 127232973 764413368 848426968 37916910 983717601 594357464 968373338 554100616 217115162 421330341 960556790 724863579 676554293 924092408 231306285 983639490 418162925 801432417 337556167 907080436 712110975 782346759 561848616 755437299 803477464 489712443 155376881 611776967 354275397 949048092 678579387 597176291 410167272 704937240 450077916 740889301 818736694 759736339 716580844 378394290 931589585 446603724 365939799 870957978 490470523 398041031 918633746 903757180 131632233 680796983 674498903 681421383 433213564 802221652 765989488 983437063 892096157 222166442 409881241 702248227 430881223 652096538 812723834 935116711 380306991 317483268 45775005 187055143 546811188 540912812 276952458 670989236 159191536 513393181 954927605 85092199 816024571 364157497 244376782 859632287 821473217 991986946 341298285 431405809 619238848 870117625 194810057 976337542 815814383 429101400 976718105 26763846 732987800 670989236 710874862 194043160 241671668 362330107 133835013 753802474 191606162 470118090 21828091 767062330 908419079 757088182 881255606 685208987 361736077 380323953 958333193 227689902 381817895 897146063 338767138 706259417 742895231 562231396 325854466 614502804 882551410 731654435 670989236 973634532 884338471 401718701 52775250 399597531 483687264 741553049 818216690 311854495 710911388 766754226 868315026 923105402 379653316 165303583 228641954 86596750 732954840 408413195 924888331 995693754 864859747 844670902 862726527 248491883 756554262 256333791 294962746 394842447 683002422 211540176 467773826 899256702 643541681 828894712 739818633 983150264 970684906 797282053 865442851 138890876 970878038 958218489 753664826 658622357 572424689 24062767 670989236 135317482 323831457 527471244 899056711 672641938 244648032 701258663 985267204 742334973 910005302 18706046 872059195 171938690 724732359 909384780 204569573 878843722 504561372 764180744 948644656 832224312 266623314 754368657 670989236 68950309 154897609 463456786 155876576 562898474 473758015 562612530 883563685 715363266 332070748 928015069 532912206 801508977 352219745 927116434 930720247 493434980 909611315 813450185 410346630 701605178 467469766 150760473 452501935 411759821 652850442 655671252 915261759 901461181 337323960 903757716 460808147 427536474 889985563 695095174 670989236 471010357 866682004 871781089 717455415 687955172 742093297 431032151 929452186 80465688 441538241 463276005 222879840 817496195 1154777 670989236 665761438 790638604 670989236 273189548 755341281 955570188 718845473 940499319 202062439 892199293 435576486 144988991 876293807 959728992 288299706 745809143 172007136 436207203 816749378 803551498 363892187 955395959 905388027 818446430 893247413 676097224 427092689 716865416 108898003 965205956 487341355 571002205 628626547 755208746 776685471 659195936 166255191 238313256 893068967 683459112 463387244 859314000 817185806 800752591 710888462 718733860 436548597 728849231 955240759 990947097 313325807 117893383 797843715 160025769 849678199 937071855 625817695 907566009 989744822 481980763 909735117 905204857 851692757 866736413 45553106 132331737 167180196 803383246 557112253 83134850 721016790 924330795 881014204 783202303 813034430 990251854 84816561 729048746 941627105 375007472 673837231 948067396 961280512 693928503 866303817 496591527 374038818 750104646 668161718 114987945 792521242 713619228 418117701 822856036 610928252 334787053 519117157 302550761 343958393 305007225 720910076 937121586 616724661 962114451 902912347 156020868 847266414 926357964 539729151 152360746 53686424 722976728 587410538 754165932 96675662 191673926 847830143 941244574 456610811 131769940 147865953 22163874 82593593 565284388 921470663 79031997 947468710 960626882 706530580 763549551 111771320 299040638 5937204 741275044 989733903 548369398 753961290 302378092 586769367 89538173 593632326 818495571 223558291 464183051 711242094 766999273 749478557 683869951 969169291 776697513 835493197 718858715 275340907 157443578 966584952 661584161 862358950 736488645 783790708 748236800 192427464 342477878 423322995 878140645 926330139 275178736 118258264 991344053 789690570 820935198 643923941 764585055 727684098 936179829 884693616 747428679 594433959 970161995 842966655 436682171 708466609 939513979 729457032 829297457 570430723 575120728 945946666 746236356 660528328 861101285 440562058 894363392 959201970 755112665 567679982 707358791 390899739 84411496 661241519 674582844 341786153 865739817 433552685 134472007 953315867 876739829 141027212 312976639 179463324 740159478 334395637 796323275 867199346 262639412 591869616 830455097 193591055 636017272 485318817 329895177 682344376 720970926 228380773 733807384 828288822 133912600 379865603 314607265 995875644 111983460 377014306 25356402 677550937 772185276 890281463 887013454 785755673 393358534 353565094 667258720 894091721 530332943 756996861 588759187 859501772 728532110 291990314 236533477 762819901 462204020 568543279 843784953 517060171 188113884 18736738 281387631 129573969 487703526 955044294 489662070 268351863 814667776 893839025 848043590 998477725 800998642 488150210 348488229 967258909 847793391 108460626 719628944 909058876 648836236 515736182 866645244 457272001 107293459 46885592 723293922 35178409 355520145 696543609 296964973 334072250 799953776 593708229 275611472 619018415 551084089 298100484 921165878 831934785 431974325 727184391 919233408 985159499 825749629 975304682 886002388 710032054 702695533 79609024 844484111 822896161 724346371 310758707 312234242 676979730 442273573 903656335 374697984 808220284 383148302 951767456 687370759 340509217 736911109 730239824 542624385 670989236 731474328 740639656 139536972 921674818 716870320 789696553 290767344 182652850 516461038 439387714 534685963 474208937 700510867 353094639 511071273 769065437 821099111 709754908 268472992 967008769 798667983 907817938 41631828 999871314 160719595 985404610 919727289 620141305 715401763 750517914 223461022 576494807 803415991 442090655 500825990 460305308 517587375 937581618 478885428 986060142 576261451 247277958 456817696 462735472 341905014 198114400 645313440 670989236 865268811 234384381 403687092 997506205 30901854 293077153 956732431 174606212 488225340 623131685 361711181 921838032 936657968 826547684 110557859 962979214 980272806 152605834 723028803 167606369 706973832 597725676 359881375 198518076 26782834 245740040 662062762 573516609 24068794 18606724 363965006 458282982 160238584 241614811 974700845 416580953 116861311 465005931 253828367 704902364 321323260 529552033 423818088 915532748 111296659 790462905 462375565 955282314 427162091 782546188 586215564 736006810 988454941 221566223 78162325 670989236 62070070 856434396 862653407 810117072 652395794 593302165 635310622 450552609 388120958 979669653 603686628 834481601 911768280 884526570 324199800 348188832 591913600 886888796 493504844 258152701 881709156 126336284 626581617 908042679 103633250 983980542 414372568 190440662 851953737 410295537 382278619 557912611 844207590 960192154 296994304 806836487 661862746 833305962 301026179 954763948 286003799 189779063 780183345 35178864 796909419 664116425 713585109 756690756 867007929 542771790 598590663 971047805 397247107 727887801 113322077 836868096 571197917 590911717 721719544 664329273 809696029 635374347 401450027 19663194 996568248 174490934 910835264 198934429 987363817 667793903 46429476 981530942 562259485 901669792 153259328 695164122 686501518 680909894 579971981 845459458 509382734 723789490 226110512 38274401 267185113 669600007 922070506 36843209 635046834 232413047 370726490 609070230 432771300 832124655 955332383 532442320 844282319 653403018 330758366 769983411 309689670 583086511 944862142 443336932 860297922 439184903 424120014 10223668 565047701 568752158 704078840 762146583 387174354 857985806 803332122 28047405 965104170 7560227 165969019 820479326 112516895 546217562 932923863 445808704 683713479 483944075 79099675 444095445 970106789 670989236 683443357 693453790 406947387 411806064 662208884 797643956 784303384 831559510 825164204 761419085 729998042 483055650 974833235 247003629 355660298 371570190 792472335 761055687 647301604 898235749 619882083 889899827 97095997 372696137 476728041 549366645 417899574 832018945 588422150 999385221 419768125 677225651 955842585 391533755 950844249 472450318 623601023 809494997 799209912 666593932 978088228 382925369 896663217 728324355 137851149 992518441 50473607 302213309 912530893 474646463 966958623 808824087 807072229 986615601 230771458 25329049 661203014 958412669 921951645 877660953 514323241 693130375 195123240 966589429 909842786 772801865 32836917 825028773 485097423 3892146 47786981 190789066 264781313 751728203 618089697 915814104 968841187 678687497 941485231 853684431 320449410 126056067 817526919 991410472 107269821 984835644 927649971 741964945 826465246 933813419 987971025 107657706 39003648 670989236 782354855 110605192 630347621 46754320 549380732 302249069 323036849 215271050 9336046 830661776 864220735 672851694 298786566 466714543 78325461 732274051 888917517 882346881 133847874 715550805 658767680 142694310 126371926 188956760 334671432 430658411 843016213 979445388 503967382 45182759 25938153 475814567 306316940 148272568 962160119 619621306 497845254 936438482 624301014 800448557 797152122 855058944 256184746 310360303 945484293 791260348 420110119 727117312 862197800 449387289 128158300 719795361 611422349 841790178 318257457 774609621 275011120 230872529 925766913 768668671 679110638 69017307 507499317 287082889 497784401 947706089 73744215 238786518 673468003 213789243 145720166 403134652 604551174 290136190 415185584 702956626 434219556 918645557 806248927 155318263 921385493 930590797 954054567 590008450 922488313 996886463 501173003 554422197 688965854 673670824 743717149 863379197 94904699 696650400 921203755 555348124 533004935 106490511 772518991 223009750 354996709 19920350 171416254 172368189 778476351 837418759 906007453 168470571 843646315 603666560 144903746 752387793 479277311 45419158 564137946 736976637 499032721 888286036 392912268 923278796 993633779 924454221 670989236 88357678 671362902 949622598 492274550 711049853 767813271 487901245 266860073 838973509 761445501 715896327 841813796 500526741 213401320 295869094 294300164 767203709 513347984 861492187 189884237 199516381 757534930 612953901 754951025 961110702 755412501 779174689 157960924 752654040 531225618 168849433 454506393 677801820 671128440 164142548 719426379 239143153 65134135 646072674 694472488 61300870 100390736 969516755 691979886 49795325 625272963 701764896 979383533 819361604 330253809 845245279 496411562 9990115 578059573 725522976 867996139 129995913 863387996 651513682 942214514 985110468 408470133 867917550 468202477 792991904 764429027 911048361 454752837 808524914 870343812 452065020 428521420 866199578 818424780 669063803 192144573 700171247 969620878 592149477 543066297 329764760 764074531 971035164 994633439 884170319 653433417 27662321 539784446 101511363 996089199 689436788 746088283 373184607 739800387 306021211 199469785 805989463 621789216 479124489 516786650 184549995 743108845 396608519 527707420 951452833 939631320 779437426 901299964 788370786 900609353 984379884 471911205 565372667 347621711 891405925 738663917 241367453 584373115 544487742 277446108 173632412 427221188 991125691 726070560 510889422 567369259 952792925 953418852 910227180 781149831 514256923 708981371 123314112 297502216 558884950 346914892 991281325 544021246 699804395 932998495 823288700 292071267 844587620 65006277 160401208 675844230 968518372 816318212 262034423 451190420 345721603 411309269 29610373 678103348 625914017 924033575 512103708 250657418 529877316 994851315 740948326 810584589 681950757 670989236 113628942 889762880 488580523 748222591 496902969 936311678 44769742 821801472 260279967 6350772 240375650 149530253 924310853 108518925 723704069 988885949 823434015 971614084 642570137 655461419 736770532 966353863 838826933 678379442 595273217 277105873 799301430 821774409 837940394 802988263 958755740 212158041 779672142 877979190 148714966 53743416 969996681 794185816 64970118 892557320 862777842 799714954 825158505 913698409 811164141 771140800 549671162 595288159 684480185 334597745 939628383 650535838 786245661 654250167 151974980 497020639 491316682 915771796 33914283 140876941 447214039 753642147 695267840 286102745 741156142 977511368 832949506 990015487 248291351 624585112 670989236 600587388 317991102 253777963 447180217 429376813 81700010 55200948 9493223 598553440 195725568 982810869 842940075 878435152 892103800 760536824 700172442 524669811 564490470 881814520 480086313 915525812 809045630 671445111 129278091 841533372 789367034 35963485 601703175 101876419 813861854 393689994 534674264 559089149 745203107 339256921 868465346 759134357 610706092 144673589 881226100 858489584 719325749 725190636 920356507 826116606 479860270 29665469 145903571 454601732 420596115 703824711 425559973 767230728 719506388 233631150 649680231 918799640 807256527 472590608 243567752 55385600 384678830 873018332 690268269 653564503 205630511 397813765 544063669 858077796 940093647 447323980 813629789 850726253 422098511 645692973 822326281 201587966 925525291 795228911 775163152 206776001 839844266 707548781 67281721 426369871 297195796 178358384 685909365 793930636 750097244 567088176 939785291 602188279 671437793 988859072 757906968 689443067 583886512 762261495 50200454 832117620 983513426 638059950 13485466 459505141 448812498 566235623 662255016 913742976 960096605 857812507 521181792 159624462 866289606 66704095 215334945 556629999 861874657 276233842 299902425 140858070 233283574 100638314 954505646 923419748 91067327 890792449 522323251 19669124 964901753 738071591 30893578 125918894 26530182 766131641 945382335 860113102 459388093 662192598 811847560 550857095 782461873 897557354 887877804 592410292 984084391 867324394 717547833 143137231 625217953 332257026 857093555 617766053 785124754 824530085 809167158 850999638 959560145 432382012 776658047 75715655 505400866 596127120 84728615 106319887 399138775 113824913 898502328 901960382 400527590 69915681 402103474 936096724 675322532 854402309 778184516 336225277 455328370 913436869 582373028 74375958 476318460 792189143 893318695 703404719 428296802 427242630 128747659 165161339 720694477 74410420 759925555 363028134 964970781 794063970 59028303 699225267 870968663 305090959 973455295 839440564 240458238 167680510 909109129 989036028 610440708 623567812 487359035 325959500 634761157 972065635 812844336 100690444 841952467 835330191 708275542 153815052 204991246 725614957 827450742 818195 779298565 977761897 807180461 803486253 928992707 700862160 938342077 796550193 844536002 63539488 586483746 313656175 136475530 616061457 422522816 820020318 784312157 783900602 884955909 677365536 823651781 689146900 822383025 933668516 591826961 924257674 993058045 787177545 722960271 36509568 168144370 661111152 60786694 853340282 176224741 535314028 415501090 314965279 591516800 345366089 554758589 670989236 295006904 457631739 973441434 767957402 726114237 677904027 631734934 444234867 171431457 488862422 364420975 112238224 632627616 231868000 868698934 926030018 867442910 732391321 707071767 455235507 617665295 734939741 683428521 951381864 295441783 855478247 898774733 898211525 21658442 121296879 584538654 806869596 749231818 940228551 732860820 893316449 76397880 510465384 170986826 427383611 623436679 543051800 256674891 245875498 892296991 29117494 919440077 775695879 965141573 778693666 720944074 211569824 801377513 63821564 670989236 893178206 562197148 72933946 800115375 969502939 195794946 971234231 598616459 958405788 247190563 792323829 127812550 381104436 863191365 271061622 670989236 235315123 509000148 670989236 968040626 980415639 662359972 157205785 674652107 227828300 722902059 999836165 809426008 185605489 499303701 834602194 384854154 943150810 98905321 510636352 279072098 750547430 462430887 714148657 823281253 699999515 721761321 66468468 617782446 900352688 92572887 311883378 456927775 791732397 361752019 968754436 741229650 741371660 915593697 662351434 854041223 195663389 435353992 858594114 968327544 670989236 193318049 196991181 806283786 266647307 962026372 763192218 597547348 948570506 444930897 690905969 29210205 745815506 886211207 687514044 670989236 505207971 783455852 965787578 419537023 896062435 411595027 891451019 966751396 997716469 652640893 858217093 733222361 979848844 852826202 407103796 671329111 273288839 805326883 704904997 437114258 921350793 958997945 501221419 592920916 384479254 612047478 732808654 665199900 37852087 547074991 902240745 809729112 973155562 849634259 802054395 458416567 632338196 591209958 775659637 846242016 764815380 928274894 775400879 553534290 175735008 815904236 846914757 353875343 150107045 714029322 443087974 936178717 965122978 163713643 421198050 496328949 969075024 726464879 983546260 317980028 949460895 162440733 829219939 386083755 674989575 879222377 879920766 695053879 790544726 82762828 615598010 220403846 358510029 105462636 110169119 710365743 472035589 453309042 451989426 889370316 664125510 950474985 791529835 766645880 874078312 282565880 676939899 399791772 195786363 753585441 234734379 220804962 262079310 214888826 45715836 843636851 825257100 851005617 873852458 903878140 645075828 336843538 233221946 774715811 49952631 368536626 818189597 772053998 956975720 167038404 670989236 18184732 598960436 387507509 170332254 461559232 646397750 830943907 690101765 902496338 701270790 51691255 978628132 240413274 92767137 3657940 459660401 694921013 261537684 680540703 526258029 701541730 888282965 978058447 701422994 980360647 76492683 423960032 238292468 938950554 233414990 486541472 867356560 665151559 130668090 917619189 392344722 81568804 856295430 580012913 623339569 588648568 848737546 835380268 572098428 897502067 152410083 796783656 120199129 96722290 90434568 594059654 498699722 395351340 779018199 340244847 479253564 990065436 713528559 403976884 285834537 655573052 680401297 376534133 435968294 787103336 884573529 692120959 794938814 790722492 268526954 971261456 393124256 670989236 115621885 919016649 52975612 820585638 784612275 805488304 70273241 14601249 773517104 671264246 940934934 597746861 182536201 462609581 250498426 239494852 597567036 757671320 890766649 688125064 828150092 685634637 159048010 931993018 296407040 404085581 374827488 889055106 718776253 157554754 327036195 715302042 86409155 759170661 851362722 713410093 779900040 693588902 653808182 169665015 246174640 494883204 170184874 678350211 729309650 20391158 794688224 614657609 566895035 176105001 91034070 107147286 220440735 895298005 888470662 812497673 793669811 13565873 393828236 914675032 421587439 100263279 722595966 176324638 713171343 396713839 747677069 162080445 15007102 725299793 238098240 253864860 685380594 712331127 869784992 102534343 698878394 437912581 825464075 560412051 556787409 531457140 739895164 910791358 299943425 279173002 683756390 43490455 910132926 6394604 457620837 410812488 591398872 885723595 937457608 811101865 650678833 419267245 397116199 143291577 45261039 372569580 814400068 338668014 752378474 579667934 807343842 693128369 805922464 42010228 393051820 725171461 853721340 933528018 440610364 217784180 754850438 873929932 327990083 867895037 665546035 27314859 862901849 770223208 731608926 929554853 127443786 676644620 655481327 263580717 941163736 316442682 845653148 318913944 295853750 909764069 867168506 619197339 888690397 699226508 921000827 244822335 188224223 679512522 856986413 798667057 847677995 816403822 467952523 946707359 789411661 661949288 892865882 791571627 191975287 747340809 112733140 85405371 551896809 636581512 437035951 171430383 718367143 970255393 32507121 884010802 401187970 921273680 968468781 926406857 994835487 491924226 855843705 916851670 621669270 304576277 262139312 981673714 196914892 788822410 374727550 769720561 190746415 702928444 26289833 391135698 566936159 854972204 376806567 547345063 342495356 7223601 246049730 530626852 634674354 444126919 558870627 219269102 546971763 133892470 885109284 919492467 344086182 550508242 593822156 677983225 823310106 363281167 763008242 592698283 598154600 220005843 441592439 502839770 823374283 756040194 880598472 300537182 984136895 316275293 771475294 711368963 767990659 163634914 912756052 542061175 999046940 74870910 665104797 833423007 999361060 885427909 891153591 989200216 835345583 41944138 949164412 751048663 453657127 763775798 977710806 861056989 335091559 719021841 354846471 402948108 748335742 914118693 730450556 477437143 967515579 934289356 528428215 231674461 679041782 413353533 849573424 313206404 264350945 450269512 773273667 80797258 874381540 525432634 832909255 558158481 78286501 854273918 882745749 742830881 947349941 899321323 301762763 755953207 4151348 981910436 964959463 491815245 961127612 23004833 401035623 788257602 716230196 177556616 143305447 580479554 12638025 173796716 346414755 344630781 848106247 335070165 912456125 774320424 735859658 354325705 122479385 850065233 364670752 741694764 990089383 849484743 313324905 793471676 276223249 831085388 393764859 881015468 739783086 830783647 672940300 608762089 725119272 519848776 369810331 777129022 552201255 837991866 928478239 645847700 848889794 766804157 945294547 136342879 331553663 169503833 22147222 812775610 402850272 26839220 670989236 740800410 673498602 777186045 602674424 632475651 721218467 496865974 455964744 233088303 772982072 746563514 137188714 772007720 618082053 48907836 786149755 732640709 473276252 103149963 679017307 800759364 677979906 810689320 665901280 666899117 745742720 541946442 941396938 976822464 992947789 862144643 343791153 720222597 635100303 85581445 778487551 866077473 741455757 528274663 672331366 182919678 842506464 799967567 475542281 130061867 409414903 184006829 828758649 898940453 727117609 941914052 800030484 782818542 821763426 271090082 600648046 972810114 78586417 670989236 744260337 670989236 827736488 407767837 993106179 863270119 814612948 970887883 335024882 771322153 692729287 977171488 800116036 192873186 453330088 665575667 31227957 671683444 833727274 742377066 274525371 809200861 435501171 939623400 404639920 948220926 403558856 750210683 880445829 487608448 929744293 858221873 757322827 57311033 405078894 53275627 589709769 49750219 727012052 321603933 385686045 197930393 761770317 525121645 222700115 841857831 674515802 747170132 867042396 236903376 717203770 397959368 831217715 156570885 881320642 537428083 274812568 944668006 843885017 305622450 478630990 784752069 784048115 770410222 777270456 704445773 954976481 687070145 176435140 94479687 987113693 776469369 149673589 723362681 203393666 757418715 969703959 569380125 625842367 862070616 956779083 884134295 583320434 394411821 825706011 177407122 297113529 413669063 108787918 9985230 976375478 479249141 835264387 615552011 582565193 206716826 699318929 686251858 216151627 723887472 630281407 200832753 726974219 780406669 746400817 755620486 91168687 53866745 966670603 671661523 858572491 830954996 145345401 984010986 859900418 905407788 435095939 6443527 316006262 180887093 997918067 852892753 425465437 706672357 829938480 180147286 808342038 606546628 997974347 872910896 772720669 926974682 318741317 579744275 488756620 912166501 315289323 798547840 988897819 771650207 184521601 801300083 847051224 275491131 127615507 240059031 953629118 956600709 699483083 769736886 969837102 907330866 84019780 980228595 677812459 725918345 906605676 962643029 340216984 13872505 120416534 854754167 685558070 953554895 191463021 854552288 60130739 171935305 720138315 239553708 491673551 815747950 385884396 198501674 958686588 259009400 610484866 87349308 528205034 840736431 605564577 686669761 421915889 938970035 59664952 252991418 997148315 570417620 236820144 976796453 465876063 51326368 875343398 957865342 696665756 355990728 753719702 779929119 477028544 514057485 506561054 690858569 293492442 710700162 634175909 710550109 676308967 186252216 347539788 843934503 887812030 539677191 702574075 151251002 745037968 921121320 168958371 729636890 193140426 980105329 351206446 504427646 32588567 855760286 439893237 681500638 14868417 738213128 552009384 818384231 946714953 953527007 963105806 922131165 167590725 221675560 251149347 922019915 767241153 956159928 410128020 134492333 124484375 247682077 943613615 205644655 274233553 704421509 841538501 357748617 648160087 616846902 949209840 987962615 602315738 977876778 555904645 670989236 570123996 809129762 761754220 751468232 550796657 688899894 497315273 813280790 760368127 569731403 914237475 863018950 171730995 308028009 823258535 215561244 718944948 681836054 800859535 697700050 411172097 801177913 456428412 574817060 953683789 753067130 153019809 828998526 690449538 926228978 211665617 825981260 601957439 865735713 967024934 435459468 416370635 623362988 191666607 102924179 744314942 617674405 268263514 451526371 751346437 250469871 701459434 326257025 634085497 55110408 817014690 675376831 831083322 957678999 589908453 64568252 742690513 361462503 944107910 784235732 240626937 767370636 628866041 333081098 101200106 620464255 207767725 145450409 33567304 250871829 381609422 707433061 190696218 382738182 694947576 13548598 844857070 670989236 983496520 849775097 914952854 577734900 356513421 206048459 205034661 535418872 745633060 344814076 694826894 227587413 92175154 820204123 582706245 715734846 913978361 162257173 248338007 264773606 419594979 936376241 168855392 334207681 300190132 904269570 378726758 807348221 145874536 259566873 898003274 385899083 105326564 286095867 766823169 708894145 940462402 266245416 259150486 868305995 491208540 110377539 365867765 12234391 89923054 354261089 1540046 745443656 451329283 897394541 693578741 72765816 450913132 847164994 693253030 994440691 896614287 856727706 812216129 943924135 382439777 787760240 569147472 671873680 793560513 851570363 989895011 770856891 591049820 998587790 257614167 776743273 955552842 924354398 679100237 480445018 688122433 712865943 587098685 544166364 298511465 416487102 695431270 446375314 701921404 932413762 848866895 197031928 917311268 757939442 233331636 748210856 31913586 813981452 695710073 683580243 719787968 745974054 811246081 674179855 692505883 563486403 96595799 918531884 456803865 951299967 367371981 685701231 921697219 392356726 727332288 755814365 286521314 548604116 43254781 937304244 651961369 230589744 288384603 633375835 707710648 668533637 318734699 377410964 979092781 554631371 553783897 544492755 921936570 675794849 8481436 400949558 918784931 195908269 736424073 139279843 796044299 789269098 905789963 602401402 488237168 135910274 881997308 836747351 522432284 324317052 995176764 966856734 45783104 917798510 955847048 960037321 331912599 979469723 987895578 480479711 725210764 302906255 196697011 374117108 703735376 542313086 682034939 71980423 217005834 597340722 734852568 156465195 592697608 165538840 293668710 840136218 241139186 80293526 72206183 981754331 462169913 256952059 979951977 681586328 143924539 823025568 671433866 853069998 816058513 932723173 723877330 292382935 840328465 641724019 669970869 853701677 285860738 131555256 189415788 982477797 38487252 75811649 555698401 621405987 678764319 695274653 997461240 240039516 259943749 29987024 791487755 255187231 888269694 942340987 969243146 890419304 223598416 227478231 287062730 420729237 981820983 611972456 899818788 958702927 731519177 829563461 551178694 826395370 392884080 518024868 449847609 748903211 940437226 799323193 496250831 725174683 823620189 773359448 597149701 724105834 581265638 173422042 902844112 87046278 727534838 193353324 943771832 755887791 718272241 968372732 959499714 869901870 253507212 952897419 842004013 330289878 527764713 413117247 928346139 748027836 49035427 889307018 937111519 984435446 160427591 891450192 675350354 260008349 156681220 356807782 909842377 930164828 756193377 182830073 450636130 426191316 467375476 385043205 417761982 870265347 292196756 171312435 854548777 222260329 150838235 376433473 867301784 720556850 382826664 955428747 715411280 44469968 304851263 881477258 623157316 496946847 46970057 237164575 368030362 331309762 943820939 573405624 226990717 848858776 864488598 814228596 898453844 811958103 883009207 674116686 856673045 860899043 126602204 938348938 484533715 195521000 514267962 421489963 695678573 451509107 671451140 908630284 946739694 878169028 945219789 782790653 707595485 755772380 720817387 116429567 60623032 421072249 717065010 46370292 981403730 208728540 8181666 497715183 248385052 816954199 471113547 582767638 699152951 77254122 913094145 789557438 897592168 875675051 415507906 595056230 787420836 880755773 535299348 528018529 865907500 754363131 696758579 749305670 975095893 275161310 337767171 215896212 807642730 91152893 740285929 259500050 875940564 899245807 356049303 420079735 676873666 543367053 758476513 236022268 904279912 839065966 950434416 345519844 961323417 954176592 933696342 909791981 373053025 232475425 180943716 943645857 707946178 946873372 685803394 758379587 705870810 965561133 788793003 535247259 682891990 170283628 793451116 881647056 431042617 685868252 422975327 754547984 255689452 836076536 380863063 160683512 906104544 21549401 519399547 167479341 484177768 721406291 370821775 391931662 462143183 822961786 749576315 124546043 719570582 95687573 711178943 721473740 838145152 587333465 254524429 41656536 394632266 56506593 400234478 738552138 924833791 785977993 998638223 216287336 386406662 174577307 443800389 924883126 191395650 964303418 437900248 221081858 798460046 41021433 278011748 157590935 536479571 344969599 898942321 979333019 807056309 287529196 665138444 267397405 295187848 739805876 914676148 508210973 809517485 520975656 240288028 976904088 712669309 968276132 984223225 463799811 726204674 250170594 937795594 732724587 836001119 596018360 681798600 332905619 820098103 322649998 81357789 784039409 408511525 904750799 185914788 469289329 844483018 766698699 256669898 917979578 928497260 779333417 684725948 844105778 296455639 756674610 811880464 945196895 260992871 730052628 838344758 790189333 422328194 696830969 578309031 536403007 711484258 362275798 53878165 920591699 970532252 947037740 720026133 965326326 833878819 458520021 22769219 919201549 183948632 409786519 874780881 950932039 962345529 801897052 732404037 56650502 34971381 860500221 862148493 869932497 937131461 566292711 196753888 970831725 316319591 837980356 429057626 725305737 832984674 70745110 828738795 51088932 541536128 457663198 998473270 319077063 455804871 779814606 571967736 991069536 649843961 770792707 400088370 101759006 535832667 937339624 519986998 201408541 691103285 82555831 709518729 522879600 679232449 490403652 359790933 980133468 691365520 952534647 280876071 752262472 845810742 996519955 474965110 915840353 707497510 660420051 431077669 594158406 559860751 897550883 687857759 508678513 894808507 54660947 920535634 432391349 190227470 106652237 751308889 835295841 348275194 679811376 860356755 708868990 711499027 705669409 752679524 996818055 927863675 379641486 782642226 660655734 443734276 454434747 892250647 648155826 530855770 860516498 803885043 844410260 736801018 242378676 412719861 467973270 170203924 883428600 125707293 323107085 158469497 431746620 832836095 855242080 730669310 569625567 851942253 725469121 217705568 408913673 282789930 879515536 4521101 51940916 140630967 104264907 135752603 800091593 427969206 988618664 857098933 991495613 9755894 747735798 834642249 844109031 734471453 638941573 952663942 430681780 209624336 981296744 238579489 34329249 327312098 638936643 786729990 978177746 670989236 263681734 45906512 783266123 988712997 930282515 422748126 689384664 782371186 18191287 536431183 921133782 332586475 518792672 226961241 684810513 218551654 316857583 113574235 842807472 716048195 751422863 950101508 16283743 578709641 889208676 6691345 60351005 893463750 985796605 967254554 865765520 102339279 805233115 262861138 704165804 189636939 171808530 756068232 239786316 362968914 750001736 4690654 986509585 398120718 700010734 816541045 952546813 470693297 213351920 870474743 901669285 154401582 692695243 351139886 427355787 730952523 430528506 740303831 569489347 162321131 32667970 473458544 266872209 278325622 283943832 860115954 898408750 736994101 977296628 528934923 843295189 943731123 162759425 447456105 289532632 954855351 782265445 819620309 202770561 787310176 816313075 132910617 934699527 627747148 729242467 514977367 905036438 441758453 27768374 330059073 944857545 410413633 509469310 934292228 685115467 292729223 428341306 20628718 528109478 172333653 460927896 449496770 658705602 670989236 696762156 667773912 782339115 27621981 748984085 536806196 159985392 321618283 827176798 455680887 617828257 75706834 220427787 988477645 39136286 39437845 419899322 672572033 730550183 331316446 999348422 986374489 171157665 658171734 723798255 832562938 853510795 712679316 880062815 711229685 621743191 812117155 660569118 342321011 717183374 936818059 715722906 758111297 412647502 238684016 366031760 856833379 829525744 293614093 747256449 649395798 839613914 956887774 647495680 565011747 535093571 713175329 814752006 735688167 182714157 939881327 697638146 952793299 884615874 852530699 684356294 442853119 657409391 10399501 794386047 230157746 363660465 978474336 879446755 9953884 803046651 686860618 411605541 462792446 328745183 83158010 880394035 670989236 825272544 855274576 915031639 826689913 110248567 76563880 486047890 18140137 683716889 761665628 606301806 905923963 861640284 928915185 987414441 69572050 88606056 769215457 960951291 369654206 376204806 938770938 859115778 743080098 504619081 658519266 878188505 741076393 581821665 335538123 124347173 723629949 870449314 940922059 42997140 937557841 522898984 992572381 374035186 609630095 334201999 187313990 860033563 951573792 161073453 71623022 335139320 162708998 120210587 705327846 966627356 497071361 440700336 347603539 98100153 634611543 759298895 956768392 120573899 770317847 825123180 933744251 948812288 181447764 348547151 46813796 718232341 592166336 122565839 653944730 296347287 431213209 721139719 351307274 530536166 319891768 882923075 969498995 146237168 819851320 110285497 571739383 394337253 228060432 690487461 671440953 843834305 823677220 157485072 470872243 876596018 595949918 888353490 547936740 565748759 983375335 49845653 240025677 423081423 467499881 992476071 363616224 871374886 993980870 825882943 705250637 269600839 6709455 767994254 937286027 759435468 695663691 174941391 638765051 894216083 679527320 796502789 9031630 371796502 708557977 916458400 509025794 464619196 616920986 783417225 789489694 952464058 931227225 702761358 994663786 674117293 790572557 554681399 737602687 671445266 284862664 122672046 966431503 920879264 767796108 964963795 466330786 706073601 39246430 871517082 416663312 633862018 678589680 699002033 786675663 852399331 255551869 137362346 205430366 670989236 164778847 403678515 191651553 948893902 934969668 477275762 970475144 649377826 570668802 412722691 793077797 379302034 771368395 33640087 521456167 685652944 670989236 178201780 235115192 186282147 851685015 943122963 553387676 129129330 527246704 335396727 593363993 256123530 342392803 772057414 666246446 717366200 783776130 276886761 487318775 985830092 294560881 283846876 39349587 191611910 969343637 928656133 958956787 820057466 691949217 470830258 1942952 703567694 478781380 720621020 48885144 811452304 798652727 858299703 806894440 489269982 776173292 885054913 369732492 571314446 815131514 718987127 875009298 811348878 510771303 670989236 977130720 818489328 634460554 664376502 951116885 249964754 766007138 949148206 24059123 342090393 955028797 318795401 753394693 956630307 995989667 797399661 484860084 339805244 856744467 773890076 455216240 8710464 753984569 976380879 819878623 762051955 313566143 679822962 815634396 948884566 674495277 945138501 441238328 292404382 109128014 946002000 941566570 206463946 426711383 679799980 735259128 954534834 426725082 868166298 773467858 799860879 818784690 580155328 314626070 929369058 730369249 745430323 588408021 59266872 765054926 376094904 591546965 687936180 540107173 861949347 785928442 700435098 759933953 175171040 710453134 814226072 360014376 858694515 981349885 742909636 495354972 35511987 482168406 651587070 98211911 685076306 327975985 899052251 784544352 779776452 5898125 850553897 522703170 138107949 675424 6218468 754687263 311604478 721476104 545641403 718942607 449192190 646970982 660556545 976106000 614205541 445999438 257215523 264490085 859319586 268954157 856021546 940415148 738309776 74429331 43432665 827348577 135312229 884604501 528646740 413545698 661990155 367847167 803778677 158289816 136422349 748094181 106641882 455586053 950148607 783970071 690934210 793144298 130766386 960648032 449386801 198795964 614325249 140507465 431055117 876929385 784787261 168852563 953997658 805243944 632766606 947642673 59459980 982749227 256342783 761771601 691603973 681557638 519872108 843665452 784686192 635951755 713913454 750072531 13353695 758945110 571165596 824066413 133004939 703778278 870573858 117392533 80254033 739593835 851873909 920917224 141863277 55694454 288590515 737760940 975316677 13496054 610174732 341917387 356696713 851682412 226211158 347741017 671382581 612342869 657648483 802212807 438567877 785868328 903603486 661146466 741584592 447551658 232914411 156178095 705184397 6992085 407528181 763959442 959671264 276692252 938718095 948640443 917480551 302447894 358553838 442904906 254272993 513191989 580907663 787895430 374805213 282898630 289753888 896557672 298008771 463046612 985683670 161029331 506606413 205781191 374780340 855002616 819635135 886990348 30500081 446546060 792118753 872709008 911579715 795464272 105682896 27821837 21142338 402445689 793875474 194246629 773654159 734078224 80196562 720559847 744321070 773376182 835124025 329954174 60478539 829400542 694148810 753277011 965477496 591010598 885196969 587763583 767213199 449394805 652087165 47366449 997235598 520364117 822652354 863035350 799496928 952761130 723173770 221382510 673017079 152962264 927763158 853424023 389375774 863050075 160582853 969917900 624851747 604296890 12309211 367525746 218045215 860439173 874053235 670989236 558546047 57001813 949646029 975917709 791793670 646555897 670989236 498277644 409249511 854570819 112389972 58032127 869948530 652960532 691592384 346254571 573904882 816564363 949010841 401324319 553753791 736970309 204189350 287710769 676989618 727356757 940085851 590762098 294091079 457403934 365275475 769918327 760412803 380137810 783485382 661378132 657272533 427004408 345818044 252788744 691047698 877323443 838978345 370562206 982911471 662023241 394376643 535547952 27226937 676641916 639895617 968503522 696589984 799726792 557304928 948001921 808950778 460622812 773955199 901592278 439975839 6922765 852200870 971033016 558487345 987623063 442272872 387912534 463124656 945829087 851102049 865448304 657288975 814955949 891532227 195956586 255843487 708464468 775771726 344094590 567503650 110053790 432334254 815645444 862194282 504528756 583179051 622319277 300903005 747572360 861963279 802024279 584832419 267150090 492479733 680927100 255588047 748479186 994967913 258208651 423592510 830733656 489024143 670989236 347108850 903841919 871290468 70452676 375743989 701205475 876184248 218952758 826921443 163176514 918565777 898667952 217978572 494947579 115568835 900970188 310118864 307819374 948823350 348726280 898762844 116543971 769215833 668715617 889568179 709474485 798788495 832607754 800383390 72219418 173133370 205880204 463326914 569294140 698863398 898243385 245360632 807496808 421753384 887959633 751817417 275732157 352974906 171820676 540802406 449550378 747686141 55316778 734694038 745297809 984780055 880686378 985590946 782867712 652243741 282936944 16888943 457002713 993159983 769117431 824470696 96394540 587515755 543691530 908289540 714877378 742200935 395886496 710668308 670989236 905241125 468800865 651293812 726833643 153808168 138350148 16374320 929385501 204056383 698443930 982964130 972986838 746889842 588899177 801658458 807970746 418150277 475457574 900384626 858894792 886493146 744741911 441417864 879170326 623101266 400822809 990728872 601655233 527384967 88367585 826219874 78643095 767692925 826108201 750465683 769901076 39154800 959527443 994824734 183785737 693308088 670989236 963558564 975788119 962136435 379076453 378929072 898552436 915401477 930959858 754225487 917423945 765805036 514370075 740088076 954128799 675952128 325471713 899293129 960608677 650459615 447684640 166541951 850532573 62130095 779900168 914445123 226180221 399026664 784995445 695788105 756787122 802355721 839361074 72786241 712211943 793008462 749089940 997023743 625882510 147311927 509993099 139069181 772568662 723434905 827189362 343405038 843007520 852538011 550176026 212204992 475384245 6355735 730159351 300370261 850395323 593699012 958506975 60370307 915855348 681389589 39560951 979041817 453077606 431887695 741200559 910764478 714628518 705256170 583922071 424533602 905630476 898879476 967216097 800433095 697525806 696404225 876499953 455078913 954828071 495107053 184050633 16793295 695173041 795252042 697915110 835431630 226418831 59526412 773175620 248880483 811347203 488314246 422655728 818223613 949135255 172953489 71194719 627050977 467174068 640297351 53404326 670989236 200325438 908161360 83667246 952828808 878062601 376170679 139696107 942622289 973020893 741929290 952405657 219548361 700135948 562652244 407375434 873494353 698937709 366225083 593662912 731121368 492785171 48011342 894561960 922610258 930534695 891154674 930121136 673599624 211237259 961298033 768622475 935929833 764385289 357865379 653165855 272249156 717571174 820796437 187297557 713050035 181345973 118719794 176298241 695545938 231932780 278026212 17291466 809792566 256619003 704596618 844410458 623621790 968126563 928478041 308784990 358089138 684239842 486694522 819701535 656770058 648388142 618934556 940395766 763385175 155861060 905711550 438816398 876008572 54449302 281854618 670958687 830970406 850285277 379156582 825400971 313300531 709305061 434777166 781945114 300119765 753314520 266817475 993773400 513577111 963211989 885868861 14745855 449915302 429736722 987691096 888956389 554424644 749845923 808930664 384172836 901805246 961758891 137601316 129129459 956067040 901672945 808389211 367980282 735977776 132112310 294247482 966620061 755255039 624973718 576386303 173746731 725568731 601792583 844246003 936517768 116637727 786300181 201627357 185467788 153479162 187794272 424895881 982798075 330131319 485909534 900208678 981164353 646118406 228408541 834875481 231163873 422263256 204565858 676954275 862512192 257564 882161829 700184701 746575112 685962161 14991134 495069890 601322090 723177497 994551517 723712756 907323470 191509456 390255025 407859838 853636906 856419346 135058208 66831210 628567476 682243158 718457610 792349663 814066661 823049849 977115235 826165168 932108004 745628490 864697959 753004213 130814591 587132927 933805700 82855003 582879638 560979877 641524780 747307452 581626618 22804295 670989236 691900765 624709942 79349235 802798087 155069729 565980347 973817581 466160356 973859714 877608724 417359884 399046757 616668933 822709760 42645007 889187895 774224626 650590677 749717250 307544087 885215906 825222520 963904158 974535907 285890624 122136353 728161076 552633460 555140675 168724120 694439313 787871315 907274781 379896843 376059694 904526411 398841742 905418129 53796828 842618977 639452783 455817512 768593478 705793554 812836910 887711375 404400149 181942159 574653763 722405327 931641006 847220542 833614921 897623461 848988815 410941998 238818657 381410741 440049803 648457678 697609593 721948806 497030553 391027965 679065130 575649436 858426134 356664127 705557249 549032171 934120239 614489514 468905103 319684129 456301742 972093337 915106707 523561203 518652563 968443202 367779337 787892297 306596753 345988015 245557127 642111081 186093121 419159200 999245424 106554738 883894847 931098401 767214143 960624963 649493097 607023310 277224799 733088950 962172432 146718364 509186508 527110651 916736511 720449800 132683617 732913956 377519745 831242018 182359942 736935527 889576135 953591709 330145127 657005337 318788816 574440311 201551882 407907000 950012155 443771833 777216713 95045021 405291685 934118486 818117709 118844448 717696083 781392501 11217922 443180709 872696681 598735559 622688446 89015658 143591324 827007866 68095879 810269321 526053796 262215874 784858505 165141707 909112103 895331491 931026240 291001060 631608201 872397025 201252078 275124978 78148951 847587801 670989236 985028408 246183992 932150155 987869337 794703082 285786431 971586259 745517380 608642259 884919311 414859878 721182011 528052196 264311402 872978279 689889272 661789858 869562638 368006113 901750784 230215450 733514122 24877028 538308334 504924044 748602750 621323177 404825133 658146352 117218081 210828600 834647431 153842355 957742871 736066821 402228418 547363608 507503037 921674778 989654422 559968555 470448566 523253711 92449605 932767142 94217492 864921125 838008529 357216674 285273979 283730512 826419745 999621326 937911748 613949869 275396068 277064970 837800702 786576559 210938278 722236574 171962289 520063728 271871973 965111351 760302179 882500545 200634203 319466311 60838679 666771597 895897 560832659 622435503 84951148 848073720 71602935 790078602 999390548 425373261 725209910 720318053 932928869 731257521 783716894 529794395 673868153 639669221 792534856 988137268 321642263 677399652 39310342 666095847 823429265 830053579 529058018 644462356 582699253 670989236 198140587 876429666 173409801 134140338 61467614 34605573 686718307 841187076 353816774 939321059 655299171 677112539 830772951 665672443 755123985 801584994 534070389 143734640 863840336 68016346 993744625 612991243 331496278 953783916 590996041 756390582 801677820 183602953 395282227 122280905 696640003 237624256 975103601 722345829 896219131 126414274 666784920 769425824 644403484 88315171 141189923 822142050 640035471 938804067 349523396 570686363 10170105 796760319 533485005 416202794 983502787 676261485 111492080 280937788 754270104 989534301 870548564 954412501 846093724 780051776 404478503 203482989 778374142 32753010 929233814 99032176 386492158 915758756 715900270 852865662 942440368 455923171 839638215 386698290 662463703 160296600 888422566 845213753 252850326 252766869 394238985 816129329 553559213 752906206 122178650 89535571 846569132 654275260 259724390 767565850 196028148 194169337 692835533 835797701 401918097 717491625 634882656 185605367 834478180 972054070 964264006 839762815 206941560 469463598 624647544 6530102 178560719 633195258 361548452 885195131 55557433 829947633 846996478 971851609 947462064 992004054 553048888 48458787 921086424 844452039 471260190 470347326 41950956 754627066 968134985 975408249 192676319 964553563 76227464 670945229 88748375 873683704 748318979 222725983 534623381 207150015 786531651 315279608 801992044 617865325 661629603 780321318 902161984 987660484 93200131 558893147 355520760 178198454 190844698 45903922 918387940 824415383 692971537 970962469 895612953 501114494 794022337 877750217 706324368 803372326 279249908 131288390 555273743 210184898 767705193 216700559 74660943 136599273 403763692 164940848 268872665 662853175 93668055 951616190 939180722 678264768 930662888 853416889 148846975 501720251 268370147 698623122 156260818 726430481 771883115 214823789 299619511 353148745 870626093 359469938 990068242 121536971 275994748 577985837 714098097 64238393 194973791 657134757 478602060 539387456 982267055 114723091 25922565 831577674 112879006 352957759 153786902 909685157 773739828 189835278 753124866 939574893 926830360 42003837 410687948 243686219 717889078 545472090 964717553 620296531 595244166 384444851 823559750 958146791 827150875 933765886 373646597 881799000 173114501 403877219 895038397 670989236 107457646 127229839 835291444 634331664 484964948 712082573 836645567 669299893 183241830 873658920 855796390 319800775 990392335 61746 859372805 822345803 104502200 761942811 746709939 787119918 588883807 428762857 980095783 384533460 179719401 919964458 549344419 804887953 970323887 88788648 781509238 911533557 223629868 761128589 96953545 670989236 818136210 769565893 469646385 120804957 925282773 80898150 783335104 423392600 440366164 938076273 328080692 351863462 909829883 374236540 495276038 893186858 98571740 924784405 431506702 886346599 194806559 680255014 962765488 318257572 604663176 954471665 834682145 151474840 125774786 143090965 345949508 489277740 189088392 937116578 372381675 988880880 246357332 725570973 260613584 776011041 282744434 856013489 879485278 890663388 891031703 765221839 946057738 590487194 369754253 884436670 631332609 140105408 671225361 620363606 576638711 396818975 623632177 170777600 186657187 253306141 946791762 558944842 827020203 718289399 724489818 761792814 16522508 966263301 971123296 841326957 580285817 264760823 885958510 858487288 588448391 381380015 990707360 870933413 664567120 704042896 786136532 268573884 979548893 122626944 691572013 964861334 376707561 61513370 568428453 983129713 65281549 551144110 119445598 573876970 968435465 792515928 880340545 844637225 253305357 354598043 911783662 279707651 66524050 283222870 106377737 383622811 767793659 560724819 863906400 370710687 322230214 173128874 725803265 978282088 764603164 396399510 3287961 349264557 548722737 720122772 899478541 838004701 345858125 860544045 835041099 628855091 834584060 590423484 224995166 625320587 153989654 697372988 823294644 250749231 958052162 976269584 216125991 742779349 371426151 201760449 586742124 686748097 967374126 752710719 3161719 456600084 736085027 561827509 65614958 780260608 636382873 794993603 821333953 853247241 998300275 168944266 271797014 879942176 432257667 821612028 701647997 670989236 911499658 778776963 777188920 766364975 631424936 850398447 685347240 596374574 51301129 618436700 243825585 757628493 760924135 384739185 764515508 550613222 998288947 803210629 892806927 751038963 911814879 139918752 494029211 835963958 94408516 839777532 976595541 698413810 245601123 407518926 67718124 796002312 409062071 668865176 878239974 184947539 754220898 174819940 562864707 529137280 998608545 526062357 253664660 735292355 438761901 999645640 946118144 1963596 228506214 283033279 290692998 95170655 153952896 200582456 742459804 521102725 382082997 4140821 823474612 684078205 816364645 515683426 755338297 723146530 775857490 538630075 269612220 852449265 74621983 737023907 304933498 811368291 250511904 842393418 238972450 135491182 381249630 830262941 815167461 942020369 575194994 829603916 487761939 531290240 935459334 927482439 481994635 84009172 311896403 269985028 991069202 896055294 758442828 396725494 922611278 137471240 140635830 678862883 677528080 670989236 879864093 981397105 486755338 994317917 471451565 989323076 713831198 810521287 929502272 834913575 926147402 356627930 620664295 258176459 57939318 27785704 206001122 299648906 666204072 893123100 925121133 700336469 821066413 797882394 943022203 674931491 22280490 508510984 451478878 687615710 873118295 670989236 570061789 414534954 263118553 741734889 277198088 747378936 684326830 171634829 919784801 949922303 14937138 329636735 166807937 989046532 452029915 790965119 889270569 704646322 626811653 61429467 269212617 669606441 741335527 730078648 796920288 36878070 774500763 670989236 883052141 144412075 928057842 64416495 938106149 628803601 540240003 146299826 757450587 874153310 714366121 840981762 432063753 778313707 657833589 970345053 208533998 843244767 61983298 452892853 716200368 131113900 930438303 385535406 640666704 714400521 789623776 170858595 626273722 74344749 614425983 738457567 707501403 27218992 763248333 819692317 282709892 889261611 965569012 232023020 910588371 136086590 177681111 989467707 968650167 23729208 149195963 900750914 256711754 618815639 384842794 916843093 601815787 772050519 966909152 281076368 919862018 692098191 682828907 593338991 908688727 512779870 308837084 217837578 839110259 230705179 383457428 649959940 463788493 670989236 673082796 443002731 436391090 654959124 398190009 935440740 474693297 377204558 68239548 650157978 48382816 883019062 732804183 986574242 644735826 825819374 452902347 921179439 570310665 670989236 549123519 186844389 451554655 143352471 808259361 995655625 749920729 763688993 934720297 735081315 392776389 759446179 706635616 732412019 887290306 811139573 553954320 806477164 336537953 866645824 853600881 400648477 125647068 405584751 454879120 658124830 12224813 983993310 183313321 582952222 915863013 850852717 341647740 532113039 183476514 713018192 9308524 570675811 722576561 819080811 13971577 649265653 800960444 4696972 673692568 970933775 837334751 358220335 997137612 964080343 746141992 956806897 833385009 237491254 334163403 26933710 732262264 670989236 346732549 160557872 640367609 149628224 746462085 847713397 494547602 25791520 813435991 978653601 842508892 249055561 570632656 915044455 558149303 851305440 445936944 353224236 762606694 608825792 6195250 935348380 149274713 273355773 759073263 694629285 366009127 748038898 714098268 67277436 881348538 663929268 404943747 997303298 983867869 731279788 691687878 686063846 836175656 418122714 558297411 977177487 413555667 735652903 485516372 372097368 990094100 696015582 722666823 30619351 813651727 191961927 136915711 244554226 690648140 167501495 311825330 776974208 481097568 73763916 128450931 787370826 571424860 582493024 680438254 526107090 953963044 206044957 926082139 111445223 775984746 199517135 660451446 739870000 234777788 316098700 46290654 773230624 74622364 996137445 389470174 582416634 914897289 673964034 892085768 122670523 883074019 984119799 268765546 896863131 946171309 198477171 429771947 756283426 469037647 137527758 104731809 736733271 886243525 835887547 73936919 39642869 590755283 518166634 954437558 116951230 484936743 5673790 770962120 398626368 196126928 786192054 987999805 325166069 105944970 147797961 796189469 695173764 252653724 994455272 791414605 753190497 833381671 203059745 875945816 877762313 79194542 158974867 367991785 730607527 39012043 924439797 641148794 915004148 977544499 638765460 996981977 31328927 836208496 544841240 718597984 802311376 749518476 317052564 375526879 758923755 793263899 413612815 845856259 25009508 338444501 847572267 581827876 693722979 333610616 895512731 289244078 529499674 993708086 726139702 875588447 966522280 569138161 898995083 777697835 421007421 228112886 641034489 434034529 645544342 64696391 812921087 627806484 907488065 123441588 402085788 588663050 375732538 828085715 307321312 744664022 590180875 763120891 984423032 894921729 912746893 704362897 546913460 292863516 915940000 817541753 664709641 999423716 982842617 64192395 782855265 693309423 865288017 481563875 981878653 758708927 659929726 498569221 417415761 580108696 914682338 83490407 398367854 889122418 582553024 749431361 997530420 702382575 226205140 173934817 551592156 112716820 704196361 763421399 687696323 614308179 889757485 701694135 79062158 525575318 476950833 639051726 875480666 330172932 821883001 58521373 967388553 794280801 755871974 538941455 302323542 295592758 303896215 473460571 164811073 885094871 493460415 788095067 844825087 282479096 865197937 957555152 764253450 548483291 931113053 89568127 37616729 267356840 520467488 686985322 775719749 166984647 889509006 88919546 755353750 697535252 786423592 806122727 947642614 452247731 686500953 128743721 277068410 337685353 929321438 521822300 859871670 383816360 796077758 943550859 826595680 422728567 137836790 560969032 453425073 682309632 480594043 452023056 811335747 175912349 678620190 251467723 685955643 796017447 444582115 938558411 537499538 855464255 671815032 143230282 166432685 583128166 287536573 775367141 426150026 924012747 440873106 99059331 747039379 967326727 501624316 431586079 35448766 760768407 873745028 654468224 93503028 245557108 855729828 777823565 795594953 879854731 843637781 286571881 824037420 764958715 738294408 2683930 449078407 352222961 486036052 406424887 145875094 883825896 269264111 669217499 941048352 27349265 564642707 928525519 890865245 814601932 749162972 670989236 322799584 214812978 644629544 100052729 751509784 956976196 14752039 717423892 509221251 915883886 855859912 833175377 983115592 745296494 596018892 680992996 874533932 372437070 434633399 262399678 469873794 326406693 121028533 180508100 693354229 35383587 977500577 513377905 888583943 830209385 988359148 309646678 551714259 772362145 925820219 508519036 219631997 433281502 600550829 145273093 266214093 613675696 474445839 426444013 960506618 52100001 724020108 786971917 305257028 431627351 200451014 650962116 139603313 427513190 917863425 802072055 985789117 60520875 164322484 721111959 948453430 794245026 775269892 459703165 175510496 721430362 766062513 769163787 624069666 138460213 11711097 259737759 855060344 321078852 849625462 640047691 344143653 914282834 284242272 743617603 510699976 775885981 678705667 276956973 798745099 435570264 671995414 503633471 356383994 560310168 102826548 443357129 225436840 446905063 636829210 388427943 884533973 589376148 513753410 678889540 846140706 759152687 480666946 717576452 374898430 709092153 839995334 153720813 63275835 741284613 818851259 858250812 180735260 328637636 484210694 705014824 958174110 781717210 965923583 743923414 329253503 342995049 958384626 743158965 563621688 709825700 889274232 670989236 829738034 517979209 38175618 958317076 560124362 321932537 170805537 724345191 562090547 929239371 872445383 670989236 252711754 429773172 849100600 963729940 830183627 864459540 126903335 28018728 206734937 343151782 673995458 660177250 947726870 313973057 250237237 368332175 59403495 466189618 706200200 443509155 927974224 793541473 965927109 459599058 967971182 94659341 893957547 702001089 722795000 573413763 779653906 927925326 111658393 332284589 374507229 750576805 908753318 681130693 864134833 932280714 399304456 832232164 840911169 201866996 476500603 827264714 721027572 874780839 391772456 741443160 383045738 111185532 311246689 593910114 63586757 81318585 112399762 250150018 471802747 873443374 208009533 677788051 377293139 866824529 326220384 477746651 596703235 990155913 815671568 914030853 574487669 824433393 264190615 780355396 358079882 362580123 889795559 216211977 120875829 427520268 954132723 130521467 688874477 460494911 573185405 905537402 990845561 230846667 492313618 547971236 550817654 619456329 6102506 906102199 581795282 915177701 699325261 485589932 710093021 747902331 936834115 448869512 678729372 691595278 907683372 888723429 258833954 389922723 132764142 516677137 276197540 968608741 936011542 590042693 883086025 18179698 126949712 731552410 982082173 769846907 933688862 551849215 793120760 559333084 770649824 823161164 202881915 400911537 207795783 193652505 819781896 690867837 867193015 103863613 414458967 988128205 777501802 889197972 118091307 919137975 817142288 555467731 51130275 782036851 116019053 371070861 799925211 280062703 717440800 151147718 990009492 493581074 936049780 50801885 661385646 34282668 835278574 218408680 776819181 986930986 902971713 114421983 760069646 268882009 80626576 97397835 863384086 879236897 96846171 794080466 632925457 876094304 450833607 48810482 800481030 787525900 384631658 33459977 408627569 131045510 719936570 740848921 938561105 857598000 154051253 71851124 260802471 687266673 797981530 962928450 961742382 239780902 851085442 870590795 328825642 89743175 581355318 876998758 507109356 562465927 916584156 945834107 544034524 917143269 420220891 156324293 912022730 851912577 846756012 736402646 882669795 785786464 110138809 877465036 516602686 853877023 937814717 860849495 670989236 876669466 821109778 648121083 425158905 856368714 808252287 643300032 670989236 942504862 910108241 392314401 688263431 347526097 370453652 863795586 801275643 802653670 834173892 314291784 594223981 997054821 504907135 647665360 892230124 970531224 459495166 901406918 666854357 974491412 999739250 250886974 984259616 638621583 697779912 211278821 552334495 274741455 148714240 578104675 259598380 89846521 835924650 824994535 370784072 794422741 835353559 373164593 797876436 364860444 885862881 841985946 707296165 836759716 677477981 893291231 326551935 641962079 945019243 761110234 741196129 737556639 789307709 325458635 358507355 313375684 311245003 764129859 724118409 732788402 733598434 773569543 801997395 577402933 622013485 775248329 584113506 453800748 332140487 542305067 717146603 753148095 4354482 664003847 959626797 556161994 302205647 872977914 751050966 742842549 603744225 915339974 717021743 334271659 848379551 819247454 751562259 747979739 192060771 904118751 840994014 504661489 477117847 807289778 983674261 919617472 858032569 907781970 976238653 490247038 849737519 83199487 950071644 207242634 881177853 985453660 819606947 672716982 816770436 738677630 3628145 385823386 856711084 567949893 978344770 334060142 790117728 779245979 34401692 688971726 837422289 773565279 421121734 275656589 731291248 204422855 245992680 389090004 834989865 680679328 20202799 767890468 232379144 198835802 682684951 891684527 296192298 325118221 282762960 357350195 900142547 243476296 122891079 513888635 746875266 492004410 312973210 802676372 452892577 982916952 749149935 218342025 111407372 772394967 368458045 583115860 921423177 363495575 952620793 679303224 860972831 167180513 684270488 935238417 640325068 590184888 659407661 721629214 896405742 946514692 855751379 848499953 750623643 769864946 353225416 331748904 731992411 880086566 719855581 319515572 281769619 664854378 429039291 327657726 37005871 39629023 2089835 670989236 594716402 889027439 128056987 475401882 42864679 124164692 777223093 481791407 648407331 767722031 782261222 775788211 138153872 411987600 489037346 9167751 856328471 670989236 940253003 777234532 732022493 488571924 881059225 599279103 146150395 545501482 348853696 901730487 770850320 670989236 393904102 806179060 871892472 974257996 842701301 572528959 776264204 905572400 681485550 877348809 594242274 6506037 516739286 718383638 717779840 827066082 800699806 571964178 34607426 906767037 216220021 676561356 49074798 416525198 400848836 775857329 177520524 2277291 586556133 753028432 844022623 271336671 816687581 545209105 268530260 248513603 432522919 747263022 385672764 119743915 827062303 193145845 393232946 921450874 809587410 698054732 780415957 146403685 128558296 456635550 818638539 928471920 878748134 40193098 732551141 746840804 616016879 512611780 917215126 449937114 949020525 812651044 570601633 978210509 607765797 725675580 949284072 665791979 953050492 633175492 807051497 557628401 971752721 457352733 324299504 675166363 503131982 77322101 131288680 709005442 957622614 353938498 353052816 212227377 634132840 846928016 78743620 847263771 674584074 411220923 721239345 660135638 132109121 876665146 272871729 24850138 989159055 993564540 55121318 205468318 62971267 611612420 997906046 867168854 758597956 537770022 712170258 30944214 914811231 807639507 737222110 683164462 670989236 734485475 46212994 948044973 852242799 689424941 93350532 642336859 885092469 591575947 928297180 507050622 26108406 784646567 769921551 312944434 980530542 26573892 966524019 527094096 290176309 696562292 745314835 454041455 740000403 492475035 357625809 125325992 727056582 953099773 162407040 541831425 953818019 959802958 326575875 53679659 150171902 806149997 696479356 985439146 449636648 65904809 464110706 975822908 873601602 372897849 470939608 472526594 841528551 725708111 928480512 658968595 424008558 670989236 267008967 70965543 685863067 748107403 339942008 548617554 884337440 778012358 614549860 319117267 304900381 532019619 892957569 995653626 878142452 679531993 450304618 55410392 806567150 999346645 162859322 892459266 764039122 548552498 703098052 618846481 947748104 656460157 929963510 682292085 376651069 424376715 879076744 42579884 780546731 264896689 804923414 819742199 849386493 140775681 389154509 776775386 867145890 775912556 365584733 368089825 990188263 697687158 31229888 841495462 145746911 78680885 936737818 985465892 474843578 502238382 755404007 223279076 625894272 646173900 942206299 396250249 538089852 86963670 287802867 783086817 800661654 693413897 785263762 713733555 488716104 976523915 839656262 3660801 110435037 677204965 815254141 726084790 655859406 884535287 527488145 739776785 332443313 965244475 12589758 520705796 908099841 248575883 763257104 533828146 631234664 718050732 811988464 906511670 664446089 863328410 543912321 891784283 64136403 409369761 988429090 485922349 778670459 829533377 189921017 983579748 934378668 329801493 989275984 510824402 966195042 151588325 985770007 719388010 171561823 370143914 195847211 818535837 117373046 919326145 880167167 630163706 132001258 914038202 707353556 621397937 136285231 400819074 517052003 464899694 320889192 350971573 891291817 674197657 163288234 259521774 681753548 201719793 353951043 155842493 234925841 165924961 439289677 274289673 704364084 156671712 386321804 291315403 789221479 181338510 97373298 824790790 642469767 638943671 878692213 868463237 287384720 969039176 505537258 468670517 906524545 970916953 906066611 154338271 467003338 791636441 63799363 363209286 765658492 31830240 484321191 547299485 887691437 702355803 91190371 721135727 843449914 652757205 996792972 683146134 674669292 835311038 992195480 703047670 670989236 612154919 730678880 672947791 51239014 742182978 28178048 964585025 39061490 156488093 841119527 670989236 934592892 494111537 847053610 186624759 697398797 727737849 919406679 730064437 953440384 128409852 58809372 447454051 939018203 960519774 780054153 62191696 985810970 957849188 886240459 908122047 941766033 650093494 670989236 339330508 3938659 24567210 542765058 165224707 425599414 584245856 796047952 756454311 896462545 972390799 359662355 589074364 640007417 723743386 419023847 489110170 606480300 838739699 755812903 654055204 560829610 503778765 554608628 37846892 92126423 468497358 638077741 486988759 403128353 521783780 477937172 106757330 820532078 727788212 716534084 966812621 970353172 493433507 820598167 739769397 565102953 891526897 948845618 838075167 844694364 726764606 663255570 798764723 349183126 782759913 664032874 981392402 73362055 500430972 798179485 402125087 519525039 244453159 848310562 442347720 774991436 798654187 991109043 780432234 951701836 538306783 840026645 493928479 807898785 923751911 315854497 297920720 73875310 914141326 377649668 812222458 640248975 789032004 747181077 500619946 349591972 405527915 868185786 654524653 43648965 845317387 420248846 893223628 826594239 750618459 865869294 769463733 836497782 197240223 864941202 818328483 486995296 652474611 264552101 79986739 808368087 296180915 114932151 670989236 211717775 837547564 812563145 116862556 940001698 866726177 676013068 528319261 481671027 370515874 670989236 847779619 592262177 620762626 996714697 18062492 814821870 873533155 179273679 349476696 886475369 534857301 897286771 949767976 602945299 529158216 946091196 368757246 792421990 954973433 876496033 478089265 986626000 757141653 359273215 264690454 558333843 876585297 493083285 581288941 705524321 679015536 819923949 727158215 727714971 329005922 365683468 755340820 270181193 880619806 274889847 86476600 879107014 766526011 737870539 958233814 990174437 971321846 752541291 810551591 585628135 248038641 902167902 430117828 670989236 224219282 809370756 980469396 293963559 797738891 399365714 572903002 931831790 624469683 261201110 220156814 335416994 692576393 395115274 981912796 716406201 862669153 9685093 676393500 433333754 849868954 775046052 962574655 861016685 681118370 767698334 775852305 706680337 941406680 671212889 907666182 422632630 233141640 303677531 631796858 685468755 792325309 832847647 71951928 252713152 858725412 122468120 934392067 422979690 300876961 622012367 629244553 256668178 54969130 841914214 338450851 365672169 428799785 988964260 505937860 404443628 296794367 412407728 724913233 220815566 396155924 364646109 844480726 728387152 19480658 438077074 349092956 941977135 740284436 395431612 848170506 806995791 773343384 263207252 737537834 10583794 283781588 711891902 341239858 96612461 799111627 905659229 678388564 425995339 962652420 753259482 203555410 32794450 641049880 476807087 925385853 868178158 481561908 162984837 832300831 430338933 720287255 181916155 276406219 155020547 935012382 280141589 806222644 121008558 253781291 650079414 379406236 720182367 828036784 421293669 888643520 702849650 793403688 277002687 987595383 351782815 964338370 459220934 982269015 558736185 126640064 907728131 650906056 28503087 949204338 660164033 243695218 925928573 131179928 119591402 253070604 618630752 855217887 597770742 238234756 520205002 252853795 751399482 670989236 670989236 939784568 569393751 464549657 997449644 699449275 921862272 866064004 639864386 890205652 700602000 531185146 956807679 207620548 829815757 485446853 993282890 268277995 719472361 937136209 828337725 707087483 23467508 158685969 544828132 771655699 756065366 186643342 220059369 250313727 313726214 121796084 494708916 828848229 862697525 145950821 630283928 357354404 529345034 807485386 752459815 924793516 305310637 719677459 596576705 674355326 199194746 194638914 569513825 645227762 735957974 666725471 320698249 369529663 710478766 913977414 872605231 696634173 995638926 378477068 531791757 245767643 804130703 874713503 851645473 224691919 728453728 821195989 681731712 226960439 752442952 843315465 718177139 170495292 119926889 973952196 865986689 743913188 97836693 964230370 91165104 192555515 775012302 925007609 187921795 615823309 241594813 474769457 892274227 679265192 103751797 190081491 926661255 367314634 62089176 887148808 720358083 693495826 820080523 983242581 420350352 901324939 535099464 467038082 211976599 58271720 906277860 789888350 800449934 156266657 852040328 990315340 991054104 606562748 963522348 271936713 219375740 846299912 956311066 965154606 904618417 774548458 986934175 533717625 579196379 950249198 670989236 830336087 784800145 621939887 15371715 133316636 965227059 837502397 468576430 721925754 32905647 304946190 42977067 63945060 282622559 269029832 655407180 720380726 9737006 540537533 951089658 302915018 442098503 179673236 686006465 758525100 556912809 763236499 639623894 779627697 696070158 630229850 673049795 534286782 218541718 997397086 792096156 129741426 709998088 140694591 922073013 863576269 289280010 348807192 569497189 899442142 86195482 122441453 543969923 165929751 260212184 362884924 670989236 955845384 151459055 594973622 757070223 967750215 502492206 739469538 704236882 983150783 900686478 408166895 650580505 178210737 325010315 922007055 841667176 351182970 140662737 142834108 678742945 957374223 686151771 977038377 756111929 771955911 778199854 214500417 204708913 288592549 313603486 396271165 59870917 477254589 853293572 995051802 449905916 356203849 399318394 589829996 862246507 290631574 791199026 204094308 495227017 757703900 868829825 929869991 770844101 106698967 235918848 102444870 200984493 142223917 926210145 242151829 670989236 670989236 481951603 852882967 905233632 796922051 88388739 754762385 568336529 27587297 912914600 700084632 887713987 323329389 244605883 792120451 856008412 765465622 171019001 676583338 516904641 976336986 422892928 816367813 981550848 752921753 895529745 845972803 135731472 826121511 38734327 817539838 461339312 590745009 340265381 993075226 957686317 614699221 951207089 905084424 877736976 752263776 969364863 375262226 49417946 226735560 918792523 602959260 268831471 803689468 140899213 850007959 670989236 31419012 850313708 540950347 574681531 944362371 4013010 31585155 852723358 939276271 896702727 523626406 931066846 666559679 156292110 631381525 826434705 882416231 682677572 739477370 92617510 731778759 372236169 363282392 85248614 487188449 171243182 416448731 695044882 672819784 273477395 694225696 897813534 625332537 202205442 877176869 567644118 982673536 712200847 215857867 182228194 742630672 35257262 813433152 972143555 744091395 763108100 553932590 857315019 954703222 274389587 138641282 515769862 728969291 691002370 253452869 875472539 692870769 697845371 851081561 192340791 201139086 749235956 755034207 964186461 812581085 675742995 391043928 907598431 956728385 846148640 832665564 737590367 178227929 42631901 820258000 840618116 951885864 827229493 555467509 252713263 282411109 435108978 874410832 890824254 117576657 60366755 52534552 868020925 681365635 468354201 457571267 861832108 128189976 936159849 960047174 392117668 274888898 982928419 104780869 317433651 930370080 414341788 445650082 99429046 597729714 5583047 758718848 253541342 940814205 928247695 856491026 675623108 216081521 391870199 51005479 973716355 407238121 167316596 999462962 935790095 699416274 453529696 148318994 160452650 786616457 300738431 644120613 537481429 659397074 722086685 806635368 611993099 992087840 205670254 673135810 670989236 217096518 270692484 833441177 474319373 473462471 718690912 138149555 129182633 712743689 54377895 246199504 913883708 249963115 280584317 513360454 463815396 183781491 34335210 9249697 575683176 812510279 748913570 524621569 934211859 280794578 894035799 901280580 497819891 603244012 772772024 164179603 683352911 284663321 874602568 657403755 988643189 343983918 79984307 103258031 203916005 896741829 634652121 83026254 427118079 190450723 222868241 950778243 530500394 23059569 30724769 735893048 194610892 679605626 164596202 654064886 655621039 212174231 940880253 487514628 575616741 952172908 931289799 854100560 891456702 838181407 119807669 906515222 631578602 132986123 747830262 979219406 252653563 717281941 864452791 140181688 735954021 995367232 500096571 892986324 173511672 382430891 800568423 699858188 662058195 905753752 930620840 849744393 813011223 886828709 239214827 673770850 670989236 119441279 372344288 893878283 569548001 494547205 126412251 609920065 857907736 339836115 838622888 321273203 409501366 850642827 303883807 658692680 990104808 639533014 102404385 888502229 166750993 956660322 834232805 684189403 498245832 606467041 441559629 670989236 968293481 840374306 844518386 836943252 65250886 533674635 471621679 514753823 477840793 727913965 270393876 601028229 928148684 943300083 175417208 60773826 46797066 708929265 381981180 798649465 897437038 947834013 896038903 794552571 968827745 725891032 115901480 450756418 436791308 656233232 757552259 114417139 334953616 240983416 417889549 395523424 776177622 938884310 731599656 488038553 257954305 952004182 155036437 880359433 438461463 118005586 527082089 797752946 938238504 982468769 716527547 488934363 716142427 588059467 201997810 937496061 138173017 214238657 50097510 26661491 869422634 960827224 887416159 334413085 269609582 270985532 767027174 111813322 850061297 217546591 949276709 142151607 101622186 925000561 903256712 428279733 984322030 399038992 798678814 928914797 313343912 962006366 873036780 753222543 625570105 90018098 281366007 8365774 382601638 35099862 444627826 725186696 632681335 765725796 718770005 349296520 215963675 564531445 108043755 254507283 935132628 175572459 492834941 528861893 124356982 717876686 738113676 821169749 161688353 937866547 247799360 9995999 307138880 43983011 946807101 856175022 883562825 409289076 907919868 169654045 614497554 728958171 382205353 693273723 213906600 779898655 411364901 30583916 690518598 33208315 871881180 294743730 182659174 761396676 663475975 691075311 385477433 819623428 678245391 725968366 58590312 485916221 572960081 713164930 830034597 683946100 416549470 186035597 348034121 998509185 927667749 683493632 991782318 694251049 457949812 475200169 242637752 391536376 213011945 885397572 249120734 494503721 675530049 490490562 15962195 670989236 748073694 952276648 854096665 274201755 617185716 761220465 622191041 39126576 758905451 70417340 591381723 780033649 76662495 424774120 811275780 308487914 467910962 822005096 670989236 937395214 226500749 866385106 20141796 673393706 552524456 833041261 473569447 588343919 395562570 960502923 472347282 967681217 81475166 599408161 709737917 892648967 490812555 929823767 218862860 779605817 610459777 81774629 272952100 927562303 416759134 967485761 715791652 985952333 576654860 873821187 994178891 213139407 930866582 907886115 278167841 422918198 772721615 365615412 966530602 209459574 8759498 511418807 698422114 820708951 650276376 448345155 431312155 193044425 427122405 696606017 288461312 928475179 802663231 288123837 950163040 833571260 609164210 559087400 712494057 401898552 997826549 388709371 164745542 968307314 292524719 404373096 420604523 979585553 328999170 413292466 739663749 926514126 684697773 71505975 726049222 131648863 822080552 606208169 697998099 702297315 473684056 633710417 761167249 173172574 939445183 205164397 988980202 745061230 725849782 45763310 910121179 16437982 445712514 885667130 790354100 276745210 758818396 508305515 684531613 802424644 520289534 129972533 751415009 315728668 905273572 15378726 659280621 804526001 379426616 81517863 921067791 355378423 760681136 302760734 170067090 985689173 384719707 33544618 791003996 562803076 365160237 881536309 747781249 872139759 307520623 929149771 346125830 770880781 712792975 495669406 105184984 847728409 992551559 484021819 931411362 142240482 701295781 983030856 609960685 415428135 43553591 671679199 712418240 516014219 396289019 533838031 954669770 938597940 674358613 215029759 273878893 242022944 51567979 142127112 589800721 954896843 758166711 175993072 268199484 499571345 385559785 882220386 191199442 514037947 652325858 345137936 832295710 997223207 862499989 970379015 615037985 670494423 571529000 728197739 811108875 786574118 377646571 796403648 852775091 774185169 722321296 865810168 616511104 739111843 534058401 895530620 465831206 366589314 314438465 852963350 744860682 982557001 324257252 957033890 736445985 65436900 409501175 951082378 624788596 95014407 269760281 610661375 693755109 640510854 823236279 123069635 985960462 711015402 670989236 712198410 667494570 936053836 336228418 741177032 715278642 915250537 670989236 571630004 107894118 715441157 44669735 708581174 7097374 873137603 293283065 821091365 76190709 890045668 714627015 669832719 235982870 897294036 697836110 833901271 905414474 633289097 271968066 742951301 640252465 531482488 822228222 778752940 719141266 806809837 410839705 439479274 976600858 186305557 671080450 802688693 332819256 713194644 860143144 729523196 544765305 96412455 907913089 912319485 303968649 452767548 454892184 749233534 789839388 58253096 908903732 716132071 839647622 972637444 149289205 778000742 953603086 708101007 774756982 814908444 920297761 281465015 760510354 724765741 923404076 279956121 976469403 345693929 657021283 773162753 694101585 783241531 439172792 834108935 860555009 486332191 884797721 472094187 982880693 180235647 199687080 842563313 898326902 694592741 536352904 225567722 174085894 618325302 846214558 816499247 589667460 283887385 939344651 364359369 831383695 890109155 601182715 591526851 690125115 159233263 284799133 482405750 670989236 674269309 696470503 120726312 404435699 799170492 652802243 902405518 965118600 233067640 831874333 779775606 520172517 938582705 46065803 831093268 906975255 945351904 148979112 841033423 930421108 675404770 812459405 928890632 762443537 382982120 615762364 279095883 23064009 42276944 802164665 305224266 241538565 701538005 984174406 914896138 763685596 179364099 74521533 999012801 675246321 450071345 951146030 874109481 337786336 352806400 427188806 805481647 51021122 997239573 893026709 449876851 234881235 534655991 168250523 49793377 673987648 554127285 519035979 307591550 527839132 670989236 815438052 483868500 589904615 892740873 498305259 99670562 170399718 438745152 47130772 818483255 77695486 732853845 687247881 924105742 555289665 961158840 936202302 324386378 518384549 389061886 991058421 969764282 922240585 404101583 139295974 799948376 778600935 697570284 126531819 403031527 601139600 262440119 246234397 674428314 368517030 871878067 663545006 856295854 977434901 941132243 803828425 568443255 61562541 180434947 627541159 149558182 756422298 641292462 4680014 876498008 836282204 696870207 842647603 515234419 4194939 711368018 569709932 443784558 756304705 664479135 892718703 32029352 157051039 192492282 698692730 359061323 371091127 914121209 280029646 854853512 853688056 214842169 818667767 554848459 692770614 611240853 658350722 980035728 263773887 366584895 331298327 670989236 829417708 958155972 947972009 914774139 30750134 687472091 851647048 390980202 774554283 916053437 456916308 318750856 212916960 699160034 355603589 421564286 763558652 929519107 882633190 609407251 794286885 681621619 841375715 388573526 971173054 449000051 577727066 895811868 873949560 250373380 372474286 645398661 898700539 677311892 974331480 805388713 415261853 732767497 585379410 890702482 482446735 211136232 525192192 735772927 887743002 440843026 505708490 398246591 691902862 936660456 821236555 559076588 936657302 321328438 450338176 30836797 92756117 860176794 384120481 667052775 850656917 759774457 402228646 714827905 336909315 347616875 25891596 816703897 406073726 316537498 580624387 749685956 570929109 934440858 102859276 15719920 975433928 991590043 794564256 849109053 460947697 925213476 677654822 677297794 861829734 872414518 228279432 812500807 384286253 648459535 905889902 825859473 783085714 443638491 727567976 492542749 965642424 999354505 178632181 704371602 776957117 386491283 909895810 155384271 725694990 933432418 456571088 806279432 683072434 580423544 500658849 928520829 797341642 885786078 133966883 606992265 947778022 846102366 992627408 263824123 587049590 934832066 55301924 872389971 905544578 28654387 583046773 947167397 726336667 446168381 741305004 698391823 221706902 949493573 553523747 155729624 782539411 260936407 219685283 658630490 957085031 633481646 825152506 869166341 642181078 96265703 436390703 695893391 851621604 441591401 936029315 513835837 847542052 880127682 739744794 350063794 570406480 915543904 599260015 701361224 366332684 955381420 642541184 823828518 754525586 50611849 966047588 685133522 174873546 835801223 928954763 686646349 821005995 354059539 863299383 559574903 712721238 510914776 554626412 730362446 987902315 707146709 621930207 753365571 932318092 764981012 848839616 861827855 101026466 622516947 780491755 835847093 684384371 995537087 595776872 3507825 889240568 73889866 837000857 159016468 425915093 552655570 200807388 264797887 808052910 728651485 72126856 846426455 739219357 456966267 805645449 802358266 683296240 330860005 909377868 584316282 791524975 861431700 731082457 555143177 65209759 453261601 893420464 875213812 385611505 79094616 36007287 973894838 906234478 26777964 670989236 968024258 49369091 931597950 658008701 861056823 616201142 614805713 304320574 179211813 632307091 494638175 171322948 873073002 868645139 661365828 93471908 402989008 678792600 242028338 408593970 816256152 867644890 261375699 254530186 898734553 781883645 83248984 371913268 776642309 903049907 967529856 994193082 26929970 525294423 319180343 326107462 849541279 530963124 733879466 988646025 720858418 407708451 282825748 764640872 946863300 490074702 133552771 876496160 830961664 894562016 960928543 342049117 480059971 444074693 640075958 789639971 956900138 367500322 746289345 777881401 785542404 779201734 618699818 14578042 890746361 212632028 120164150 801505691 533872908 13650376 698816580 481123559 403770477 753296950 906490458 424931557 782021270 681698907 407335048 734892657 902302502 704587103 17295711 874370315 983274626 710904601 671020210 757147342 994612756 960201525 479588674 668729293 744605348 308642966 250851511 670989236 951666873 63422425 620975311 524153685 209482322 900587540 717294472 756188671 822850652 988381187 366594520 857762475 604961798 818492748 666096595 730362266 850874328 431535537 809529970 948632422 12479738 263957551 667642395 749857076 881408347 920147218 908297377 892777205 750946528 837019256 21162442 762595552 729302490 700301405 860204896 760295181 670989236 670989236 322892810 752839968 741646146 585678344 459189810 888067164 925475113 915903286 736432191 693972493 470038474 658123721 374323779 499458327 768487813 972714499 408902714 699429945 953696058 948436958 91156213 884738858 511076898 942095366 83700693 432931450 946661511 670989236 1736499 712698943 375967134 934582043 765232739 185540952 414247780 392572839 930347663 796333350 256792345 576898805 765249285 463959450 195732262 280095401 217676469 58027451 963395987 980603751 900588377 851915542 974907611 772185019 858973245 714030292 491844628 980802144 455013485 204404230 87753626 927294167 25108535 862979394 287979339 994199122 990117788 932901255 177039389 695778101 780119962 781616492 953383073 980701626 219146652 226299840 903895025 571513253 957120673 545249351 577300726 408426293 817448630 993840317 984474651 817285470 785521768 677651484 90861068 659858532 699065070 408656064 996049377 469540922 288406185 62755235 62413710 773575565 126507894 899889793 494878323 618258185 796855598 621672105 105931912 866359951 992650619 381844912 895045332 95037606 731445661 688572646 929513562 736171010 235127668 209195138 858161387 179146600 769596308 882699674 323761327 137673700 861210405 780633671 943341985 516930056 513144974 404603003 776639396 249928455 221550757 108525103 623078292 711605250 549244180 182516952 891244296 758845096 65526204 896313179 998105009 910083679 753503960 800764427 538770631 966072937 659316596 862852231 950106348 255454813 731077973 689331734 169508753 379781216 841388714 6212759 290724312 931070173 22213062 343693407 46878356 762510120 53768346 420395996 787870231 991473603 194920022 733053750 631919877 796903054 710769228 697719137 956896434 605191673 373007632 838856159 49135138 705742506 489436020 512242435 526296838 430699327 939894223 740747360 966761643 399910524 13281612 122951100 889102501 81218420 686261218 996179638 780360557 880430405 672364959 805645855 28693564 65146560 462578679 433896925 164922521 821870655 70401081 254398875 188520199 924148000 924872903 36450812 933665827 893310760 712225405 664308253 762592275 841264378 269692938 454767738 881717222 950493798 951057545 476780671 143649358 800907893 156852359 561417271 634553058 69992664 652778966 616333936 666249630 44520699 540008299 529236689 927648861 709030498 870108219 738345233 208220470 987043494 982029236 507328386 694156167 216764671 454821933 452438087 184369379 807621477 399733333 213331982 631299279 42626199 655187676 684381158 87272076 389885203 515378318 779286232 897979156 68345172 895407381 666025212 724762011 328183273 833332019 760254082 6079769 262093053 950130941 60596853 887837250 783750796 939154483 88438358 271771052 893221149 410491425 753535841 456779179 82205550 670989236 675933201 254111961 84413611 965213619 750775979 683578563 811222104 541290172 460446670 53694863 112357744 226446610 769111704 904078998 261297908 882586538 374621486 862610688 709603355 311194303 825258381 44318990 43234734 822530888 689286317 779364859 151036263 793499298 365068961 827284399 884863907 164368710 931738806 583922049 951111147 657239209 748000492 594806339 291769361 557545692 314509077 748546500 651252854 192739994 670883883 738036127 724257634 125405151 903426773 241277044 342544332 843832262 449669100 917244330 670989236 54544804 18585739 167523409 795652198 530614124 731821145 693656321 796635133 474799864 573126649 947451620 249200741 974492567 408546906 168521307 371691710 696265143 901048865 178947203 902078178 173605526 670989236 914556826 647621912 313061483 818582752 717151497 157864581 585960032 791913869 82565284 678389381 202930811 831416236 828605802 11373836 434790179 221543268 759167256 672498398 663441072 842756560 627021813 752841534 330328528 97695106 279705273 874720097 472667719 473747670 476686976 920326474 477661813 557742718 363178903 799506682 900548266 883368561 890711057 693511094 122775588 788227703 887379456 832936434 512991427 11606756 520147203 976146724 397855000 402481382 833816305 956552730 458136144 768342738 859420953 347886981 103411000 449334049 924945170 595208610 926047659 804001526 694895116 843798601 503717213 236293413 881442354 732616412 318192421 672606962 507710872 839649871 390980832 874008714 491662080 372145653 986533919 750185670 261106575 807894565 717920429 839098008 753226078 581405456 565328413 623339686 288656294 46178287 455163665 272006794 864762712 91565315 421360290 793441603 347986134 961759991 889664286 871888748 862897238 933526494 945164363 550616107 526827700 836341305 840421289 305272320 813498672 387395761 920080041 722685510 725316442 684695584 94943072 811692895 912660811 709743461 750240789 906645981 229400728 190608503 202619077 323172704 79584553 624535119 267266792 689258991 441068430 916378314 872144228 841260871 718536177 568327460 965600278 938543070 874704656 489041790 90821908 847699086 737187915 898813541 484021816 935549481 355192724 253411607 60620078 853001034 445527202 683131916 621660432 121190703 261957363 686878211 932190310 465064970 318983074 791977559 235966924 799994394 219789773 742984459 558653225 72524866 804446941 523700959 805663849 430494189 373365740 709610288 756705624 954402009 931973836 685150574 745512177 903149629 725463919 710629988 97485921 316351418 93045929 335565367 247974880 675463702 415170283 777266474 684615990 494912599 351337132 2606727 840834270 764470882 317247684 334498311 353987684 653880246 721587685 937879650 205021616 462852326 835191893 684517508 562399435 890810990 927961156 393959986 966393941 729965865 872651361 896727218 985201441 107448310 529672536 270747325 833466647 918388681 480874229 721890401 168830007 743784665 4055030 91690407 619059195 257066043 84161160 790618891 842041107 991648793 754368976 697789709 584033855 661570243 856072769 459865378 886088100 677010221 606427846 519593331 865947293 992058152 977534742 874117211 778483585 625808770 540921516 892815149 785915608 463643162 973908243 203010809 727830629 770805293 675625721 520177986 288416948 669826446 376450696 911750126 142484860 712771093 774375900 746116730 643392069 761902235 993280128 938977940 540064442 710487010 558650653 518151429 5926402 953709773 299439454 167170349 684233030 483763663 844033763 802881342 895127223 809949496 995397290 960916849 962001290 74699247 254746654 237796502 891527775 527451904 264455241 663150246 958660900 511621478 638656213 245238599 672329537 142163893 313377827 593016261 145340397 651870972 746817081 141846544 114474529 855869729 797772376 33788119 781318569 706593587 958447393 78668800 979465437 293128230 766195618 875283886 866521897 942117780 338705921 894907682 289351563 907588957 889358997 500243288 717544374 791784434 765279155 191674818 162237335 860459177 957530950 115555755 84524980 182271393 553604926 990175650 643886977 492731180 462640980 416821579 92029168 158974108 380150111 284720904 956647006 232475504 379369743 224400045 141235117 840999657 671716619 506680489 79978045 814100615 905973050 195943575 313473286 670989236 770912336 293904490 895987194 871346954 949660851 653527800 380675505 277471587 685098233 892611935 828147124 710078205 975355014 333642904 526658090 699621989 670989236 985316433 889885994 407640753 961569191 49147709 284110485 830427267 816016710 228855146 792823856 742399148 210166721 670989236 644964532 590094404 328929829 929121559 243748433 423605609 268012653 763578829 81876262 263035398 545825110 41255003 439087272 666347432 823001571 342547134 377334992 346333320 576238031 955402996 752284840 17055180 340329296 733825074 447655366 992486156 977049987 990553913 89805059 741699335 345846848 695260736 764441302 801670701 709780506 399964833 220061374 285133166 369946865 557283226 928662836 945538326 175900702 917316159 967587879 425672769 468297194 918921433 464552093 949400921 589261979 862577571 270571871 787064567 905563723 824113020 471514531 457312481 211950678 231225340 74253272 976768472 771094481 256511847 796173517 436063550 696210700 478018018 639599983 988522544 200797863 959554046 928583313 827250228 840134146 904022938 994458613 855308526 870609870 692056950 566206053 262404938 841787683 35377134 739573948 698261639 348614994 913343958 633549334 852540699 331226029 543527942 206135130 481868224 681051131 904084189 220826920 946099691 249660524 167054811 440265215 227702210 697287337 846757843 708000753 333002490 481736606 901523584 430447278 90038550 1088614 838880716 225828647 235217094 847818600 236300064 518147248 934032950 465445900 357985733 512320359 755160533 727502231 164737210 952147634 306042600 981626849 642248426 944776333 846844298 461518734 563518877 881019023 118199492 96588151 942300888 537675056 980857213 742722658 165641571 744656928 747702423 173669536 571891977 999433644 210596581 265568511 719287779 946937278 480756606 966467402 777010885 756849573 723852566 919703183 752412422 714152037 495061653 110709019 990012215 849665968 928548489 470390300 926927624 465980371 73804882 90917879 721160256 24083360 14445417 593008562 329069074 762080309 940659393 609759115 353363504 993015687 920202266 460468409 537935828 991570251 481821903 857978126 710268293 687092115 902165940 766849517 186172218 792731749 688193654 960358712 793155725 670329880 764344680 521126646 709088617 802976451 390857875 380294043 691655444 204733420 744845753 766123752 991655423 489817225 71504439 774966350 852677192 714517675 603079514 161363817 814185312 550382223 862863380 757532935 485557725 210453026 900323983 510966444 232003198 682360870 738785564 865175238 998254326 807840628 671792248 95467961 552856068 930394652 122614063 751704129 924296280 385828438 470206480 31854182 137347396 780103651 569896528 457582706 553804710 683073083 57524411 786925748 762006988 759668805 90576324 440890861 318401226 869730470 686729803 827133069 62393940 310176175 825696498 708239996 575758312 13362506 415409922 624093898 814537444 413072748 767687789 620202552 779325470 766686242 485153754 670989236 784615282 518085251 97804786 595733384 791997880 23939888 591395167 83594750 955246080 736354052 941629175 948430990 761467310 364537388 667673283 468130587 338573103 922884580 819371007 148269135 215469162 670989236 941731359 307123650 846485465 470466051 54667180 402747035 672091543 179881709 855020588 800412928 800789013 731127884 191566755 941693153 820443472 468147170 777161272 598068466 734594901 400695231 672651515 91046518 957453629 622193357 971209806 787329587 414700032 990162557 331223615 983166931 984207473 504219677 731003375 710876688 838769504 887845054 801155086 670989236 170113836 636455245 753325261 921245211 228098369 894825383 510496360 666632588 783866088 958943123 168880151 110862538 603183246 245649401 822539217 755939895 283976966 946283318 296230393 811675944 319543818 45769895 456054086 880276183 895975780 745202983 900023320 777795130 241169245 843960884 675461134 934042912 998029354 944837419 356722988 930281100 932271268 380280750 391427301 779354777 987880108 7871578 482307866 626840062 893872967 501308802 868656371 968834136 569070054 802210219 791402049 357525146 220171939 937581921 465375769 791945376 329158375 153580433 322123991 619390424 697164994 727134434 431395997 824750617 723059985 508089494 865667258 693116671 690404559 657222602 160195246 957656816 174498238 399887740 787146038 985187068 821268189 492560503 498140725 283334113 387493869 852510158 693586201 398929100 994173364 863018546 872065584 724949576 521040326 408815247 495191779 128132443 552429576 300421785 608437930 730242120 793322027 175214234 744399461 293167041 196305536 88287425 80085993 785619485 979451346 887742944 928378077 918528477 612437882 397221576 770909298 348481744 965894167 326346364 670989236 781133515 608618039 825974078 292422348 633630167 988493639 11771388 884044687 849934438 382879581 738793929 495610629 526659971 925059257 11962829 224315407 982458888 975200273 892805563 526494450 887686063 437774085 166917006 149374279 670989236 994271582 492286412 407411495 427209451 857580025 358300613 50739533 777321235 864808831 867262998 771848521 805984573 506678913 706913500 555917625 962264884 840259772 254271290 900681596 452423121 498609428 930008598 638268229 110188391 427479932 511171137 143481460 463861990 777442289 85425030 277470400 865089261 751493909 707259000 858274752 331694274 307633788 583456376 965801628 201148613 307912906 953823415 931730200 773693575 119632437 620470926 93114653 892351735 839826713 847508069 912402381 530136833 847189904 919746550 872447997 536028231 670989236 640722765 316592590 802474347 400471736 405312592 670989236 870244466 796065184 36486127 41488254 113981825 253161067 760208706 985941140 906031762 559487488 151420028 482317249 105081671 151599155 740482887 659613048 874957074 112624765 872895992 585756890 511758768 774542352 850256066 792173589 819993520 301004082 413550525 822652686 732761193 704827768 662450533 170607192 470843319 858980068 495293038 447078744 382890585 612313131 869796088 971342260 24564627 987780366 741800374 795411665 404089801 711318255 966306798 156595941 713146069 765871636 675495555 949280515 361782567 687235943 67796043 993746208 295081786 101804140 534589281 801578835 792859026 552403272 309598234 28155499 164323394 868329249 526631850 796914225 973837299 670989236 112159233 537901302 779760561 82688665 245433384 98845289 242377333 696927323 859202410 799492675 15420627 450325694 830646594 846772634 959319615 602060090 45144021 551560669 735770668 461486150 962584640 746020065 796056259 333619087 950349906 321203149 761616454 123710640 932278307 495242660 410899388 75821947 864952359 712001937 338335396 801135489 739051381 402622886 330583641 940858604 626315360 858794481 531406702 841597294 485127972 877916746 925289075 943079517 839656323 919571602 340688614 779339910 851236857 197004969 682484808 93718652 262412093 581336310 956263189 782418254 56588663 802742036 955620403 299819977 334091250 179402955 683675954 424878836 11189128 974224936 930429154 208037671 422954367 713058536 962083317 385746535 54406965 793146588 745028006 995804448 660333967 875971097 358387402 426254596 967320065 705592367 887782118 756674314 564563642 797267811 505563503 122055682 353050229 745052126 817783925 697729205 416710962 454311675 129885552 717126047 442795344 837592737 761298079 934753928 468101448 691154870 835065782 285930186 556025415 204084543 401978053 278962831 564957834 273798333 94744042 591209387 41641636 462290457 883326146 976914527 611470863 718408021 829404633 876137639 63785827 420486791 772860072 704507382 849008965 601953525 952450018 82632522 767547660 834194018 990634937 229590372 708877529 952343752 703513811 567797074 310285514 641061745 256787042 688663887 674704896 294937854 824290413 878079988 362793877 511364692 926601647 217278862 721351599 723625491 794948987 311227599 743561758 825725558 916358567 124637473 334652469 964621572 956391127 730312862 670989236 395347055 865858722 316482397 840231919 473992842 174190642 312578285 771792886 716126985 870013329 640742414 360937017 520115466 834447178 880844589 932822490 71168466 921812288 766913921 294138294 961792722 77020071 684255241 871232593 207690460 108480004 976841939 8929570 761211871 848017737 670989236 899855570 750946728 859435929 997853226 848986141 876684994 937113201 786466539 766169129 440046990 94921046 889091364 848585846 443015382 500597790 433963381 931876699 965010035 962630028 947903123 517397465 833778305 817744754 11715428 81728248 642123522 646902420 670989236 925001711 583485269 731245644 654607357 279615738 905239418 956080491 728118394 307590980 916837515 767050065 865954980 470126044 896298831 149624278 961860908 311524323 944481346 85171617 705286346 879115167 292157462 9159307 335064423 749555014 855447516 657257017 512156751 210997001 197194132 208891274 338544109 229985831 825630380 485777208 407856287 904450673 689717611 289266017 670989236 808408938 400791172 883930061 836698083 961833969 883146943 839524043 840464380 859037456 574530136 26484651 508336821 786291091 502229017 997619766 62341332 649107900 943602776 514810726 401195522 891313956 859380221 693706719 538970278 780092701 152378693 847633354 9432009 817477915 623528712 973758301 73070579 569192748 597011704 66840837 883926088 509294613 441794211 751478492 702454102 712491909 908844059 429567998 960309608 870646031 110701244 707268250 366961311 13508214 657106237 116201186 790653319 792632306 338091042 300438820 703234958 852838575 924999699 492944276 749108894 288264969 909465830 885656018 217092939 495643303 675330755 13976510 780492272 803437119 386334787 634242662 433701333 645067428 370152256 777466514 404886811 659156334 959423479 482271667 250907720 691945344 257534455 784755957 798728790 481513458 824820848 735927186 13971895 251171558 648837886 840391403 429295354 710644691 881055069 803887663 505308442 320687438 694542178 480421085 893152962 212981411 824711115 450339041 672030951 216259316 910318945 33979102 694869859 100123270 849048411 873380994 986293755 226486493 986594641 719441428 115350178 983328658 278834782 148330243 600729746 906387191 949458030 290698233 469715216 718400973 931435386 519264581 692942504 871456613 305844287 874737969 684712175 282771601 479081177 674027694 839337020 955694830 745964478 831328169 497469723 931343575 681161318 977324913 414373690 820200615 498822749 144950062 735592584 191131270 732414656 416298748 555054483 950596996 188371520 304565437 809762654 328918147 613708312 470081767 19607634 509717132 681292973 825498769 708601253 463351106 129903785 94348791 370293376 705887399 685994551 899918061 93088466 129572068 503026089 717742075 155901062 71174265 778260144 200396901 841310317 708442672 867438241 124644579 996650059 202138294 882089668 959074133 476665894 315801704 906227163 693690226 400876584 194083337 157566128 372866854 829797003 577193370 952056860 398747360 937394034 688437203 981669 718554161 837758475 508504335 567176615 870466234 337650544 964598476 94110261 964747842 241753677 996627973 982630182 907689351 714121724 855599972 278329958 227084196 154174800 534017091 739177005 849571347 873127791 924091126 273178912 430311559 818719525 803598247 193255916 288294599 870921487 52882962 849854975 50093652 573792314 584509281 241731420 533276315 897261000 2119051 825779907 121540653 629163737 167943963 458901971 209350139 785582427 257514514 366947271 811202637 98373644 685581922 406886821 906831766 220369006 918688835 812793589 707483039 198501358 965144885 670989236 515341117 875852099 763717729 512480031 659102564 599977340 745302763 333944325 616987436 277355335 990185054 356569724 823259424 852489129 877458640 892945416 741519825 728823707 700105400 183945387 603024219 743311225 28203743 40760356 29539612 332252858 82856178 742187666 827186625 395965517 951707949 721971778 559938901 812379609 682477036 799258764 516078887 742182583 719936951 830714723 889859357 811759247 64669567 973648937 993507540 881366775 740508992 974493887 161496942 8846287 323209983 464579054 911475216 779563330 750599173 788269974 901555513 232863848 665997174 555734166 38581155 789737207 959526299 437853459 905217921 732738509 230158601 300911415 315658202 7391866 799460497 981926382 358219017 863671482 549559369 280008354 595156834 626591979 546548269 347666920 944240299 74732661 217750827 988566074 986238705 393713916 589315440 982155974 100271157 715310469 914151745 931169845 713606577 588972895 960822148 855484658 559666597 320066376 816038137 628391110 613222360 997393236 874258296 825154130 937453450 682987892 674044231 717514636 636705243 990560797 780519660 442571282 865626719 680037002 850959133 992689714 843743795 460807839 845755514 405068147 748469954 47718944 345446690 357961166 940883604 654849597 884694721 810160685 352967004 513739103 162022679 91585896 896838453 87867436 886772665 830397210 968181043 991616165 740118250 639363196 997069308 773777377 628069298 179816106 640098103 242400616 730718178 620349198 771231625 512279076 233244506 977043773 859147689 726712576 235532936 940850413 41930240 268152237 638490038 504307840 389742708 263366332 239023888 986310794 925255985 887357415 991438794 46707550 766591092 486268689 95359634 290058351 940863442 804915236 227896664 318405806 109793380 863792170 772496281 594352939 183697260 897612692 886318837 797294614 645476364 945798840 355072686 222473740 847802507 437196387 755597520 14235735 310922142 523324135 737043848 175806229 217999110 971063735 660566654 184589448 634763686 790039189 519933930 724936860 601419286 867839991 799312349 855338926 592753420 563725983 592279838 670989236 106486808 685897106 536260021 728661083 272393674 292047254 899783208 898321391 200583468 333095237 4648400 241089159 735959420 853129872 794552592 515872236 763854133 960341838 979267106 872115796 178405633 621588761 190169750 556687761 455791881 515562231 921953437 985815639 829050746 354450703 296045805 514560788 738960164 714935504 467746582 497377989 789612633 688090284 76330556 36513189 136793358 994817388 844732508 351082677 454108989 852189778 703016137 942597922 300519071 750972332 521765447 635820021 610216851 262199173 796085915 982089975 708801701 831936858 29378748 946691188 319891505 728726770 43252207 634827872 843327735 489666690 945536061 340543609 810767901 293028617 731285551 909838193 713928861 709322833 734606389 787308483 639641348 468188712 911431413 721794122 766251322 935792786 612514620 953233057 965685828 95778203 900013011 186526145 559083179 295378410 721098262 4327849 509589855 895076208 382068381 775286483 276772610 990012482 216963744 807503734 848639653 631975027 776715063 957029757 869602477 725282108 748083364 901844869 184959047 342693408 135742611 34864959 570118227 63224946 670989236 273361148 691002559 744753644 704252505 175267297 791165084 554264138 913716220 465822255 997851895 460917806 582835066 902610922 996554228 765934243 133425471 920254869 834446945 887388167 146786443 679576864 774683814 313155155 716755374 863571219 569183909 278892907 33368564 403351054 207553081 34992875 561841765 141329883 953139076 684004982 448669131 670989236 718283545 727876010 722547942 582200764 488700351 978410679 824473250 954013271 982420077 786537945 719031717 619137377 329290840 832872428 196168945 819131864 880149079 39391170 412376493 391408046 273672432 82670888 358017204 697578509 873070895 888581064 562507078 205792136 193330310 44138191 301122428 304736251 82158463 402194066 246140734 693092442 993252711 652267763 613631172 363745817 997676893 502613157 966316894 50635119 729386507 930904833 894983129 757193854 987742535 354315058 204733325 514539742 275295747 460531496 828792976 460922735 734217814 998421272 710076610 991773261 528588147 788882721 880140327 767354139 453715689 19464049 370543870 865353535 883398985 323920456 200832566 908647985 816787395 946050526 898246168 264420613 216789295 23670262 564925053 648799628 349329018 163298264 667735882 185993079 688578075 808313965 780868563 900513666 914130360 950157762 861527708 799133187 551049274 927197270 998771842 513370267 875958286 382788802 452165575 925629959 238627061 919541263 822979032 284451294 876664497 639776793 27662104 449239312 492157305 713640018 748681402 812738696 337450304 816383718 10317566 226575924 932051679 17067245 55349629 428159895 958445314 785492717 719358491 373968301 674094453 373266545 948381054 330485609 745389132 288850014 683400302 734101928 205163893 522182837 559200503 218361422 452670990 284011467 727224317 360309710 633213675 873794485 725935959 957392157 670989236 321920782 77258954 251902781 667461370 898565145 798459784 103833303 176907353 766704900 758139889 892505653 974161389 582908644 917760422 759408430 693944583 955688547 832721066 908628067 713434483 849886535 564834862 391461137 161335545 291767247 362363976 420602168 983930334 846061989 550616957 974760122 836764416 706733055 981435591 270771148 884930825 360936710 340145521 763531552 692070541 133523200 563182091 579603950 349255999 715770516 123249773 57237920 714109051 944454825 889936124 621957519 296973578 289931674 288561892 878460341 793952116 70463221 982650720 625062934 46299230 532297626 794466445 3265479 254213448 239432722 599671816 991172100 862986561 274048836 373241213 399177262 503951842 495949230 889845836 3563602 147983331 215818283 492600581 913388847 634009030 3327994 764177553 810655098 412025821 148099627 774543940 681967919 978403124 532378756 826204115 512130665 352982604 744288411 345058560 829068382 623332031 589672075 340451180 82609786 988450336 700162107 464241705 333247141 852143736 743754667 769804498 669888035 26602507 896125258 989131438 753312551 35701588 121628119 762729037 445035003 840118344 955211493 949759950 685630177 427734 606602887 923773278 433741413 526639392 870736257 48090034 934222813 848402102 90949040 63570582 43757384 582395124 740255866 642165193 51496199 813265492 805557308 853789301 851502306 511771504 801102939 205257719 796201371 50160786 915571184 503214830 982008089 994565293 891495127 353549787 801150232 982826251 361729495 910703585 993744864 766892312 584763092 620832163 924355252 107830192 898622250 921916401 744772628 856818571 152963649 398395117 300924228 140683732 901896167 792657578 838038308 690613409 789086245 986667322 272901334 832531966 126351635 705591736 235148997 723728824 75827434 121113135 791139487 740887012 529317602 271963011 357994174 622184625 474032285 735472446 612185009 280649131 207643750 993444867 798131240 227691057 309410848 720149464 291142287 454269373 857423027 909553509 58140292 506098281 490901826 198545409 290700772 737794288 95013521 143050799 687578800 732569237 530780580 506197376 589610620 746033980 30666278 321217493 974402526 63514830 541143088 824091261 315963590 192627792 844639127 690787068 754659377 76181465 34905374 160615271 250315395 799555592 972615859 284848878 197533797 498025946 695881705 757996731 485063565 987300062 613050992 112738818 779696520 146906507 817198132 816269404 566883500 709609318 500488678 763280164 79683696 709964082 590964515 558394761 247471485 751865903 44518204 798637436 496938417 848497349 650718607 363785611 680216996 595608848 158091187 487643491 263398968 705828379 225893765 453616891 973370182 679220602 247877072 787279677 924999156 602384660 863631748 688074842 445378901 245289666 223952883 771904037 4739410 784831195 218548427 818967589 963590199 207410250 666910680 174407740 807016883 70617951 307899628 734073591 408824662 47358572 439543648 24067847 350114292 974167358 285798866 713710912 83933268 691519838 393221418 557352921 897170522 763499667 52679947 807965772 939339851 698714074 490153655 769396758 704000808 30645918 944818861 483540943 898836208 11898422 233062041 444830244 381918868 10059735 532008041 402820458 195666380 602237669 38435741 182924655 835997967 980497463 705094442 114395158 220051599 742214997 739190932 967549023 10633630 993809440 964215240 388522568 885818795 802162090 1847860 949400686 375761324 372487685 915819930 748322385 521721120 721039141 93780436 339184532 435395075 799196506 52119126 838246947 889968997 766397467 982839362 711970821 775495991 994459189 795005808 184266851 863427203 766611490 198134843 287247319 695293757 534242652 887144054 917386029 780163817 436773700 712114699 641704409 156423240 834911613 814063457 723166548 763435213 711379732 319755641 293390493 762165238 928957103 837262154 25920286 464552183 577987616 880212160 261921589 685651473 883845419 805212535 211036804 39984468 808461280 85099032 629633219 964663362 176252584 570140683 777020420 950000458 360863 715637334 417935327 991554392 116479117 852999806 710468731 678897962 635526671 518950240 207670981 916359764 785402245 48480867 483627111 712529377 909263421 106924495 328921125 682685602 212619327 861087861 916400790 124089643 131416069 638366460 633371552 50378209 419911115 451662588 27097271 586268998 824746783 610160642 580303445 794914539 222349155 389036571 849205356 696148382 882057291 136324448 984553430 5375924 792847874 61913589 738519748 208124472 434925248 493344672 689565258 524930003 657816832 138424199 580123911 231548048 212425743 107141360 760501819 931487740 540078399 902340691 893930196 541385326 40433522 950542321 750882897 885607563 955710414 685264525 413291420 811842339 92310046 708583090 360929168 625519776 827337881 8783512 752765933 844800234 736709179 994899756 533108301 970976940 456149897 832122951 180963543 817262945 789848987 670989236 154168256 755034376 889858321 680433130 938774520 408138024 799289324 378256296 670989236 337585283 864532965 994730474 849799935 117800343 428892518 833371622 693728799 991185985 698713929 886893842 178083707 816654350 966536293 959281935 557782757 837936796 830091750 795925725 693630463 419715450 472060749 419218201 74114589 855779386 778256160 627392827 818356161 998756587 819424906 992576983 990837487 971931052 713930685 158385394 959366160 919152009 716618474 299000942 842957585 962458193 593476987 513025426 906760080 967543063 865797257 986419128 406070796 928550014 785401096 837371786 741142926 906961488 321354891 46102463 779018698 465771693 767077762 722199043 477302666 799780215 309616478 614011250 921010445 376906173 512390394 677253427 485678124 466656452 903900273 689336071 722224011 319621733 105290600 780903852 825901507 905542049 529464925 763860484 992416808 995428275 47234785 877533300 582969434 205222661 999905684 816665177 953685796 228080643 264646618 269203626 451593297 706333044 899236296 775630685 38560994 96360009 953082278 907260826 371930109 702421113 993584140 681667360 437576466 195200980 971696942 796020482 972809779 931834519 917937020 759690941 39140434 828270740 726484224 330589286 708547773 230427825 713605822 560564537 240610550 722922521 829701790 941948035 700395001 672553876 793574904 549632856 920956251 670989236 25797621 664267996 304340372 34597424 8365442 842159648 33834010 495815032 483781068 152171396 815405308 609217342 553956233 24414873 84110769 250144456 523619917 36079554 811520601 758377052 689527624 360896101 133346079 220402762 803624528 55821664 824007620 19264335 963013061 883760295 77372940 254261300 402252618 765050926 668619095 801326126 691798259 494234465 888709132 475634550 922687369 999005972 459715764 526262872 124748655 81606341 539575072 248315494 763995608 830097806 667302171 770247947 93104702 685055237 765149052 479726040 916683765 284214300 866990399 698905770 522406273 752102002 965479250 599524826 354046068 934354824 473297214 697182670 624839202 670989236 876083839 959173254 780384163 971890377 91152141 178409787 67321120 57681671 928748474 294441171 834007472 286274548 760033138 677000554 694881179 893060383 783254222 831574870 498523605 566476453 843654924 938182577 561441238 652494811 860417364 989218494 690427003 911057208 364596932 585241290 37605996 747000953 899080427 639469609 816704964 873752029 828611789 150590289 881149251 330839203 924025439 963365497 127365644 670989236 589933534 960110310 341820814 974975188 621371492 839786398 984448568 131876467 606024672 25214041 734003215 760801318 155344388 666163474 716243845 280172534 482657533 256396552 831077979 173851039 824873228 571533114 623676417 532366740 950456402 20110514 852843110 335157000 64825139 191980906 45634046 575851000 914580545 388431701 821315725 933510343 686508884 77653259 737297593 174131505 868230765 947991086 312694179 991966983 840765856 289968333 480331992 971523655 752394422 350761756 846922337 887008074 190414829 830425421 897358568 638735581 704475672 360336074 408423580 557260265 502957840 714104870 823475284 175376042 388269684 115779412 398096313 467222682 17522394 358832973 675110608 182294588 400655739 999007437 756844455 717842918 812811145 774641253 927030741 745078331 64698454 977852271 353210799 839265074 955651925 882767826 289457845 413877757 931682769 967728268 812699552 801627364 682009313 922385143 421106793 932895871 672142632 895976708 854459783 841413003 466053962 648066138 789349274 600552192 862327690 805732597 997194357 884116572 329710652 421545902 900325661 251330272 724582046 958375438 140055546 586000685 997406912 933644064 753948362 49898690 357270561 730653821 962635647 465286174 687034030 275694034 707779884 290740450 583795594 997127681 725381125 913230058 385531821 995480527 378751282 240766738 519141291 232685824 711859137 605832074 726883840 295685373 774172527 695730532 859734677 673233721 531971358 669971028 105276173 346671324 860501461 240778038 140061240 745879780 722604652 844496307 559844387 859490069 890576095 983962404 959021716 118563617 490591710 528744090 702008832 254759089 256925130 694641445 127512212 108729414 281094743 780096386 754865794 611557707 943740958 574422706 291392063 29602638 763894190 936383355 993762806 322622915 446483669 48500826 973669922 864549776 973273165 670989236 48663661 909882866 422969967 340503913 790284578 941095427 621452143 403945745 373402994 288170471 374286112 718861598 732893155 681996704 726670906 28294829 906475890 619998407 422131945 352666095 644499859 21479721 689334781 725259910 126923223 16648987 710776386 268010297 243875457 635870236 948289456 480470535 680098419 705467017 857556541 482882161 944178284 3799983 986548218 244262792 393496341 100378736 842912372 712942765 50695696 977951403 175444219 952849890 978189267 182545525 297327309 878928051 943152417 481394284 703756510 651016314 790607908 905641692 425952910 91977832 786054297 760867112 115340314 91587582 294993326 740168264 934793963 956104289 245343242 658961676 866129807 298095039 861848449 854474128 55586744 798924255 740784740 742078445 676872667 904066175 632592248 583848424 729960022 656593769 809991404 196305535 62046917 965137030 115618313 17928024 718474675 300009290 292264751 446711537 255269120 10368268 884809177 869085150 382540241 458121324 491430984 842882210 442346224 426601559 928342302 885492028 346384041 51404932 932983418 361733895 786705939 785822925 803146022 560051409 639473603 143614015 97745260 729255809 787240702 556343619 928699450 924506681 797828285 354376615 746033560 670989236 988563579 703340766 901296729 741377157 920488531 661791486 815267455 804203110 634689015 87885339 733139652 66777665 685766392 725198595 385128793 834237378 264355971 579442053 421544976 818956924 957991644 570628972 575964412 247836251 369025601 449242323 256604902 779111556 729773020 933982797 684808136 670989236 905628316 874730444 712800810 37483956 759395068 55005463 925650457 989899722 831954739 971140775 734681536 149154597 355069645 780777335 434554344 202847474 296795991 918560728 576272474 517364867 639371190 872767705 114362443 828361143 575529842 446398664 988015953 967024894 988868426 141461261 140970947 791868725 565779760 279869435 935544855 632013267 984031113 174658123 796814046 792087133 260893221 670989236 819948338 713230329 684786476 925433780 812209269 944987313 831161540 132022941 88041615 204631936 914055805 577605345 694974782 868013419 317835625 451804057 480669757 804569870 901026355 723090558 387322457 15506055 467550917 538554947 790149647 464343503 720636001 809276438 317359951 305810819 388374238 679571744 669819405 108577466 625039336 374095790 976983273 785523959 501226967 296483109 670098351 277894065 689838102 929714433 670989236 859166370 942019783 794061614 721687267 497737120 573914732 36490980 293314833 968225837 152352964 796632297 441411426 929520762 454243313 373839903 202866657 275771050 722397042 173606329 995590373 181620357 196204033 170971618 438387689 996046151 427199975 288038711 690645886 736302499 485175882 964030516 894863235 271192214 868192508 800188442 689216544 349474663 907463783 573383411 675158931 729254609 608545139 255439699 706573922 301750428 626165971 835079117 167345173 79925496 224377531 780266157 772129997 794540070 701348228 320244585 47681470 570632140 684813553 500712911 818548182 387191044 101160488 179414401 659209378 788737255 949898583 95378104 146666781 222487124 963050158 508257725 499430473 271978305 864207925 52613964 771789457 310984379 45121768 429373780 369727442 840375869 912715015 822822413 341921672 829316474 623779600 737894748 159869786 552506246 678305244 772455005 784481049 29913789 549440153 362873351 620524414 90372482 115886125 236651606 121669776 581594050 743177522 675124792 801124336 54024648 423174604 518339832 299299276 476412837 654124127 605464284 289509119 895548455 114107888 701658036 741269685 632452231 896563742 718945124 597895960 521700282 577085948 804376655 660822722 185079148 704486609 981636612 133610086 747393692 740265612 532281822 828631945 596011224 795960955 640106333 447032805 328317576 642006095 693466679 846147338 318472603 946811043 831957837 711144495 177487683 982766769 703506718 73428643 34668821 676493781 714957031 85557200 751722004 164881635 909888384 425682223 114023180 902272184 873230699 658802271 909444955 425161420 716453409 207606175 396486783 853873268 882568824 578404730 799732064 981135475 858178035 419724105 962325581 541805087 384832763 973565652 440846121 212579675 788701581 910358940 963461443 539334466 745695270 546308961 892261893 475437640 209510329 511017302 232553494 868956480 890666786 759023560 232437971 671183910 896166827 875555755 288388291 676649666 442814998 419901963 763684041 985419629 987084169 888474494 773163410 220615280 942178655 483894302 803132287 446388364 215555880 681330558 620432430 156350372 739453310 998852359 916558623 865085084 731722164 728097315 809927046 582076404 182631378 193718308 957109051 148861748 636225172 873860734 889872923 710903099 774945520 769737108 759904926 430218969 34564644 343945868 73410325 242160746 453074010 105351714 16974769 892029788 781231659 977971561 249418963 81547183 87740216 361877643 358988938 424927413 820809340 725238666 871817316 134350561 602413848 842580806 927612302 567092500 55456064 557941634 447196679 288531120 557963514 990728611 389230364 348548231 466412210 186803084 858532595 922558486 428423691 293369642 807027799 766199593 921055767 971980813 89377390 518282414 430966813 550292081 789990594 870437140 134418227 517841074 646889809 300438398 370127884 834812658 738453415 300695801 670989236 748789014 863143031 908619160 838301155 687660447 814327319 598366353 917086646 762577809 861573777 739908019 73449768 858227978 631956089 596211663 835546476 792709788 294949708 857899246 874865969 994371826 902703285 136788311 188795958 974726622 970191571 831960157 757624746 19586171 963591140 830448520 107187612 41864196 607331721 888590180 891227031 929837395 505287118 892437669 791441273 720114822 807403354 83373695 501195781 687666606 507705374 323342486 73154771 38685600 293595213 877915747 873198462 169267924 868784194 804159299 736484106 284359998 301476608 666158647 311697786 103520293 695477779 137924621 95867309 622701904 784809501 756607944 722622952 826872099 446042195 927874062 801029334 191814277 139772863 975428287 822425929 815589702 497662776 480853229 733475570 878523821 325958016 907249322 755883814 362775733 670989236 464596166 983399727 758618107 411350955 741589107 910075353 826698152 600043618 465891044 795501199 607446864 107240900 981750156 951414582 683296622 871921391 942742816 170505186 670989236 786722394 520161677 696028672 534844879 60292405 948445877 527515045 909705854 202844567 698947485 342514776 692364687 122637465 553079426 908180891 93842091 439516238 748414951 351895210 624935901 375678106 201840663 155187544 849672126 911434984 657030994 843299942 900983184 315381735 858756231 693353917 238499298 780558034 727691619 415049723 471830782 157854186 678474511 58939002 527830853 523423323 979194036 744151322 709796676 832751957 828879510 670989236 239715228 476099066 860257997 627419907 256897516 127936331 399179031 437622890 269723355 185028174 922532938 336590695 984457552 734467862 684280895 506750562 40801527 940414362 790651056 60885634 98362929 910548971 31277662 566497387 29725774 903377716 287222682 7295301 849377383 781991369 556258724 701135747 19087127 122209363 427025907 751362542 863437950 198125089 256692718 664648407 28674856 540319983 966153433 674585999 27405314 343877370 788665503 849530362 930854501 761912927 991731629 877104400 786374816 822699612 363655367 779840589 76500123 597923646 191551793 811961861 156027520 882931821 184822129 823343920 777614307 670137768 509875333 918296782 32874355 94373489 156367118 945043085 76321761 686362548 976286235 186829730 893700950 708269022 146538710 881395332 854056553 717805843 657246108 728979930 986894789 192483013 842659418 770672946 935522385 44074853 180506276 763168953 793260115 845975923 4931308 178920285 798971382 710585358 179469657 820114046 576204172 978318596 880890013 844785898 404092043 686886792 585100632 287182064 628528104 365952815 884222938 853588758 692394486 767619695 559538839 755658115 891290331 996792780 251033570 494986383 905457845 571867142 625432293 951509106 298465487 339505329 679481352 77297678 889603852 192358291 644349168 487198679 883814709 29415966 250316545 717543686 920718118 828680042 65805062 279106855 912896583 831677917 646629219 42277908 955689765 962083735 597588918 511345538 758080081 768936298 25162124 942663436 324526330 840293411 426338074 296745300 828913813 766434402 260497105 967815730 568777220 418577865 524053960 850983645 573783366 610046030 838456687 860740796 766028240 742328485 498703300 361569966 252784737 583841284 234277735 928602655 500769469 5232176 960149293 586362015 584344662 305264443 209024397 836720792 469588600 705987887 795477027 281056146 755570864 818584701 59281358 100788204 820686742 227382860 993865822 214907729 675264710 437917813 371282997 539361232 480029386 146753679 130993698 684193638 267164798 68161473 284610288 662685304 902987519 578793155 216626377 112014713 685027665 775559010 79266028 513264827 912472751 637950011 502707723 500202643 87939081 443846929 305546533 877098974 828488473 756071562 292597701 993943493 809659458 885579497 643597228 247383683 522881051 655171913 945382330 819605333 635697131 670989236 807997279 990289607 183724141 739927488 483349926 574309841 573900833 938525615 724095642 764510939 666138651 164259201 766839300 567684317 242187902 714990520 148817636 728377672 481529869 540325479 689101489 51509461 890995070 480324632 544409235 811608412 573798497 686092222 383636575 773202594 476452078 854502357 154250986 336970741 266896428 73176498 712644971 912177394 503579092 588605306 266021056 237247640 339286043 529261550 782018143 789898431 653560226 780894071 989486612 688686573 598473176 691223731 823458351 910102458 411966567 683269130 85668778 746492262 38258922 625618611 96871349 61972670 705245433 257889222 217404088 195763110 769280545 954286824 189398806 5305754 670989236 345373307 815825160 234517869 884971441 899139400 891600943 505355347 968968135 323089852 766443752 867959629 793905079 495782585 359993141 814769379 709569127 422172071 946667529 494312285 818702455 689794752 509393036 147849341 395397809 847465848 735604473 910786808 685794640 401319379 741570844 294922831 202924919 901766385 752129613 898683950 688250522 109771801 858720306 95243506 570753016 839493149 915836636 181100461 546133708 428021342 542979353 16043738 221129082 77396533 752620787 861063103 165196070 927080429 37513118 329274641 80934613 618327096 257815934 267630108 941764983 887160298 56796130 621459845 567652292 912408439 895107286 935309334 923917218 945505426 21885659 738566909 93125759 783255921 710096928 294978663 705011100 827184768 670989236 863067706 938166944 484350074 263866550 682877328 813959813 500446352 791427214 26688212 736213749 784612847 730593924 875711441 145483726 432161430 790423594 751614642 290642440 560064508 859950451 311704913 911195132 202182527 568224979 952261906 704784073 902689932 563167844 839367838 161226395 749320372 698016817 767226002 994592090 722213173 866707286 798313752 993381097 411175135 932866676 835476907 748350548 823010233 661036759 834755227 238137571 986752996 293061144 834978724 104591224 680512486 180249972 791386391 976545585 826963003 80589736 796764363 922489003 782903555 666880730 943558173 985130940 740922019 116755198 776873088 362104351 969570867 414729821 678210307 574687992 999898706 397515438 795700028 837406885 927723431 104744108 778661810 924177229 5697276 439296067 857217858 645650333 49939986 541682938 925308195 794639452 175431105 818698233 752233891 774854181 437475983 679152012 298687981 745289662 378816763 162237646 82125868 738930231 449878633 56615864 878795849 280606975 336663097 291442983 950083927 340335686 618093947 569779086 354984005 425411199 46623429 423282971 324777624 464891794 850339753 477164002 820190082 776166448 487852213 571073641 212061517 971108144 605127859 526005949 33160995 786643885 178241059 439710195 778225093 964176249 160874860 839834548 855763128 151313991 92280355 93819126 487718524 498350691 271730856 346020140 931241920 741709763 93333509 241821273 580599004 427732124 321111206 932267701 835589833 494603458 381829859 712814282 20091522 739794789 555008832 281272434 716866116 842536092 696814858 474330280 830422112 729697518 846316279 619318772 817597041 922584916 574284446 388190737 728408610 772362265 474648425 394951829 417123315 774567038 478135101 684514858 223714185 675865465 291120775 848448245 230160698 977916165 670989236 782422923 631822738 615004369 536720065 347868695 691490616 282489626 801113872 891571178 141669965 248308530 816737456 770932742 827632607 745983573 997603971 137180802 772472745 779864376 425608282 246829432 219893148 622945314 762784130 814688087 196897067 14223798 778245395 732434769 424763709 138363263 415344486 17173203 703935263 93126948 862766333 949841716 934474618 344989161 465451539 913468545 806908298 608182662 668189671 462972259 431426352 483918505 861913966 466520869 731347085 964906730 606019755 386489802 375462428 684243012 420810797 254892175 995361487 858962428 585738833 175089875 934391685 710800916 960646978 809168316 857593153 632221788 904764580 959586209 531792655 839101757 902473749 819975969 459019741 250627649 921708258 787434483 256430252 801042240 944071058 771833585 466630222 666555473 945050191 782638101 949909045 859695969 486614721 841166279 670989236 783862681 596009276 779787204 860937685 287734177 410486714 767467457 271988290 784074212 778351073 97139749 194118479 562789658 877312446 880801818 754796023 676947388 286734710 931682740 845256848 845586719 935666433 937861984 257462246 460175072 417012660 724081126 910926038 128294685 357764096 975874426 707349725 234050622 993310140 483001291 234209597 348531457 552225832 890399979 343779713 866897277 845430881 715966142 523293093 764715770 650945547 278597758 886349982 967511427 732975309 829075230 710690458 718948353 437483082 721016950 102058006 15557593 477529672 672305619 398671436 472435406 125123876 908347426 792848344 722832237 160412314 238796909 408595922 941364113 445559678 945983472 140965246 64040836 120482271 687525861 904969158 361135715 501653053 778842936 670989236 310320833 32205254 681029349 782512242 961840790 638197569 779484177 612351459 925632431 827622066 930086335 696727826 802272937 176467471 776048165 572726163 723165990 957264236 936926361 673274135 867027432 301100229 665971481 954996181 294726348 470230863 816045649 756847452 4488479 697120705 941877967 252947574 853363558 710564738 115990727 288236388 406148696 921597509 333312208 845434040 338487863 769306912 869522011 797121621 662931134 712823870 780001871 994054699 702658490 103688865 164636223 750142801 728068499 685358269 758359694 44847843 850289736 999721138 359749423 510876120 139543076 328595896 71681487 882872760 736746886 863851070 615654960 837141341 835999062 51280323 454003960 135681898 943764782 136618600 313199916 262157327 865572293 90605654 311842131 670945917 353950115 161644848 30704043 196090814 933065705 422160155 373693224 130710931 492494436 20040494 436727846 915550432 626162633 655120635 305733232 433158172 977600245 886468460 635871839 485348968 333267598 507115495 827362552 980483978 40724108 180745709 402127986 808521174 750005747 363628462 267720551 192214668 763299996 725213365 127450037 571547432 568126458 892455894 690283922 571823832 837992451 714881376 878803761 968551695 239609428 804733607 971617505 308976141 934624124 723374255 716930251 621915340 249112833 637505937 893681815 738974524 904094698 750935558 997440337 688707060 750311425 165710869 103910616 53632711 347648690 96071937 953757125 995554658 40335660 160396092 699764653 797358545 755509197 926852451 761989348 670989236 998036021 775352640 249989873 611180723 932175582 950450944 269721261 652534248 809328598 672014409 879389496 691350042 970188685 560226798 620563288 675795624 739032395 332292572 709745892 707160106 758956144 953734212 590688853 888629857 148873828 482071678 996452037 724078501 799768730 386969311 260715535 778606259 728553657 563367838 505151322 648575764 736046728 758819631 734400787 876707063 805471878 785960682 512723413 661879250 926287243 670359829 710369142 749023671 621599262 666213449 197594364 773955297 857006439 48787262 14084287 826143946 387769031 715063964 545287423 922052664 849713049 715512471 720255085 353165163 968454369 720203545 670989236 276682364 552402394 823977127 261559429 178085122 623756576 630580835 927458817 616934394 926027446 599799024 643660787 73158326 189946528 34257815 257073459 717315727 697318606 843867946 513274830 542858632 108507566 891646705 809309006 382611544 995307750 826957366 557374163 785842125 802538425 200901900 951059817 786472812 255951831 341819523 369584576 792461916 114216174 688944553 284171905 698122607 806922710 588817579 920109444 994291785 211822485 756420970 193373227 549604255 797229225 550457928 975253218 244684557 636517719 484876904 721512295 803019731 489526936 51607101 83646516 183286472 985443491 62985880 421287607 115391672 409585254 498512082 795051457 395666036 205480869 541154200 809787923 961890707 825551382 863848827 8968892 670989236 680327441 796627665 646285402 32336283 87360598 661790232 135211997 904579325 739957576 527991733 986013604 257151488 176899074 360904862 501874383 904602737 244649998 563475723 810181623 795386222 894652009 588794342 121654250 903137013 924775825 395214812 400439528 695581839 405231383 510467467 925402164 732336181 89508528 974333978 776382188 240191298 23296305 309554295 670989236 475189768 275400755 410253190 957351724 576037597 910446100 576966951 357116842 410667286 826923854 196827186 833201638 858988857 419230072 246950745 775290077 219177700 830642110 714370091 188513459 904684713 73465949 721378207 389415350 729906491 917140238 488206582 408531481 284091507 791910172 795962837 231515450 190826227 171690428 910432263 843980584 631113357 989760757 25527689 575456762 829052351 833464831 743347633 878484199 174306229 388799534 750051807 802290363 121867945 836750836 256807119 205287800 309266857 766093814 879496225 533578318 796102582 950575224 829052393 494178509 295843801 636812113 950807086 940077755 720983077 729729452 856710576 129338150 976273803 258982282 532099246 797871136 431052142 377604549 124211870 460126952 538133991 782284972 513368848 872277023 266994737 687813258 227116884 798686129 762316742 557099094 986521579 274885068 513972556 885051104 318976187 507240544 156583398 152820780 793159779 800070214 87726599 538207749 146472831 699210236 833562426 653335882 676456278 466109627 50789158 973570017 731525348 474404465 210813475 230335081 955387256 714787406 699602013 831068683 532387846 670989236 441178103 732190311 496802872 948490202 915987223 709119405 968635415 947832415 743482092 692415882 187131576 806400388 645325731 453817882 542784522 85735980 170481528 44117243 695539491 243930906 793742101 167809778 87903912 347500464 775486912 857091205 111814661 959009797 674265228 251053519 131822622 377407360 508459577 361928442 855624157 625289093 900857777 672821716 796811802 731847799 722877372 706354264 998921883 823594691 683605691 689306990 62979013 136151420 49195170 496112052 421120046 803732072 777122879 153361230 985930515 498565240 145240576 125096966 569413220 635508725 56478800 94431886 193865332 918003011 477700106 833566161 991605910 768069511 775536099 153919229 233844537 668956825 956297988 150653109 933627648 44723695 808476399 708305707 379251783 471294452 210110538 636203454 982422105 234103469 567879053 430936951 692967129 994667405 46632738 272358523 575032156 761576939 215959416 828271459 382189342 276853818 854484744 670989236 797829772 205734640 685773435 907933388 574762236 460516394 966844808 245617815 772464751 954797264 836529657 305741750 676370070 658664960 699062585 989231031 413140843 911765699 927991765 156125165 800535450 761571503 548834197 445953558 594744897 513299443 940627754 863314273 678617936 730710212 808446852 964511225 474180218 620149140 715078592 464250826 710874012 271649327 116186574 285449445 450617877 243843911 298635151 744889081 187894688 246726974 796015720 82128591 17873424 862003478 924649033 589833950 228103528 917821810 469713617 402297407 446536663 809814169 600236875 953449226 137953425 489967072 332312358 396676678 838907559 254161470 933545782 22557831 751543575 237506670 574963661 604193779 961507523 226544462 345794639 145456928 909353945 766530292 207409934 313553981 757826366 162163619 519841400 328876921 184764859 707874039 728640965 807210672 912582042 872747024 717018922 395317525 867742234 957977069 689950844 166452901 320733290 339045819 28539850 71575268 380637030 91333141 867722007 688686348 710571173 804292011 209058696 704721184 671788551 733957928 246371730 92713931 212096454 908145908 842759325 896348811 991609155 305719777 95578909 692474658 809017673 472671448 838871038 643247447 562589359 409309441 876435837 505045151 865240357 923720137 773311883 443239189 32945725 280126464 982546854 442757400 670989236 368878621 284509555 276815507 918730385 724437121 318994417 276470231 923389241 640248297 270715473 400338816 679592515 239728643 3765220 938907610 941269904 871448955 944558356 839445299 246595281 370297068 790664870 832628706 378764853 776856881 314824214 447834519 575184964 985571574 695209679 345689964 839433669 894801177 923854927 593484673 912458987 651786969 993342788 874507986 820180676 565152507 39885051 826871694 130905596 298746876 901361464 799836736 293286444 842001421 720200118 798460400 684512275 311658815 841191286 819869023 978082573 84823194 94115753 96365262 568132510 959170308 771012970 93493027 896658725 217578777 697074284 249713868 997330556 917900585 777837937 54553319 931798010 963175446 153339484 998333442 508924407 432508126 374517116 847637114 230156784 962008033 670989236 670989236 993133014 906024845 526769698 753902929 380999924 986378965 644702249 737679023 607213058 985378503 858733926 872955836 807804668 731096741 99558438 51409575 905472672 693107237 960201989 958232991 177298414 376712863 520460130 741593498 645913423 909425710 795686162 542479592 796786870 698697309 732374120 121610795 417635685 405838433 441843643 574594925 922786943 901432679 140381943 416185282 314858220 968540605 691455685 153380716 518465550 765640455 945138002 325694530 633705679 412987966 735300867 670989236 552324156 245004261 41770754 697622386 881267240 787057091 850822006 87144369 715350005 439269488 929022894 188718345 92050923 754174896 792199744 811226436 27049417 887026889 249726707 220853450 734739986 667013049 898704205 516862464 775700617 93601584 345191358 102312676 776318926 782658507 139820860 812799920 960789930 947180005 613357190 161390051 810081000 898562969 775494401 559030864 545106978 826128452 500578668 911333306 794414074 779278688 257377760 570894029 852932342 146483428 817230692 529461233 766768930 632383119 909462813 896167774 887038724 787983823 724692575 706583662 479710919 545049520 644235813 77139539 107314265 221525383 380520998 612133936 281736148 12405308 248353957 545603022 115447764 65610118 123080363 213254539 645622917 560943496 656064984 776299483 186815953 523405529 891373180 355969024 287015775 851647901 444847878 768891442 107388712 686072654 647613305 773981472 878366701 450544356 229363405 400879092 191079611 85585430 890994779 293867101 969967078 133305800 825229037 196832059 794763822 805701560 21016686 602404273 789429546 874497733 670989236 674068321 735665520 670989236 291461280 124176349 721600713 554019535 813226036 424681070 715350224 816731355 225008118 237893151 178755749 797399460 869217063 360758947 529921275 879948390 934119492 269854964 329467863 701134767 862636777 322644414 886397726 670989236 902979950 261146887 923796308 208107765 786795234 132207486 78071440 188705171 778944232 746953023 854178891 907550357 334754477 680413781 646603277 107246069 254404313 73689127 481216170 814959673 15314588 124330299 869768405 675521076 230864597 991323490 849078000 705345904 816201739 781440884 4037070 265900001 85296122 204751596 545569355 867281392 733206004 987758087 743034605 869720811 600312983 919920344 902355700 833448939 575276535 569557983 574763847 204911616 267987077 366443383 559667655 856627482 895025997 975540823 204436460 303863508 221168237 815565449 967649844 133424183 809806236 608940054 764402417 576695227 911056270 805193141 491253266 989041214 490541501 584778082 706507014 44941201 695864641 872732744 989003104 150618995 773598906 310347920 846990988 284303234 983844084 59125289 13941236 590273978 53018561 229120021 904179643 866162018 972342874 228196013 13193781 795148644 152257081 689579808 110534193 209329659 791542367 699984627 863600517 522965937 692197510 612765567 560276968 937655847 916493012 920342896 746213060 670989236 748393986 762259045 450751386 650474576 793227277 307972975 747706744 705121068 749208152 910495585 161562295 951494662 855492893 728600779 735424508 960834577 949670797 129470429 670989236 847135257 707546572 952570562 850404870 959409964 826021954 797784832 134836919 11745179 801035411 153675072 983063516 906067087 64924601 22895102 680632162 383850420 966449952 799371635 748006557 683655711 687363330 203526943 803178209 308437669 831321305 781321359 878477576 709581746 132647150 162011763 207639390 489697910 533982565 684558016 913161385 564279121 693981153 590275798 709002717 186034013 358981091 973286922 969345949 294626210 159900869 788231445 327415777 338893980 862750554 888377381 760525591 834613173 43938450 878033595 797687312 399540138 994742585 850027311 67879819 813246899 605624878 584985161 21635387 497884464 270036655 877249737 590112071 908399204 834598025 550632184 852711707 772672743 30955243 347933069 217939638 927439394 525243510 459006872 267093135 578471267 310451380 370659167 872885676 935242340 597988140 616010889 309529092 331835721 149411704 398683871 755097892 119285911 595030604 879984015 953770149 805332024 979956657 964298554 503509423 133100059 913214703 725997557 845607486 3374613 730291938 440189423 771560667 866437340 568143447 802862496 985835579 740476693 378211701 269562915 943287491 540381991 678619888 531025368 953035367 462881794 235381013 373206410 327803290 889205914 801788930 806299867 958890549 649173275 667714158 255307833 539602980 636307470 285755281 869728868 969340771 495518825 761801543 76646940 695486045 711600864 647813283 833292031 698056180 540659276 790619952 708663880 987587164 307579967 464663518 775036216 207225902 817519561 121239263 369614475 257563849 171498001 676101508 265326695 845974306 655433308 78186258 149758255 441348440 813510986 867667660 66586745 172935716 156857951 917671547 852753874 432451132 87573872 893354658 450382190 808975754 815033837 713979866 28783578 8168430 774726729 779108107 881833427 293585413 796615828 93981223 858826035 697617534 632847398 252835657 644680357 728419965 208797 646539589 511150997 684663364 402657185 873372515 607201296 527517724 171390305 50674133 965721929 534462400 739664175 737570881 877018011 50839231 359600229 479303727 545476114 197087045 976741119 782964474 996927700 731387401 614926951 662099308 859704859 788479641 62853950 971846818 149290460 783791127 426343894 984961891 901555135 529790523 54537649 216436654 760608125 157127315 551047140 766096600 641593579 684398974 875302145 443705911 956120404 830217275 262637636 311545053 423424103 674535168 421080659 997015461 794842934 878134170 222899041 8076341 791769491 535479384 850627455 521058275 913809932 649206796 684314534 135894372 561587363 955335864 876468407 558249765 698191292 501627741 454142597 944019468 173476336 497806649 763585966 879895697 562241770 785014715 12925220 180821623 724326700 643564148 954864566 946007530 933079732 115943541 709030353 879737625 20587074 220858111 789032303 385855366 269355935 129170096 573032835 229820200 378989431 594194915 890779059 996188878 131225979 121351745 754821696 547584823 79915475 451908131 514637587 146100183 776475102 460477183 441188715 779633014 230858589 867033639 890619971 791473751 104920365 932123966 273561202 865810802 751372589 958204205 196628797 133972954 980534510 472820122 769746822 940552191 8401633 91497759 688784153 331587248 446308057 361990524 809013086 521324337 717871113 780033867 475903367 265294820 936152248 76935307 664580121 313519609 955768489 520331923 998014291 954907878 859738266 673645564 873163503 286533084 51290248 183060132 873973229 465202687 131851906 403254128 947949484 695710928 657705707 952944102 924794158 806401994 3304210 177585638 669568188 846829184 374606213 215882803 671675499 450600403 873494633 486937776 990003470 336572909 119572955 717384132 662428519 902079383 730173995 351768003 890917489 119168467 699110470 823192418 361085858 256949714 377989187 901075472 518536634 427830356 388159646 277578522 980991677 214665301 733793148 502499393 840689184 330036478 504076492 419030203 770270457 919794568 640772344 685725639 927986482 835338023 947320621 976150762 815670658 298220361 936112469 789774784 691025145 754251943 653588870 836285384 77041635 688862085 480954700 670989236 561951925 804004372 114623761 652973906 888430766 903491206 261809654 806985361 606407381 873101430 488745872 71680847 179285617 324993019 883684551 426990709 728560252 984529637 850494088 883364038 460972715 932813143 994453289 864529574 525468623 448210402 64832990 992047397 215244016 548978441 60803418 96300421 486969613 216932200 636206381 745576050 984873113 950659983 922252162 761360250 482116320 782950845 553735792 988263325 969623404 891434875 658042731 945798435 875063436 565409109 282412900 782649366 683508489 226316111 232377224 768389546 846646147 271401303 431052216 305090044 600876990 448727787 41491365 966849451 18271032 926308127 470119542 438573200 733150411 994783567 933526136 846495531 831277631 874119859 100028070 985175777 760528272 439912853 779905815 736898214 457882914 571755840 978670923 900935174 159155980 774400320 672107378 117838051 622817605 199252659 790973 343925091 898158776 51797630 795259369 961194183 691850611 954563878 820944215 225588697 557970611 766674433 787294782 97131016 347083745 525140387 653817451 959984825 61329921 689669241 8561007 365797636 630089952 701548195 758783871 780853712 633007839 287669816 923732802 700148043 811782502 251138402 351244233 843081778 498179255 458807062 553647654 50211628 608009311 522518483 167848750 761708538 707523042 726040440 659897489 869843637 279643434 932305405 561092463 396410322 320717908 126882882 824213341 147862613 476310879 802160196 670989236 438492344 151694482 988833473 704492253 629032405 996667371 694795432 609944698 210336154 800491291 847658923 800609830 792840458 554181654 507148394 313414205 732289585 460675912 748587206 910124199 775545108 809805707 149472015 970075280 784697026 291560794 731380257 544499273 302525939 940784927 689329721 622698872 192435995 454234536 347842838 463079701 213254545 609312158 789829220 927848883 326019326 519947728 979242500 299083010 549091300 962456752 677795216 768770233 793828850 724934986 960710771 997625583 823768116 232965136 231792144 964806701 438267494 562625737 253840065 274296392 377294142 693959187 109862161 726866989 703345835 766847027 985332176 925910394 699150597 758278092 875244707 81713289 759930267 401949652 926987337 581587746 627621153 499103436 69825328 650379834 607098625 545765680 656758525 995001853 399586936 927579519 385420609 618949304 575766851 177335454 212639091 968953807 814287833 756539173 607142879 473745708 258283048 592606959 414254489 770079962 388901503 520878170 146085059 426106707 871798763 972287724 592469409 65451630 694424712 887132422 140815601 785134665 447971641 914122124 489759540 592285441 897610892 832422028 69865045 279230494 41655263 847182100 721868285 691872118 920393534 358597434 684256661 634214598 678114586 932498500 677421704 933907978 670989236 780699926 987570872 244711732 995917761 862546058 162749839 125277101 628601305 709219817 809309916 930133169 478141908 619696252 843993023 670989236 70873200 527005168 803468112 921529780 699202506 772021269 871236438 743951189 782956621 314828543 201317782 947819446 845785149 203119886 811986956 797395252 828179378 829042056 50866755 607885636 105359392 934412475 313639628 560263473 820877542 881642569 276144756 893313603 722731369 866195496 96709613 268286516 158217441 790794649 392403091 838591394 755746585 208888252 525165108 49538657 761142637 426337017 638481059 820856566 321323899 266022129 880901157 84957486 112834817 287523408 492251095 785655455 868899383 148527641 726881632 518649414 905669262 101386672 312756342 404112722 86666626 939296386 982411875 618028270 808846423 353801264 971736592 724257864 755475431 606606357 599279301 331501843 568187689 815883528 71002951 904092635 682562008 681659099 479090209 514152455 600667637 570963773 911446568 42197027 999879459 323756049 778364237 673305501 665564782 666443234 711545895 342912570 838330701 428909374 669311306 840125769 87826052 725308492 758370345 656137143 600774765 165007104 302107202 106989565 888096066 488210271 776848594 788325632 156376359 990781870 198430154 949172453 556598923 350176931 84173537 40219711 297741761 570558242 101774886 5382302 477442917 589758333 857851884 68003019 724769044 814905978 170331897 877395778 92160974 907951645 531458355 964516527 772320198 317223695 965057876 92020022 6085828 505044236 809030934 149948413 701590222 469178869 886912773 706342694 804007792 903825327 667996355 467003441 765315255 542285784 558327969 905021174 97046824 678485052 448096071 965426637 66751497 998726840 793986070 426211257 603272725 792390840 884242217 801378602 865632493 369678120 760898037 629735436 86127537 179995395 422162833 837374247 266841474 853561511 837834653 284204145 806862392 557696727 661858954 820861827 719425609 945241177 889446999 508681228 536657707 696602448 735885241 696013685 720582043 832503355 74926556 815126276 890463613 847825425 469835557 37026256 296238945 317137585 881640669 893001312 338757113 738620870 97860852 83398547 516158118 737791356 815520965 507598432 43373929 8121436 412157585 642170187 829821317 295316810 408123605 963747782 557880286 21636211 902379701 927356343 821579572 697457355 956875386 154679163 155610633 200322757 654629048 72802971 931021189 979929289 603783212 244304189 43458992 561628290 622349438 709111513 154599218 660849706 899666389 887041731 171922317 220369035 556489882 838756663 869208130 588848327 352898182 887966135 177578614 726220059 656290310 754875910 950338806 574336472 918979125 250153288 762056030 297725609 526276389 977151961 834673160 868545223 7156310 871779667 570619476 955312445 841067479 795843110 71097276 465563924 741787931 116851022 859788263 977526242 844743821 329532260 889380531 713840609 215312188 506601459 177022467 853830970 702868715 980689950 735904952 464120592 945607032 45058036 24408574 572993545 852056896 805018018 746822445 396241517 670989236 399271357 508157041 698769557 887544575 782388249 934420889 836685767 21358055 505887049 721246532 670989236 721905712 740479189 363638792 191677248 646811791 555553489 861911860 953651043 923927976 325436737 763904559 309112252 734860181 763737641 805926958 677856315 848666008 676804451 535281258 762939387 619217025 385563630 918178695 936367464 43290847 288428861 758369861 914259591 899716637 897736611 577215380 912788746 619081296 448986833 811248418 821614757 961328183 670989236 865865238 902913491 96364085 882301552 576067599 1495583 886982585 635257341 100528028 669710789 661517789 202618785 789712085 186035589 301054560 793444774 4403966 968862554 539459112 664989576 329774508 637163466 222995183 26466893 670989236 114920172 224890003 606475194 329096213 400858111 324748873 26495517 480635848 614374412 119186022 715168302 446429661 602351121 767713357 496742013 796458980 296662990 948435307 846971976 706026832 805878763 862911215 507514007 746304643 288619168 981768724 829295107 761631352 229762929 429528029 378225715 949605847 777704494 474305177 568823342 793934973 668142298 910312828 866401751 779545467 81877601 895054538 869053179 945759004 936444026 838999429 822029608 637795818 126716076 965992845 654646909 957122828 366377237 988996741 957773471 261096248 839774035 930745698 649482294 755599422 698252814 850308371 284322410 339563064 708109493 777745053 966633741 821387258 848963628 410390962 881065260 62355331 279975060 483201846 9768087 538163765 696671758 924096783 159527851 302090128 783389506 827538591 758872063 452592674 824716781 670989236 744136563 519406535 892667197 874236800 551322159 841799356 989697879 950441173 140138716 243599852 629074253 831205101 763008697 598210354 166259019 387475216 670989236 576164714 741912818 603644143 467895002 27671490 780468142 195948363 914174977 670989236 386776048 409389928 278689200 713090718 620322961 805639000 718718115 827330663 812778470 942701227 584482593 599272567 381809887 757743173 125822093 329249048 791095870 942049114 994764456 78156064 714499349 391627485 867428537 998372378 994416836 8260024 132343899 614360259 112553669 842507406 494083571 772080398 730140508 406731396 768355397 834018818 144032971 880951849 60925205 801408805 703485024 79530789 956668959 415394910 814941443 734582626 799033423 549898726 578668503 88040283 808941326 960957520 431195221 990338834 128776474 729392512 305530711 193511263 898634422 640748873 400601865 93882418 204623743 581143975 485934477 875893560 651040890 722367384 88920277 966865464 949089458 61808462 670989236 503110890 831456295 451884110 256983498 367855675 603128241 578493533 190852003 993089898 448567845 535273595 534846613 473577047 967178606 897477219 784678178 906994738 833149065 142676564 743683977 823029324 296479518 671466222 692408385 503502934 946977705 184819106 184831113 775619994 805549837 793013499 304038643 9919523 118395103 625860490 658797805 3215351 108772074 596994945 996274541 148220248 670989236 872165770 512943395 108654412 771835193 364445243 334187561 738334990 606357047 671026851 998512250 603574246 430717780 903551002 322151790 475104342 296688529 387492604 846159533 904623949 457985145 654072534 205174566 268970333 737645544 274219127 222903962 668073169 824335191 571849012 280716193 923993474 704195022 707776648 85383359 456645393 291921936 555800334 366194677 261565829 876038502 81948845 196287023 87456723 932930350 862319598 142520938 777488927 411120191 111255550 263438413 305817141 807436646 186935218 643299514 363038580 240597055 961814040 117335147 456802312 505188046 145828089 674060312 41784434 724089684 581887870 747876734 170235582 415597505 820422902 768366769 878848888 858905395 968279770 51380707 766524084 413603500 737605146 663179794 48694099 674869303 397138398 732135053 84860335 166108699 936970563 577305154 592120715 256470920 429354310 851928321 715024754 930365357 737613978 962664761 47122961 618449694 118236535 463842328 923351063 88518909 115282358 598222828 861410903 664519286 678603900 981640830 168074583 305528789 354139750 383631147 122004784 820351253 555747792 544318598 565548114 756706118 30763675 797449878 883172892 767241655 301899549 1905161 540438177 789274337 434573887 988153818 234171261 127342652 555715263 846249250 77340690 951443623 904425248 788699043 672671458 830330468 662457958 689886234 918713807 23919000 881070848 801075736 871866371 666785702 634541317 735521328 584854067 667767311 144944637 445651405 734485577 785653930 981056951 387608200 910992664 801470463 279743504 783458927 762339680 795173302 152606556 880535927 875141795 859534675 794403242 97108109 577707513 432911341 282908161 769883598 305447554 335761899 354843666 629104745 571384930 816558386 406866092 85899593 591894566 99361861 463814196 301518712 69762 811536818 406498816 335311870 768764708 152376490 83840028 481746670 745219835 733201952 367250390 524654271 269202845 443864338 372813942 876896497 723139178 945320174 56156080 752950746 724681325 126712003 192903919 909128324 67056730 889520825 256413401 877364359 505606622 740402840 75681054 744807092 679770012 482533043 981579603 273174887 820015230 574582406 593239948 271718219 678478753 982071034 179435358 386528147 739222838 11022304 415342144 745632664 528530528 864695103 791019074 670989236 921575786 986546089 884018901 849004822 894733281 864868882 92302336 998624637 43335169 773712487 719355307 877243318 688172769 208907118 348806225 813485684 830716968 785025970 782787029 720807560 222598030 364428973 804249457 854048853 62455332 639701405 774464570 259653924 2613794 495721805 688019029 874706722 556146803 885514357 286518037 856981613 670989236 261260958 814176577 256876257 771948456 39290298 783066497 143001945 390225655 402933568 923713507 893512690 432920024 825503914 238697373 41921052 51358958 779318443 510264397 719210219 819047417 202584112 867640002 733831576 721543493 671476720 995446996 252825011 779130258 930728479 902457266 507482999 262902159 563915042 116148931 877155907 644799098 546031514 336824283 956062687 436292098 994262745 865417115 606351606 977314477 601155632 336646431 825500507 778062546 306184415 990521839 933951521 88124517 696323585 824413156 292984675 637268281 720827491 288675504 192210023 251391378 88535379 284707060 198099714 664884333 773934120 869629959 567948464 803054754 400062017 880530369 530295232 789450534 880181355 810689522 862445189 760347301 346757874 788978405 961244636 709130966 74339337 809887630 971424102 384872888 984372461 974842108 457824498 14902079 749362276 130952959 876006793 134497379 909773822 549346136 448909425 850013792 133850065 339104353 593339893 438122666 677866781 458572989 721750329 770869363 136848775 701536233 502572047 950903073 30004781 814041213 726469360 590717446 837059820 798981778 537087240 769304376 189234141 326242761 803058726 290746167 816266185 703767031 723532919 359325338 326267384 142942152 670989236 508705536 212380959 764613255 540413967 859690875 767468571 470360519 920918159 44879914 682018250 901058621 872591483 591397908 352223107 905549148 587422759 670989236 730361523 91151558 204136953 942000406 31104011 339344919 838112725 14583986 295420858 917932419 896031727 863340382 561525809 930250583 893882358 554048892 296096804 934850680 929971253 852465737 740888284 307365674 921174527 689075075 922582005 983095492 623107602 759753340 105668999 728167724 74235653 153376880 230500493 157829198 461311615 995535718 78844528 209865963 801935063 145190805 103524933 945885845 119504392 851763240 966900580 721622669 993063198 181191614 13051137 149127807 941933680 391272932 98116292 186053647 834881254 474391091 671448143 977574779 638514132 937960617 169674417 37809529 72202082 678178140 909968181 945325426 905644755 994978894 415312749 38925549 617536105 711209932 582364129 343568912 261412393 783373020 274986836 781983267 883256984 723361622 968525295 173759850 371326585 478685682 800072156 963800202 700386185 31735992 173055177 776406885 710378839 803461705 705285960 225342091 458264465 816699909 21454698 807119148 352126076 450026468 2383795 762330109 378389179 931094824 594755726 713630340 179569979 261558696 956398621 496485548 437320061 831426796 784667919 404894544 800637318 240254047 124653984 15557786 940083325 621991122 981321473 260008842 777573693 873242577 825518909 452798971 905131689 623846117 727343414 831266861 573000024 565115321 318989813 816795748 444409305 897037727 868521056 492691071 781516988 878693847 969951070 847243672 872786352 933234736 776464711 64225423 70033810 931616573 684499723 728202813 82742172 349192458 469150672 192582541 703123303 699072928 60223464 811903914 111232155 572461901 750246263 273879434 943981864 674066310 763725630 362045522 867804968 34282402 975734410 909494679 27007 507960524 20623781 199787182 103675343 559542553 227873984 794429476 906820346 394096519 952698330 728971772 490235065 7793656 798669912 526903790 813372720 936817086 670989236 114933524 95670759 953919286 478926817 617662763 85376667 309278662 143783074 921898742 232435305 994307775 215029543 364159456 273275126 699309795 712446272 913842924 973233952 477031681 927626550 861848797 992546754 372369882 691351791 430078854 661750134 360470992 785163948 812771574 39131376 27476026 917292011 937647368 934209414 727186968 489917701 272704453 849265395 832112568 811779811 708580972 930709182 825654191 760306146 124254282 276483364 629425949 870443358 803749944 741852208 883369019 770985043 991970077 215310437 262646608 438524963 191435314 667264607 875355896 800835448 892905297 391817783 378207614 385721305 920125450 584686527 503229827 212540775 688743609 768046966 160237205 762817192 713374027 622324578 616617199 168742472 657335465 228061716 875292819 859608060 364796835 177952542 278920052 754667635 504126350 86138589 75281228 834015115 356542533 325969560 449442407 562997170 183552134 772512688 388672918 21757007 398477602 401101535 750769737 815316259 371512982 828250202 613250596 895450244 619687731 613075793 779770551 852039420 39269137 888655430 23835389 536091070 854072198 479554846 623895672 5083200 344438032 895891299 563866441 785457223 378081767 814215678 206854983 727890858 674539519 881225915 883383615 706833088 437491926 217568092 491955472 839638966 975161982 4810894 146893182 634568973 516680945 514226598 50908008 845058283 342814993 75609318 869115297 643359138 961458259 636261437 997799466 511711797 432231992 807551751 530949344 532486046 972663186 855791367 948315259 886971726 278505201 230751798 909953613 702533566 358171407 982033564 138930767 441442152 730640904 330504517 483231368 923839552 992393601 53836844 880847434 177453487 963446703 746962129 887699357 215336618 168685601 768017304 365967511 822194385 988182295 683307659 675301892 778403830 570288756 41872316 213369222 907654721 957392682 317185338 466002346 555185153 9763123 719705619 951939364 39191284 821564255 739622986 352203445 806006986 105333448 982651244 630888069 703668153 435569315 91763222 69396845 620458644 867658596 744798874 619372236 772410937 725864551 337908479 670989236 513632251 136322112 263885277 159896632 666737569 200976251 229783965 938220399 217144425 993885731 963578117 81820643 670989236 781456154 57720748 762775713 995732083 799681360 861962552 690116813 147810766 853162290 228424531 673079137 975730059 825081932 994633539 898244177 959121528 765383947 400170998 840176103 777615554 983700891 682696543 508371111 862235713 973104847 611399148 991184299 875412379 281483419 39155 409805306 253780050 857897501 633538158 483420432 667281372 30739912 659688041 276515188 210632898 339465441 165554959 882148097 765607201 406715464 729081216 989080420 309498318 854485918 26441756 842193212 311382866 825598581 904183470 885002087 994029372 370934427 885946907 675822953 254123719 347777541 699676190 980157857 194292057 997970187 681870890 137057968 698274493 884538289 883939140 228761825 874244811 717171546 742298830 571865445 490341449 769623885 352233020 946033609 796939541 696182364 939632628 926377344 961990232 169626301 845043013 104025923 897319068 937798941 970043055 755179406 843699942 670989236 507206095 348529866 880786661 137430354 685664614 560085143 933244059 357335927 908788904 679346995 694109298 670989236 797251930 249038985 96571173 893141221 963755528 258925336 341702857 590955420 168293174 688070727 964748330 9172684 702687466 484563681 728983254 786553510 506579803 781507555 735926328 531329193 256331960 929752304 590914889 572048633 833017491 882718819 388851874 927921946 766268198 336865381 933469943 299462111 867859248 981367267 902301294 782805092 774013946 829704422 736355533 892297216 941882601 263298260 393582459 170162881 459276234 70858879 941616247 783445562 462919445 433477175 157541911 45102228 406684216 117180322 898317928 323764527 335510645 844124949 939705880 439461276 780712835 288211522 850108741 507015135 242551506 830213649 357497826 926446409 356701858 943061265 738372643 737372623 784113422 894587546 369009361 444150988 695097264 954868604 936747938 600894794 630871071 961944908 687207020 430697806 999009274 169006997 939743882 449313032 259411168 572590150 949417733 939639004 796561214 911817199 710519646 389442965 138633796 583353634 178318467 285740044 846309605 533635657 800499603 942540034 284603843 134007661 713413026 994103906 801995264 740949943 313411871 713233284 113031576 735013154 397408046 872173272 883060999 493783475 904321318 618250207 334528377 665674629 770643439 826483516 156060139 476696140 293152794 963632886 974532395 849329889 708725591 543169953 362513211 783274277 413425970 36163987 203175676 4574054 884557348 442743666 633344797 199699712 619524139 9897403 743503591 962953706 722011193 669773071 57724593 318761253 690811649 893899297 617339001 792116582 980207031 436141081 444779922 585853840 489382443 141352025 486359286 989518238 227456077 893731057 533378477 152731235 703222237 189459505 153797789 995220852 526301099 141220648 826305430 986181944 826550042 869861954 354561657 53204456 839791861 215115558 670989236 842934118 364056987 833751674 879659692 660568777 46201569 759314230 602685647 213767903 158972385 21926079 254211014 867604956 848885724 830073849 736522514 962682354 930616562 954923244 193816454 892805399 706171414 717316660 955069211 970280050 728397454 986405427 316646598 95195721 808892963 440998081 816894822 284948189 924698885 988675685 972584934 693396112 613068748 56702968 356574979 970884986 608663781 724209028 142408724 817311396 905371023 630364391 201548467 860048127 526974776 744546459 517426451 890599156 129078287 296930770 708262508 625802855 940734090 387042705 875511101 327162738 167300179 983711694 888380243 788457415 706017477 359477857 920105287 943078622 769542204 864570113 467900211 366900111 764506156 49035678 475645478 699602377 62110812 908756641 3824368 605213554 903045616 664493804 376078071 282336974 612589107 873448154 703484278 812920044 384930627 832525428 37389772 343763551 28652716 709904929 352538558 110296262 735325156 78275775 801466932 883596941 495701674 142545552 856765152 742195391 676786550 931098518 57881403 971310863 683701206 721544623 751012702 154187260 437768300 454279698 61683390 473393729 285211680 148984762 679584174 487213904 965188010 670989236 422596274 535174912 548264617 824702699 752298933 735495512 39975576 52737724 340229222 234627149 945401605 951866847 84868369 245791445 810510676 777638408 835031419 687324520 952936164 987926747 330387451 617687380 919447526 854431958 298648914 294475752 748325239 973689367 949437753 865350829 680877195 680401804 22150834 747144397 430887633 848745329 503676879 831344137 209783434 288160926 163040602 670989236 897929723 670989236 352546049 540132584 743515353 933249274 709945407 860787523 965422629 1898251 954220585 867481553 305828355 985199692 678525814 885253112 878838852 490320504 951173641 830003800 447934911 962663865 977940581 482425612 56676515 725936027 290672758 827437743 356789750 781980916 119086249 50733193 814982718 108901785 870215158 928211254 607294005 855092588 718812997 11194862 232789524 911296011 826811786 337576317 677196052 747613278 847035934 663886743 826883089 151902085 367172146 833607160 946323414 786100898 328853363 929119878 891289308 540703594 631877127 844051355 29966451 710227854 262866768 806659979 971912277 673078645 834137638 657324130 893747134 570095439 933559686 223347634 6903910 762049758 279067247 543247058 974919547 779120639 129905163 725723821 751343503 74602734 707266483 726875794 418263501 701151729 247858130 185103388 813513363 230549960 183003294 645514963 867338118 682577381 749547401 460295963 760614714 467052018 739649250 568238657 729768387 696166363 495498433 420541384 888679761 844926100 726754042 894890182 892790806 670989236 774297968 382424598 835420496 910109801 989684996 934458602 906214065 873256120 993438221 301288257 949954889 771506206 897306015 693125670 325458992 193755098 33080154 754706032 924024621 863233864 267446563 665632309 777942172 815448423 391374711 135249022 720068347 562058727 762673208 908106428 648186820 203028126 57233195 833999728 859168497 687698835 723902295 105773002 897536552 921895437 809022569 654149352 686303997 169001393 210888024 864128622 861659048 758602101 310067868 145070466 931547029 84172580 779284375 994146824 472781072 481111428 93470231 588789443 256821628 997268988 973352478 512784141 548393949 853105374 264440426 855767861 887076544 258023228 362985837 847058456 691567549 831976387 655559737 504129785 43195827 119995061 740249958 750107230 15263560 739395618 698278975 932587515 45822900 377081896 339783450 706021618 670989236 924773220 896520609 812248585 766160279 851598911 428104153 862126037 854409978 702654948 283047277 182793181 433153995 404925247 265366984 670989236 968090530 780316366 950852278 415871768 779697504 22616154 892577729 698149151 447531460 906868724 235396051 766393289 400776515 889969426 953824617 857393444 881213244 304774195 910848523 307153637 721492619 145745597 839367518 518198007 2262354 890597796 962923618 700637982 799908338 858815163 743942877 670989236 946551915 339452949 82346773 347311973 319947984 389880852 839147359 950650857 570444081 274906734 723085701 927631504 825378479 641934596 893696870 771828416 297674097 897460017 824654212 656185222 838424624 36258011 972787785 395791044 963357603 790840154 908715192 823123735 16347610 493543718 966757620 88357118 699395826 740505171 929401277 880125682 438376958 775341011 955186174 565554224 921250119 18533567 544513282 106357408 602392790 231405555 479574423 827026316 932450198 523941225 533222661 427857894 859282313 767610016 860021755 811215617 477123428 244729054 163826530 739248817 447215134 724792869 594039838 226942216 556130068 781651846 916487712 51190745 670989236 848856027 363219492 377438033 665466572 280232623 822794252 714416202 198214853 285413161 181224505 837468687 65669970 256508678 675997983 993257083 326832107 952292569 525453129 740361764 853722343 174648922 974494186 803656957 661840952 25055042 673407567 854293916 639808829 95201357 714751295 691626747 951727461 85868611 881377660 740559630 604178528 902318415 833781376 146121541 449767457 567449464 617215064 878955866 955797071 40529684 338480409 375147211 334187234 722989820 355228399 580148840 53685305 364229759 824260039 800878700 178294059 304313058 519992153 648574098 941237049 759880726 951144068 924704147 876513738 499008564 446180756 724408341 135862911 864946896 700629514 276906400 800947694 533483305 576928984 686441341 306600706 219387554 511896712 84613248 549628838 943891357 117824344 796251788 72760040 717012229 893746361 667002725 610466761 664068403 861499100 899190443 944000468 705346630 996108937 512861110 840278098 288304561 868516829 72760371 875832726 456564061 132344486 905881569 883184099 333576445 733649590 167136143 237174919 730592745 744705679 548212047 69550202 670989236 114507836 257939090 852578623 15283414 752661986 745746085 20694042 150705438 130048403 490514510 657955766 138175997 906833785 861743467 722114803 746763886 791094947 339882320 45968319 659984089 836549647 552115591 740158587 811432139 350632448 689851441 186251220 444975839 688787328 809895534 700382663 843366381 682438347 384735126 934319255 100582473 714405947 222462317 729704718 572536569 960672350 201162190 369014813 707207718 890866271 655513414 796759340 820398137 582969802 817877846 417204234 686802018 672411646 549622206 457430612 183487520 550729753 42426192 651610293 64346205 675189071 604323465 679603279 392308966 760418647 549672332 811343100 42092218 771884587 687674470 950487700 403641582 756365787 403652500 497396837 471950616 826221980 428478240 898032839 980592208 282929737 351438135 125659766 359926626 314305189 819921055 609681226 132397492 171808767 808846980 304291272 251219027 829856315 854637303 746792203 62972796 834192972 766977983 94737333 825404572 79910243 86690507 445467890 293921621 733246001 480610115 944908615 215840718 879307811 587264621 40114433 178412659 771270701 591639532 655265163 146793287 367988699 717645362 954916071 75747965 283368344 355762673 110116371 675374155 105073392 992073850 533370705 987291240 819245386 875445089 885062178 608323889 697833958 495485656 971595343 630931103 579814688 365303147 801145970 899594891 181095281 919863160 613886234 719579219 883778400 886723039 473567816 202230335 547797337 252705522 669506794 32026942 628701566 880627079 402792694 975735581 678098522 437728990 728611981 330914304 358142417 982793011 672945760 454179336 728766278 882498004 919544615 970555753 853689653 979968605 853463309 577259629 426336516 995703608 774189959 124263989 582149666 755522463 737429443 286554667 893381159 593997306 501880952 966339436 776183509 651235137 341722389 834814289 63297266 647501854 662460438 284661566 218007179 739723619 394201497 67324556 150131775 326964717 750207999 404362720 737639952 150795577 33049859 905922435 839531294 458089944 798910261 985678364 24641368 852228756 311143727 907628846 12085905 134957519 623339253 708216103 851083936 330169358 820775425 384313959 107713470 765467830 438083211 959072198 32571186 925877908 870090781 769270921 741256538 403739640 524904616 309286842 437107959 990421526 647714810 378983262 356537787 84568599 122603009 976359327 808724592 123145170 775128479 480583829 878374696 525551703 779358525 116586288 945535694 706033187 806261352 138980435 919075986 991338164 288131762 449557846 886387294 65585312 205758013 911084778 732084364 496866468 46428523 808764453 744863274 870140853 114752760 959017798 694318744 691008015 801958597 41414170 630062970 363792394 248168572 779486056 301769237 454385538 696002584 339140907 167533197 817989504 476039798 243458444 628167597 867072188 989569719 151843101 18292321 64153770 730801746 176337020 860756459 101723882 412896158 744367347 670989236 701303790 691462903 394083038 698926900 741946469 774079977 87192617 879884817 430355328 76874058 573482221 379396138 942751152 709426683 725087576 927990766 741274106 320182072 890834538 885593934 735347926 458980609 773577141 79661328 942201370 476007226 416885370 920019412 746826270 474722865 830681958 835010018 684688819 997726571 718122696 460223254 513932063 822363812 503420492 285184918 913068349 877130953 889614445 216954477 681359758 858583814 964925664 544539230 333345892 520678080 741516331 783125649 220694959 121258285 896164785 886059504 866226016 62344354 257840681 670989236 246517497 935825822 773036008 299075211 657451536 495617182 645039268 196590772 514612356 54726736 695708297 959520746 808550043 892251655 748297065 945407738 101555079 782889285 883663813 831561895 632411925 883842084 557288393 471226330 876715586 962495367 847939389 942600210 707995181 279481291 804199718 161155263 758626653 101963464 495703246 154138181 927025116 464896714 411294942 154421639 896763436 85248820 799809185 688472265 647747499 749003315 826444874 266477649 163058843 486805893 488094497 679703036 383640534 677049572 79688208 476822417 299111192 849817141 739002598 720804672 299754256 497793676 974638072 738571954 157451547 39106891 139908907 874402921 907687972 794619826 677155536 417638759 881800936 925376629 826451799 789847873 687375458 825684164 753713649 962723324 758814533 649372157 316151014 97712721 678882185 608473092 972680896 768006359 859919939 732845544 45037060 936694589 751751966 984324829 760541867 173760154 704406695 172706671 423036822 906425985 913235902 24866445 458638348 163340080 391783374 688336924 649665736 615512398 298316460 939180666 459005321 923793136 425811215 430148643 709723834 168763087 119304578 452275599 115234840 919863107 977897687 670989236 963464782 735021954 74641449 796869698 253571001 988393484 554684155 885015400 948958023 874559817 742809946 713536512 958002760 243946278 525173331 317452062 945280165 93568410 378721871 684626215 32194762 783812007 201784949 515999370 798060854 18197445 369200433 232628442 868505572 983283177 856386008 792073789 444255184 340143157 162505847 730083040 595262180 418896591 771156271 584206485 415728421 961514398 673384246 866833861 305282771 804209785 994030952 921789750 634152264 12038720 585361316 609143277 597259886 923032069 759819286 299227691 738861884 804176260 198579219 811292205 687890598 145432827 6815124 947223790 157871895 784576834 880308376 329053823 40871675 95842956 755876454 212311002 959575017 484851612 240206374 589519143 731737139 83602271 55049485 261700644 312396078 155912438 898923521 863319438 699049558 343398386 187928257 762707501 905238563 752477781 599922966 885476173 680065364 680577340 914937294 503225854 689116316 944109961 288784467 63213847 866341652 709992577 873788532 857643224 955767474 847067938 664457107 438402043 747516830 147299645 795360196 878402267 737939402 998776360 961858534 982000561 51412525 489330871 670989236 189283087 928732391 365602888 808651510 53208040 904914296 321648057 933498349 783418666 317049970 922761624 210281925 674216796 123133380 698799327 771241991 679752530 165463369 594333688 939389206 421273003 397985588 603875923 489428479 821983784 45404109 834774436 17118851 420108512 392866361 667220095 149921439 190132297 929223905 228294655 445426229 748939162 447585010 712015323 314109940 678169390 95986830 193924191 716745555 670989236 947101587 807648138 690276442 788697073 979104873 841154296 795671035 710412738 931916739 935961491 613437279 185891537 14133109 489781988 706541599 342281582 946670463 760329336 861497125 447729964 259620253 775641978 122094045 284228575 190454950 926067462 974285625 197844352 953694967 461962139 751217998 122657451 479388186 203581139 476941054 886053580 898106961 617992578 206063838 275062507 702147993 938433431 917393642 881844748 586754666 67540754 380780583 771108469 493507749 557458213 555823180 878043033 880230899 983433350 140871575 863418013 911638828 724324059 826481680 59305963 678935486 786504689 616604552 405676639 755962560 709777287 342526596 767441910 404029516 626864795 888313979 692304432 731012790 862151052 822330016 447085820 829166044 293480039 387319034 438453016 206904971 688435588 892657639 902711670 917952478 123022875 655969317 890022470 704830111 369088083 856968270 656594607 797497516 110285968 996331919 606000901 769693014 568528332 178922285 414091943 721376357 924057514 970875123 605861454 362229064 797966835 312362525 434484610 908700540 722948576 425980357 624785103 859177623 812241870 451707731 864858484 216831495 624848568 300777545 330372187 879992725 32623650 101244685 450674299 670989236 716338584 889410348 918531607 707303951 903799783 452100454 873786744 35957857 201168094 876380502 498487338 784985647 155320243 242930138 905344134 699969973 670989236 357125539 527711051 713423191 41546290 158816274 871456688 572024065 325162962 850428462 700239161 933268539 770385817 447162281 449376586 544776969 619227540 103252298 374984717 940466027 801922305 738629719 263657864 292933419 312832547 234523946 819544368 853576641 524183388 506351731 992647180 568162220 161955675 676587147 857320586 121646556 898362046 896524057 185507070 289556958 258258238 104443668 799644239 291882626 801513198 820624715 375251871 672516008 445784680 575403764 212205050 434674458 753363113 149933928 220200767 322275012 589355440 892127004 635864949 687970824 897441887 59963429 929990979 350863756 709400032 215589453 880228086 262809021 949913310 845521413 829677668 687524798 932158286 985806691 275554401 725884803 871370370 416231423 578956998 106377841 47241772 798675917 587939055 320103637 167518395 850249769 189326071 735957362 595929859 36258589 823005085 288543984 483816983 214290420 976017493 395115834 795287301 847271865 128605253 29242 890863123 295325027 587916274 834301180 757004414 225980498 981280309 734683154 736505834 338600766 649851495 932700569 655481442 617604971 921912711 625703306 544354446 243765219 651335745 224441172 890546450 316289589 880747167 57418059 253921394 884013652 386226962 237438989 496215961 886705297 536329224 491313916 202764880 493433689 728625651 876006285 741884432 223075345 894255945 320763280 6955670 428023797 247469883 485079212 779901673 121400164 696744117 706941532 765298334 735940985 762307359 366484128 975902987 742358941 718889993 934120294 951139621 255659511 287074949 929524292 673544052 947502583 160898121 148370361 402344811 762236985 883267276 205371682 462928619 953963766 693823951 653519141 571425645 922256427 917719392 985965730 761621530 252449139 918571206 933190452 493488267 821721884 839994387 742725772 86853629 287330629 26198718 568035972 600320377 945625640 383694284 59262296 147208739 985511291 892677666 689424962 593822073 753515022 91237636 348927873 814081305 824860009 285970928 817494175 721574620 284491102 762898299 703233238 848307903 252361120 996881744 470890255 388805288 719401972 680128901 598801611 746234266 755298494 168669943 251244107 423569857 995966634 234214774 491828829 984139936 944581490 817590733 937627616 822765227 388631786 868657394 326411644 944849334 817185472 868627974 849961027 946490988 194943102 372196075 761089308 229415348 816515749 315114805 866835834 84616925 729677660 386972931 358892779 108537248 661540439 73327343 954165639 239567449 545554050 758381214 954791013 932563511 937452010 315836612 344221297 942025606 132173789 670989236 331746041 851074348 425609517 714471441 799803738 503130680 415577350 576137513 869972242 867319100 394258765 874192071 905652961 154144502 380247196 434792747 774353994 955069431 619998648 311553828 795163317 856482619 169394400 4656721 577267910 817797904 643908812 695131534 763439998 306838051 461728825 534143666 972320122 267215962 750041471 724566696 914115462 770421651 249832984 896492630 808982817 799822942 805790063 720182902 286599083 440800504 209644270 245977332 479176058 992213980 885439907 925554128 943673034 653734694 520181471 884725150 22939748 506851451 979289517 681809915 874449106 921677207 847423247 991268595 772901595 302700781 855825248 586355443 778172547 322804623 703108997 909711963 108659469 593796087 394265553 362158485 104414795 670989236 261025651 806445008 923377277 708341274 594345784 946730513 193041998 931247577 580809691 283453349 970273606 891110800 814493408 570217899 561131921 850451622 710019690 624637736 103542470 670989236 857497940 764092503 827312434 217662812 748023206 316509127 610936933 756150254 714068206 486480192 177065738 697359020 860003314 495841089 521861125 984695862 943032873 722832503 990647676 131911383 854252582 594598336 934360361 993962217 170926027 962648370 449666918 392551999 704727534 995646397 359628575 218931276 942387178 113021559 871187064 56885545 919129713 725836389 480205480 430295207 814473594 52211787 840473090 623746435 818043798 51751792 78725699 331252550 826944003 845327474 255765675 221505039 784507634 695828139 142627384 17668923 990235295 729027592 923858051 933134037 434866320 191924887 263861435 722115670 964665116 949964436 743301120 737913426 397053934 571635723 593488733 78267715 731127328 614939861 935517915 945733252 953849584 288643560 721725149 737582619 9296679 591679446 387630959 329368137 959369504 598501333 96010462 672903986 570757299 164184726 468241462 985141186 302492369 833063332 852078520 474980332 888039233 492689266 663787544 963534830 293095711 987335567 399196230 881498958 118396791 581663488 183596265 600723872 996197213 383880289 670989236 272911351 878983213 723825406 965857267 717722165 109230538 455439662 393252479 446431644 413976431 975623448 953329155 464003859 909467953 380491878 600343974 929949056 88195004 327396023 786573947 407187110 664939462 819613130 791309606 932526245 836121233 162317489 76894024 497810618 787259535 357314903 40315820 268585561 727754509 949743310 972013247 503044413 971614170 994878731 567754878 871682503 469727448 829036744 183681965 346410067 863667584 925120583 571953633 873318034 208906756 789032563 231044428 791298948 643232424 686882397 30428150 895280052 766016554 676683053 670989236 651541941 864655600 720985832 305763646 439238375 766098344 21102456 378691547 248236803 758156519 972326614 55419357 961665570 812580564 679258598 141551850 790646810 877150754 621184526 891662216 583374217 86954103 360344925 983087602 171827876 723003680 856834322 754777443 10919903 39567241 342943891 91240409 920623144 807798572 985835742 205724743 269895582 312799583 641844562 771771298 367967980 557229764 93405512 901958721 960819202 855651874 736183308 91365028 895475895 259779732 852645929 934445991 883016723 939291425 565145715 670989236 683984963 398456055 683784296 359466398 172799993 934252781 577944602 461030368 716594164 16446484 411551337 851123528 888309269 166092010 673523786 77831745 479633249 866899085 362843565 803626899 660923646 244106927 548352611 670989236 723243045 927311556 957269546 809789657 904353453 952949316 532688198 517528557 984176799 139203419 128186556 460515582 578957483 153948714 326041736 593486329 953871004 42905146 730997428 176575861 929807546 941738227 393619747 586887609 680290801 911458795 188649780 397821462 838638991 90548569 589087503 352160868 884581988 951159728 643916782 998858875 698721890 4550764 336566741 752593582 696836340 119160232 45075460 983939730 983952462 449333853 1420207 486765972 950881825 47007802 692078897 745828739 767654969 416587567 430692559 441007362 785720347 600531915 615688158 326602820 504961175 460027818 636583084 953790 489466686 103221802 709555036 614672985 925735539 702554480 648445966 622726355 118574262 958756415 955249947 815976908 168054337 178539951 34010652 379355146 862039904 922640492 956277946 691302493 893553507 536590987 154380301 785081066 929251664 95119000 929605668 538800487 905592053 879021198 253349718 511165806 5448443 670989236 131525041 521039075 675816380 922576649 783692623 673132540 403834471 48134438 556881116 646865925 692749570 73211089 457661276 801994699 265927426 864599572 356711711 706634824 350751026 5943863 930980638 795679132 551542126 289538224 841631241 407798712 718187811 199840712 40248075 789053661 323014717 780899737 846129939 661679093 797118788 198018663 470459629 149365833 524808474 468534310 844500838 675876409 504444290 685542232 66059385 460534087 676939862 896804101 683815113 816636759 965240912 624609413 703343953 700270804 349278386 12122009 88378918 955936849 670989236 654710786 167263662 631142132 542255504 257858227 279579513 971343112 899077573 882922432 847900178 780268222 177755009 242525926 849852075 660009032 194734368 401449435 863752694 332884971 685068621 999187372 759225991 970374138 881277367 94820298 992402543 813646173 532787599 329708687 830339701 216236974 507086657 495793986 965419233 381687741 867224478 968564476 584940566 813454626 604003902 703253723 761547286 888763049 287760064 360079966 970940877 774130136 739181040 764871702 516779355 910678119 730524795 642601701 428750340 829703070 720076287 18281901 898517692 897685553 293786065 743025169 709289616 270043111 980308527 845585322 743415550 991734027 889026532 99137608 869337481 785490490 982763116 651894799 596286012 659721593 299076399 944593472 282035491 794619139 790804699 433185848 761337737 461861989 185402182 969347961 156355564 153340917 868762379 499757337 121642645 961128443 570117479 490580248 190417517 247385969 141338441 290688441 937425938 886193321 681015666 783316679 758559088 385100574 541916072 250854488 924412005 549037839 917414612 95596375 670989236 973903754 62798957 792644738 839628771 24037804 207122815 214898643 483796266 798023589 29131709 152767182 901500035 876553112 146898178 558598601 670989236 841000935 601862016 299597546 188408040 330280368 914857338 405199030 913923216 897361007 873881226 75502669 254706162 730954818 700840996 655861892 178985099 86157300 768913249 885626870 919992978 897197300 525061570 946600801 824942245 807010830 974419529 723288956 199190646 226262646 521860931 201717354 708844204 852366145 801901381 587608635 880187861 558169103 672296475 710370706 191108610 186489758 551804256 626337911 638746162 542134659 504125358 967121856 580537360 274753781 454211341 146147445 855465671 50923282 26019082 900561537 768016543 485628909 281791694 904382376 750907425 884270119 197762113 549368148 448061702 334073061 999653880 455762970 769576737 684302704 655074476 810942869 990542085 517284994 438622615 80370920 782915059 270971207 577035689 487757115 904352854 693551043 179596053 932417287 917225136 876807839 696962310 775744045 695547841 770442502 726867382 367022019 701158813 743519479 166561831 371477630 34248389 816617059 897607564 942690331 862394883 780151925 494921245 273515745 926937229 98026738 949856114 749473336 963868669 720821698 352461531 413521463 771310362 722493512 818968343 941663177 690849608 902034468 2092536 727887161 834461252 670989236 876820957 864345151 251991422 712660897 962031611 223740366 809364711 394026404 761332591 287454970 995366431 453967813 764678515 606941587 510514002 216156441 887771934 954673462 226658818 747932022 129948864 520923844 790461854 923194641 939911974 46375408 121406662 711926540 69424832 724709930 381902089 221618905 134746161 830033623 272697336 498606973 56702864 801318173 846315576 865653706 681401425 971036995 937280248 177489247 172071292 500188210 15849408 831508652 464427585 990235920 807679777 81987783 557948731 315526285 571332480 15568739 409931208 279200001 106215094 739879249 437636990 381581172 469676454 652253106 283191029 290929248 934840808 59315045 885481341 823367851 818456941 863443729 332555741 655764493 399046278 899030243 373636650 825387509 859072179 421581641 402175929 444912938 641330441 30322020 567528497 985345895 907979882 875104060 624155378 896165407 316324370 850949388 855748792 485584389 357299294 803504667 24677928 697485545 985368184 841803359 310864908 864914856 939553746 730649965 402484339 886099910 916551073 166003329 877085968 677610410 739304746 778483347 142882119 204932735 816418545 664066412 982260322 745568500 942520105 94353836 36327225 340364622 182478005 61434520 945098094 566080025 945734595 599831499 614723495 735352678 512965354 852729361 278063522 974501628 285179824 873612162 256573557 247120627 783733835 987208862 738038665 553661322 692674965 482065767 143884594 507259892 100767817 521121062 363889487 129537100 125714243 287203532 56248240 742816586 304564407 541892430 544847800 542544880 138462018 832539617 368469431 148304344 415465764 490532790 222019115 991996279 158920322 743389721 779097429 594983539 937596847 738271606 281191921 723200522 790578234 7070608 719119012 556017574 830404150 732256762 618694086 844450508 851765076 138011331 45675505 970470673 875170937 940299417 808402694 903715279 925781188 986197741 621818513 237692835 24551932 788430013 441903535 8339307 790199297 810855004 651723367 306683475 570708983 296162385 422564399 368764122 1441345 796660363 190477118 756068163 110308381 360502418 891731998 862299211 733434853 836029142 27480555 505753540 693212299 571342305 387503200 817027788 737491442 737284777 514502257 587082896 600014328 681211297 737546731 729916670 913870182 137136096 822904259 946286457 186030110 872661602 253231165 140538774 903143334 2654558 826245698 803898917 801669854 152600260 504075318 746208440 890246921 674372151 639605071 848352826 996812278 734352139 611737984 930374455 127942520 728954669 689805796 961153192 925254603 288198171 682539056 866640221 890284061 885253947 294463393 670989236 991694252 827947796 636081873 793903863 315153028 670989236 705367841 675849459 701603570 966843885 400436588 942318812 415115481 6375939 375252470 560759718 719872010 793502424 871236022 143119700 746713761 443224594 886312884 399382577 754068282 390097991 776533776 498215609 527467756 587726325 792594963 620231029 240578346 337082904 867622548 957236042 135679267 608524342 232757348 588198873 802225545 963769733 825206512 346179128 811507628 793294092 80072466 88522042 357615222 711161807 787796943 213764162 660200148 973170618 463438844 301950535 715323551 801191205 837776182 802620553 554756300 847357292 596182906 844821683 191987920 312078000 371138099 815145709 869743998 887610600 595115740 545571116 472009357 777642147 316814403 594704000 318687735 569903270 534677627 805846658 767235817 949544578 707263301 940569250 12789053 755872 715639749 54207611 378860773 283931545 728075628 564939148 131999565 620350304 786318878 917956328 696153611 842540375 213751379 960844613 703529930 29726508 673020283 518240240 126530130 940596485 637160883 703314474 215458514 682076679 268573160 252496768 680291437 771717342 711429938 10066536 944242317 299562402 670989236 966799419 893744417 334207760 468760408 813487406 736260586 852110572 510065693 693517880 748678651 853927292 969977179 371278908 294821194 373046257 171063065 891729252 358809774 995468250 670989236 904288364 103039297 739507370 475918364 191061695 255673603 32189058 272637209 497362208 787959782 916645510 769250742 912129084 998789763 123523233 10826649 982852232 214311856 329123457 696978264 541641337 33932069 670989236 77051845 479539644 720707394 877922520 25404507 911618919 311177770 515879999 758053003 698416087 338724368 626764136 398424391 402870994 691482585 767974015 592780081 376749392 848198748 962805363 561418292 816479709 409731993 892316975 782327029 595708416 921940039 391635869 862906328 220835454 386917371 356485615 676079848 670989236 606479056 53346900 936840962 691929497 927324059 91469323 334384339 800151305 254526820 656388865 395763291 796789891 932090356 25729049 636158872 952852880 624930102 747301666 257833255 936640008 121295787 776556734 66807223 949431224 550503993 794796672 347268151 318826485 205089785 332707058 715800703 857065013 812930029 794125818 917018810 163428475 754829491 848588699 291606510 812096809 500162897 768013965 454893983 223207898 895270080 741469089 931660574 855503279 443828938 908925736 697913699 902237741 888760614 143818478 192865224 379504374 562223819 990852187 109823754 900583873 606249876 772203610 200550864 918629186 899592340 433992832 336783318 309769432 698368452 362499754 778448575 741023443 688849109 758148312 446296561 327348296 271000121 854189913 611183431 296815151 410282916 842849846 330274215 2374857 843295382 309991755 386040952 903964515 316681361 416762634 489588188 813482331 991862581 433468479 792503626 987902997 871981056 871810482 780070650 549067175 28239970 801543725 437711671 489660939 566099278 698422852 736808206 933086097 94087116 94261735 917364732 796092211 987706765 785371348 393048173 234217485 331222400 796952963 231160178 825528185 779808986 818142546 455094231 708696701 841521070 900504116 957674961 413780124 671226820 670989236 794386600 910966462 745061789 138346424 415670199 239508087 910974358 986180026 707774090 946176524 72003943 985047885 602639347 839893729 893078702 680891679 201340078 743068562 730575451 969492118 392488425 18595939 670989236 881772147 499842960 788088595 535887677 407405745 665020997 618872829 126993216 603271019 313915122 493564995 970641173 411944507 735675808 937496119 839351632 858537176 495510278 950072891 998857121 379467747 420541379 999469575 563622777 516092529 921181077 46775108 793623681 948976825 738615633 887216995 775000321 620338818 938799015 369890947 909483491 674135485 724632630 541654001 106385527 1322665 209527699 709074696 822724676 569883596 716489053 958796657 457625483 251453216 656517483 816019489 780145408 364613069 6950408 925050016 6669373 679643389 845245151 191941907 955108482 432691969 147011256 154877437 84387186 911754563 379435839 682358433 166042217 635805757 994176467 356173022 715143283 230511308 285959515 301984526 682442659 405458754 293582542 730770765 350604845 72546521 176950533 71819612 572746858 670709730 806385941 203900293 451807500 725737188 717947564 802095955 515844311 652143271 738839536 471784933 951767626 696058729 424944195 660850119 212430022 725680768 997020333 381264095 331925341 600060765 243885750 982436352 73291054 841613439 596740558 646557242 878089125 365661794 55586952 753307487 793532919 463800645 957267812 672671369 596457244 682625499 816220310 684693784 819218704 857647738 940307527 452816894 756371978 830714585 64089009 263305540 949220347 86211571 946619981 514358674 861952374 607998212 790056602 379894840 88804129 725543697 792071635 834462273 892075752 962771730 415479138 110043803 751884207 688365080 939369589 198098981 881037460 653470172 166326182 361256934 698433436 906773711 983332652 652783394 743322596 991916551 777787769 531659817 727531013 500508061 618339425 802306794 893162891 528095344 849027923 951763495 129626224 206968620 255371276 858900379 805356883 508099301 831891527 479044454 883847670 711378129 798720367 943944772 900264663 865344016 877093483 721884050 936643699 121493751 165639191 721977312 286197266 834635831 92067172 926254112 821932077 817810469 436884749 931031397 238242486 738646333 259692375 434485883 904869000 677502378 459768823 8358985 914452147 935167887 624349943 368982286 24151877 733297959 201418543 255507608 828330209 813241886 805073188 470115650 534984072 943951268 945288197 211345582 468797330 817017666 978247315 523766494 445604507 720837703 223521688 746524465 859475348 85516900 394485328 636067731 43187437 516810713 952702206 820282918 434094961 310300863 268299956 906642664 95474149 572223091 397487446 229891584 363642211 971439738 353870542 394420908 68045325 253506097 806725216 402220562 801299103 824416973 712622519 860103437 452229348 831782420 972566206 385144819 216774070 496090175 44035049 210296172 613159349 456984363 992189047 741387461 102246510 448962155 699420342 793598512 569775093 753865419 883351121 818345924 902340108 706703920 973087489 585976279 689290029 598639210 359966039 938086187 670989236 792567788 920479405 305663094 719355037 718738505 188845044 74395559 865942752 498900693 311709990 510038478 176997321 924441657 578469785 829672252 829879450 355297295 798698259 988219572 356257324 998617560 746214011 772268476 670989236 752633384 216809977 791664695 500906117 389444087 454332172 121925285 823573971 701139140 945781964 324268785 367427119 763939867 956991686 855536175 698196716 519111193 357479051 723674241 828481570 927864260 831153454 720923000 660133059 836894373 79506409 52671180 331132760 785560584 453962991 498873505 901504826 993033363 811450706 794944374 300134072 934717359 998276979 249441508 427879174 952485781 993564690 262698833 859593023 274741954 840991314 588199208 551723626 543055152 980873950 320122840 238351515 792426166 584861380 963220403 108619876 913228771 992448787 432200092 685194594 898938218 890893537 211077787 247298647 920735010 131183998 114846822 602663552 740054515 348712677 712961683 505432101 401594887 277340550 372187916 542548535 780401134 147246792 593989351 940425779 706195626 804217657 792320295 809488511 799730576 104112435 733405331 523192780 226605009 364807926 839055094 976289668 492755654 105101406 859923324 755405574 806020549 334224925 904240062 942942654 927567844 918333037 414743986 850597539 372468974 790121056 960461837 956362536 521945397 748401701 572535027 452963259 80085207 615671011 781877810 656567504 741880049 840578734 866579423 714086096 849260809 897008190 670989236 130308949 675251756 708184184 231370513 905249385 300787079 432724443 475806874 688188860 538651261 857653848 60621923 303482520 291452433 985058079 916497105 985343226 708261246 753380083 925779931 689053322 432199519 619177435 50719805 290548669 670989236 95685997 97772923 142291903 818249706 323457065 893046213 56676212 199778477 671177993 854695181 695533481 827832235 182239695 514970535 920811334 677757773 670989236 816602124 390588638 678239107 153125062 715824334 754675043 901981876 476647222 521651741 861130617 573096759 833017049 556999493 36439871 765343178 992582746 757135032 673757384 948830342 476586603 982646056 315869106 191904830 55989180 898615846 339866085 972685120 942907696 924015987 119126413 36762921 830133511 664744919 580721595 3533922 269906324 834450008 630668220 295692075 291024130 685018419 171414423 207992795 615723673 690601532 960896487 785490622 596545065 965463750 485415247 566843468 443381119 898686583 790727135 438375427 634278074 963577973 161844209 772177158 901223950 228323174 152128045 837853144 377055616 529292064 911276964 700248618 534386143 843572595 784586384 944186100 798965648 249380485 702607774 901425639 922171683 730472440 711049194 122464231 797152049 819037741 985982698 753541418 604239634 419841630 739831618 895755462 767272797 956101955 475083512 434296078 814160739 912014377 534964302 251441330 781814137 929907668 753238561 255384657 865031099 989961900 508218573 631391771 516223352 700927499 710334609 373927737 670989236 304697871 796798225 267645928 907217992 417307674 408747600 972747270 877039471 881166856 755483037 684437171 789152395 376271069 916484192 604289712 182044766 738290056 980061687 844341693 973991711 527883729 885975317 915860881 886198499 342582623 876810243 182458079 225175429 240515114 953163523 828996022 788968683 254316356 677962221 283485756 588996438 566159380 773819177 206424738 728961157 970240430 225648099 956787422 59562547 923771481 789613174 685038516 808600093 520666956 521853535 567858663 453229818 752645074 731505482 995270924 178206948 878252991 12976037 695291123 328922748 979274744 889962908 307559792 306142244 772169866 302514405 848322085 676556602 349006611 608624339 84225970 722911985 472499179 442987802 656396994 82086783 314073372 181926088 539152337 126533522 251468365 393526885 670989236 161837067 962551414 822398060 559058571 405819583 798851707 808927624 975720085 254929606 680543233 915994922 607404265 223581376 893489140 20509039 804048567 855054638 807922556 379009437 795765221 762408538 942039468 977396315 377597302 97923686 145442861 587871402 53299339 255129644 168757998 580371507 90098937 975592331 524152016 399278779 11780456 967253178 803358803 241678870 884917434 331739215 779325086 909019819 583771337 53114540 164362139 464101129 225677047 310813923 877003442 306169174 520855712 712812862 742789515 957066392 15983433 124055963 493667268 83858956 540545167 787818878 938960723 962991042 569181326 899731981 863422553 644904440 199009747 686075377 663612284 461947880 432152052 549396559 134398332 822081661 608584500 270833116 356256838 254678223 751961432 794337487 167563798 888027574 901792213 650185857 194700889 947053109 458042745 297310485 964088289 110278670 902010793 848451276 214102930 385366732 904321817 140622041 267213414 762986829 782001115 730775834 876073628 705422018 803024937 276113397 507106145 481578800 148963835 779644619 172975152 153559510 930400246 966560668 146183361 340080014 990182314 428102300 729477360 675346854 66363465 26221745 356634785 727286443 807131254 731775497 353809968 571714009 973779904 278293922 320506605 422111804 92249729 444021186 206611997 695739920 69012579 899922963 772329668 223857226 676104208 536275438 979802293 412876916 188873699 54068275 670989236 754869154 672299398 228932693 46434175 827345784 591294499 928609099 804719008 131123521 294134149 926999950 617690185 426747375 311048540 618450719 706953556 705855887 830167853 745917464 910873115 270529678 652862589 966430089 933354966 163743300 964288187 847765262 116374384 24723345 186617561 649921001 29926075 973573457 292514298 653053735 125451775 119456262 494652474 571457430 852175069 788378537 900395389 57018948 370200749 475402016 272019308 766164551 822648092 78110203 738949784 147671288 386890801 317920085 410620869 744405004 297920470 880199693 528315530 825637859 876863220 82688758 576774031 374600066 905213895 562792710 785785957 969692488 448313528 733775718 740624045 329217791 9470791 279871617 815156280 616149791 948216003 364494093 87393307 66646356 778184217 513280719 675120703 769854033 862646121 937778168 766087440 720191718 256759043 980355932 434051364 994852261 997854048 177496691 480455662 258492046 990627226 884793040 235975413 311311251 428160907 683690906 950305002 79132588 891361103 528086246 784656854 718899533 844479778 832356085 859805203 786895515 75290452 571319294 119281609 670989236 590525510 75155605 295497443 929503160 920420225 868324200 37030435 696957973 994947773 308759738 410962940 877138631 658498968 749432854 460876064 977729594 978069212 420949548 401774172 670989236 612019799 460718146 400829195 48480507 988662532 962197013 669639480 556031550 615976937 817802444 305388099 679449157 669093569 978301653 61457626 649067466 856193395 951948592 806628037 849217703 268389198 695548497 883754692 318558097 859677409 866570396 867260872 989412328 952445025 885838091 967498480 2826339 939534782 199444546 922315815 40152092 310344309 625210758 741257631 733503220 321043428 552788746 977819623 46592008 925420794 935553617 147107283 111260666 560949300 846023623 825978891 434343107 545661435 920696002 682071644 756407734 323178356 157193121 777407255 161526813 962248748 907436291 774308927 563552100 429576017 877950103 877487275 841834553 438116251 858733072 818959915 96466349 959322817 359102568 125216325 375144143 304806893 651663508 965990090 736295385 156148926 872419302 962998231 506362159 865371101 764550934 987613643 679151383 670989236 968696174 980804519 693670856 351343039 93261072 807669544 191403378 456735837 532909297 184184393 848923770 401236061 406465317 933517357 817657534 517215373 757623092 421190714 447446391 861297969 925454481 822781549 545454557 16161478 386612140 968352301 681493290 64876058 728928950 524773277 735552048 700274731 792587449 571217394 470047543 572273140 233841862 464955163 183972899 962543200 636780584 663266297 839661814 326684137 713179419 175847945 168208655 966868772 849946039 97438228 747499362 673295901 353331033 253330772 445110729 128896979 303477986 477735135 315324320 764166013 761646885 547582567 709742111 741399241 750536046 101289254 670989236 700911811 194005027 539501753 101937677 772825442 768966864 534550137 260882662 772875116 805440161 724213311 747430024 455258299 837690629 811491314 643428987 903874930 692285219 278348690 188166220 561554798 239422397 765329169 807417490 843108460 914226593 800705333 82455092 776629155 139874270 794263606 636745190 702098062 997190292 112153721 940732418 709234213 849411861 929456932 884070690 162991225 798433123 591281780 748187664 475159637 901779748 513157629 693134683 741673583 520556066 614684395 978589599 339526093 310928785 735838986 510518501 781889181 878756419 973717374 682615199 800330956 157304202 137411865 106598568 344149109 94432123 412072223 940441756 765793769 141383437 796432425 697839793 743283974 868175974 857823359 153858089 560268834 103897316 846308598 356661764 799937176 703904680 670989236 898694569 972958513 144060247 946368147 592919654 434581291 529326780 399713681 487804584 695471991 780332053 607660038 136053563 104683386 915308856 849031737 808051726 417532037 946062359 574832410 841341344 190077262 16903141 827435844 558977062 562594854 924180744 772441289 551795980 60642465 954793543 32440661 966037894 839684791 8697381 547797472 674351688 564301713 687000860 759216584 639122872 831046287 892481808 114564255 863504707 398259926 922613806 668255465 20382397 76191699 694025987 823835129 500359113 834750026 465825064 982667067 196790677 378697099 914106489 293069676 301788024 660075058 609406433 653542085 192253036 638651450 784374235 903223636 687890111 226307315 250058534 114963196 778939089 795576406 826650587 734630221 95600273 835125383 583926042 156940694 156072035 899138148 380772784 550691710 420168066 982197197 786261304 852667041 754266422 529076898 978331230 853017456 929009835 883400031 697981563 252861821 387643267 996985824 457381011 140203216 375014077 80551282 979649760 352227184 297072658 769346856 702612971 533351282 292844263 822584981 892252534 775038250 917112028 746475777 488949149 837339997 216634168 997447893 766256445 853394078 742427373 723072749 857312499 764244575 123774565 788736707 968232175 812522505 637243534 968726311 687240195 350774484 411655772 543001085 684840441 998968903 962738687 777426430 405230390 746046530 415966011 720697113 231575137 508176780 652533975 1825628 760307445 340203329 765584357 930434850 991240944 318678289 838942957 766853547 928249140 973542415 99846123 247440825 600664624 761455234 743822940 216030773 969017281 504183076 362201975 219908832 834961193 412625667 357104205 288218231 964285520 561723472 505322798 886768248 892848136 675241922 712637901 245998996 670989236 774004994 532886935 818532691 560409375 492139895 957739119 926901901 953519205 670989236 886667746 859584397 722924893 813683496 442918080 419831646 815305614 263862228 772022508 684809696 989056799 926182741 605000792 873671010 798903340 725210003 959356727 4359038 632702842 341938741 788200653 139697789 389931972 798029214 930559256 882263474 625857856 670989236 894200842 825935156 829194383 69913384 971420465 877491637 245219667 663169216 773117924 941725786 313200413 257717261 754336362 963479897 925334645 731951524 133796313 5817217 81763446 683638192 765555253 313889956 233546362 898875665 829777927 503619907 879781971 703363148 805446834 684350764 318224502 200132152 743223786 505125241 805014022 316310773 769339465 308961271 913211804 156501307 940723661 290907842 327837282 695988875 521369311 290212449 50746943 84042043 349859815 938168851 52781710 307962794 375241146 55438412 997174425 957470291 5272629 820345879 864869466 486735914 560041832 826171382 328389385 790201377 403065001 587478120 158269748 526883557 998068508 871700537 911326001 969042335 811600057 781851338 200197312 216036574 692731890 979401380 735584975 985782414 777591816 950528260 722571823 815164325 951090410 955983595 312791475 230803033 625782444 850476273 63818823 206832099 889132952 739316800 424695385 370780567 801191260 687324289 598492854 517450018 546312640 928842816 878904366 902066851 221881568 868753905 61413058 639756700 26607457 11899608 902672474 670989236 648144832 518511632 189937956 846615420 873509678 273954701 608829729 856414472 931090085 762999191 275374433 855664238 983648931 743139188 853134016 371532009 856688699 91398219 117362207 129859189 486591593 596183296 387385237 978888351 662504904 381397007 682784215 852201666 755092734 967876035 899699620 782306748 678735259 863499293 4932391 886931169 676026359 979832638 804400982 928322069 915236396 707097238 535180881 481645681 578473236 734523072 963517964 425237321 498616865 810348325 138460923 490861814 952622746 491302025 300891038 957029199 899276408 438021626 276969599 797628441 889935914 866104798 23020565 861999499 109536823 516677008 733461314 882107331 374000679 284723978 368800835 710320529 888409056 408675668 658159764 765783039 867347884 874224037 233998595 925236495 553451880 621888266 620895010 805741831 908965249 745855824 743006615 313582391 406440012 776287557 653186266 470138195 599072179 691970880 584030033 288626993 691055770 319662799 830012491 535236688 74762672 369773392 545105918 211480691 978064585 602572753 391924772 677707761 366805399 973296085 968933480 297853231 533570012 907958755 709417249 85120289 667049179 271578600 28765305 227880714 586629563 924192562 852559788 670989236 54899096 680668718 128728458 862575652 191216202 774114538 862629445 691668142 208587071 727959544 302066689 438691955 971836001 718915051 683014580 966296105 912279848 316553287 838109346 930028815 782370757 722559590 923995805 894167965 489846387 475960224 789155559 593491917 739381092 734561827 758539091 446716234 483322182 521573539 496502796 811180213 956637698 891628935 487246168 217394326 833842327 581704396 48342654 491145290 866772321 891433140 848269093 571672784 520647665 158252010 972118648 696392088 544668261 211328345 799245410 670989236 880377326 158179620 320416123 875244767 331100646 44703383 879971274 605788140 793228707 405813137 213380717 569664335 826311158 759233640 724017205 935037685 722005162 934875188 486313385 898298288 676197269 59366530 699703197 989983809 853633067 294973127 15532010 651561324 917290939 201460841 241610385 591033056 184884767 780790770 978932909 674592432 670989236 694680472 805828185 522288228 551932849 381604565 734473227 314560741 797217968 565682414 379019598 128245630 181626556 680734977 810416743 164477862 655070134 769806091 234869282 810699527 391766935 398316951 343147815 822155806 929111825 392068461 781229667 955006545 966780857 307068607 953616971 932496725 171988252 542798045 815918593 118422325 813529880 801429113 833442425 850959874 875647630 951095905 127000580 997241685 682058546 544784253 701173028 35148062 776499749 687159744 729488832 844276393 703797312 670989236 319433828 963650519 854577527 559846645 553172941 330777217 643605573 730481555 851629187 237051028 817617284 242143478 785062534 187507011 488002539 317012176 940211423 10937510 665789579 816769088 494681269 616640727 126344524 134061148 842564792 403167546 890880693 925316241 745306877 767104689 883796434 827537654 786807476 899304864 797020265 406241298 945264083 740309347 647453087 743482414 748730401 126042399 506052415 775283879 941657788 899874787 852858471 604613832 876815330 985158686 71587576 441682548 305924443 712914875 922996502 958001181 318325327 730302541 789788835 673270972 463449470 341317164 81164067 718281443 938986872 984243100 898422491 725437872 1770449 83930482 757756537 468160806 752264800 742753242 679843571 949293853 957220935 284722458 831268464 696577962 728686542 887997315 502535294 399094672 960905341 718128623 356114568 799623305 17244977 479260788 150009475 966678621 100821870 267871449 694458505 496792609 251458617 482993386 213897053 506901248 576205685 974511807 719278132 235258885 828064120 370126890 779651676 160025642 810627080 468660822 553043982 838391233 595948146 772414133 422761504 544216695 766745675 887990998 773239719 295955514 707224350 699953873 812393591 816568757 383712612 517854730 871040815 921830319 647186843 299431636 782712823 922940473 946512117 154153862 428967511 117420683 419488529 815496306 750354384 785449770 7928960 402686339 403996802 472670017 699219747 951975903 762395130 174399773 341520977 850027171 736429872 282909817 435790351 884302118 606073007 790794276 85076809 38067194 196778028 405749806 102488461 875956812 92027278 757498128 644176811 825325137 329287459 848845812 904866576 805053007 662295960 595748526 404133241 628287682 697857609 577192774 965294575 817735872 671560758 691217557 113876904 919195099 514554489 302793629 916155135 114296738 115803673 626793972 353765885 537699909 72060254 969187109 726008555 321154477 949216850 934688254 274286274 965753860 731384177 16716938 982100106 299235026 577982542 850574249 448111669 162392851 433714610 780124215 135081751 674125153 475203527 595446011 366919055 547679781 938192425 957831122 906916650 762765028 810004098 153619760 698137756 417557160 921280845 906232986 979971942 382028467 156720821 745262939 905032573 836381263 989495198 851356671 20946782 69639359 890314988 630112069 274012737 935346089 925191743 845660181 673200178 281188685 955533925 538847109 552030019 887968820 750823905 527725346 413915446 935209806 821633172 994533433 292758770 327254450 382171396 646987431 659191504 304736072 593119740 83778618 719942218 208996709 900030207 382609649 440913951 788457570 702254836 756057045 960246235 460227434 874800834 890110325 506717069 536457825 340527109 738288203 252763824 445069266 279317427 183132719 116374406 975213648 736215567 755874162 906741250 556515622 50167193 715942018 273644656 225305779 789442635 915844583 260144795 782788741 961685005 431022192 836763613 323261138 779857221 788501196 744544533 859171492 650565073 82275044 691264625 772936216 520687744 582583186 234086148 904812431 484873542 219742699 687503812 721415131 863906096 982030944 727860113 474885176 501145414 153462411 309574181 93388370 421916414 900000013 918377902 91511401 704688405 774192791 434387874 69346240 945367081 859189195 383934839 306920797 814145537 206521667 628127182 967103970 964903483 907304879 942397985 785606729 248970566 670989236 365659790 120503229 742052335 415809230 930879675 139815366 635662435 866045601 762983697 823741592 748488106 999016041 339123081 735945035 654658009 749404426 431164619 524041081 684216293 686790945 578544695 452709516 850662504 762664787 670989236 561988198 151309568 744102819 989227573 731187154 840456807 495366826 707898314 862268467 767606472 420731503 336409024 647006105 807221849 543572956 451568265 687360831 993786262 344532396 405853871 505433581 73307333 831756330 979518738 529061812 880766934 57382404 250441769 108680633 560917047 593658094 584537175 939780911 699637751 709400357 997086266 417097763 878091497 301756110 691155907 225549950 33144041 419174347 475314832 874044868 896597795 705494519 111433196 770392105 748780672 771175425 645657320 807184466 958466556 572597087 94267404 681334096 769720065 224716468 96306273 492838148 801277371 767986420 515837504 757932015 872913462 613622376 181496494 765234245 571691230 746472797 740162772 917439018 532397781 799224450 57054811 976183106 219552929 713454431 606239292 818540891 977535457 721091062 413656882 829936820 373676442 866569631 929268275 599604959 742111158 316912260 786461585 119113745 857008937 340175779 83152732 299392167 400294535 824554906 652901952 678985467 254353225 694280112 885179182 739835389 679331275 840527465 582443540 815629630 788471920 893987317 916162032 761983410 727908542 956263456 113947854 231721427 675919635 286489205 760052936 126294666 817911335 776814886 67226916 131074111 993089392 670989236 323972213 302511016 854219065 973935526 111449656 678476373 444747551 144365526 681191232 863328544 179675621 52703903 914498298 430475678 901159423 70722254 783040851 616104791 733819756 774779452 875952528 674041173 183368880 225407568 726140766 841832128 258948246 719498754 483014620 979888164 701890817 398019786 706252923 507694221 738690197 840025427 893518000 591591778 459142299 574446906 430067894 425697684 670989236 125046651 848060373 527490857 23571564 321138178 426134790 683221841 372391035 414274748 705416184 786198849 461221711 925808000 808934670 377778771 391352779 582634601 973925143 793149025 178408829 955785769 847456108 797295462 364286398 242397816 249106058 993319732 933579012 506667672 45284596 962756135 665793645 825428615 940173023 187054555 979727303 503783060 912064435 860655102 536554621 811958036 902428690 510584553 957237995 589893183 501844543 605133381 753803028 628344854 895313897 831902763 407994763 918615572 730517332 992415523 192598432 689372456 814327505 578904361 268283776 801542384 843829704 741750359 930944547 686011328 890062494 279149241 334468883 778343056 920349343 804213680 33834851 670989236 809921800 729458988 142705278 466376530 78805319 542067624 706196516 196668918 879368915 722350734 943337648 432068083 223871992 690610590 609370238 927926762 386934319 956755070 658964098 96772543 999514485 984777801 761976651 39977930 932663521 86604726 511209263 998412938 117677514 185074044 941367800 48322954 381786235 972141204 435398123 15856725 788060574 786650984 672520287 686836637 708812728 156131258 947107849 116584693 641975238 123495044 277939892 507001221 471924089 989384282 189882768 460697252 942751771 877834762 940079775 52282697 354463450 784844382 946740598 849298316 562728448 243404856 889394282 670989236 110975843 424538605 433648607 577732193 479887190 768555646 644854279 461601800 801807557 196907815 554900612 60727177 873394017 710622896 207442348 810361561 776888114 580256158 419341094 158479176 660187241 736191350 981288481 96360011 110308963 937573801 37681284 678421833 205422994 702300417 903745467 621744858 683642274 74082151 990676275 727954007 763550809 683790913 505586336 670989236 519155053 931284176 776718807 961296011 956645433 600037394 677919291 665054911 559298016 503273153 934494467 967556529 543162532 969978747 990448247 268257089 445114360 291305867 560829638 377009698 42531576 694016834 584736104 127907257 744987606 246602111 286611516 670989236 272258503 677485228 193986609 178340864 818501678 592642280 213867423 940824796 752164778 224459132 932865778 983446824 895628779 904858377 349454304 149403892 854954887 869976932 951172780 369638259 22353709 45308115 872301060 980821005 642663880 571734894 865267740 834852785 535933877 9135094 679327796 744447063 991299561 54469413 437019235 569467193 219727814 20460262 566589217 974134648 391612736 695316043 486204256 180089638 213638339 670898159 131701540 425587314 901472198 363061804 78441692 686476897 716843901 605510555 687317428 938421616 815814146 715699637 883759247 221559279 808256345 413199694 93020793 428907095 779178141 788476464 980935096 372395675 980784766 531369530 210073572 18895076 858280487 728207617 471313097 949722058 846661117 974471950 746857527 30061567 250397654 423352445 547997297 567988491 696505319 756588737 373435492 730337293 377377077 357549440 663666314 701469545 510173922 345805787 421640010 900419160 976538408 59569253 399662260 885605516 158933266 699493819 892637349 773900072 890306949 979572040 881187955 589917474 915819387 56344756 634093889 220332179 913825415 584950750 814486096 736666833 10809101 302634170 824848688 884690222 247712919 853013346 972747745 243771585 783398372 625106786 637487940 851039870 831248401 525917221 182984234 457994160 740092436 879974612 865721769 943255198 878875673 433605374 672331772 279630210 132772577 702583614 830441648 428991617 535991332 882159225 996385439 704402145 709402101 215022427 982410244 497528385 968019492 91524837 894325723 658191630 709881548 685005886 926925223 59807966 415933708 255595163 660386209 784652330 456144561 617505962 851740146 295141045 409247530 324958236 982183833 172485999 604712240 312553216 321521676 477137099 782658336 926752419 697558967 235982926 515534378 733862270 643074456 853346010 824545683 172010583 717028270 916663054 766513446 831797032 37518301 979689666 160859893 27167704 871323379 756410976 730443139 651297476 829330501 688915243 825067900 892382899 902197549 713519503 824550306 997954387 808877170 781973112 328769601 927277519 363165868 810826832 968540628 582499392 382377672 480527753 969909302 689690931 959200897 322657211 714562235 504792620 150470950 596058128 720414226 27153085 847674901 828801664 912426268 160039248 880887688 821391126 553170010 709205488 870772566 69313508 691224726 148755623 719737788 203247851 746365149 670989236 697142568 985916451 43527581 356548663 883612257 199461177 805226677 406400499 105629597 872589770 797648646 713833387 912812177 489003810 847923942 418355156 686341200 709234920 988666496 636509523 866053470 575183317 112741277 972778416 719267320 51209128 732025530 866744577 934390249 812034509 961749351 867081825 175739798 726130288 91901797 700766378 709267902 378369653 566189396 997583315 443742212 791907284 541517118 321151569 796744412 421756342 290413765 363771221 885827103 982214715 845930986 465022168 706762436 207655979 386924661 653203705 799814580 625870759 804651069 980598943 788161315 803832216 802385768 874373552 482069153 307350747 584774204 751420081 192787966 745573162 670989236 598321322 110188208 988169 614748607 100981001 612901302 949917636 304262306 164029687 319587454 199707539 926515950 187238250 731005517 596808677 878998014 904608568 791653782 896212623 741854847 66453880 741925004 147402724 830316388 827230988 372159848 793107480 183666306 792249514 977728039 923624856 461682284 99292633 868836410 779471795 559297842 95134150 731364815 836171654 689048643 533930836 799548573 670989236 952588661 728150074 638678006 810305713 438253693 755247644 956584270 641058143 410963508 136399136 938310544 325624133 897176241 674121662 101898722 931236906 269839678 307267225 9584890 422084065 877480869 777198068 747974718 670989236 895158676 331482582 127556885 982699905 903664349 132183173 815373834 297517437 799112922 750961952 527977301 78411813 812847058 558590311 686410570 456217450 688605286 919267120 837433525 690156782 43244186 682478734 181635902 688425848 971604951 691180230 629400968 48190085 176257523 488660866 728370988 78017206 141257320 963613090 503151355 221262174 885049630 905619 697138309 986340394 217070742 299604703 569988897 905233277 122420142 471540370 827681142 431193504 605993680 289128865 313974634 348728713 407821200 220616181 686653894 929491227 428676599 512753414 19117564 742450699 276490590 942354527 714383283 795222717 166677206 288169351 168326767 441369376 831044412 707577393 402805855 975227967 139760888 933062994 492235725 133131948 709172899 128927018 340169118 689809153 375858150 806840587 971011073 944284659 249650670 883919219 740734097 94121787 20503958 916110902 66185937 407292521 385503796 223069163 699311023 77385398 539972213 221265625 40223559 724341123 117968503 723993781 176160730 275778028 950887925 895524107 985391238 987884854 466035228 230738153 95349263 544368502 270788868 188293275 915781070 791615379 790864954 584950501 789311243 225500549 708497136 587487843 945841770 968602523 10655461 470805633 238292313 849540254 494140890 685288833 403805167 817483102 71566760 612654390 894359983 141555161 331141526 193592287 111612318 207700440 802112575 128250510 764947493 160829322 902816619 702141096 703547892 353918887 848428456 971117134 385399095 361738776 136154601 408097184 786074893 646623980 377584658 946931822 768993584 365669426 900327294 547575264 777405593 379670883 333080691 42636650 955043310 594992583 879198001 716934314 958145005 851849299 440461825 277011328 670989236 783856079 537113332 879742637 860415149 854162294 857064327 284934466 63463885 63397514 67468476 778993016 116418742 11333039 384039737 901886909 256023768 140771421 914570178 12639046 526856563 173575675 921485657 710037268 302790783 311582771 520101568 86544388 577772272 786978816 451848473 232070451 844382453 374406976 730031977 726820687 58270195 291621509 567552399 982910866 155763872 222475069 156114868 142829616 684514133 472417463 641527486 340337854 203040220 844277053 246765060 850569925 788598226 849882923 476407128 77789090 588522159 521066558 972386339 784297856 918904117 87944554 299208065 947971245 683417673 202285838 325115999 761054810 732984129 119988064 92588312 693945271 716661826 727028761 945474689 380468248 106732416 105093118 629101797 146073991 923503003 738337206 804167093 572921562 112979247 379142647 264671915 687721677 673259944 500140375 439142302 930037276 993160173 535105703 488730223 934233406 670989236 844594112 238592198 863540659 587335448 6538866 769956299 379017039 464155293 859075917 408055397 293652739 504550297 800538143 953409188 974753153 307376046 830024495 215825503 593405153 334096750 878183195 645106154 497506260 908140084 780327518 993636521 984508593 987681888 488147377 892251703 792566716 670989236 685258098 482515248 968011360 894396070 975829127 381545540 46473559 826713014 103816113 54934612 352283712 953432801 273509824 684269392 901557842 794851828 287148063 828105313 999152186 477512985 234025469 45497056 679965823 70943516 994956204 403621530 378480677 948679531 962998481 97579772 733156536 573965257 609004503 945068062 816971826 84700031 988424446 323887027 884902279 653304400 501906186 970067629 756023079 950338035 401596328 35680604 759424685 997225499 906567457 397137309 782043248 733432013 921240507 921960522 41098589 805079078 366062035 861163801 919959764 670989236 869282344 319351983 726426366 872416268 401556185 693292203 960312885 891066988 779818486 913273846 829288490 960051284 932590148 561726589 535159294 874289954 880298811 120609540 788536049 671299823 881653240 680520634 751716887 853238634 119746085 466753118 21620155 813143683 643405097 827453413 687360562 71869623 812747481 90686790 777094203 731360781 912873103 748088780 29496660 764759653 385291306 740342952 201419513 695589537 773217105 122033647 15054696 786633962 799082572 946654512 714334567 243695315 807840566 749445263 861618205 816482128 392953383 280158104 913548066 388759241 983315378 999752794 951742134 999533913 815416023 763938177 977269900 540936364 9939884 687159449 555866761 856046009 998097490 230455171 14938517 730179716 939790451 917430032 263332251 3362855 667159270 972137812 775059888 219345548 852881105 761948621 488738369 759709240 446964417 492565172 125373734 690276092 565946112 330383796 220454010 845172136 627922879 671174985 581610642 560938615 906806112 926023916 51787495 65692857 975972317 438486003 604595999 768760142 820145127 681218404 396014058 918156311 376911522 184389191 684763245 586340487 690059856 944359845 874416639 20332556 176913655 792341620 408746953 37000936 853500901 731173382 676732378 611993040 803848275 286580908 735918088 206958308 990327716 640685002 278312259 683626080 484377826 756810232 985781855 120396517 674786101 785956041 561712015 155991904 581536364 749480466 466857078 750228374 479014443 759935694 269304931 912928175 745553186 870709792 801372173 673886979 518177198 980828553 496043985 829636526 402116696 88049054 755721882 831924044 255847031 502234595 968026233 617054476 531578664 381036244 961334558 452903280 418629602 925883460 641825786 48113434 756557379 356070927 707143824 741144127 31457107 998046449 871805499 148836711 723577110 934195858 907635607 406714521 486153419 22678285 199551265 170170649 761699352 124720926 66865676 864316602 523722920 594105315 995098476 955746642 877883726 31970540 878083674 216613159 786817665 283216744 284736359 509215995 229592227 308155406 140497483 566489930 799517678 761158002 945563424 717726699 545129821 693643459 225753232 764457366 391439615 676670316 956612849 712788381 724355334 124842702 2584411 647130236 670713058 864091504 281984925 916168735 364396144 613014878 124339474 151028767 587968438 967322574 688224881 525856785 297155627 340794337 817465878 416677534 461743476 802238299 666911404 963497585 970203909 846544471 858397785 7497155 56745548 939155273 839875013 707543515 349190876 150975175 895958291 271881620 275360149 918950293 703360946 846511509 278734343 843492585 553296770 651878006 853515752 186708314 48449687 5946388 414654597 138285183 710647875 883034137 997880841 335385184 822283410 83302271 801768680 724146535 988817912 296769014 599602917 895380585 818096098 544348379 45966969 905846730 609411347 408891557 717322520 949022076 222642310 670989236 851761945 938021078 770223992 77381927 856308902 585077716 982270201 53762666 286158060 71408841 516745406 947898107 682587504 366597621 559110385 267932820 8294840 855907473 737005888 270431647 955386348 663392049 693515399 765747552 298681761 126760647 592234837 929164474 842805971 27177974 96494222 981761385 601718120 681904933 901102890 337094981 720841039 401652421 11556061 8259502 670989236 973348008 905752409 904734060 926058110 574121021 701900155 581944110 49798990 320363448 833807743 488853179 183009666 513339539 125255230 170553399 859820770 926741770 710079136 984360874 762344481 317304468 339452754 152183792 740177301 178450579 72419690 902254391 876279807 907727202 396178696 870234544 26341792 180234767 972366300 741589800 883355076 584453133 378562588 715143286 869453785 986737494 670989236 331187248 827676732 837841417 612971781 971945124 773955310 900527998 227645712 486884659 752039618 821092412 141054651 839173063 191226239 884391901 431018257 242306510 429815983 871115142 384897958 362119423 578685292 435072596 726414899 901382554 784498105 969289785 792445511 993501596 736006005 962695147 807517810 693787671 426123288 531407962 699376601 908871207 218205478 319944069 384326663 861805053 422086333 795053816 773125186 301072607 799405482 500954811 521317516 59787185 773590581 47386068 460248268 864649395 921571109 931062894 557196994 882036494 920482790 533755283 696690456 998149961 660460158 993204682 182139778 943798118 841648819 851340376 575336553 838694347 491542739 157266356 749565255 109837936 711477655 349665797 492429911 722842798 306217538 807768069 655165928 328565386 819736429 585259059 981159798 976068620 605394447 532094460 564083784 707963812 666012420 580879458 459752285 193321900 799941137 787479490 469958201 681903530 590764505 334815242 850213610 723629467 810497721 772731573 160040962 774861143 750839206 700285281 79755504 500536506 804928902 821426871 321439524 607076476 122079612 520066807 503699709 834412411 606783653 17110157 992974607 143513370 906244722 713984899 486379561 689426203 578763718 772649229 718926747 388502410 558050423 294436293 810696547 27746788 261155047 808309611 343801924 193187952 931329502 393144025 967381215 915428123 293302324 430692436 275709638 951764925 219017616 346263691 716565769 19175041 857248045 965519980 625412671 855767993 1429501 690338602 309776026 296132713 178339653 14153461 528230256 852914981 788392985 652523170 175427541 538908136 351925515 816623042 21379877 804964352 139379860 825149700 904627604 988521533 950487834 815868576 963028668 930741270 264103844 825695723 254430295 888910292 812428571 934417548 83601365 349038107 842789455 714817636 450940162 907594334 636466051 48075042 21334394 893186150 954114965 784624647 165986018 724591463 400003602 814287371 599728894 540830940 970472432 128452625 433198718 68307497 906322789 361754544 398373721 506852284 592981023 24685139 715369298 75982750 580334504 996851400 968209198 366496184 870153974 263318606 298694585 926017549 724973386 806031052 931229864 946196030 711758581 670989236 106346815 752180552 896485557 802985560 279244073 775928075 593193362 50340945 131111704 784526009 458950190 820248857 998022034 403535926 800151014 330178496 953646379 155182962 100032075 739858146 385031289 935698207 628157828 976640825 953636416 138875384 286262331 838204302 85360805 572515048 735152810 808068183 359388839 558626503 630228547 925970214 226189379 993610991 431957435 386938047 692267122 730685472 772144820 362446145 659469928 731344590 305420608 281830182 637466882 205025940 402657995 845381792 40048830 177812103 808905463 694255372 670989236 826874242 118107163 670989236 670989236 946997652 895289907 201247773 795221062 100928492 808625260 896438395 202495715 93485220 476503075 574352593 773583366 652145513 162202560 155164740 874509618 574901641 867595844 135832478 239752786 152823833 246045017 848662753 950289692 835141766 768211456 7535680 540099645 4739937 170537944 75258349 205221514 716536967 465819364 109543623 887465549 804725452 838171975 271159174 59805472 71008056 669498899 690396973 951011722 227375499 341833621 740569984 724855298 767086740 266451719 130296553 387737863 970100488 320755699 460811438 900484871 543973774 669162721 381776208 732379700 361549171 697165534 253991266 79042088 530404884 811069775 797952233 670989236 403881796 944321543 749411536 90082916 996192863 284999533 971154076 475945740 555833084 260198979 165392930 666214935 821811097 887991837 885147140 785522259 670989236 222528752 583895986 754880645 820639394 843580520 546567413 407415676 318337391 797209869 950070553 211338519 307063492 973116874 999378598 574767145 961271030 788014539 643828146 718681433 837718519 829839065 693764114 134986657 225993991 426995429 512218767 908040316 630888097 723748170 737756171 946150873 819619046 353922574 57491937 279966744 777308177 904786353 578392341 685761725 476506104 321085922 831897346 383628106 793234397 782430592 299314693 897181632 245818657 761430141 811644360 792914148 288576436 927911581 490206309 711269967 936799083 891109503 564170268 988779334 972836588 569914469 694444220 70808441 571422498 639896679 770988546 833363209 76361789 757860921 482711834 486593155 886199472 674677871 193862153 651801993 710791656 979392001 822861928 479684930 771273638 813998467 757522269 882924138 835518761 688672116 930765473 325725488 835807133 800780688 938140182 354463267 80035980 893709462 831411070 301251759 757427908 363375448 814145933 206165052 56693384 830872619 533234923 612243962 107677454 551397898 930345118 627203527 850733319 932096459 662723676 835004851 240426585 50179844 932150457 498120708 784277928 983082410 690246696 600319704 671978828 199758559 954631205 813322851 855590317 673665341 701460840 81821791 242115632 759164997 596234208 305980497 265039083 899856779 983693785 17672099 32458098 178815988 956141832 423089882 212791518 907779819 313570448 913195828 191324358 851738963 138804592 254285376 345433195 361539343 952054539 975431023 988195555 161417111 325177795 674704450 799521895 820364734 589076852 574545996 721389917 341179543 798576233 362626891 872693859 86296486 808539058 524941958 574803327 991037653 379737712 696006083 925111952 968487980 144643939 907054535 687212018 512686886 471159158 846004959 860227157 18576544 533809371 801120995 426333689 712119666 592217363 457220567 725640465 889969993 687418391 413513420 809109499 600140133 750916826 907877971 828757966 850804649 837852861 755967510 597933657 133729648 650391940 932081280 968328507 719655012 909275282 529705854 288268326 413827381 513016368 604534993 899515966 285445565 990531269 112626919 813364657 236137570 730040511 29194504 670989236 348458969 345151606 707384520 723525469 948970566 121987977 263232174 897095865 272824529 267032163 981943383 676616272 670989236 731475590 916508231 12685318 528184188 134205240 733574579 329309615 829248983 474486839 422553124 687470167 47500306 986418707 393496952 719091932 953951438 703795893 312647495 615050431 502671410 855200428 496953779 35278742 795795960 711780574 555925522 57924441 871945533 175732410 867553160 889228173 997571695 487529771 357799847 73452573 846039716 532900113 977017673 684601674 78348363 921901253 541164947 1308407 950012872 361341010 997056866 935711155 744044304 940864609 577320236 225306538 597569252 836432693 117113668 927560038 845810980 804613271 309151613 670989236 81658665 240709248 488731893 763537265 966884363 15060674 759366547 650391786 791256780 777779329 4563822 555798143 360743740 510833315 670989236 257449706 153294712 618454915 103040897 974641756 830803797 744257349 829087684 959194430 684691799 122494245 610624509 781841911 641544878 934106265 706078893 949070869 595293291 906649317 685999311 928899785 660599843 578501973 175715117 885544003 9470297 761772634 996646297 11134186 977868379 952675235 817993460 141306249 990320571 25451482 276586468 760331594 725275042 670989236 539643867 397764464 751280607 750547839 832727581 691577928 512932628 693259098 92967920 915480278 789290174 760603169 677314395 625194497 872600499 60665921 872410491 670989236 488908907 723515035 789795799 890362557 165056134 883849635 915019917 654485257 880681546 850851794 703529064 221525055 455046597 739764643 321799572 10922951 112329326 541222814 677332990 783699735 941762374 779617135 308818840 420120758 436480545 703775392 592354288 468229255 171751259 905580174 942823494 439470338 748953593 507920700 210760956 111087559 732204623 670989236 850780004 711104469 977266454 743141412 988614241 33580939 927962282 843614892 980199888 947267944 216075516 153083692 749877220 550726389 350200983 866135399 535494643 44636722 826485720 507036330 468992585 762339106 966344263 264706214 441897239 970078256 799154738 345850269 522360147 836554235 19261012 865382506 901136054 610555334 192497429 883008582 927258843 606137707 545555807 105632064 943937685 690564547 225152011 115578395 734103450 389468942 189758140 694725096 957242868 834817002 3711509 642353866 25930739 802395903 469002018 237287156 762904601 686888388 989362250 872668527 994384837 846302652 839440606 617628995 712782109 232731732 975247796 736593984 108540325 928315178 84427076 898685124 902053645 841053055 951087203 871535016 785198135 20202785 78316852 525590427 678437739 526490941 447220362 176116002 302499525 315836246 889337613 592705432 791539180 894157766 857376062 247522434 152268564 439818573 796438316 754892687 219762737 39250947 730008636 496653949 510434550 730819355 823592222 941458127 243974639 635406118 775377810 555705599 491533921 431895484 326706351 807891935 173887309 822743830 169322530 556744108 919145947 519467719 285353147 91438103 808661197 812897076 823380714 729939664 155447683 476891015 655157529 365955332 965216598 380561358 408962465 409347642 868489790 73810897 896083590 705173562 64509776 830052848 920526426 903775273 774905034 671757542 678731243 533528556 107707836 772159043 979785570 909014041 198444510 945038037 774669029 990509670 936914598 317054045 942773769 988572502 947312837 534881975 762447521 953240083 51441738 746158029 625116754 648373655 86122842 411594168 670989236 84173828 810769750 412192370 935566576 92254781 50246736 722858494 56167212 180200880 634324627 381503145 548494698 879557081 345774343 666079150 82703598 311946901 612940550 739762884 139988211 273295277 182186967 761901370 473464714 926900581 219754399 691808564 167988000 30637370 766236481 612536508 227440909 771293599 205912014 293405326 830539612 233948663 614591836 878976377 392250369 974739111 722561541 52278539 313759332 958403221 707747731 97775796 891047393 440222870 945265617 218165904 912800891 535369016 505377421 700223181 478386841 714207397 451258788 670989236 794751602 451064029 670989236 732040301 19169030 747220069 674275192 709788888 21006396 901070656 837983865 793075995 659995348 651931114 523415772 196045031 412161868 873944270 479221373 372653422 640916609 372124917 906530105 818171831 456203074 339495151 681088205 464578137 848759831 168686878 974960714 802724646 813250451 766174619 648388851 746723525 540831866 755479729 779874208 849056006 938012763 164368686 854553764 711283540 245591042 926854598 72581241 513244033 363246360 815173993 639107391 993666386 951955888 898377567 620892323 982188114 826978705 648841451 526940039 166858879 983975820 225806768 87963939 133513340 488854597 323805307 305410539 688589517 906916571 512616440 96256419 78302023 675678779 799930155 510691813 895475608 911027659 671889470 768211513 240341214 336805005 929808507 618925451 768188271 921036823 3538223 226510997 251195838 687522488 749087763 715800098 792416908 265411770 679948734 894990493 837584447 114493184 130800951 708739064 947095226 844943889 735465160 808373243 720478219 317259470 721168673 395037731 350762443 585549794 891881041 36154557 665921421 106753243 159308384 782285954 606571099 597167618 587284658 896664517 781043861 902982783 928522684 978772457 551597062 949088533 928817234 796566119 567965306 814668405 548120209 812711568 445642059 322955413 742884585 357451231 69997095 331390424 87074793 307891824 758149895 315092137 937639785 390593620 130117413 53127434 697798296 768895067 108151496 862538681 884159628 608953647 681930572 809154919 832434931 670989236 733192772 867095417 856668327 128989847 903338188 158435139 818125870 126433994 276552581 790256361 482135094 462805699 742242292 371991955 159888417 899745397 385635816 727108497 670651693 206931816 780214376 602332026 432188074 651123732 971942641 74270930 216827736 921661711 824715282 957757883 24622570 500546679 902813025 540231292 552946864 141378468 228107329 932066628 760378236 812343317 745074743 670989236 855284703 757693564 822949274 841486176 903187698 985313136 415185668 962976302 50790581 827033711 684480313 729333441 825896611 235218731 946221657 294430030 380546866 425736041 170998911 770056923 532848718 315538755 934779311 727253718 431003961 398991738 866169578 666403519 353437809 868890580 713110625 236094073 427109685 234953624 666611995 729912811 351886713 935004215 683088509 775319709 281699506 805404038 833582191 807042257 558008609 917221557 959919654 340620772 804263673 143683427 235731131 187927110 309910735 960803135 310170385 203490158 3985697 67721009 678037220 689555240 726111911 668712475 985573077 373926460 680364228 310338367 25444540 919896682 148558327 830930504 563550954 911043415 691236770 11229584 524042555 984942588 781347404 661787768 727201893 537803053 889628657 675991350 430212590 824785801 708996224 998492086 441366464 348095785 624999525 987537403 321770950 803213485 515602706 737921694 571036989 554411912 331920156 994218963 323523441 96128317 722960610 355202589 674687154 679196450 698341495 363385120 747460990 421853884 313601682 797606610 434512810 608187536 631350597 460286716 991760376 830419414 814282798 959367336 849899636 378264880 237271129 505509544 49343514 754758746 793278567 914938183 506860308 748300364 91656440 525711499 589244 219836694 397896911 932922075 200689921 756612427 270968193 421739451 306184833 373466764 488269177 766064533 161841145 828855565 365011420 956876407 888678120 691591846 344570812 4949767 845489135 564097272 811785783 8612107 489385059 856377941 643019887 670989236 833257697 119142013 726376960 939045572 738314607 133469570 842599773 228227814 816288674 132434453 225325682 727097516 642791064 740721182 736191375 122447045 726149521 687412661 745747255 646922661 300771125 18296201 178700531 392158333 664429364 293363764 466782140 906653293 752570324 85645527 60950067 63792867 765533686 562338268 958516742 976775608 796914465 133373091 852937853 854588233 975685675 858890313 908599221 548920383 679010599 252552359 690058101 344210692 795608378 739682842 677207892 305312877 54642847 298918005 212017004 370833705 982390975 193951129 517812676 741229021 770904483 946466498 577215005 232228745 377573439 794608128 766615509 731155875 835294077 897049248 586922469 726610872 97768745 245749185 883418426 500566649 924495603 550288500 523302584 197484623 280103663 102870126 65634039 830957062 831813994 760874207 100451275 126518487 441110723 144198854 684808021 908404342 737957395 693683453 291691051 766818621 589614319 445623505 709776803 803877397 762953502 761089680 778444006 615711174 135306454 942879910 328195406 566671399 253448532 7511282 769786812 762615986 710190916 148367677 47071225 66924961 782508985 658762669 913779356 746102636 724623555 46506805 498194629 259031528 488501329 931153926 710239271 966874576 711651124 868155805 787514792 341127959 236851025 860191054 972448009 576849810 753569327 421032302 783736615 246692819 807068325 667237222 564068407 310335839 737475871 896943729 87510365 677367068 727077651 830318873 563262096 670989236 385074697 990769214 290367856 845425318 797424773 528575279 806399781 386309699 235854517 974902836 416977175 541689910 562166260 329669966 903525717 966326333 160542121 587305833 218770262 814888813 802216284 998252862 140615501 149179944 100002831 423495447 127655728 897292148 155263990 695816636 867206608 765302475 984305357 239236163 928073649 94451180 820650300 832669981 7722609 244966779 310722867 331890604 958776720 272336389 891075158 585293591 884697390 714912032 630679875 299056085 257303985 998829355 237320368 904222421 219619240 190679735 820413298 831965831 678228783 770325896 608023019 946070595 667217036 578164045 894695350 862580732 160143111 55313725 462736671 411700471 604398084 521519514 442659646 893846751 906272499 643656612 719965397 924025008 926823698 626534683 763622553 940756873 353249640 410441967 302958627 34257637 494100001 865325469 452259977 329594719 974197147 424793659 894664636 215855299 162883239 513871583 719479430 790951203 758055639 737811785 592831240 650782514 615359465 637098883 236300238 12433560 58364824 367045720 586765007 937700171 808948100 929650620 869517424 705664775 647867782 428476067 996596843 124392507 962383449 912640831 763436865 826405411 454404338 835266007 683318064 892776638 411740635 18187052 597966745 854310940 1109365 728850432 466561697 319753634 724898938 582372508 827839781 845907816 529847934 820491257 670989236 945589954 992877616 702947747 960101551 598301212 42694460 996686244 976971868 758659234 686635993 811181645 841810154 681378200 457302974 672041618 42025191 701872296 717717008 248790684 836518318 941779115 792263678 993847417 511978705 878381180 922260919 137011390 518306058 885411894 888347003 818894822 388782527 784380282 737368604 976087213 748417528 573929309 531843329 702444272 993387960 501381937 25523318 522994762 281598429 652506779 969634543 454067742 556224740 871719300 830752916 839207858 819231982 164771764 537541717 941935210 446677530 888631565 659422908 376248262 808994378 674239551 369862738 754216797 839359138 329929770 358014428 707869294 728183972 553310725 63235943 995168870 291201924 739913096 434023919 826492154 921617960 841632818 168076619 63880156 670989236 52154003 676520538 127129567 94798898 987071132 670989236 448406832 251803372 837685823 375745434 743718904 234409712 150089501 998554910 713524073 975895628 768928524 530583313 95706219 460194307 944743177 965474125 850527991 419813144 484247555 815359129 711345410 393412490 857283465 321078994 213337894 733410291 408582066 192315996 908360015 516676392 975281100 878860183 494513349 978778430 912304401 697825732 681523966 28275930 389523091 67125672 860644305 666485912 774965442 876469865 628478556 711417000 543952174 288869245 554793528 895573156 7048571 154974021 41020731 888143210 771619589 171939123 788720284 23872095 109163967 830999224 605330353 11347455 802384561 946801652 541524190 926594068 39776565 424955279 670989236 900322238 458981903 123300097 578997604 835286131 647909413 514644521 933482072 298906066 879749960 508928747 670989236 693337988 822590080 861156161 896841533 347470097 698779266 314110490 860028190 833841611 837696839 434819158 627946829 283101678 694309594 973550782 758692146 732178114 778707170 823606194 193499945 681176159 670989236 887682965 758630509 42069781 337665705 941712793 310478923 239495171 370353162 675352863 35597911 611779150 915553620 79359553 288651778 436003992 945614472 992173889 719798536 35962047 753771191 762962715 883838460 461774452 404918182 682410888 930183154 101030290 608561153 567088576 162054007 704307938 327957442 693334279 934461123 226988104 950620490 102561742 695714739 909359007 487697264 492051998 467274963 927038348 166935098 938790244 470174953 896285384 510366349 989367838 817134636 737294629 635255947 337447688 262779582 712932954 85173993 872843906 682998366 159667865 53211828 118142866 308999048 694793568 934782483 849568072 458801313 301404529 444564313 194126804 287622052 678845922 395223039 610127961 150931336 867834901 40488794 943277827 625380765 670989236 155368061 694500324 854129031 897928953 169932535 565527748 965780273 995679328 21060657 745286556 976255770 107703087 805453118 800112023 43729476 703295444 414078190 789183731 484369292 856111818 970950788 963908458 735581930 670386144 313030697 550682815 334998954 438227555 737133275 884009800 942921161 831656651 311163188 928583512 175860919 645363802 934525528 73310449 893144446 686322885 498441158 757965609 70277156 161836083 979371445 934688184 317958053 484931063 242563046 965715279 732566129 684717142 134494746 393037624 892984043 492877173 749377778 959751195 861845219 695579143 861984576 192023712 21748559 604787463 184175862 391804973 962970810 493853660 201021630 439584534 549894469 447875208 80861931 860082112 674325483 534033545 334097213 873896069 917006612 540014219 903822608 392098163 96571536 940059421 877627737 807759836 470295359 466377218 75793497 635085900 396180826 455354511 25540276 221706716 318511304 541697394 539426495 759197119 40264727 959958825 203575960 301277825 796231742 925604433 67191781 759601953 49642899 775690171 823294471 359545818 684200441 921745406 868245374 961716308 28577197 923330906 996498656 796171897 43966238 953048166 254724620 694783005 44605634 869698282 718797082 248966537 543459589 156916254 994376916 821451323 41324648 513963880 951057725 897143431 343159275 977034594 990848068 863426437 6923526 690649641 475950760 475877904 943814971 702192596 33615125 13270822 115009022 681498297 644557733 192894077 493201036 833003474 690744605 124335136 859269621 659340707 947298870 1532708 386525827 779233828 80169079 465754130 241480951 889399221 495865842 19175756 173354751 660118959 788195566 229605968 277110615 491680647 190023158 951210642 835482654 227764260 865653360 118406415 777075953 902942500 340905384 719112804 866050133 109887453 776092024 115386840 899326174 153306692 752400269 41908282 670989236 584894369 880697070 26830910 581491674 825890918 147496254 286489900 49142941 849941090 830859693 783964536 357086355 946166293 326048109 676303568 11066858 365417153 431460563 670659703 739380495 482528467 910170221 535023387 252375038 920342981 688955751 585592980 808542598 589120790 715449048 964314837 136403015 879861001 404079343 886476579 132748148 684539514 920526658 594208048 103557031 17959278 817514873 1851132 675173799 491429757 861933585 819418504 655973586 757509486 884658582 495565695 868220835 196889326 840689042 314333293 319736755 176880166 670989236 913804492 931132969 832892042 663952552 695508710 224480645 716626611 866556570 672206563 323857700 249333949 818596988 444063233 989433912 55887718 993887919 655002319 706273968 969164208 256403047 778880516 334482748 708728255 814048736 732498643 407990670 112789687 613424467 915402383 68353227 492462736 743040427 921266399 98656872 317454597 587012881 267524175 705622982 963386267 459400971 995319423 222967316 798215229 994848706 670989236 564248068 638952189 4725431 158283993 863527883 155095882 768768470 714437862 836000014 782536809 729586915 758567368 860053398 713895290 833019329 963538689 792759443 196746915 826420826 781900463 304005010 934537621 436793919 416194112 801448075 368632322 225396599 200370930 418566666 720306026 79209565 725742894 600548412 184229190 764865670 344866368 694695305 457177146 427388756 699301387 844251595 977490538 767338501 670989236 703036793 985234851 952378548 393177155 488431824 690978694 855736792 842588759 758617569 221447468 968552441 858546759 412125943 43225552 779436564 751986520 522806752 720228573 786090998 709374327 763879187 382869900 874878877 894367291 526991267 173402499 162141703 939131077 686057675 749021876 720291105 868028659 492260750 600051342 959823698 154201086 593120745 917209333 383230204 27809438 332446823 694004121 107568091 964630706 670989236 643022142 315755355 285853206 929233995 81715429 753702949 148965517 679057831 347521858 272742220 977354400 607539991 433176652 954180887 827306787 245367914 684816680 827073145 484883661 696824859 716300556 903602285 777101595 758057511 375698276 955797690 387513090 316924076 982408356 431396476 992031660 291675787 700657433 437046989 636383827 466124683 978215040 223626531 982569281 434243735 775578015 963938539 398908608 966003115 723285659 804536799 518508363 386368982 686641093 344966661 319446945 770301139 535659890 977273569 369802940 24917136 263575504 751596785 656358051 679905170 167178801 546153123 938612895 908079492 732128954 299593498 26369935 204002155 307673649 80865845 242829748 376472676 872508520 712382225 817667026 525448962 854908813 789892086 811245462 724867984 118422561 784385123 474243340 890271264 776786639 287054398 835293140 716289373 930276481 902934100 357598026 233597554 404563522 820738008 989338188 960968094 230556184 981073261 651896845 79898714 913272252 529895919 801485717 249839957 919924786 140830221 674070090 902600689 591283584 90589637 915824580 561289537 758200859 34193747 965710531 583274552 521845902 280929067 271389572 631608600 434129451 246393316 769110058 72407484 813818807 161408149 504265151 241073601 166601349 678952563 379627266 387519654 155731422 836977813 711606656 398024968 622576580 948489793 573863920 397921339 629009216 789619258 182262800 474377208 696093644 247999561 580171170 968711586 914519754 784014460 939075183 571484749 758066005 671195642 773475842 609523601 180959534 752258506 334938066 856572225 229073394 941871974 38550446 763373532 773143286 525795557 207581463 861202141 69568555 199724236 924007210 657142242 242219372 122655331 675990597 691902399 828776065 832196088 198104876 229625601 430366253 975465467 156673086 963682042 842713280 838891138 131418786 325645467 35147075 855505455 362163540 932926880 670989236 951903395 792626539 171561282 475773291 326317874 945650407 986928393 232715100 869540491 632836434 974307640 140259932 983842877 790232888 708803941 704084617 663148651 825169088 670239965 393593866 613278033 180233608 661364191 174107242 670989236 333002728 640795454 353169120 835458964 744977786 277850941 763324842 854874459 258645715 42411025 735593845 961164246 694981783 659989067 769831973 817118030 178333810 214205466 689122007 912195257 887053205 109063966 707207743 274221326 746635617 944149260 696506047 297021723 336992823 382865288 819021542 88834956 938208472 300027079 961489732 927750105 490621361 852748993 115351270 995313103 973670762 798077002 96739062 732686128 802270895 843145470 848683554 33424835 774059869 832946629 841561758 963083210 915543137 583257400 823669797 788177930 675795893 508701704 719430415 107304354 821654530 945428151 907918404 515031748 696356152 749550190 969114747 763949246 7911433 670989236 271626137 554301948 253040654 379871972 868056623 122942280 670989236 337512497 927039644 539973115 729438248 865790744 739018497 220222807 675022140 441177122 170180952 350676825 128160553 72821665 930963277 607152816 957536740 780418655 695077719 674162880 964132252 792856156 813435859 441848692 550138669 587510047 654283917 306195827 524642229 425360768 229403100 851932623 880703270 896653519 372289038 890145471 289035923 426587051 901550373 449875 736152488 754148602 305530311 594899174 628848849 886651929 796788997 988981030 852144869 683554224 529050071 266557056 693690344 1490133 327886009 966503069 892379850 416540764 925775202 215852543 333551141 725968497 126097260 895804523 52494695 138798462 381524591 896846030 747254416 639671016 815130685 635779682 210537232 65738864 749518795 284852017 660634490 782632088 762295130 681121723 675057696 468815738 690820967 328563287 172415476 491853829 680391719 555915979 996763070 845221662 829041045 514588588 728274088 742793330 734588500 565976073 193664829 833421304 902663614 949684335 305278757 307292687 204489432 170341855 966178339 874234017 444074052 333883549 943113591 988972275 799103495 800442285 814829174 718938981 576238630 465531320 695310675 259441377 668632416 877776648 709883205 822778069 62983522 941002233 929053354 347957585 851832501 216926967 720523490 737532118 274259944 988081849 822852546 243149954 872850373 697346790 638436198 829531652 156022135 318124726 305139462 231070020 166713971 719135726 32494665 776316675 838570408 656325354 297266655 819239295 522409947 25668604 240490519 950413827 474198116 603496724 493686223 57326872 930031251 19978601 49628422 639358880 211716559 439382427 930875616 779217591 814671737 451901022 907180869 555857965 958216322 986201774 815077880 875915914 777294434 767719487 235389905 970908490 972799077 693954954 978598677 855875750 530008971 125586377 208295484 155616370 945165699 640159914 762140996 198083784 905955076 846163401 772603076 747202797 753096950 861324345 110669082 720499038 252799959 34206854 772191533 123516617 813649560 7931662 708400608 501015121 370028066 676307197 850562516 582533502 799582382 930091118 784903728 722564944 622469811 656810917 603611555 926250778 852584710 760765414 422763075 759104225 735496257 837098476 307681640 181398966 872718802 255696461 431458581 519611610 844458919 496830711 373476735 797230683 855372245 758589736 380831339 479665062 196320450 582697266 602243568 287217926 944823941 801072178 315473754 672219594 804370756 737069226 202371932 674687057 649374618 899117582 975383409 102027302 702379502 744042610 909984539 670989236 562083084 676892498 608460394 282427109 246629002 478529368 541921276 476481746 165165147 990730744 525666585 699065104 629271619 62748564 784544460 354699559 132744568 843818089 551499821 578496728 148560175 885866682 351798179 821600160 761566485 141825565 31608003 820708710 1869950 817648898 237072510 955702329 508404265 626515747 311793305 966508602 126965522 313201988 829999031 334313298 978131684 88143131 862022692 848035257 459613726 613781562 258717868 11514883 863793086 422975833 105885898 809882918 857026765 542578155 289266308 373539663 100456062 644492812 306510044 770843246 625045560 337200966 783229066 898573569 630823457 871338120 906989299 714292232 19938289 856611364 726696522 700316072 593363451 711340985 947994266 995418401 951257986 585629036 254819692 458928921 816193071 979540116 617035331 339346137 685812858 480803265 689595881 108684493 480079166 525760322 500545958 366305979 128329540 728365369 707694168 428526239 734553314 170717864 938020821 799855251 14535025 476500832 402643273 88919853 390998723 720302050 596379139 330329458 855545834 256322911 294351400 757009927 798444256 677740296 627512061 395417315 798136360 205853028 66833776 15252056 790788039 975073352 138694503 743391215 686775858 997197931 62847850 989315109 934881762 914674850 970208968 777802117 669412 478445268 798812385 74849430 937771730 204153230 218798537 905842659 954362875 54938439 741223628 353551995 840463388 954159761 122103296 979480777 943375495 949122115 32034110 881640421 478257538 997312795 129139766 249148352 553492904 73303692 581872959 943738245 992565327 18898581 272550417 626711240 235334672 900163837 783111127 443877800 710891315 752230715 368754656 680161734 90923131 856451472 305720510 337193753 610701818 672284810 300070208 500954060 321048253 104728306 852916956 254095196 628105831 725930779 912531626 368394080 781084208 417811357 509318551 84285767 302451878 586128616 855285587 776571947 585994701 772953392 772347865 316018762 324897830 340724800 138764759 686613075 836223414 753274450 979439381 136448912 201894183 471758620 831525607 502957642 593315212 571665201 342662132 740424730 649789608 671771934 880836568 864473037 454250123 928013013 814465556 529592117 788487207 222560452 671663474 781194911 912888497 20931916 880293445 252603171 62673405 857349321 489113613 465611533 257656788 965637281 477310862 753115967 890650331 912403122 696887091 415624961 264359482 509187011 780261264 983191878 713589638 731158009 172266 818224626 868110297 516462473 816136450 444181712 826676853 996169672 739201785 350328828 608221142 720280492 801667967 698743623 933987601 494699325 800193174 250052949 23790030 249074222 667561826 358784901 42853784 515289715 818184639 825589797 38492430 796311772 302623343 713664190 468555846 697375042 700013617 966662001 380313792 73671592 963858966 680846625 273581962 126150703 433961877 122937618 280236198 224829902 803167106 781180010 891565985 615494574 279321786 840824779 684108908 687710730 949053316 770251171 755986386 906062544 689212311 811979434 816968247 394097243 877403158 991629163 864777562 333605490 670989236 659673419 125023669 858311765 264058635 300731440 849418571 808554179 297825485 635030711 602405831 727819412 963507863 996310438 928222023 480670081 795268539 614735703 887225264 726520704 815633532 962111967 756691098 876766307 311294710 242714623 176455677 751175626 696550851 976885728 741589230 821918464 178595439 42645500 951296010 715597046 767808289 930684770 376885893 945197868 182777298 45247201 664602125 809687142 808483787 601341218 680983105 879057087 988756717 612107741 894975617 907045129 773188217 298865441 837746821 325174694 145561702 349062553 702431357 834692699 846571773 19533621 863798142 700066672 507396368 524440301 819854770 495032260 599033207 339591256 702278466 785320926 427908646 581130180 958777572 987974861 392292295 640117227 956210989 910578442 403228907 201906597 839582541 929734161 696816572 710281098 795574505 872217854 814692678 637545555 902556253 691562659 973010124 724149752 587794901 675670125 667242063 317180242 881258271 257016003 939196193 807206574 931439139 869773856 755907593 225062497 403714472 911339555 487066179 623365311 557895475 366285357 184342628 812811906 915450926 442330336 885019608 912009252 670989236 346948254 942404939 122321532 506542864 993583731 957237965 512546767 460500281 577673430 842793902 945620613 309830711 367065393 75791694 894950478 569479444 713993797 477135829 248655571 126066461 998816230 698300797 53293537 921070673 760510185 980551612 674954022 862296296 598463271 666640960 765870859 845088408 665535926 953505081 737085458 835934692 861834736 793183897 885826400 726086373 973084689 42347403 597339456 724653473 628618751 810310970 877502747 950207168 489803302 992061088 578627592 471990351 804044856 56140943 627930126 19786623 201897166 707381264 731737225 277796887 5956871 369801594 853926473 156853411 216818840 983745577 863606643 755372164 969120611 829332976 602595775 77985625 759116359 389611584 61277242 784476622 35541576 710805035 975501741 800537732 941407082 625551790 469776429 840828692 352351640 725096340 687851348 874239251 130816954 911993028 436937034 247770378 742191780 211063804 885223413 240254727 867663230 808997329 712311573 547050683 836799776 65150283 907698695 259546374 448997885 745908978 762726365 858171871 92000507 665288854 222311052 493168493 762614451 860823819 558118835 209844612 620536355 142236113 726178377 784843803 960448823 756200244 195603018 326036004 784316698 786597061 594705138 922586327 752223260 603587588 853933407 371719726 166036304 777544463 730475433 699914087 535827611 604142448 816667166 883559006 642130584 421577249 161321613 554050334 941740768 104093350 949766739 888889578 873543072 286118722 107728423 904681845 698276172 616478250 32692298 584531968 451469325 275413404 889005675 789550573 670424767 840066371 738129323 767662956 575528340 299615231 901864601 814677932 532176793 741060960 616876750 896880863 914038397 882506064 795661619 489250455 149215875 670989236 717729811 100532410 307300206 992281162 641368994 673990724 321009698 948299686 687478154 188465944 237881957 101556946 154194667 56066561 410907877 44179878 438766360 403720370 529090973 311231449 785009463 609654762 133064312 727634964 851879534 869361412 265113465 574216900 694168746 400404545 256667370 671773553 47744874 305287123 977612060 161529877 486357698 557465301 454275403 131613222 509027527 80863398 561088900 134313827 735819771 85382820 641562958 398273043 403947991 968846770 773436811 960736633 819431507 452011654 735890017 940442995 980775676 723427501 233430896 107680975 478580799 463269944 65312996 761201654 883530086 822954529 24679613 270137699 945562735 516018261 243321076 262042461 997029401 931122064 760597541 117834116 583688856 799256922 770061925 348339889 542968951 414557400 557007307 504461362 179332539 136650079 736647588 985415330 996800453 258907681 135850950 944585971 872014875 864150136 7904009 670989236 688321126 171528755 949047348 487746359 619468158 17259571 311216192 326045497 117986097 884542779 686129073 807011661 565550560 947191882 579525316 989484730 601045689 834137807 53655081 756026345 587144863 875690117 41073977 782646064 783990952 282429317 227479926 183483064 758510820 986268224 906112730 468881451 936685591 752313665 350207230 831089931 790264789 500547637 341056996 884019787 473505590 869077370 553059798 952139107 675894426 86103713 628431279 402108705 787621322 914690940 743150809 461312083 919400056 31478640 415539295 867021102 590299033 907680998 812377830 439249496 466596087 72149057 347303861 752352154 896251048 964083649 930760405 442870125 648397603 744915678 844216562 660884254 895156265 801608428 869022309 419826835 360739304 852592480 388597587 101128150 801759348 188909929 605551368 357314001 289897050 804744319 260500486 146496304 992965274 892007912 910257739 939313532 832925301 978278770 348466896 328778120 723430330 609449201 711820556 818799577 934491880 828831783 910049222 321766819 366221660 212157777 125074629 740627197 939314343 704772895 527407492 988300128 493508123 490041489 612322193 78215490 215501984 693090886 779019658 508332358 742505399 997943540 835808639 502712602 731190338 98546762 951352420 876426554 903834015 920402303 25836986 696942638 138086428 990404338 735573333 662441989 26718978 438572778 947438067 292807234 538872212 826698844 767122914 860723513 746734794 876610449 670989236 64676029 850074389 754461654 981787906 697713194 125264310 592473986 966173911 801521555 43121641 861287877 737218779 386177478 811281810 911442562 478049010 858037641 410702770 677219340 646633517 514749130 10167831 523226030 759513944 71472645 432498553 338276465 209516617 936948642 622244208 461684898 875358211 522570416 297037047 4869467 561917716 980637480 216227740 866355450 478286034 162949676 330554269 946217089 849820101 676230172 42491611 255211461 343906424 824135909 683005523 991438451 19458217 754891221 761238835 435794440 963014979 842287633 930134340 167316975 540221875 44425785 716723459 940012688 934053735 802871639 613993687 640593587 595618592 447373286 559674265 795780559 188301486 309616046 646083723 979413785 588767113 308809533 757469832 699586415 727753168 227717905 531187460 120324369 36190315 423609380 167546516 632318555 278916789 583568978 702991500 308492202 554155525 503805221 808914959 936385108 160755500 899032492 938433146 528252188 850222671 352014276 226482331 731532029 746183970 842557500 551769918 670989236 185684506 149000170 162574375 784860914 405220446 835481660 947561611 226306660 156470865 663588108 578744166 184208420 695475365 739915221 199225742 677786685 296501572 957231820 643304395 209559714 817818298 696011322 807057466 945171843 708372622 450667845 924659544 822838170 109611050 386794327 689236742 891736650 915474255 916827106 598609272 840680503 463406054 826729775 68834133 202391157 270650529 366493413 477262699 953939983 538747786 970862044 743249673 173593568 902095336 265798815 497220750 934954008 138319026 960682878 598747367 924458856 899243073 863072312 85795347 352305789 160770471 1887965 317359579 193147131 669404845 138666959 722582720 747925510 679858407 890108206 971626693 252436424 962257600 27597788 856680970 31849616 341330307 930874796 459425160 216733395 665754636 400639363 833909128 336651215 659680791 719272208 514811749 104146568 872198219 454446841 484449989 231337544 740209602 801883893 397586833 676668833 728453647 719213252 865932986 774219311 656308712 913367938 952066800 785700816 969646090 523416491 814419230 372702083 632598133 400400985 746582663 243485710 725300341 133098453 989808727 905921068 572460469 759623125 778234385 957122348 805076626 39853596 896251179 26310915 401578486 670989236 864178349 88762325 448491680 689629063 323868122 792873312 552729301 960328759 589465431 194288054 686279276 547768349 981207189 296127210 383914405 924820471 248243324 369850016 964561583 562138213 548512209 363892040 760191415 791862037 638847184 269057747 768897776 224998977 832268353 144552312 890054511 423111617 351027294 789563302 359428175 393418323 851010084 630800103 994060666 625545651 825064425 526178709 346144664 975946186 413164796 340434312 341725266 790701344 901942196 779751076 927377002 903445882 691893475 874278494 464506358 825935237 186808001 954942660 30995161 348380676 969223494 138901654 67465254 884870233 452967031 895086135 639228206 96085434 848050837 976196155 933009927 646460238 910181918 700677885 613645046 777583196 908684141 983538550 23985698 520053339 393119471 257534794 842864501 901619928 888177566 902872386 798109735 712249333 283866555 806537360 922204118 857793529 876423794 297560993 298536294 764059533 979005719 946173548 871815113 466005989 30002331 193527855 800212024 795005726 266983710 200375547 853198911 467864291 155313513 798176004 561282187 322975485 764776633 657094145 751711251 939009430 561422706 941994214 796458381 740694847 109315067 453652034 748730228 568431100 332076574 772619468 719729683 209002228 754345551 354824777 811358359 651776996 900793872 925611005 129402525 710962452 791991855 595519698 898159320 765305807 869914087 644648309 94018818 977608253 901883611 706192746 976352207 748489949 782295178 364630434 412504587 611748245 980586427 7260788 780671075 25263617 940545108 811270768 895924178 897732528 617235067 936410390 784917629 691925012 756405383 290340419 992635458 2672146 529056531 335272916 670989236 95079554 757183534 724919270 995897940 315934503 529820726 839495055 644182789 172613753 353828159 678462214 852089105 756604973 914327965 904738413 918315603 729929639 931198704 581238598 824979816 819464511 936259721 844496600 697177567 175821437 260216677 738660638 874672644 441581767 131662852 104734503 103185682 950883108 106241184 730105214 145380202 905692977 79829209 444267373 52518222 842914213 499794964 622908697 468426635 325780309 682682857 569074879 676512156 460302126 470413907 975465144 274356428 120012153 283714845 252138303 761965727 547657123 907364642 697199145 514940905 683552154 999371470 846642002 960981955 250523605 685287232 615737275 892751614 860597913 130328379 997557848 976149349 95970924 547618707 434123784 987781613 428937437 863792753 853261955 566501460 47971241 988642189 484872011 996149995 723009351 138860667 488273245 150266949 209016899 943395634 779238198 577287315 641386714 909050017 293996412 957853927 520218703 870257662 503551666 708168079 902748831 487447822 888002044 899988030 519809020 187410616 125901651 670989236 384633644 738686753 759221838 309479486 305787995 603177097 715463446 672153095 654312289 937810918 814109116 835676634 807949947 522702659 456212158 917725405 362172229 250172176 239403837 210906546 531735097 188744602 106348203 925134610 928768796 999138732 992973900 520777874 730921648 910958169 292442588 275317739 842228854 696176356 262381706 754118584 869431845 672772363 247708139 315013339 933705752 384248817 936197353 323153505 208234398 383716039 647144959 362473518 998757501 271902084 773785020 78986351 994280719 641246551 650501651 939447188 494494798 626340131 922014542 218919937 626114058 247194611 395503569 77061798 423910628 687549546 757723129 993771425 924795445 912842835 106325250 365411159 503914432 902406787 592517760 875376422 813610976 56224246 68950300 125715520 562174673 938542375 726532951 722697891 873948735 346314358 506673633 985978696 958389518 324854379 704803719 28782687 987990690 754533891 273618958 697818903 365070505 656402606 895432337 743671647 820959040 704096566 435357999 144182781 608355876 918215628 819253048 986972148 920554984 359761772 175192419 579239191 113069368 891689625 910031685 566451555 775685305 900293027 940983672 589104709 761593154 904063509 743975042 872673620 688408320 845048495 943832955 773065880 698726872 285102108 207681868 877263927 813886411 731731510 983507813 971491933 985349086 42593617 716812716 960451928 695978803 520697822 717091092 731133265 725856656 330233001 430608054 849647659 724210885 946334780 306033229 575396267 812844711 952787850 406542735 643831717 903205957 994227024 769746614 865236030 452483747 557207653 188733084 803411092 920001603 833673450 840496616 893676042 924852666 736784861 728307078 499653272 688053603 28141583 867739523 189015502 245374095 783502848 441961852 385791641 958053001 155453878 388581491 670989236 895151790 917334431 707882429 651597830 902776504 170522922 282095857 602889284 736914929 766913755 95398279 984417230 133034754 871049987 725116278 700112104 409217990 887390659 45295278 798556439 326458002 973959510 708024394 590985806 850701465 851967207 752447380 902285212 904550799 896280175 787337238 954124750 664412339 909885532 898963476 963383913 870722429 92133435 877109671 769564371 675763352 912140824 993417582 873800567 717888892 495207175 601585028 859538879 52212479 951824746 297855385 934194059 652952974 568609538 694614623 722409690 873034058 731916975 877085826 721976575 227459522 891357865 191779801 761423796 289487184 670989236 12243466 161201910 45588261 587789954 988192980 457719029 969326176 914476560 954752294 280903327 100214318 602186795 650116176 969455549 747293128 970487396 920421089 413884383 282209206 705362297 13474789 821398705 869288252 374230571 867131679 348980864 670989236 795202868 29291842 850070143 993096760 984675068 773075202 999382803 147448636 940648019 876563162 812422744 771727690 880407283 936511613 497676950 16722300 419160949 209521625 935828937 570229689 402225612 40202433 99139816 341639459 875565266 302697671 182557353 357301728 861885315 151552430 948469864 670989236 971504575 677637424 861126568 867921207 655220036 802628561 878669508 181350684 822276760 480224061 131092683 936386518 588980604 828197367 171972725 962069441 169467608 590355264 212201963 579513315 822977814 857295768 624714545 753432124 976456136 357845318 875951601 504799531 936509276 593056796 991137272 460081527 481150385 990626596 256323653 779306608 748194682 869876294 7353194 474415009 644920360 978094852 401603608 605441978 798046918 78076798 742762143 817433688 987698264 171807505 759484797 812569235 926208097 389650225 961487641 824451903 767371301 748037980 978254526 869883515 444944043 962317590 903105577 983250986 143749498 314731383 670989236 307794617 948671299 538418062 313111557 156166964 417528803 863605002 919528813 199895852 576267844 386734901 838965642 680488641 790861930 855601956 186361017 575593079 810823588 137258260 327111009 772302016 26998115 844306842 695644874 984317159 254312345 697596558 83683773 237596758 720952043 195873594 874483781 291968674 107801197 444930209 737140930 710062661 484835413 441200943 302551436 693708177 588603594 381865273 817155174 42203956 427546983 183811384 775945329 306588770 166116884 790972761 769098536 162668247 364918895 957028213 948904269 479233148 678202658 857767628 551671147 826610261 965551704 789644488 933847033 834759539 632892142 239457185 702463472 990020688 579743236 748512416 747945774 725339226 207470075 784421630 120413361 631910841 976351777 623564833 902234663 923350550 543134585 108765282 90791982 532870905 704684802 96464134 943619578 394547334 906941147 912529277 947355512 525721826 127831447 731255023 704465553 361389013 832475412 808963885 146295877 730610802 793258310 810279633 864482396 374632199 192762969 924537586 177318881 49017642 690620991 394899144 835147439 886059852 696212957 363735401 852083809 697748624 893124656 948971731 417309044 139886133 829478192 694310089 134612545 460258745 840860137 131483267 737330914 744864660 986828799 126965308 121804010 552196669 335675808 993616052 901669516 349681494 936924920 541058647 270161571 33781763 144048954 908736665 11605262 819818133 839316415 623214619 764773897 539491265 723326171 730084436 17164270 752334716 600579442 331107945 891584277 717637640 581751320 773742717 921376373 821377310 908169342 135023122 762745732 376393159 780533675 281017541 330866746 626004023 847983473 475627970 268143148 181639421 617775619 399623368 826155706 979707728 525719522 731247171 509863176 20743144 805918667 151737714 742481151 73340560 927589584 850987301 857335504 829596304 946502596 687975714 932489821 687116846 377364024 769724641 237085557 619055268 535012216 903903874 998725898 693018163 453254246 724491794 790427866 602391181 90850787 285940254 725642702 101938858 95868984 671791599 896565821 851145088 923429844 309784290 410113171 649813313 219220120 627917625 843664698 339575228 847064495 947490989 747712829 733357661 828118946 594854 485912914 888850276 824799685 64116562 351665281 941358842 221179169 229880449 757170095 892682505 147191394 914706633 790939896 980592911 462614178 97559521 459844671 724132528 956199330 297593403 942245344 257652090 424943228 908389570 764365336 290885047 780723895 808201424 53025799 265900499 351847251 934844798 779069362 604573860 881298537 943944969 929420441 778297800 301993171 708384344 7330816 998358576 908332429 303072619 662594533 490201797 792092674 739256771 449553952 558225566 686319767 190568249 660905312 53332038 501444433 164844122 893378777 310345111 231698339 159497385 809838234 990138343 758423804 959096735 683342486 64387470 869954591 979238417 766945914 321796813 919627061 699148647 942235651 387310772 725624125 748615762 282339922 279587483 738345767 945812428 696005430 978908860 185830801 783342765 945331743 694590960 773096773 807606752 115028829 266036181 746951934 872782677 752732398 700148142 763134540 63323264 675068573 524627709 463243816 799706866 854822708 679524558 872103764 281139928 812289747 464025152 713521458 771999375 875162417 875445117 308581361 426204069 974687606 917862196 115366930 56675256 2362260 746668740 720827093 787098290 966213458 418742219 441493091 461659043 248566276 592867615 739353462 413935243 415197369 839309196 741789922 98072970 765536423 239787171 191134961 869525494 164636561 979936197 782701817 440384632 182828760 407357743 722378400 548458501 337048304 314607517 848145112 800221172 113825081 561841353 114480074 976318145 420972434 811163093 864595745 49747682 304690814 926977321 80358324 250118693 444647451 875353179 210940698 877354120 922017523 724130676 982666642 850334686 680024039 821919156 921033943 72629370 665582541 443374487 754996046 589146536 892631897 843637016 606450377 399011306 700974416 476834390 445441092 971199381 810794777 870831855 789249085 96980209 597312841 919006725 148381518 5835853 163298813 406336360 821900944 638747429 895784521 874446514 636327490 891960628 65138998 100164879 685023133 890735311 656890369 829215238 36824506 657600952 383971776 74531050 599638352 333260712 851705905 422167118 822030130 247820395 862558609 405922386 737267242 80831121 714998568 723092788 722504903 401670117 640724243 157250072 805606175 448092021 34685576 550323812 618352324 14545283 936313894 223510146 282626315 955850631 648994802 245151660 480411318 799373299 86418707 840393497 993785370 635534377 512562738 538083282 972614884 467613258 518302488 814606818 852350837 977898854 749772657 883686295 759888081 475028745 313273389 898928546 246998853 733470838 379605454 797156712 755226025 782363298 720592003 274841977 720289217 839944640 706060873 981017687 897546905 439376329 850933294 917575423 790685999 110423481 282070775 996759285 246497983 777684648 764079637 538488199 944623903 693614145 778490741 962818806 107073538 360421260 361632518 695149551 753303786 852038590 804503298 383419738 481162103 919956082 504202614 713342304 35090991 716001323 950458990 413594136 562527158 528679095 901746514 599907142 493522492 535384388 540443740 670989236 620814168 811130661 838817160 53045284 726935295 692635433 773964786 223723720 929514829 509499572 922417141 42882588 850232754 819305308 515827113 219350996 586965516 733745879 595357796 43207516 268473718 866134514 823687062 729991750 353319910 530623368 110078060 455463590 987537171 289211023 836293508 14899960 440590169 205688968 823461448 286491509 264013501 271266612 990880222 142493052 997159891 870172135 131975423 103672930 68818385 745987789 880173485 63116303 113465257 329204533 328628245 31737462 693259279 453792474 741948904 881547646 849161705 245265243 18922147 979209707 491931929 737423613 777700488 888610648 132618321 812677105 690287149 851479761 690627643 215095209 973080805 246834794 741530063 583544296 904422685 838978787 875886482 789818705 356060648 935453536 787090380 171057886 902201720 794698610 682588832 214880165 983684565 734341013 247699883 850390833 996860768 138004171 41605238 222238786 670989236 666639629 512479768 806834219 829936586 683672770 743266519 828006819 932351027 778393875 670989236 638958765 943545900 762189192 752265744 974882761 738775742 685924253 238876543 770915990 959393138 148209029 228121342 737800659 418203080 302917507 117659528 416992992 17665775 581876520 577746451 784191775 712199702 880494711 361667345 759836737 791993958 776471917 939781238 707392827 344473150 896578913 289172795 5373668 835572700 935780461 930886794 864351635 677811424 624343350 743205147 327101251 944546290 707055843 827846670 58745534 671869661 818099758 538608921 149828669 107412340 243361130 816302822 54363406 49303780 320507627 938766677 703896002 762340863 572091652 950553507 394410544 968854486 555935888 598084264 65927687 676732865 708418083 807098808 905592138 702066749 279444954 808210369 311117564 4943613 750740560 583648533 227951603 824267533 560010802 711853875 151465840 626669667 805985008 312284035 486905605 554857281 504696604 250474097 314969251 274899346 975132870 289756938 612077643 879313336 858618442 765279396 850638892 977471363 573599011 797146500 360121033 942355206 647614429 383804312 742369874 957737514 260659532 922796861 631740802 856354394 717138010 955269283 242155534 755850166 370399597 785064430 63739563 309732713 670989236 938108888 313530175 811998549 862356851 372452592 256878279 257452045 404882995 565679863 936245663 85531508 881413115 796278947 791209840 965577287 61496340 121261496 784341497 939092381 951640700 936337673 753580270 759014656 473284838 7679117 784085757 960192193 835298376 948323200 874331148 664787045 559411243 62142113 282024399 194238243 897183848 659305745 672553031 941961127 691063523 670989236 85775775 528035400 732151775 804673949 769056869 928617878 699662750 929341885 918889070 94633336 889077386 498030513 325308636 405225186 548831853 478363565 735786065 713763363 686356738 796407820 866524010 690644534 497588897 748767675 40086967 682212438 39071682 510255644 295981178 405440846 736636491 738230217 131742501 867097470 343824616 876439867 373094070 788222084 774453547 35122732 468416506 862707539 314198467 357263187 812413064 191674301 623278165 774896059 517580200 678851634 966587951 891387217 604485335 449612749 935249550 957655895 579693334 251023285 671234496 946164872 753495187 51663332 124913784 152727422 844989076 299479468 992383974 921737716 433974805 623944430 491133289 928762028 167918878 561061509 947108047 774125565 704750698 334403857 427237251 98714527 499621835 348830498 850098824 778249573 799225656 560671320 948408425 785048729 312553510 591924112 864869805 841577657 331987045 949440416 561629956 657095574 755328754 997067324 673948847 966169554 776398509 505927758 789360077 992521895 711377037 943120766 123290469 317730032 342414683 928420933 783877823 712053847 509458049 343256852 755783231 994203326 685391449 865532241 410967781 474026612 690449073 704828832 17448156 737646930 188045787 462913126 813775488 425743473 285381715 920787954 976900637 690841016 818535106 890678551 816845299 777343314 308184839 401035405 838675319 787956525 264998619 916761070 420607240 686128781 287406143 938852890 317574651 764052620 135477472 564091575 189099734 670989236 868361162 276231004 886577018 726328859 701970199 195482122 287295760 728285890 43250150 744807761 748068774 718949476 264994518 798250040 751450582 243905727 967807816 981612459 540492780 234800681 878174931 41083452 624507332 707806471 225832107 993667891 258997684 562821634 403512487 913970421 698086288 138486436 574363523 848041882 511802171 84458495 374830482 283219641 770258407 112741733 826480709 304405755 355776760 769095588 668459575 351647555 143854708 631055750 532109103 176446459 854007743 977307890 584338647 943137373 637239084 262204806 872790410 848314980 884326143 68793775 696895790 355413748 467658123 495221016 89666219 920129454 492845931 176245457 906311923 844544049 691926784 209253399 57860509 501501749 347909536 185469682 554929163 426082676 837639066 763349795 57251009 130233949 781427517 91678836 783468221 372353125 609812037 419229924 776838171 913999287 66405706 836286209 818755583 15974117 994509713 788940398 212965933 606216556 11975642 820352013 834778735 716966174 848035761 752039801 369670546 780639899 680947630 358002381 980847931 751501558 545622452 771172484 378525421 950729160 612139653 771645955 215411996 131956898 255304904 824065973 520428074 860683452 923838172 844872464 905333720 740284032 898168417 277854682 976342603 133018632 860121462 723859379 932703764 999372891 674834005 725299391 672289703 811686507 345307427 368657106 965376784 900621246 670989236 996868114 238032747 353809912 947676416 370861253 725662232 794395651 939335759 104717400 394338735 792395743 975126349 66416956 529118229 862105451 729410445 952353505 966797911 736092310 531126199 141720334 935481412 629519778 266256604 873828105 804377309 8346419 533821827 982653182 116752111 986326040 878977108 501545896 709362996 227834398 799156592 800439567 171715895 187288921 76461449 654849308 108081667 397171010 633913401 701199392 407162312 821611600 26184820 192611485 557188843 718690109 274963701 80399230 786727384 86508648 425062192 442370527 650153662 706621737 567463974 230305100 852032790 310635850 888827318 292279077 518855402 724307108 523729339 836215122 533238150 478580447 428068493 864916644 133905082 585701280 797676605 828641782 321712401 230015166 961431920 710359307 114406213 89296277 508220853 887665136 147469818 404083731 750205306 845645308 836580201 191508641 951290506 683001907 137527936 799254433 343076141 660573443 296720015 130917501 878277335 504148164 804894532 274020477 673107746 402532496 862447908 326632108 991839560 571729591 758353979 801006382 434099849 976073410 163771655 681378749 131590717 689194127 796022886 275605743 856333370 834763689 615604681 461390675 759696506 436823777 769786974 286923732 999939191 744799422 918105939 350141329 501285826 605495274 851348 2796648 926977670 997365337 783777085 235083415 954072178 957262553 328215899 438473412 567554368 759869506 198603818 871256391 107722208 118722777 458932264 493975244 898695324 731207495 129175034 335542515 677718163 676207417 686138551 603746218 67440822 940522544 346818371 715330998 572318665 971396968 11421214 839723811 478215470 199216615 901808103 112570980 511943534 803864109 926976657 716112912 63781342 243366080 946160905 175623391 619494956 850040345 912721672 770269131 690945744 940988936 582306201 972415912 820428539 681844408 857559455 511802770 772873350 854163523 328232963 872645735 757810909 478413419 569413038 839755969 965433656 964754113 1887516 966067857 896027240 275511303 485143713 727929580 893067730 72399752 73982573 323080682 843482339 878872961 675341026 170557412 503249125 441059680 680588918 973623644 644956421 959760600 407031206 809485184 236963033 235652933 804052513 775054862 231337170 941835001 430132370 523503376 625138568 303991947 596679823 963912984 600177929 746114192 444028131 93835480 964587178 764530741 762893590 697903707 27747657 733479501 367306923 487305156 762242328 57112677 871836286 975546187 861416451 958528398 413989731 133522072 803946975 321105629 223014264 245873663 331729634 953086311 931445328 736710012 652493311 760856062 808420725 711404603 812710395 169111959 779838349 748147015 802670755 724145988 356477282 900738125 723257625 876708946 651679765 57005123 359820298 726255615 200863896 843252748 546239306 65902375 481276125 997895789 706739185 672014541 260202152 712210309 152491416 670989236 316020883 892688476 389940594 134459732 529152785 436366550 670989236 535459956 893004772 399019131 331948467 221337693 132902808 868590807 174658470 972374219 594360086 956431431 542676950 880929832 783432965 938608325 421919705 828668928 815135086 503183893 243096125 237560164 536433185 701879348 851545089 935758922 243935791 446095551 693281788 985673327 141235284 127221678 980044314 892056371 267929341 223862702 530719161 465445165 400330112 512223911 933153583 222459654 334294484 765510633 775706470 979743517 698664903 489656694 445321217 941843394 847869616 293906689 670989236 756628633 44540975 218232869 691720735 611422551 907278238 760553467 188712724 279412796 422831964 836309387 840747895 964410380 988041509 502034645 323525734 417740526 854704171 887281092 886344148 249206714 772477880 579196238 213523916 670989236 862487889 586391603 60427659 419223831 768024115 784045086 919323624 794111873 786301727 807979257 965372271 678692100 22394930 926110120 520505064 199715961 841810439 474287676 891538093 424327453 760988772 257355088 764705874 294644320 242606428 772108245 877436850 420693559 926301097 955240793 589416347 560993409 467217781 377991796 360271999 316077554 313505638 311449428 923001964 940472273 670989236 990297597 297480058 927143563 407027113 708702203 226930092 804481346 119454656 286788675 318964675 496877719 994249829 379698775 217814518 230357277 5655301 150973321 632740288 461026314 257508104 147296197 670989236 637400116 23598419 75489712 273847622 839335965 151411663 822123216 899248276 827290523 688216255 734867257 390449363 252889909 342506237 602701661 756441695 597396116 972384139 469205649 302478472 36517867 849631495 170776442 506631312 735905839 676160809 942574833 848194021 605854230 723825260 957889361 716451838 681440186 75179442 197334492 570998342 754223271 837249077 162905733 718919792 543036621 862293662 183422798 748859101 328031194 26783692 166359003 372471902 999122735 922259376 264463267 40113406 980914100 934341590 712463270 21609526 156774636 652554730 171412336 828263152 508356546 478521640 676416182 869876908 663079763 771754562 257005823 179122894 377828095 75123583 227795668 976123440 825339447 799537620 630560251 773246765 298032468 96215977 614345187 213577409 566872309 472096960 591586332 611892931 518347738 798364556 247603697 918494356 845399773 835641632 734753374 125009336 796215843 689142728 703580037 753808408 369716167 723232312 774555133 749867077 209585794 339804533 676493028 799679434 589355713 328143255 679985135 132838389 839815672 726594184 937544926 286074110 156946979 866051202 308146214 583473765 882330441 863869515 418004082 762294467 590037164 966503205 124156008 622110061 787343506 757745025 922471001 674736955 992092976 602724072 289412661 264649409 279431246 344041046 735494752 691377369 481143654 107487141 720697365 744061340 722891138 662847919 71766230 74678379 894769577 737247190 598438154 720137349 878674645 783260271 179278725 351196008 735074671 565401680 883850127 79931535 467233588 368181910 962930494 883412284 739417569 315125155 621931885 147198324 463524912 624222699 414721231 454149762 820493466 434833546 184235772 159732283 332337168 961218167 947945345 100679848 73029737 171494970 136712030 596330745 930127076 647224579 181335888 484925786 816876216 685182401 481146536 525976836 892310629 356037380 816016164 902855943 823665596 829309493 326796730 836891682 850553117 648786874 20631323 881875034 186315780 753581766 230662779 17499410 658456612 866373031 193569909 938645303 219768671 890325769 19854047 770094540 309841957 706392062 788609646 988524610 430605909 965198637 771960289 541912119 880729064 808352401 341672490 615381067 304905086 763123789 704826197 819381056 460097810 728675581 996582275 716675425 890128899 697119456 866993852 8557937 851845811 707231079 876165511 671709540 292738579 297489707 773042390 764144020 532548753 97340894 988844299 466012159 318495530 399836534 909511070 404434538 11098792 668779378 385983897 838633559 610560390 720883570 460030246 815429324 96977390 33488303 736757314 863697143 874507908 963910323 573774243 783432914 986618108 804937487 961210486 295206853 196019102 117678859 549927015 963096365 449064365 406354269 803607341 724934139 722781128 896492097 112782960 527089651 138841042 76610937 339351895 354702231 144810923 383901016 896492160 822884189 209645795 824056999 66899823 385011643 371012719 672292581 786376198 138650396 22727617 839002690 994001276 988248789 262640247 718341196 455375219 930420567 693367071 986109254 371149818 916805289 200137693 123876480 557014455 879470432 703846270 824081991 270066390 398079735 812811747 60388904 975365123 107157039 468821663 88569813 808569515 577141055 913377925 783255694 815878481 670711492 77743269 874871316 788080398 676190036 344013079 918870692 698043197 852154572 797223445 172018426 975184990 416694702 670989236 457274716 204948913 774893889 87667480 546914953 884115844 130114417 54103548 17281624 688724752 882850284 821715338 723735248 703999026 801462207 836536137 941307541 243625457 900293543 760621494 105019601 995670472 138010766 291938597 345063076 882144202 717801286 424041275 290519194 757432388 516916075 57209912 854902062 138026755 645590789 676816474 616000750 795781624 706738782 714466623 922488227 737615241 785422324 97330194 764598686 910382624 670989236 904577054 782038430 704423463 422630217 981295146 952561393 906496496 839885807 521456430 551206054 729819174 364435973 23595733 75631310 793468561 154730855 732130846 136234062 748020284 816352495 811810727 505693200 173364459 321378216 973284260 183276960 648398095 987533682 461694978 105314181 386222613 842300345 926840206 674189551 859397210 750446324 564348655 820595623 817944910 507439622 509542176 422078966 736616961 488994700 731866664 489735843 430415594 353052132 624787684 341441131 960564170 569149028 396898470 25454008 115492773 915532839 433671898 791336059 401807114 599658180 597666710 891236030 670989236 840147634 711365386 943513394 670989236 425332577 92032294 298165701 6744091 388436142 143620612 146789218 767098564 334582697 853421020 845800218 566814316 643678813 672994016 500012438 711357728 956970636 975897338 229989529 999913694 659006331 791530200 814534667 974242317 35684532 930996115 979981521 148054333 670989236 677199296 724044846 790150454 748103489 752871304 626940645 953775583 803746403 946312325 658292485 272464498 948088471 580380494 259203036 45803715 393423830 790678381 959321190 105081605 25671492 392513128 557191170 17866211 878259251 915762621 333635965 742176274 51815253 554942757 758943439 598973321 901265376 146086014 133171234 55861700 756606725 256091926 603274784 955420414 165901441 319904552 805243047 797268087 705744548 880224637 683693476 345268331 977547503 388002940 275307827 559397181 873865457 259239224 300863554 514409270 678359607 805031400 358114658 787588960 101284599 506463302 492012762 380190566 123050861 815934938 983533852 701887513 12223930 854557462 985939580 165895110 919748771 708942993 372692292 267900002 44475564 69008446 786580901 818483163 854411604 176496679 926812899 181642036 223470241 658492806 844401471 213453728 773680611 133585656 774880198 670989236 753577091 992488610 934031652 946439775 996167321 925541927 618236921 936411855 355567504 561218961 782443068 930835803 512622689 435764794 646311035 648351205 151506883 775425577 17207430 879608454 555510549 5859732 590570552 805468418 988084981 885475597 685840610 743426827 710809941 416484054 766572896 258417486 984602352 225268645 759152018 834954018 927311014 653300537 123395246 696693060 231386117 665927136 984085103 623589601 710123582 765688643 469645365 112675807 494951307 476990596 409721196 820953091 928851879 914356918 701734522 5162906 500840160 994353987 718113506 981228746 687915190 940385948 927222520 786767315 757910965 601990990 82995107 477683902 344855413 44884842 813310783 767106976 771067912 520028521 917349674 683544169 43474820 907015208 114866575 391875190 958058355 701433620 96217582 744856281 839186480 843615162 781884882 862159981 315826179 784339223 974330003 396028976 817925620 842136880 427209731 808981885 891283146 519817920 522482790 700600106 990209078 879257168 632767546 661451701 351283316 697125861 905030564 379483923 758351921 118072896 370125893 722251421 697208349 754428477 131297118 964343884 311493588 241052220 606585238 803221251 987638403 896452649 752678571 680490506 685662382 601938952 474905159 601532245 325784098 276146281 810078718 601437905 86152707 988963164 659838491 90887830 602876011 280705860 645881756 925219467 239505724 803168178 940972466 995603909 350374466 288664987 702532002 959272626 164441756 379976834 773681190 713273822 698907731 663496350 35633932 565284381 875434871 431778236 564035889 330850623 572717331 953183903 15032238 945317938 688654318 884309182 957217922 717673993 858904972 308706345 501602862 661531941 678018035 657795335 375103890 560045675 753298025 472872666 488901463 763869449 862952681 362269791 503024250 635610389 288519200 598398809 649062043 770629950 150081312 736888824 371694286 84223261 78403426 695145158 657874053 755252497 711022091 584961656 388708926 121478622 876178631 198043955 971679944 37403702 578597058 492350002 400659116 476915754 852179047 282848929 268251010 459812616 625195244 743357111 391890831 559077696 571381523 742807783 670989236 422266620 445850653 661812845 720907851 586801210 896529009 193252834 911506382 691108469 545000655 878699386 828080715 864311096 863523119 158076517 185111840 932320040 814751656 774943519 30546816 623593671 994254793 389557159 572510101 916629420 847255829 467860799 263746182 777002486 144046526 870329011 686192891 947519212 802018147 871209741 935971739 282139051 842765939 772531475 32868143 746530472 742174682 324143217 123768765 903971686 343595530 791346234 971847244 861020707 415943619 908455378 478293920 532378654 694806122 331409523 806009615 551909460 494333446 854418865 473805857 657439198 525855505 822705634 603854561 951809166 385319312 83562972 417260310 673215822 845684134 845634678 850186369 386962557 86444149 129716151 617585119 995596246 646392638 69741850 200856315 123458175 554428798 786846644 38336871 815120885 670989236 347061717 634068804 540900540 670989236 323513141 861353770 581520131 790026470 461658921 801081506 367411412 369994613 223460344 670989236 670989236 996485402 247806957 273386445 829401372 908140562 35312735 721051241 749219481 670989236 942399185 986645290 639013126 3692153 893467592 976444908 294382742 1160315 75488876 807942179 738641841 585524007 924015823 726071869 683975992 462171324 366565444 930318773 824626056 635740964 984815468 559147290 710573934 706615488 21181687 244184077 619705332 763410260 524346071 551022432 982708492 288306217 990472256 635480700 187948338 880488007 962429583 637047259 401003004 166859140 859584176 718019727 876220494 153608139 891183843 989753055 765922447 554351301 53136503 861499722 477333457 810767922 904076385 835263648 247033007 67144706 840798323 367362569 910783138 448648168 582895808 775591766 344835944 788266871 484288337 174941900 605211031 392713568 435668407 421892814 47101564 957762058 968042774 880824378 417422579 996825951 719541453 679727658 685510557 887017365 953574662 564738710 36197591 881548029 766013173 803637359 380464555 963231213 973835903 941171596 866505140 865951867 869449762 389154531 236489498 438222154 7180460 812826417 154425806 678892179 214797989 548208753 964400173 546328819 562708855 570257620 827657989 404586108 867587378 300610039 769001268 564313738 521935501 167944470 792334427 313623682 872132491 991521513 714269713 211466719 388591712 789505065 344332672 799997249 227805117 896419423 756523857 447662969 943894024 473628797 499021923 951309407 481428984 815002856 103783347 898507263 670989236 700468232 979561995 469591481 857140732 137183011 923655653 779001645 377368744 691931826 805109364 926056427 693705956 361922378 869770751 345796231 3945663 314823558 993974249 844695147 417929052 915061488 30596485 59344498 789400808 460583713 388569623 366144912 563134552 615978714 643143671 425872756 404059590 625995427 632784405 812381262 657976933 944504559 723250587 852502091 363370243 670989236 699897187 447822161 893111847 799135920 840044947 139170335 884066524 857879644 596057664 356328666 903072228 380367924 251670629 440657882 998967763 320092497 638242698 210488513 208257389 115556966 633795825 818334931 893062541 809437645 801392088 920939184 360755832 870178131 481967983 314282096 279493720 628127126 901742537 708728604 982580510 936754941 616324257 843241475 388836444 278083306 429458580 790756239 744025901 216064163 612840705 403276810 390173101 697138917 448093401 778050345 420657551 995943364 354306640 66753463 223558421 188116549 644394376 237698524 698996958 821576237 630490284 289402724 816559689 701029207 883756715 803006217 923449948 755176518 263170959 353989733 607800856 541073722 670989236 647804259 401022276 688331067 113501339 752450593 692766317 969380674 692605702 371124093 858813096 405341809 191523362 480269704 343732448 427074282 845070362 510619627 970254540 906731547 667903661 130778669 15765742 889151212 595245406 895134950 863772850 563795226 749958953 963680071 215618355 910382208 928077527 79921558 825770691 787312912 647284961 712302912 781294737 877108896 792081485 724220883 781657352 971381732 228201271 175632354 817289898 702538154 527032235 519841747 706691213 701631407 869782138 420400931 821127871 966339644 159778199 442967201 951575308 757441618 92799246 838034948 846434960 13990882 271872621 292261598 766646504 548798236 590594551 350836292 819372008 688167924 937512115 690758258 560052643 500201196 713171686 826860594 991828546 426423814 183689799 153596902 765544517 835683481 328726707 347402367 162906518 682592365 351542009 452619963 765531188 720457860 359198143 776319772 59853224 141703906 883008522 885551238 706246182 475754532 702387135 421507644 934553683 204442042 905568274 516034320 334184523 349453169 321092516 464695726 62346061 355113424 870333165 847538438 324617634 636140683 827152408 935323270 989588090 931865369 941924169 798282458 672599434 568643878 331308946 431464353 525272264 395613884 265318859 130768006 895102944 512761065 171199344 350781546 774055015 990124817 889731721 605000670 459964110 318712900 409751953 275307745 535642733 377704402 730321748 869671556 943041541 159099383 694125213 266540894 223854305 729897383 548455602 992901097 100006471 167971834 723488902 504835110 555925303 284945384 582056525 741175859 578372805 516906839 787521767 168294836 738913165 111156869 293184443 31185567 836243385 833667051 146361930 976703739 690795605 634752127 84868911 484045225 440979586 614718140 110750655 40489440 726010155 803853701 398300619 155346532 799240176 612073698 686852330 900410653 340936234 754204352 755335208 480611972 767828367 987330074 740199914 552431429 736555410 757153641 435922081 412036158 728229012 874089982 723897036 979828989 783836831 823891939 602817569 25650397 226721571 158756482 737038686 183190018 752163524 121278926 113203813 904159202 584194974 850397461 836005017 517229549 910260445 850539217 972496413 557843543 296905971 144496368 104055542 236267298 691998984 683293133 740211131 107976997 836027296 441315351 107251908 658844230 844443160 774958862 95825430 685506990 754325095 202070246 844985245 348071813 767213952 877397674 545094071 74642702 286949624 670989236 802555429 725856076 695215477 232725448 803272902 758925264 782114258 319100874 670989236 807626406 765439127 48747594 292411439 319259072 903553226 656303443 445190658 718335948 952550483 933340373 839937823 61267988 215009700 484514121 225449147 959126722 276098491 537117235 988241522 695957608 421208959 834199223 514663929 742842378 935438613 456395260 541624352 423402435 22803945 130590749 947921806 761470327 729809691 371875777 108801739 738454016 443098881 755124749 111694406 797435541 506739506 994449380 252179304 203885113 985618087 708603579 299188941 398976024 713923238 944758614 793996017 138448654 813512863 266686628 976818396 689369584 339388492 986932504 889771599 693486626 199087917 65453129 802362490 879638635 704769371 760368489 689128907 762793663 928508862 890389134 579655514 839919547 256361057 720095561 130610734 553957726 875122506 628681611 821660567 288454875 155852064 683750347 947529065 999142810 372221109 843842965 559045231 879456183 386444064 391690992 578971927 725700505 241569612 720834490 815022127 247830706 719286470 247981351 918853155 756737490 175518150 788380491 498870234 571574270 168702010 465705502 314156530 657861506 981010132 930273958 348571698 899927649 418601712 53224432 967050827 848022788 292003056 945294137 352591806 532884166 93346856 390112342 923060704 213545549 548740594 763231119 715837085 917905080 620712020 745647302 313897793 27523873 767151419 851291342 695280333 708370947 346512179 867616499 290789517 531442995 995384269 932984219 699460799 405952663 256736452 977558076 672994833 695629633 655013834 957173425 522034020 158640763 625758515 912599909 691908521 714314509 657123959 714018525 968254268 167877014 933929644 181302233 952467523 915627388 816422106 912782323 412391582 31429638 998927235 615504057 680922027 680428889 862446018 903504560 281531388 212115089 640240658 948695037 173605432 362985146 754984223 932817623 963776923 673572742 552594467 10293197 400329525 472658027 499532470 166759746 816339164 863744738 549405085 48683948 840225006 563687700 994164381 672200413 850564100 32101303 145743502 670989236 923802267 885219689 282288626 816904495 878739156 354484623 822243509 870686394 587560588 248779797 469437723 728991100 2249708 2169381 612347389 300745895 907414565 787044471 360319838 164883316 25906762 38159496 59092070 676142599 539607374 374806146 724187984 141400973 947912159 2257460 549771403 436607851 850117585 183975276 570599022 453662878 623410890 547912793 561152188 506185959 701738382 299755784 818014422 589305781 509624923 930447551 670216326 19014742 736565496 302178565 154995831 678322603 556732779 508023010 262262902 186049665 859776402 400528873 932989546 28339894 672817107 903307471 325596388 528313752 734980130 755922690 706552706 922293270 612829014 54484968 975518979 53925090 695630217 566958907 453035163 695730462 111851331 832457820 728544181 715226073 695719055 271533983 447141256 912503421 623953604 373316066 111230364 717516657 264209756 117634100 761728353 811374507 828539582 936583233 105544437 895891812 281248688 369131091 959255084 938848073 966127076 36439727 697227511 407364599 913297718 859303302 560841623 906075753 996674400 985680332 203935899 312632281 789032474 118057883 21558674 199979059 465996714 805577702 739611587 232645279 571655843 736577169 260199738 717854543 862098567 73145346 900626027 969015252 749215225 904083548 744234214 962850365 863401188 910141063 239377305 989346024 349007960 324521369 948700634 998878739 488955679 985301802 127213552 159180889 690667413 9174846 750616906 175084860 358843752 837457052 763286456 377240619 173592464 404693368 309135974 3734408 272255884 481620270 688719251 689324779 368934144 913240773 266231010 681890969 373935004 925859839 989345228 793250985 388948034 974895834 951450 885685391 739885586 368998335 891792207 538163919 258936592 728769039 625822405 563267557 423902756 177307136 704637826 970480015 270777846 547466653 815120770 786120773 890240679 867795465 952628849 137012564 217950286 488612791 703990008 930426508 660339313 238674361 822116108 771825580 417785067 229425825 863656321 740127210 16656271 382328651 690703402 985271416 380694795 856314244 730574450 471448337 879511221 309109359 248531518 664753158 440991382 694304716 428666888 831271355 531436489 784776666 229347119 322363435 587232186 404676906 634724689 166596673 942253660 892505681 845973985 889091262 135339175 671467810 686760976 880893428 247847617 603087261 197062279 485142363 835897581 626326682 141413376 340336494 999358802 231230684 447088055 791170944 177602147 229761973 844443514 697307406 728809353 984212556 518767725 338139056 702065279 879218525 903929399 809230363 5764522 348919505 944366101 877005457 469598430 746399586 594868043 240949132 237239854 326148578 946373029 670344500 796179713 962411361 825272629 696627402 974827170 67659993 460523864 550963857 445198980 129043832 808555563 21295644 508687181 994250637 522739167 738862473 983709501 676087019 372015584 5004306 883240208 708740979 378442926 727933225 450257567 987666552 721738435 423360853 960491979 562283677 10894419 554186835 49916364 673529654 876691745 83814476 457271328 844605754 443125628 414071002 709034312 671373033 8094871 939458227 658133313 911885940 822210287 456832954 432566800 696735721 342142809 513024521 31126266 897373090 244575827 638918902 991541806 893704817 643234118 82007612 778987297 199246124 666655373 613049863 560215518 970362422 101668814 293507301 864500686 696041533 582926077 589526649 340191813 621854563 282561709 908744928 670721623 543369466 969160839 743482303 312977662 810366371 670989236 285105080 726147437 547956385 445135610 21891362 897047359 816780393 65251339 473184771 622631503 714903773 884636926 485378859 898076441 866105798 723043170 358802288 462626480 928015246 798811105 267517876 407355369 357759433 832596494 540593254 358814942 327503173 503686174 26897276 742274481 389833133 695075466 753810446 770568695 878859009 864805230 513865055 935809075 138999519 840842176 552624896 811330490 902974607 977809214 254706211 586284661 283114481 154727474 576432331 731146274 885584010 122593304 601364801 816218844 235735402 950481714 991422396 892069994 341207296 931244536 942079008 874218550 763015498 843871239 939788130 836281788 148636980 741216710 830084798 168598896 508194787 28003001 197203666 944006194 621993310 791981988 833573468 507746651 531991960 96423868 856490530 455490641 407870721 643014464 540651942 927730999 259174472 412635339 655897336 258227654 827104808 844634598 699650887 849768732 333672618 987047650 813035480 203398412 454205571 975099521 873176684 804339367 629107067 809587303 368951746 817007907 152374886 439891528 282018846 961477633 565133434 793468909 679480034 358326369 674845502 346135835 150097165 742255032 634803611 816701272 466500022 334165386 759398040 732486182 906685003 63038778 218367001 597239372 44277306 483087199 173938761 343193016 441378616 848039186 695193258 685518093 681593496 933272462 334593935 789453642 725933798 411130050 552845380 6910640 500108135 633952148 862708350 30895421 333433263 763603946 341549688 807644897 91466094 870654768 767073371 418457481 321945761 861728767 979695958 939762194 200965657 793476351 772116806 51051819 770780591 627053266 659363321 398641701 867314846 322997096 713774302 683283499 682456583 853253593 863820421 954264330 820947736 696410511 1385920 318776380 740147992 164521958 784467910 549216412 969252187 56112901 359778644 468554099 815595291 827444442 547788101 629322076 300852375 368766645 691581774 709296313 712955267 952867225 592217728 826879589 600569819 252347068 843001580 193036070 409783020 977084954 990850377 617245211 354191044 294181682 182415582 37966109 869649493 355061522 355389328 306983505 170671836 726757577 908561466 167108564 443563495 477175212 927895765 670989236 840543721 680620857 581159791 715057747 755503082 725943471 832160079 606828425 903296291 828154997 982958992 773417073 176154454 702565163 764668780 683088422 796107817 152028334 894028491 774294007 761244492 406873715 630553758 673660507 716847663 681212727 459826220 675303885 275992750 871329284 168499894 902411716 995652692 677633789 985672603 355266643 670989236 849891650 803618306 541080624 762569177 249023601 796755667 198917743 271759488 393251028 547644966 486550663 724150398 106303247 209423834 396205471 872370588 818508388 870893259 177322793 778577481 775673481 912199762 776221193 223414937 203216800 977819068 24537794 534041527 817015624 731874741 58286681 912121593 607688995 906745802 771118723 605724218 501683003 21282432 723584464 991611945 641121144 934897224 893089119 670989236 52836110 891505498 988284608 16618153 679934936 679710446 833827876 511807895 83064252 921497644 53044278 361415954 251451096 370690248 472284868 365920908 996211677 721010937 103967696 149662974 428230399 769369234 219463655 686391178 838216965 811885133 253210808 33408581 316947793 299625681 499919946 149624486 457465435 613747322 868264090 498490219 955759395 181662301 86876184 199268814 985148478 665316372 46490671 818622670 685561248 536304284 15229122 447249635 566445574 852195907 710873460 621125411 701554734 735386362 697638756 848193733 454950961 948830537 789119863 578605600 411082184 88879616 799451187 597908722 822343394 536014565 789915468 826196414 136267891 951203261 277999309 850220742 693066665 828020723 700378785 818755576 877815183 645886914 743982232 170551470 762013061 162646058 472056682 912162242 717367710 832148346 905230203 866834194 965259261 445780830 865200726 723824651 158768092 490903440 749526745 897718527 439526986 145070176 670989236 227735975 992143269 526015019 837269009 852126449 738953178 183544191 100847570 895920564 127598663 746247990 759516332 989642273 878735605 552168504 668281223 148685717 176636892 617742254 393600116 516039187 786424239 636625390 508317952 853797149 328593184 493513801 920326438 825573268 921878683 259756598 719068952 555062743 823482371 143114460 719170164 304998898 899225188 673234337 183906679 670989236 58692779 812554915 919461674 681434879 367935956 878581252 802721584 821872706 269480008 954661597 849517523 910678792 12654331 783196655 998188406 271565403 61859202 795145276 782322802 838816000 694119337 781173331 538296322 17934177 679008466 733148006 970124693 367919421 686857539 645773947 882534932 80780396 645294681 672680885 725573085 706940888 351997857 960630247 285940673 912848486 723436150 961910554 440996172 700249364 540831575 605394855 464563514 733577387 620438860 670989236 983205897 656517196 542091046 548245343 366556526 834282014 737326150 257787618 911271462 708393519 116563363 332106466 752717880 36219221 972878004 929154102 378417688 778508700 704139462 146361224 799059593 568008473 235129104 190695313 900477876 723091162 766345792 639795449 976694571 575030176 814548377 671421613 918694255 137102092 700167514 346127320 747212787 549292350 112935345 49316056 826049864 226811694 577203236 778743353 949989276 934801829 320787686 49410705 827461953 395234347 945135901 960963686 525935620 167669470 959312943 981812866 23846417 5940207 162090966 848112249 565287615 809687999 563357496 720285293 664041266 410953078 290385855 856865496 334369085 759226469 801201986 425255200 684285929 809156857 509043859 194956424 531492943 712405987 634611170 154125603 813320400 924450739 738600850 624613954 871748554 578861215 339592654 149899316 242395207 78908287 29832828 215588280 486029797 757799375 994997108 801837741 961450784 378175244 426690634 904818057 374361299 617601844 452648298 700139474 805795024 657581354 486843797 816217821 892664376 599306682 705924364 970376041 644053364 317422034 463935985 696991302 556503345 356827734 416750509 793879967 856401420 952112412 864544591 390173719 831940149 649151400 247903143 311899366 862971777 313980031 868997528 169031937 994896294 540991479 890354697 249389421 718054661 922801940 380418157 489693677 179546769 509652100 454557512 791226677 99875301 138487248 881205029 849648508 546252153 988449869 843677949 841581262 990090916 119174629 484438378 214007536 268770695 393190962 997248855 824490756 738902604 804359323 40373599 50516616 652377741 650528706 388760018 739471167 582295559 776618341 357217975 941526488 850892568 331365930 371522787 673516137 609878126 877569687 42407160 801224841 60721058 395744424 689742978 864434960 799112733 796449313 64124699 815072787 741502356 371975317 528312689 964321019 636101634 649424057 750490505 469341271 914212969 774210739 440225472 813677331 562395263 663119593 939957965 95407696 963291652 91008792 44165450 252784573 585272440 797305415 731685658 794900727 368122360 676086687 61520728 964168798 924407670 784327822 16849419 736012460 809082304 751771954 457976081 892367692 794295042 593257458 938520345 218970388 302797021 101832925 594153391 763860238 785352072 902468928 608165826 886942366 481077004 720527932 999223801 91580659 235082540 340179790 406314690 434275599 576746108 280148223 126701090 796025905 699797365 436850657 374726518 50435317 916993346 633846566 498247703 416129739 598949017 741332396 648691830 989987599 996344438 118652057 692809586 706478700 681537013 718267633 108131922 239970954 257725693 860907182 385717579 267619538 239897549 685969685 954883034 793290273 670989236 557561275 145649634 789197567 946048135 595238278 924586267 379557928 443861453 813784058 965123684 844972733 483018470 521753086 18882977 177806961 786862373 489829646 175520583 773933774 548696291 223330122 805602213 672379876 69144122 888342116 513239574 405780882 618002564 917126885 850576950 383547564 928869200 678974521 163077105 722400871 125911107 605174423 235255709 303949721 194758392 125627579 676167828 746178883 256466279 754819078 681726805 693469842 339570761 877123086 243213717 685151781 678318471 852967205 3511326 80233306 958968895 764386024 814168377 390396463 602818948 670989236 188961972 328360723 629002341 445859387 591493604 895742218 973978965 16116560 997675291 121905774 804723668 816400619 412678117 519265107 600203138 567347483 108664569 815095357 378408354 356624969 732235754 469457344 64308099 725990416 210415851 403034784 473452379 849911962 695194211 702137574 481487771 703433144 104087337 774998325 236525930 459084214 714635537 711741662 676546080 862919979 825264911 784826496 459352097 801528923 922151252 749534308 647319210 249021878 558132049 45549048 406873458 139964176 278651374 928223477 201020304 828470631 906266619 396548593 663731125 497394312 281863112 68205333 499285104 991160461 404901643 537833145 928115042 107864880 723075664 930975746 606154882 842020385 756134859 437621739 211080588 410338508 720030314 887992214 153044826 592017532 910045385 4746382 178952883 981759071 396392388 510328832 660820221 329306659 889159120 23299514 660282796 719441072 626512025 787544931 941003292 856870925 136141035 944870616 97911701 936146091 674226025 86845923 883393527 378149818 670207669 894047861 618553154 931685916 712720458 704745413 284346717 992623748 62705620 712874239 870988784 986686143 429472683 368011338 696855310 726995169 844778380 318630137 651981474 221514595 581105954 248173460 181649013 742187585 486620643 833704362 794199649 321262609 498766507 821248933 141559348 677004464 90246286 987598278 942883366 531971185 687714680 49290177 595277603 748588330 732917379 834483183 670989236 789045848 203882427 981418495 29769422 305788925 115111104 38766016 400398 651942786 316159703 795143095 488963463 427310090 842611723 855273242 232235552 586165222 979816213 213709803 670989236 334319761 761534389 894550363 710884223 230222873 734570427 842761701 926239574 130261121 8858042 842620575 663137588 810740938 600779763 762737583 287160917 556025653 192865471 763281535 501151276 877221600 764330996 49182967 855154500 921325296 809120208 256867792 759079313 724070196 750839532 802484100 435371817 210871636 849300183 668769725 767919887 116693243 305364329 646979095 586047065 584733662 458092156 961638898 762110145 494726591 65761499 929715965 857845065 385493695 62389996 557765571 972061167 884656591 913430611 653660871 387004568 466712750 813533760 720803914 125927963 77982366 859620483 670989236 839316975 764108163 891264416 843555515 934787831 253410650 433673210 728571118 41260003 299219078 663759647 867839831 786472867 432563484 772978271 304853337 638002019 19412708 668745666 700546123 919203688 802802058 414585989 449889038 45395199 594626948 832882319 329742060 870123543 390615202 124191680 855863570 393897885 170654155 951288925 616145134 397918265 997456743 268466245 973285733 524262228 250119630 662605741 882245067 50996838 123915403 957953560 841086350 274532415 396902318 826712134 100561886 923298321 275820614 309394025 687261358 687167230 838581893 477171892 113190930 93419967 779554376 50722622 807826410 421007078 401559753 809719402 594933261 685276912 355437972 905476996 724532791 811778631 551175786 623645435 756710900 691983074 581389061 780908220 790728428 918141136 670989236 702135455 884411988 388503100 147932875 241622501 98562578 670989236 225812630 870473696 850622802 672574990 944201558 862800301 328330486 985914307 219756190 710055114 979216508 570378374 845601796 416287252 354140520 815278973 710776473 528739320 990192428 846341003 690980425 58916955 31551491 693388155 754169204 938820280 814908746 826780067 681070532 774427916 223796575 362725210 981958923 441203060 266397663 845511605 873847821 286134781 909344548 512394016 156190414 379814027 673741698 944287999 85231602 406215584 773816285 386942416 625595430 540880932 547483668 822471784 331502716 870843642 44308496 974168465 829550661 271076074 830437421 828861555 947900324 736201674 813217120 785352225 708621975 819234326 942205394 453711374 447844285 678823239 945814259 788489966 881435580 865062874 534326129 680008758 618044859 499632050 178507795 443503944 846734398 858864444 176908340 745363476 479893320 66247022 160101921 493957914 667350035 790590632 920474530 176814699 670989236 494210542 437175884 321839548 932275292 869917933 718163307 786854473 312402338 162421585 774840289 670989236 123603536 729139335 886241029 894871767 698398691 648739352 541794150 788179581 210768857 297188358 674672030 947383034 187780518 682663627 907292058 96790112 738390868 18710953 99726120 816971531 659520873 832296635 577575372 738493330 852420557 777139213 911209732 191653794 340124178 869983734 277785843 117082031 798098863 938095881 544158264 751007388 29508265 949819811 879029785 361455859 328324192 670989236 713521187 347424192 924067920 804264232 622450339 717489020 288260184 715826596 33833707 910863939 405830290 691046858 920137927 518143182 763754486 208821274 778389246 113559045 606124093 568393668 84234510 559644765 473294906 705367701 702744813 852722392 89925128 357344621 3826651 328611381 139939155 13497394 879729221 701097294 314165330 683196904 590431222 861588329 161704916 896164530 82248765 626987585 325089123 753979941 829096543 439037492 674629055 789850226 182933276 323059777 517764258 807021283 346828645 98718563 132929499 565665402 940525436 754658238 807483917 702460462 214155039 722473807 751584821 791749778 988238234 884779512 722088763 492464298 871452265 389316461 688874876 123666179 815786628 65828352 60272460 375825153 814747793 792810269 520095256 176102800 776807136 776890630 65983910 861511655 566231394 50445963 540627505 681964771 888888426 721556135 683831029 264778011 466015942 835273666 670989236 922747978 806539301 958349971 148483962 927598194 945334911 363140954 872956153 205582367 813106430 713151781 191327999 545810936 859322131 732624551 524711021 970531018 395598235 46056136 821727954 403246449 746782486 810247926 714087114 907755258 134526530 871618479 764415685 641603992 916501263 945488410 618767829 674658372 929129306 277186666 201212581 303582686 664610805 684587580 770038969 748220104 442326128 567789195 769884050 529192687 857943202 318818660 802256229 918032826 661347084 328926903 731028004 924844315 394148040 928224538 805443922 868910035 586207313 41752706 362419596 439906302 917565532 74933689 739742588 835101013 833192251 670989236 561216859 828261690 21797930 196422296 81463212 585237849 464597889 723582755 992617502 761045181 999806746 883089533 40803443 495549443 207800654 796750785 889788255 683594349 870862069 315462255 919339567 684312658 828309341 500714260 106486119 67708236 872904147 11172904 521353080 969493618 672615029 425282511 128347818 694491282 569770946 739426447 893275389 807036407 522753557 386063245 192062764 886761297 162519316 800063300 833807687 843059227 692247767 888746422 649793397 773213724 284748579 142792330 709556232 332135302 425556225 853309732 801446122 55317436 452092539 670989236 716880047 811378084 882548577 930003008 728945396 41796312 747366537 810957956 843283031 544476722 862571729 694181724 734665142 982560275 211746332 600979256 188135502 756273347 696868990 735609021 540905269 614839291 20036764 550142652 806675105 670989236 663922568 341991742 11152079 445198409 65032595 129504286 848655599 670989236 670989236 652710000 172911612 82844403 343311904 298558018 937273724 785522979 73991053 117105327 855595150 957304361 869389304 880565243 670989236 938138832 970162895 889836753 833863744 167879591 372940646 386084186 255705500 857309102 188556634 624876965 806867111 726807667 775174566 653140112 205026631 677446717 989010195 240843273 525618146 961213702 438888859 597680553 850282619 786079968 546276687 821900347 269206138 728822191 917277469 517128464 10465159 282187972 99294711 944519904 105208704 778296811 800240499 460826954 605781914 821467202 952215612 790618189 78641310 126712314 295291581 12411294 756420902 128899764 918715401 870268153 794625353 735901316 931492144 701561266 576863672 754763531 828183541 681534712 439178483 778975260 449454440 545501491 442576143 735196718 450187225 495649987 473537752 851122665 351055690 270756621 1191389 186619761 744226418 962579128 873622135 381455782 593932236 861621175 350580918 204186561 598815979 670989236 476807723 907322539 29002821 793609820 101912992 220266901 59140374 124384988 463901489 641391353 345944056 443827605 473014535 68908184 999659231 762080413 670989236 636525397 847745010 408361693 299014773 502900339 322973494 337848555 943397451 940403618 145351278 854812362 732878957 4535347 172301099 874689877 716974089 788065951 133130718 973188863 503806448 780215234 405452970 751140873 839728988 673191178 289015519 566565781 166878962 785575430 922271869 670989236 971000960 902465328 478068041 285775013 960183182 848925 789756484 922387173 907284256 459443310 881718036 294010539 618722075 694671470 614467469 753628374 952957182 608543450 370217202 159701668 216115788 520917134 232391796 154633186 74273006 400698160 740741408 36419962 841807703 299028625 709739147 954653149 714662201 709814671 960984625 383006943 406668270 299821400 760127822 215208358 597916299 33325740 498807738 429878030 793438680 597392126 790402423 60319824 728160636 867796672 553474957 520147340 837106206 405434446 926433954 460060944 961152196 879693572 995318967 279760548 60377053 632573603 605610 861769146 979460234 348186305 958794943 992324580 648342308 326601517 794209607 989498556 616357980 836726516 809518891 802136912 752139152 845156127 749084517 318646366 966034289 520475317 561311899 541684771 763651702 709948530 588289920 728112751 58440742 633438131 954167253 634125097 988057757 670989236 429674570 935111793 349760403 998257599 841964822 675361188 88269163 625916739 697120974 697722840 557203091 581149472 749996444 607355576 41850908 810505304 733338584 886133368 92756354 987831614 796234565 252108744 958775367 675456263 744120180 918593213 220797039 914164425 364810177 55783892 916718565 309272476 202613177 275090921 679992574 914646703 831657564 870729472 752157744 776220210 879376256 747478290 33018407 567139190 325185017 535523778 866045188 772804984 49480820 127682298 754482482 136781580 616196383 614932593 885696106 721302693 247472233 942308486 527173539 382584984 924870455 320555060 93005843 430575961 941046398 890979696 456968605 722635554 143615002 142260569 520367136 794047210 598466825 448702060 587715498 872910027 477927988 752146679 72773145 833729178 875250699 712409220 271994458 639131807 345706663 607851711 39644601 869232005 301350501 571388310 805687657 570017798 456305685 913171067 306351967 357650333 692595273 335390764 598418293 800856148 769053207 128334352 474600940 118866686 955950971 885992462 697510442 883241114 247088742 235694326 861413852 849504403 931482474 212055692 281902865 533164713 733860460 823328794 79213747 705497024 883688933 592991148 837369882 902290116 378988270 825875962 814861241 828592930 853250938 425645974 807156850 909242937 858594651 921503208 891879533 366195184 694913922 751575031 10206570 385252852 995281387 445718524 928906447 955613616 165172013 670989236 233982410 425814537 755312246 681562960 973084987 988704186 868235402 130733480 742358795 567765941 768243937 978638567 695957913 864493545 209520001 928062429 215434925 718925308 501899981 845779581 960207049 273633374 240299289 187111077 74189299 677531823 674335702 445317722 582087880 159013402 289988831 75832523 344693322 410884573 734719124 122716663 453313122 722829862 775089509 980329608 415573205 996567154 997210148 398195616 366399552 307353339 862902689 958390754 593813062 763915441 766942384 177797940 897278921 982563863 551901602 829305431 731133114 506908708 473904569 561071301 243838330 971716577 516185052 581964403 726248938 619748640 773028267 716932369 298298967 135368993 599675776 631529713 684609680 15267873 797208813 553435821 207240802 852780203 961989820 836532221 373787488 468632173 702840859 734479211 988330257 830661638 828214543 215155343 949402659 208602364 483187938 182503653 324773854 81757846 918773423 546095259 213788169 196106143 676822354 832782771 125566990 5634341 963233600 700053061 624877730 732481447 343504966 150193541 775795652 110971697 229883956 929067707 843191090 321736539 838929623 859242253 977401664 359534906 543902719 742336477 348818188 688839705 66584188 636252003 743274860 793928867 939644011 199789772 803305254 926946086 922022015 526261534 943945853 308061153 577958011 324965907 830241645 85835299 842295383 724413283 867478892 718238435 979552326 667793801 23645927 645562754 101975761 467499293 783106558 949371088 3691804 127152929 768667397 167661965 421066599 716776746 816096191 261111479 391238472 734752469 621658652 103747281 992659064 709519685 35310000 905027603 269505922 882201882 912944909 989457137 765347405 746574448 176796439 225199512 946492928 892879240 838558110 815221707 871165419 697582342 476399069 923199994 498901500 691197540 543663284 406850322 509005696 620990421 839457809 746574737 94498676 919370753 10968412 308715284 805497717 662108275 2902395 353209618 189474017 949264070 950470517 477796517 320752054 921559526 846787003 87418032 721501855 943396691 339056034 502422489 265015593 964080800 125816357 829654013 918856241 860809000 734670951 834131436 787015438 32008572 664374067 813572739 519501240 970681953 483058494 123410297 797803169 139882917 489055454 95024961 886748313 766428162 63178644 909452959 584608170 72573880 261056007 780760075 820486586 758741342 664786555 202236323 771741794 386639447 877714228 443247549 941682890 709247467 949820037 358610842 733463962 426791614 670989236 27489825 121464996 885902943 705763038 871058311 757181817 945460792 724191662 221155911 903944138 805947251 786427595 219918776 385156805 993947566 586399206 56078832 967506778 506399142 892819215 839332216 865910475 207958948 172355079 415117504 266684305 775948321 997468668 552378967 539610914 864936475 123540232 556062573 933988372 77762276 776599239 235664379 171884084 606198709 971379713 591967794 737012847 907484221 294873050 919592872 787991652 42997842 840999081 538781618 842010030 2501475 898424065 55306571 630211221 833234139 940492970 588987040 651000835 811491230 353373352 809962625 232307629 744422759 809546965 945288202 886274226 100175808 992960191 906226436 773947879 794158214 343884913 693505192 156477399 209548389 877308318 750465686 676148581 768577548 645369273 286094064 679414380 43712732 354175881 525525302 803467054 410389343 930314308 767497777 744516516 693912134 996282894 577195107 972954184 284923370 176283794 269072791 759634890 37611671 664233554 963511219 440041112 43844887 765732565 54270232 117187131 825859646 843796091 822747498 830373438 812959596 448825310 838918094 834690928 676688788 319829548 864032995 500153039 751360431 792212261 882908122 442815051 130448333 534953579 825164169 852301633 779595272 393337785 749525508 893388844 546907738 692436584 95706861 839897128 908077550 847830372 902355557 676022799 283680881 699349973 814165476 48596605 798774498 521503035 440832345 985735704 681384823 708478456 670989236 337718433 60681086 496753524 2761805 856816479 740960893 766040499 223842129 505774866 255697398 547143277 382907002 686046710 832571728 40498021 16518026 499804765 403290518 943233301 336595353 853335664 976293529 779077564 368150970 803307861 972745159 398229941 593165921 883997453 489358801 782230347 708608240 731582621 154935075 616455238 598299965 104082593 432027879 715571193 197466709 572233823 855531396 229470869 229773643 765079323 66408751 418700438 51378516 942242070 51443609 257534730 827191230 925360826 881357483 678014583 989118624 488080397 812800083 261166938 805498478 451244887 771304005 899512633 239949195 855484598 579328386 712628006 803689165 735552104 833937865 940009923 555088653 304916597 973438008 471450183 436502400 843732557 27958680 123656742 66069537 287353577 78668729 28511736 708023733 911358396 809111165 305166755 841337420 809111294 989510094 668653044 948296126 719842240 772211641 818970651 290165736 128761750 554887514 526186915 670521689 765861818 430949775 177157032 994193099 770410990 761478899 391741933 585690470 573545905 711306371 120610086 746480208 464668431 509319141 295248129 698958410 744535316 950165503 582079499 694550306 366110 745004232 717972015 819639163 690519330 204599572 546076344 999558973 261495498 517872601 686811063 161037325 126181011 277400232 545639980 993527180 685860498 718643374 927379233 658724431 723554793 631360640 697441743 537476561 784108420 271828753 52609180 534492317 306072841 689060131 745068994 774016201 742704265 806532788 833192879 765793810 958865186 684839752 716974009 646121672 223446278 125315871 72937913 677063832 719986667 957512972 629425347 455403560 869903286 924434472 232331236 207150465 528285940 842276197 911781060 963025017 710707419 615271366 794413734 289907416 922244732 293388946 142087066 731145707 45418179 986741182 416940904 635319168 580749498 290539184 520305459 907131063 906389395 675284500 684503719 440267009 317682454 951947626 280498793 985199793 351885129 150199048 556336193 831723349 963146243 174834099 773178853 578623449 238117832 633702964 707911577 797013559 860504105 522197543 836891392 793736891 946999342 797018221 554033379 805212526 172099443 476931585 462650946 191938560 670989236 249184448 784344582 378172658 55282665 630848272 765607817 808061681 207091908 289276673 670989236 615242411 301279450 514150660 665031628 245200718 8711174 871784522 403569223 837759995 165029765 698416566 997391648 862161382 506181251 695030447 86326166 148613610 360924233 612664127 88201214 930532146 243598094 917873049 194871340 285157921 44154368 783777317 769928205 709324274 853107760 740888517 368094683 754117485 869293810 920232934 160125339 656136922 849856365 94031661 756611029 139093993 843968305 942593486 718558208 670989236 108910432 407279903 372154256 795134623 885844824 155999447 90250649 536858469 200139417 807820951 441483744 421432361 438865626 59447405 947745523 644882351 78282358 849295677 973029512 410321528 383031040 59015193 87986918 791382777 624669614 525498324 501227709 403572122 845942588 293912386 259443703 886191301 937565251 482876352 931028991 952972217 349676829 560945269 911762585 712554641 657817857 130952639 554433261 673470446 454534908 712593769 178186398 676092112 944878324 952743841 477966148 773984573 929798224 580408261 229687697 265396188 192350655 869567462 359020708 221450064 826691446 535380164 814516225 782454864 998387206 501277214 942312632 767518513 848391047 45204776 437283343 801857262 670989236 676750544 977681120 623274815 920833939 253549713 529864100 976397185 868398113 336366835 506225762 227135274 417272499 836733875 751823019 254376309 98975238 679047032 967862895 509736346 776974293 618164333 317727219 908209362 386021269 159263361 527804037 927460389 87003524 754802900 623851880 159846807 581255733 152935956 597572220 936581781 757943208 795851530 23204177 473668719 168756872 799601629 178513901 551610141 827858118 851228046 736993441 661254221 818639534 199721886 492459462 520859850 587791271 939687725 830500391 71585610 947486090 861479108 418291041 972310446 794706603 854018554 534084825 705001573 939848157 624555064 714162889 738290863 309775396 46219852 861489596 863813086 565010611 162514813 866867443 872334583 872659347 863570517 529754327 645224374 906808413 749706366 568149341 642049760 212336782 924046828 786898261 12008500 894389044 412318375 342866160 831895711 94120522 773231148 741163077 277637662 358219094 386844271 919212057 405775821 883037357 384905038 964753993 174032309 706276489 274635509 885789403 953083786 285414099 877653728 810032605 215660622 890910611 415099638 616134523 960356185 56604376 287501953 560030085 708426966 690618737 648932357 178607125 911762061 471334708 385802982 481038093 752496524 779348176 735575289 785807265 388358937 904156819 420954386 654107366 806467376 86072385 226222838 347920527 387498936 319000541 771369407 43131591 670989236 800277244 608511631 548524384 145104049 929829448 957068431 154933774 896445049 832509105 858964354 14842865 690845316 131558425 848768262 747729497 709131110 991491269 870599412 704110990 311874047 575808498 248161211 8620630 886974225 847764022 713837978 848993445 573894259 788150307 856626346 79304173 921779009 979695641 975011734 157043505 412434001 186755227 483334989 520671781 695814639 966360840 728698903 52343284 968675710 404588669 539973565 838369613 724555550 87861435 840014080 873329373 549639809 253336321 3992361 106605953 489774274 264096726 4815255 464198740 241462614 221434722 782669944 751714743 874492562 295442850 199611604 832728951 882328639 981343709 248376245 972979693 670989236 698650787 941556307 938084759 879121035 33087465 852346193 917587243 871246505 569239162 815198673 434094735 609311238 97245708 861515837 530132813 532919235 888704847 909522313 745992671 1085247 603550917 61020044 111953074 174099290 489142276 689216927 696846356 519410395 55008270 419930202 482560307 389065602 927585636 271709267 316372926 785645106 835594275 489725245 825042899 157222171 809473027 331091182 912185497 650061178 876846164 719690867 378385429 480524783 559514406 884509363 30414762 781852641 548240796 455117554 786198953 324194947 373706594 24146181 670989236 222555229 880018221 859399385 207637374 731852714 716421111 330115286 912131355 678959148 820640382 941985528 348178644 792373134 826585462 745099709 755922180 778501843 745779633 132119708 930269067 522602750 944413799 973485732 685964628 904893595 291921274 374123156 807053009 826298982 552996493 712626829 625239958 189060650 912311785 894606229 289285296 898741230 307165005 861260498 426689569 637067899 877603776 795228165 665907281 449146623 771332269 246108631 670989236 914221635 940649917 834025111 856875968 902528145 220282929 709159719 771578147 872765906 819450085 625120724 675294196 912560793 199930344 728991752 609266166 986369326 689304949 707536045 332147734 148439624 796058945 918521567 100799508 193014022 391855633 127047153 233166009 213980765 866623118 269720052 756914214 938354959 674370472 750203472 790315296 919916753 725576426 929098922 431318205 781647076 949542372 890356871 181457816 320836549 29917423 876492520 130182431 822071377 93900097 661151286 167030383 876426576 610956081 575958100 986563210 256129171 871524686 902090800 652146593 199591432 694471192 677180069 439835239 292285703 722470825 731949366 844179556 823917951 207179737 737079802 61561340 658729775 435231654 821585194 947206671 900659591 887872386 880604129 11611270 939132710 128536415 199927964 180716710 887234480 271798339 912999818 555376635 966460847 269835893 502411795 740397959 621176408 798738936 878475302 588828900 408283738 153894618 889367886 168928221 34431320 832862441 407201672 399424645 945512884 565558157 54529064 381927275 367983514 743807400 634604242 193054411 53174059 837627560 741325564 178761948 975204910 13986009 971469524 846367399 951095109 916879212 55247564 748927728 901111279 847741766 973805713 803042858 392719788 701428352 682363872 303424004 966151458 457639180 327577800 780445089 958493245 900731096 283329316 394460310 211130980 758250184 176925075 938713651 913286192 687488720 818584459 705957579 993200898 763978225 831430229 739465461 743263606 148550268 762742643 761911550 571239130 548176044 844496939 430096509 855881106 300332356 864340113 155234114 119882586 790992904 796398362 862334604 796398298 514379335 614704444 746948710 782941786 901161505 996308013 865793513 234825622 281029514 904320865 671772923 326616832 637492340 615806553 634359921 589554325 741927196 551508765 14292266 626392895 956695632 872741954 777360371 239348414 120929304 874248351 780602624 911062541 367786517 856066337 752639094 578150413 191249068 791346110 749514611 24125515 913544556 565435904 732271479 694124089 564975920 725801108 574112123 510234435 617903081 798128928 918378835 852094847 439587220 748138198 912311884 302460372 134948705 417980890 335569961 578718760 227347501 761379257 924604503 843702729 688952204 116262375 947460415 949367630 832919810 907445438 627569732 442764510 622679557 678672299 925606528 407907498 324346143 266187519 965967925 189644459 818176867 870155155 293948116 702585584 572493920 713926592 81936273 66672160 604699512 792656618 718188757 696087760 888422726 550356856 886649462 201681326 658465721 419602202 687719374 773921475 594273767 805994637 818645638 103087165 876140959 349369167 321239272 756226635 251045557 910153669 747301418 315115876 876377555 719782166 407653623 840928699 457666262 825774545 394077917 410369378 45180122 800427188 69052950 439800224 193786006 967319714 505292411 90992889 741097932 718089287 753583272 670989236 399829529 822381375 679109573 955087716 977319163 398797110 902911 833402410 949876329 799740084 682812379 281754370 827272956 805971872 79391853 701969257 358339563 317571762 207766976 285849235 420900952 710260286 868094144 233626125 696987389 929016223 627036825 568051098 959987472 314905577 701071254 758568733 461060406 933596530 51850411 633940888 562114599 527685044 914411955 956274781 518492152 217489225 416120422 561975270 811216388 695486365 524417828 112357954 868115242 548989176 429106070 492749208 489074780 209878095 985748316 550276906 867501703 740172413 813419871 723159018 743639161 293956552 900261252 966939644 64200717 904387046 82890714 675630747 757252729 733410069 546429855 676592017 722776338 781132475 526181175 75098532 826903188 762547553 240862738 10011958 550126148 862059418 947604490 396621420 322379992 765765802 875625340 714789937 821365416 281818345 717231665 68605408 350939030 898713260 506796204 906125957 314609041 304132089 527467505 844513971 83465169 295313572 592196920 884042669 559792164 977852956 405885981 51445224 170109913 344680669 864002321 241220668 291291509 119379620 541374624 60439953 32579039 776150999 713649665 973040773 839518802 670989236 681519464 133655626 693625561 723845857 893452143 887123778 728518982 910936340 36208099 994531424 727299321 892674433 720526566 584313779 622056343 903971938 517892170 914476384 903941044 837931018 200942868 435260490 742527248 230861587 610086247 758041975 790811773 242760191 737882763 122093544 227659571 624508003 951214152 293719143 814919469 615295893 2030022 325493809 767104571 769516368 712307752 597645989 203835989 805349584 330668617 586712161 933238425 797768031 839452874 288571419 498651882 971935079 415834144 615236781 191883532 673958236 689205673 744172010 173622396 529622542 764453298 717240149 369150954 290715283 950626092 754860516 707593478 108642993 979214380 892331197 178071116 940235382 877744169 802425371 114652247 927773036 805667502 618269531 685305227 410221486 714047313 298727665 812519741 952548748 981953311 180480979 735296718 801090911 680126955 61683227 255066242 949766901 940182389 884712220 27414317 582683435 447477104 840602024 911210773 442977610 864673915 916934395 643927754 550287249 921460871 139537966 390918176 744728463 915187447 580244275 792459587 538442954 295329685 928528468 495543924 191332821 731441337 812351966 162658802 883628376 966891259 514838493 370600502 673971910 939190776 241843834 701627665 469513848 451090190 22716861 373801420 854785385 357577212 793495319 907910942 841800465 314537053 210909660 665762180 751068293 849906175 607005577 734244779 110660014 65045255 789601324 906415248 684392032 801226183 799592141 791519735 69137725 827096757 291888466 261777557 792152798 508323476 945660237 430304740 527116267 434118240 758246482 212595077 709419446 68462755 325814504 220702698 561974589 756198364 523407870 238416061 321498417 836862785 496977673 645207538 24861194 982766733 596741892 36574958 857538337 823026374 864705716 754335585 774956046 911882342 241124231 695381111 737080624 934374915 18470055 244808589 295588370 949237725 916620441 733275117 773124115 32352731 15034000 763393944 516102933 146865547 727833082 238318042 439580176 497536388 318281411 856500421 785445300 994055282 887229704 975148678 766103742 292133770 956523126 901834118 662090923 584087766 112138706 192269032 307869730 717193735 543388646 439803818 675616029 926079766 217718594 817644962 874882293 983825260 711557442 997088424 757656418 675234762 547292461 558341300 817174930 213390987 311851997 575664075 747321553 867307118 884218647 463412156 695351124 956174984 802137502 918921320 811307802 569106367 333135396 93033013 254507076 699457440 558747546 995092432 831166559 92775903 677420951 282151363 700763720 424560120 860878037 994937975 300754317 919277319 244149442 404222455 407360773 878015700 932390665 609041790 65957841 830545463 994813189 711323601 744790866 745492090 454357496 121774269 779166200 39677764 654776387 357087338 722868806 426853310 454304315 628994918 670989236 22934203 703274971 684991481 245162105 957059473 323361850 815672333 246640709 627389534 972569984 366723662 918900337 752470132 735925551 324105158 901822284 366776909 450039709 853471809 735762504 846240322 698855326 904155826 701073098 526778128 830581389 534160620 757654511 188693665 846670861 308142841 808973164 765680190 957131199 655461132 964371456 902169438 196865280 200531137 793969016 352669058 695753597 533862089 505110823 823176649 681974572 982281598 650620157 700301162 602975042 872887049 270943168 342876913 927350811 647558405 697805388 529659021 718836052 276504164 525034589 43344656 957300619 389038201 839413230 626753950 910207643 946727127 670989236 866631908 561696487 549473479 728449785 656400033 337973200 683055695 836351321 368635266 348543965 351631587 791626904 780558370 978950204 999920730 771731088 998455298 880112905 192552813 769732259 958882881 957013372 495970785 192532624 42202159 321054537 558974613 180480054 891399579 767854393 501073291 488712945 809771759 634697796 834109505 655867857 817605958 167994472 817255991 845118757 708123947 604693577 437197155 791313758 796342056 429836344 375061939 843891401 716719858 991604969 60741988 107666324 628957092 108993552 831252008 597056860 828219688 892511682 838100046 938861958 695962224 386836266 784018613 674081842 442315930 280601150 686747298 220343655 765311546 798523304 837547608 49101707 384863391 844792346 157369837 457634147 482598473 697032554 754503632 892150336 124364223 506001990 948902721 392995559 919983039 798615204 75820679 739333130 140728801 156395630 522972749 563055638 640700866 906802616 708424692 762389329 653673255 611202635 346834939 255775423 489787564 338185876 973822539 269723067 543837304 54781745 489154752 641809238 588783901 131734779 222784939 200977521 319246518 348450440 794186686 881897632 948824084 701654058 423624828 832798118 923069389 234092256 437639371 397729352 509612220 839783495 853696863 63467934 906046762 559801799 294319820 927663713 101608423 91087581 303827765 481230362 858086097 236059820 974592946 925345622 804597555 718329372 139080777 295981254 198014718 547753101 117599098 809619236 989560725 345669895 422840644 607989911 683734421 762076559 283393576 163201708 873466111 75721021 496486996 982953642 337601945 611567882 692539439 847254115 158638142 670989236 146840430 216945583 963076434 944143077 889337575 958288784 708433570 428137181 105974234 493615090 702914105 844573694 812778005 670989236 985202417 430957866 682525395 260908069 788945732 375282501 678752181 254253496 797539614 983573638 677242717 277662264 762488021 129935958 176132967 308209156 115115684 566510428 331235262 763444505 770087831 946156529 670989236 813480124 171838133 723339591 818336525 824514619 66086510 914821276 151828242 856516404 789752566 625204512 454901974 999885358 981241008 646422205 769700521 185668647 193320996 180212424 916696993 576827040 464963648 725912201 700304697 604294329 580896505 875845340 304849210 693173830 465706460 612138895 811353739 844260624 848657376 434129307 550372017 762626871 154539581 476395273 452813027 911681923 99998548 19714399 892096768 314644626 285404091 865978052 190011598 531201570 433410578 702708849 928499970 713410431 427206831 968639656 431330432 258552328 783505862 409711906 73748467 801049443 59893742 88872946 354676247 817942742 451161453 340635493 431201498 357161425 187476488 724626403 827207923 118036694 710974288 585622287 810096126 593601951 947515151 824931381 836773731 208158846 676128626 924067305 198291568 357612277 159298064 207875004 255100609 573214728 943593994 642941043 660283620 460205374 690118829 65648776 810313310 845461422 457411784 711409858 924119130 678741823 173075043 160087024 618252653 406083038 351298521 941013670 696875005 972973555 758009425 748517537 907888347 377999006 401892828 690440388 422162490 159761828 792943872 922883866 133595637 905952159 829328966 201325609 400765999 638801656 831732298 632552158 715170087 420753957 296015358 667351647 662767957 709361732 254247410 109711314 700051865 583744387 694697109 906249717 527610551 581832006 814532087 697438680 299465057 829366430 953183694 109872452 666873305 910419375 221520242 869170522 997976879 894254100 321682493 649113060 429184248 879487106 116029313 684926303 253772075 823975848 686553105 43753666 68271649 999066079 522831366 131935515 529599076 688931769 92356370 956670803 597260411 404442707 573847360 135376082 973757610 995479253 235337944 985154377 445245581 120717083 631406292 457761294 804691633 568370631 497267507 124528524 989821074 227312150 258253217 767004374 124837835 181164095 127408419 593651409 778183620 863802615 921082776 560761528 262984488 419955316 697434840 934242612 226171428 664474523 718024163 895749713 966559592 911882223 273956641 571830519 273337026 785079162 614994985 806005342 589739364 757056364 794809881 271333008 903765794 848881307 735203568 949984044 189229296 387670201 455405862 670989236 673175490 801107950 912253293 295397306 989522708 233827970 754943215 523482470 412438423 451254783 155049062 782178772 361059373 714451230 873921164 869276439 131556373 898934293 298495931 584863465 19842654 781099288 308706155 817629749 298837090 94043990 773392805 977293674 802310505 476692627 761721959 670989236 518838799 534728078 895482701 855433363 215177506 398711524 810158157 212731547 634220460 928519518 729690549 897984341 679534301 689424086 903470769 203769780 783181380 762101140 518649218 93763209 808954785 312521284 360784991 480804428 5020330 909810040 276529967 777290444 583021858 694905604 945216029 832301201 489849331 189145854 441501645 310793861 919586058 990902855 665810572 459708378 670989236 720564472 670989236 622080227 268054125 195382936 970028823 230958835 782719097 645144085 681547673 693162714 40644905 871858799 974950772 528972096 685651552 385457455 91061394 960360069 994156643 529268917 782994758 168017685 957775208 884063355 749772222 980526770 408291355 792285528 837168461 941647543 999219152 394649908 640429947 841067292 882893819 676759289 285470031 748068148 570083844 709406213 294656600 659647900 870399601 937549177 936362686 624140270 920949662 856625366 866790832 805435468 111041581 468112766 824874498 758447045 671272532 787098521 474191826 790887256 321256494 454483771 654052310 393647149 994764990 865277308 888454969 700017379 851488485 809894445 892513785 334704368 211963079 796906341 779253924 205426605 740703088 876103185 777549196 746167954 9874784 252602794 899107937 232745864 550476640 452256587 380804749 139511280 710532725 690597561 718422499 767234118 795546490 677883937 836110370 183803316 921239685 772570944 895788020 531124367 245128398 214984201 835569848 948502090 712314589 762785817 279827095 523956173 712651181 113893494 740586343 318060395 412175706 646055756 863217319 530659036 433564067 290342339 939900059 49849432 778960875 790634739 616478632 761049514 526171888 515353806 768653596 316067289 483610194 602280421 676207803 38753500 914708057 684189767 969284815 823134832 388662002 750975944 996517397 733405517 694776594 284134067 432331824 89228044 160964740 958719958 792865430 720910559 909579671 611939339 689012428 373936558 900287962 329702568 708256879 916480263 670989236 875662921 945255445 687464556 575177114 791404579 469714294 428985687 496244538 430404705 276053506 566450195 887048104 786218585 662173736 670989236 329388650 354393096 343660541 849424199 387628613 554045783 295130329 530656257 871069043 894909518 950708294 322930555 90809229 62613901 849814891 178868646 73184135 670989236 790230300 15740914 485776043 481295683 225402612 698129603 251903961 241593349 70948893 179444537 853748349 862559915 272129579 839754273 508526275 641634309 784143284 693607976 949111360 280440638 355338576 158478095 804042652 922584580 286869863 835401479 37183658 378340916 724062162 59310369 891370687 877664187 468383965 162278157 988852542 553038128 250523848 813374340 748181289 146085533 682249923 706432192 562892335 210459367 146902189 762411400 150333616 374244109 914800779 41363710 246771779 103783686 469198034 200550411 841619869 783984238 751025262 357288903 256752359 670989236 854877424 980825947 918717224 888851727 258630157 784482696 398017040 922366430 789995048 214087040 708421307 913069819 914799684 939221237 794359595 868297495 320419944 932861330 56603570 670989236 299178263 993178447 771533635 412507530 900214167 501410034 669589029 970277460 132617182 123051382 405665489 707576221 696744480 692798559 155309096 611343915 713323184 571070665 344883570 620724040 95549705 366789858 888802343 952822401 903045446 836162925 632005759 680155837 122171183 1042822 218471557 731656708 430153345 190781930 313918681 26914402 739310584 647960661 311355865 795582298 694750467 694519273 993140643 721531620 959512218 791916695 118758319 846686598 263222280 834041806 551508513 465182450 623397452 612865330 234792330 872590119 812277086 911224549 352080114 665783268 992669200 132073740 387833708 303045917 10057133 354647330 748580069 421223506 91287091 784448158 24754686 105562963 232360467 623896520 773632608 751495464 918282441 963705456 703037625 843937772 69633301 45249984 715057894 344124608 470086927 902992124 26219843 488899907 690811354 238105885 155969027 939296942 931623870 293139299 221136926 886757254 385068766 785975892 311499231 979539456 149260991 464408328 336704159 26177273 251191105 903636210 72082566 33084090 852070480 505574994 673207179 737461274 309984121 618892505 299310368 349504420 579532543 797372500 826324192 885159080 124696839 460140911 445118506 847490446 295075086 428541489 584907744 23077575 62404982 880446850 691296089 931944601 247943125 930984251 825991742 770540659 39365945 303488211 977100470 764702366 753763390 696045732 366037219 59322735 953228620 800525156 797701610 792255919 404578965 623097614 802831834 172201229 342827164 111397582 696107689 884719983 255302978 921464389 188476721 816588234 713820362 937571945 667802993 608118613 735514190 497429672 565020677 118602027 667079137 50311149 57171309 872586227 191788623 550201592 23206402 101461576 317908109 43790370 322131152 241702967 975097155 457314601 977647003 320365193 10554648 438654348 665214015 703108316 771044149 945385226 273153186 796487325 812135559 921182519 203141505 778445902 862363198 928967304 255156014 941901876 100539910 787657154 979322864 984167420 52669708 662083137 503320255 574496357 881745036 754803918 915865780 966871047 678531269 834956241 910034375 831009740 765186885 721813235 4723219 72223978 883898437 539762433 499744674 284132822 948621626 161415675 827278861 885421854 272075009 814649157 506744853 233387647 838239711 937740316 962232081 999074708 865139238 927156262 635844733 144702075 398142736 148386061 985358314 538617256 818860561 875340197 926360805 703366314 521143217 175867233 803678923 979316164 83573966 951021992 83018459 813894768 914928653 781925948 903913231 18119423 736074125 909174021 385509432 500868966 847379848 738544529 733964677 704787111 488355560 930507599 995900794 699700912 922661716 904383633 167222921 284257834 124518010 846270122 310878690 826441142 426608234 155050340 734324408 669552356 479039404 685496493 342603232 622497196 720301395 930038234 944379600 81752104 413892959 949452844 165311442 858727401 950634983 21133162 748221906 508293796 771658161 696456572 142481078 397194714 858141543 763471255 700922686 148632195 234342376 46223572 672968977 128013047 242498147 375718637 797322451 195658583 706079337 712034210 919274908 745263901 171150513 440210802 818438198 908404274 628558198 643764462 798881342 833222407 321785432 351483995 702956570 60245727 935248879 672082594 788580156 2202352 893540002 755412265 835776600 342153333 821989530 834681016 439800311 88783542 752970621 236860889 452016993 461289132 782418554 144635591 74771643 751166703 135980948 681576041 356343324 389260010 522758359 722434433 325869382 699198542 540696366 768043987 511571405 743116298 958413012 117759155 676115889 768775732 626334940 895495990 12530548 829689801 285523093 974545926 82897521 907362655 971925194 781130465 706988676 989943591 704694796 774047033 828325118 450868466 515191003 495672910 707127821 17809015 631468010 896871551 642656066 697076583 146136135 711692741 897991174 842375029 493811159 819927729 874330898 317779569 693324004 18095003 694746104 106744802 655767615 642822427 905917798 625842057 931544875 310195371 116345126 888233009 237836180 792872481 876482734 858901991 295744846 111116634 868067541 847943795 969177305 535805902 575969538 677754427 338767651 657903296 323387100 823709229 81375228 916732334 709566594 472936340 778368557 62411485 739370616 456621190 822820541 292428311 686585067 20191697 790076841 480374148 836957442 18719405 762942464 848691670 124063728 670989236 311694971 818133639 690087715 770113788 863910684 744304708 807581412 801306572 882416867 611554338 769260050 986859810 793073861 579872784 678482156 289154490 426256230 786231960 953380577 710349654 945493583 874847329 290266757 721552298 111465608 653728625 153465003 911330722 914149924 423194279 979411206 47287116 570459771 152074958 249637854 52323051 884871212 3539359 437971074 338576749 432948031 725108946 894590836 239767257 941687103 985131407 906558827 464363373 718805911 769921888 224068181 269692188 851200292 897401809 706916428 676903679 882437856 723019802 648201570 805874861 167200437 764976404 735546894 27612201 683711949 801416332 897477811 682533212 29001331 59481597 305253455 683490848 288811642 803624679 657140735 735835315 298306658 716620327 670989236 53895546 960913928 784905157 327826941 415659087 861040048 601172745 92619674 913177832 948178719 725040423 496690596 86218170 493124215 537437804 951746836 744981629 719112737 750177135 864130491 167272182 802043908 685292629 358057720 460418120 668192330 857438869 977397607 204494924 694301809 969213615 482768916 847552289 565090541 773408007 721988988 809136141 646185218 8945647 128408172 519786849 252090423 719012326 261201913 711744008 61335504 62963469 770162490 120035742 739448737 890573925 545647102 374959223 603996804 843674891 220960040 486648459 29172533 817538951 847303165 482420808 660281247 826739926 912713700 174542404 532199325 699629249 291016062 755219191 819591685 152390315 226465994 320587082 898609694 337968686 728082844 796959940 881294047 479378540 321299432 604377730 307395539 699705254 167868952 844752535 799111250 702222630 833086431 717451172 952702491 716996056 977707754 557136825 808358084 714078437 327810358 849404013 628773397 392650366 652247956 969146417 472766695 885837028 866499892 914554992 939626203 913944862 922435615 692858656 99620939 200738738 626876325 275167822 303792651 299230811 200832140 773435920 811297314 770297508 920206027 608221086 803821157 111180582 670989236 959705266 375388873 109758215 836088010 920583068 715790603 987607168 619735492 439392512 779228075 787323406 870945355 727256054 878225198 925952228 806048242 581620912 126935744 808191718 166134386 600029084 167854186 518934932 298512876 934024501 858710510 770785664 938491830 330461887 878900679 649057591 703369056 404727588 207095489 754918298 933880327 728773527 210919412 914353196 987838181 549413159 393625952 844716351 173365426 644354879 344241715 456240097 901357882 359310241 467566379 578906618 55207709 750381610 689242377 738160392 360671811 602557928 936129465 742615459 820685423 844666173 44461048 257273589 979849268 929023274 742869886 401424518 230973564 82819380 127990756 30433810 979461390 773169864 617223569 941994951 862464329 777766301 949256503 672442624 692079883 698584496 258124231 976311187 135923887 953842929 622136797 219761017 809967655 888977616 758540660 282284533 482473820 555023296 347226992 696719242 237735875 52348333 764503112 55733828 929741484 523580704 829478825 814159976 821623106 370908353 929025244 398527928 293239080 62841580 672914015 659454062 707117871 353862469 716796988 450708734 874674042 353348300 708277688 453789419 983133678 703229439 253132299 28347834 746122266 979346607 325552436 793777697 787127215 766791789 815984211 390387685 949326606 765492639 496459976 777266304 761387868 150460809 981335316 940098967 783961992 946195668 464531124 494172243 881841908 300436430 649369861 408057407 698193664 198956026 390642880 57144249 674908508 400502141 753931013 840594119 732338151 971274027 101974834 850270446 968288834 594099219 449036852 315590445 67945659 747762128 167070386 1606677 690680342 65084762 259566204 145733965 900526615 344833486 857510627 85039331 443464513 929755339 609480768 440406155 844288548 362441914 491382970 980968167 738389400 941019212 412151294 392422474 385107581 177741863 383717130 907622892 915303795 993019395 970938674 999658777 934999677 881138927 88673985 911186822 426697839 898295194 439080719 419709075 16498983 698422774 355690480 547780666 30883766 411446211 953385527 678175129 811187126 712057034 717297897 747493079 562410488 67132797 622877168 619700440 914736141 247344419 395393608 94816520 266653714 84504709 158453749 893908594 799167742 660530607 346616912 115390451 919297369 812318206 930531554 802782470 690782842 354293471 777168325 484893488 491638889 476057634 729430715 842768711 299703139 325132965 649227401 654934252 195561575 688784042 843359288 234121171 966987977 56915841 132749770 715232774 899331485 881788346 153325545 645972957 826052288 237701711 679978044 801619737 42192527 860300933 733405932 589359776 823454475 884680372 777165806 471796314 915285152 977287448 200464432 881585330 741520591 973105273 786534412 8333910 695033723 470530092 741226011 521561925 479776023 951195833 908868106 822487060 660755371 83972171 684722147 821554726 983406677 707346766 962403384 117225340 815993462 780603197 754038372 169281544 414481921 757797113 851583015 293415227 336872612 477224245 732556301 930256981 39903892 891005551 219793092 580269692 467945727 156671026 970994192 361605774 85422730 644261616 552894895 874783974 344158593 719576431 504600313 948027037 266285867 588371720 788144144 721754159 874169325 277467627 520946342 877449528 671307149 180043699 94336706 811485697 923196418 712215597 14677683 572704628 46077474 921162472 744079800 875770581 446115648 721796773 680203816 710685633 965354636 684908950 368047848 209305399 543198255 680188636 206180923 339913944 306434086 495972054 945722213 282428384 134613976 332283090 150657064 409457345 974477246 71970261 440434856 486131280 683239520 96490349 883721068 963886870 841497595 975681428 884781946 297391384 878378817 946123822 509695722 784757914 287718810 789555373 603820541 907895585 985569092 370734445 717055564 304737337 348291671 700137157 950145072 772685173 838092471 77284385 797815456 697566386 57867839 921624982 560989863 908645081 977132660 313608590 174142161 156915754 985329324 863068147 350572972 398369290 948013017 162842635 74543618 61966161 17784103 837604894 799979024 202254194 829249463 799914137 980337093 300275656 834487182 806873890 965421122 995878539 138716224 17012208 732918274 899863191 147794446 875377261 784928822 850349852 326351774 725441319 42417035 979636378 271598633 270624477 685847971 267935009 758237330 959850060 561717784 778215468 382827282 75768702 880258965 763824461 865838545 969656701 703050601 805962396 53739244 142506746 883718662 889786494 572905632 804761710 134071224 942818771 250805302 831838272 194036567 597220720 850196794 219572933 516338906 458627185 722294468 532881469 652746656 677877627 336641182 358204465 745049875 985967695 219996641 816427573 293454202 721811594 841974843 521583947 985902338 971096925 271583024 805545447 484747695 631345832 812496447 842980641 873615376 772670102 872661390 324269143 779427627 68289659 450834922 976036601 684502611 945563962 562497511 987815500 707019741 832418631 253546525 484549052 819555610 956390274 895299441 31267577 717150514 808274426 812735810 463489483 707159186 559194256 846604227 823467248 979702886 408886847 632050013 974537294 151678863 398180834 377425490 986155679 747733352 876338074 384007969 268055421 908085661 626063575 717753207 973336805 996778490 790655780 728468986 285635998 79105523 376193013 184489553 911125082 474582980 81300933 751908753 339233239 752288887 894788963 754198377 974598731 36986206 8355714 951326707 510709831 896893734 340494073 763903869 848882525 815379623 204014655 363686603 139972196 390588079 243848919 346957371 500593171 515284250 555362876 40516908 873912745 670989236 51014456 401185748 250007764 60802770 471933919 148119621 844780906 531179063 107063781 348513797 670989236 942246320 761697091 686251302 928536870 512431254 333884372 998239553 22927571 713940408 398706215 234007088 898019471 938783622 976905522 225291901 982766971 991422889 496319082 849029938 341201312 445720221 767187246 73816496 906109160 349869130 771736872 787698097 774572128 670938178 944533648 944710118 129061679 818901179 112535428 35116731 433534226 155580153 775341693 759823876 604993500 493173807 874573985 948837721 759054372 761375459 550243268 118785194 819914795 984034734 934291018 905275142 518354216 961055798 603045417 998375395 57349810 21287251 406265333 447514045 876178335 857093015 801180256 684017453 714308490 903858271 931862719 168718554 956652995 667304055 838218819 316258935 183027467 899296425 313673213 77751630 940647050 810356701 970331259 778511628 732008576 733383625 958692056 134498021 39484482 833544020 824315328 719896302 545726128 779784080 884517921 488825464 204450830 895755153 863198620 549263002 472973521 988732983 247660109 780101709 933382541 833474151 734973145 766216396 926824774 427541292 221300851 312272849 513579903 541234634 706839251 655404288 399562890 621722251 626648862 670989236 213271103 916200329 673884557 744046711 907258324 684028257 222956602 451600861 855810961 814328151 253271659 509228829 751591465 687572313 75777160 693256525 43132055 825671472 876216690 721290105 26777745 705378456 677930622 215056189 882243840 815040632 805730667 456675598 926439909 316718986 48096942 964684301 841003303 861584584 144496144 762930454 640928026 173593123 84796821 762464104 7434384 422264897 493826867 427623665 865473422 158997203 762738957 125447199 654967273 765841437 224131264 23696909 179956506 531332874 474714471 936221322 322580498 277882694 379595689 993754444 839524257 190851703 506893271 751913225 94477317 488590227 293063722 825968905 920976868 941925658 494910702 389985221 742908264 539413469 57279174 879406708 489367625 781137330 903286785 690254985 688220684 797933921 215627584 13140473 467006528 775993128 282856766 812060249 488109463 500673315 684672911 922067074 520328386 187539194 817141350 158703925 343177448 261639536 670989236 727256237 12295115 58920110 617134058 342883684 782651685 955545821 283834751 710866282 380078447 848901883 695375696 184801979 28620279 980078802 240766369 761662508 800295708 787705026 847650449 770044813 987973393 701997151 682166017 964553897 698942111 451157737 944945193 864252440 770217336 141594206 328384907 842668074 694690190 707484865 311618521 788677769 429115468 678214479 300328137 806076170 719263584 831725219 858727289 483894468 727127557 363264189 182887299 393084232 810061290 267534034 913817033 627015255 34616032 515530495 811136024 690609841 690223860 741234059 901570286 488191796 869326291 664995895 50715660 599898955 69393652 879522206 95911007 718802920 897041073 227035831 748891069 889745312 365570172 35041406 942975179 980349299 702882702 998761934 646458237 915268197 750153786 461570034 973778297 217412298 826564449 973724077 264812718 874578323 748984596 336866540 957187068 15747368 505998027 555582856 174853636 752172560 190940574 200407769 976279127 636104860 600973856 527130546 243520234 327833807 225228720 983413937 375348758 895909257 121794311 459809417 161021873 148857060 486435821 460731078 215085079 888438666 557455145 413858193 687897952 216333397 800857193 213446922 839014147 766944212 624679948 321313474 313677937 670989236 93000898 670989236 677780606 143658131 181721835 302380736 286950309 654661022 831624070 154101657 374545945 509365963 435736670 115116295 951323541 319454087 977198253 945017689 425699427 605339089 189444774 872968135 118865536 689954008 961081707 331793391 989363877 932012179 256898630 370302610 340511463 581827858 921498621 177865525 154774592 987618849 391833718 344285945 834831976 364673778 59421319 945952009 808854776 679860312 826485181 871753094 550183242 322206943 738734640 808192187 755599659 797339861 762906739 197480477 287965366 682720081 145104803 657317829 351082577 796858171 517038936 854587288 903851714 688593734 645295333 772290344 967543555 437635970 951899150 730922739 952205133 289870960 732750245 992089277 838987741 897502855 834046934 403390463 852386623 700965747 618000933 954133235 767636002 695338568 106561518 145781264 169739166 670989236 569219655 890497895 974506901 178633027 794099419 840444861 231264991 759297760 670989236 720105741 395083880 832996187 437231796 601425823 754281140 36552929 390341425 741489832 952780962 945836365 510771386 725867703 151502915 27889829 966879447 189220659 480829960 997211107 404934556 133512180 812995505 45250001 509937507 240940040 63787385 743967274 764305890 466369347 145173117 862635179 161599263 484820229 804937188 701727259 182954437 934357170 906745176 992810195 981192899 234169218 418822321 560886708 136106690 133241801 971607532 118760371 484315908 849308135 833771365 675516306 750532100 384801887 739494817 370012387 681841813 895102976 356899644 815439751 57477547 90249408 527935322 879995092 621748883 789842352 297125381 892482249 604562878 168361026 794682903 463450642 409418287 430265638 93285621 858462940 834000278 445009230 712615161 815044272 195233971 721934167 462765153 788923597 524965978 894553096 670989236 613198879 722371156 686740269 857509690 216234379 446148021 336732490 641762177 992094737 83917144 726052199 265718668 722095757 420056449 946077261 414844660 286908371 932722382 570834911 961374901 36046726 363236080 377749221 366988707 77927323 726024389 776788747 770247930 753037122 827430589 418970290 510093999 734202636 767584883 894272139 761640678 255011678 880712684 950389601 956336321 266791099 720322756 569482274 982449217 272342102 251843850 694733183 560276360 762286120 698093727 899069018 814017196 795032138 815799490 460502016 971296574 134625328 724274430 827890249 124685365 911043817 205517411 236595879 134401779 701108598 869133110 123533947 60425186 84328894 1356363 526971352 299290065 989877011 959150756 475450391 279726356 670989236 273842641 800638989 689755243 866686164 98356388 407937352 368420712 389280770 826443665 548410904 165622978 890989739 389958037 3344347 739183287 386915090 134773464 416276174 268324631 381902848 572632366 675298494 639738674 344162843 935773900 746068267 895518102 828686972 147267281 298388612 835327870 570584552 965318102 837714794 650256680 143803804 221757044 867250133 928039807 556636458 212116671 881967780 771318897 891835945 187347899 130383273 834191846 435419066 738444215 641852527 611791389 442980312 221027967 958530932 495792647 17365333 308481209 876824442 269914447 341717093 11521945 506144166 884016411 761721471 117124847 906899714 794740791 735656431 422803901 545280701 482826640 558102426 356523607 330524502 30987008 86977841 214149261 376954886 341994703 204233392 611129721 947664266 413763414 733064810 104766892 408591840 114554434 223188441 875721410 317286541 971926574 871438376 964348953 812876150 606463095 160282878 666293026 132438419 838952409 99633515 540066315 117184623 675335293 794881400 189998535 654387478 302150503 73193997 872732218 160893599 680982075 941556975 775406939 602834341 816055794 712727959 171947416 239901010 62872013 842221704 902649231 744883494 740292660 568669280 787156266 910727937 893103788 747425251 882499867 644294904 798103836 489577868 920069693 329185098 805383277 849015662 886535764 935994787 915906162 366405689 241569675 519351319 339769971 19212330 315902334 862131901 996110577 169746692 815842817 938940708 884008267 762052093 742308740 543381413 698924273 861865413 860472738 55481708 800734112 541058088 735747861 880000953 589720961 660841820 393903658 658394573 559878408 98145322 281762472 544807069 859188223 431263351 942644478 918618902 789898416 895827689 888469691 923879129 344704059 585161084 891646404 955326170 882681029 721043317 627210723 900100641 877071403 280490033 905099564 209453228 235006392 145574364 484997397 29730534 453944969 31370625 980915598 250204527 541346205 196305415 589007522 811620344 788281023 582325455 343147799 849596962 626630838 761817081 974841434 644155274 942984272 837375171 304268681 221873483 692968355 126538972 751868236 189080546 968546356 959187768 601265246 153591969 876898556 801851540 676472342 109432691 381465418 671424842 657612706 928636506 759164129 540689633 708817840 711717495 625353716 886297968 252543567 31876666 750134859 902459114 4254855 802036391 734646304 929117784 823459929 75178066 752539408 509357883 995695246 803016057 881964374 919886003 248239397 718024832 750994587 189053081 656016257 877221291 462339947 623337036 841158952 670659084 772594480 849719450 365007583 437187006 152713050 781171656 415069811 670989236 683103008 709379601 192853004 753977372 396835369 795474373 437883251 677504818 417158748 403676721 961079653 993682025 243834664 770785300 934800091 242349967 413441177 374053979 799224733 172189125 222477940 909371196 27004095 762801548 873060436 51411038 759666997 682559448 196595629 927360856 875824470 98170427 418162999 902218923 59324727 91988997 495365561 127107138 89640013 237737750 449304005 766987625 590159462 703784949 275181923 924762515 22385012 816168132 142825768 448546883 900395157 817120247 823067544 706553718 872209026 134178091 481263465 850205840 758359915 884800865 695841939 860284015 120103719 741725522 921036872 958381959 653770035 628439590 92729544 329666065 800449819 927879722 790047401 510283027 625214561 238847662 870223621 925166935 152870599 905913368 775562777 5875905 858072931 43882993 937386876 670989236 489417934 818402179 921061252 558260122 454383953 842257261 697255351 819523359 106486393 665741984 188174468 612859850 366465431 816566605 951560022 752633097 852751921 282280199 686159231 674976120 675230442 117413632 135464191 547058094 764679352 854571191 664282777 68214709 981906419 592305940 107883891 877684721 99477361 313522802 640997481 965388106 803671698 992810913 860264844 651503581 755726861 459322403 460572174 976814214 140988993 847498239 146510741 741508535 837524366 917012215 377972775 641189015 772314427 104777707 510339746 536596132 480374935 893255692 764958844 198623348 381038784 236113198 66143827 998849677 697505868 918070944 752054054 915055735 76329651 206267529 117699412 53878490 404910053 409625515 798892714 200718893 817243170 837062741 964528442 707407270 476467630 643601147 741791849 601934870 543327089 740061355 950923773 342137551 89358206 131655311 786543691 477025737 683519243 834518599 670989236 879382469 911948231 439044050 998043120 920200097 770253744 879639426 403296919 702016318 843647499 674552022 993076079 107499019 107285993 61273646 272323000 413769390 321232297 112950498 500574868 640316625 858154841 96470073 75670720 115325185 523920214 597074715 237331830 977253984 20078110 890145494 284338281 150484480 398021132 165933656 909831027 851755055 555538515 196557044 810102338 820611523 717071851 888623796 748171279 66974337 213239663 278691286 834548763 886188596 961959996 816510458 678558089 180873724 312841341 453838760 803898837 811809893 683352747 973308992 725740136 627671020 903444857 212520284 834207919 384008388 418718203 706713989 849802879 850293864 680248926 527297469 959852510 667704371 700782419 169877850 418553840 369313182 83994065 590375411 253284419 324736282 945213177 712051925 227911661 702364987 306381904 700222979 348224587 559690982 172180831 720544692 941906498 762854020 838513020 907830819 144639135 776261248 213010843 318996334 136068301 563402351 295332825 842447307 252947756 240909153 591071703 389120027 147415683 735214644 75761092 876862606 561970967 583101982 75427085 443435680 120088192 109300867 637459107 833034232 687262850 146070377 431412137 771061501 605259997 299890702 972863139 340692400 830147034 880994094 565769937 810154146 577345025 647832718 723440491 174886892 883320238 117443014 870531312 324344839 951011619 700162760 46072949 37082369 787611450 788396115 600064814 442465886 982703544 839510234 927793176 679547427 683471264 895641818 697318329 29313576 642496469 884045588 108026892 954198689 642017572 49692270 505678421 763692081 182561085 906532974 415125831 818538815 60819551 321375992 704781482 444575036 144558865 57495227 811452227 898879739 59702264 378121227 903712260 694699816 724829119 985165539 149579451 965999184 71770536 499395472 971944993 733621035 829482258 565562309 706569184 188964479 363396611 297180120 688387904 156271829 926288329 905696319 579859777 860051948 958002839 987604551 891691128 720434179 269049136 816347283 854657856 259456091 691209926 851364587 925817168 370853699 947303749 811442643 902534178 144623120 806559660 300586799 115506088 382900091 846910919 609403623 442682924 250087380 543852597 833265384 245382605 724383728 976358847 920059486 495912553 181295488 465522087 298557838 608262522 569673229 917195936 976130841 661266114 684369766 583391301 834349175 783971327 455368060 110187148 935701180 966209594 682373643 767763195 875186801 989637357 208390913 582725937 732841875 280937036 953437452 723525754 995192376 320640879 781756363 751759338 902503299 978942066 864515235 707270594 594947826 136241869 918648047 50403675 693907004 253810468 960458891 773467582 941594119 847741752 903304177 970675934 866391542 424095675 169180957 948058530 735296805 864311130 825694733 795599773 228450084 123506279 886423111 789551343 113911438 493836245 851465068 715072449 889310458 485868362 561946234 674537081 863900998 875509515 514279660 529845739 941502920 743116656 51227507 83855490 779302420 110832403 708095373 892692749 840394705 726315465 951797115 920261686 575838036 728686669 877353179 354719995 988262017 141984506 789782626 145144340 886200218 266639852 698151925 520845798 490932299 81860848 931213795 678165047 42404084 370846604 573680753 987311973 286895610 796069340 880645001 274262490 863986032 286617666 17724852 891164367 648102163 222459875 920124707 35758068 693139615 411684610 819460214 973533453 611775408 778948320 955520568 718008796 875565956 247583742 386362764 27942721 755843022 577040990 980451638 582375063 124883237 204657127 991378926 316569804 670989236 992090910 62352021 873991087 333606416 218884151 572438423 773358216 623935514 298343793 344128584 991886327 762109544 710278922 42286735 907863171 449500539 37544231 734537684 293853049 293185768 866271954 731789848 539714848 293328882 380610921 901115065 219986887 272869052 726290617 844902134 410147468 838234294 941293960 126253567 673824008 486167200 465732257 921347971 450152486 856432783 678558659 80690627 599752073 252113046 351016859 789665135 67533667 943958625 869310362 2822144 812217357 346671259 848850367 965123345 947732014 802521132 992617875 166019818 612959166 879849929 248852632 227796478 125434704 685208709 402639705 127171841 766877935 991673066 132389339 733582790 789055951 166330131 812673207 332764078 595975430 918221228 567335335 247401530 530433760 478945306 536954770 388086217 657689264 804204249 465424454 875245025 852914060 241202385 983583955 659873811 895814060 643320189 412278400 926211522 405638801 256463231 973965547 622525078 917451191 186016835 684352165 806024265 18989360 589412900 760786240 510509384 854908162 448460325 409995256 381011612 287862115 730864277 987649126 526558080 544008211 670989236 693667720 704295287 132536324 780502262 230499889 516179841 400139164 776798745 645920234 910397547 712828308 847166313 490602049 704253437 367360269 110488064 886285419 852918794 243101840 482200515 47884143 729639350 863142997 512534992 977906306 4346639 901426297 48994521 482636851 743996029 740937990 723875685 188035530 263792394 34137799 976487991 340242491 346897240 114481494 675788664 922897117 670989236 984488462 688899242 282818092 904364280 18613272 948063695 336938077 926228508 348885084 510146677 366185043 759767122 880198911 114561950 870296541 832564756 934192776 883301386 761311350 82102708 868176394 795624558 965378244 132331491 241496223 685998486 720219033 730204533 673944850 538657070 938899558 123843391 826525772 630253404 213403506 876793572 790946830 985925573 136548128 779184680 807946683 532841123 388434984 940311880 62257608 893473994 898346992 501578261 408628968 796261376 929660858 743074285 929100984 823102900 133424771 771164619 452141033 718404199 847759277 266963123 502573958 903426519 437246595 11733384 538594709 722028517 931635730 376847330 665157450 223334752 130567243 497118750 811663812 92635516 704165950 432370875 343204010 537288120 878766173 797926555 2035932 784097254 209809941 777716620 416135982 406127445 386249121 762508061 654509038 865767831 45404069 481318077 154213099 204435913 214816598 786614089 680811827 604868140 782692567 496712673 507037213 354163264 283187340 242651814 841337171 997059184 462274442 45419645 635901458 624377693 732132280 536318010 937607097 783280748 883897314 439687937 252701616 469296079 777517705 816178865 839501570 720038959 40166592 387282389 779864476 72718330 338603097 635178310 386439480 115651196 774511780 789117172 859683498 544881424 82832708 158743884 795247489 548084418 896836075 229392678 941056451 794642033 847929030 992870968 679120095 212606127 995181942 547164569 242554968 983201054 696973198 886696108 716787352 763710484 383424677 365380095 671513587 243697275 684918424 332971955 990144309 357088072 629052557 967322519 81837980 198159937 260824388 964478437 36291055 773979123 849496056 863022672 378698865 839039714 777497858 982347512 201594551 199116734 406663950 651437371 216594606 582524738 401861228 778493675 557793974 621066964 668525647 718626450 293750090 321592641 145421557 949213487 493483363 267979321 833555966 819522855 12969718 670989236 916031461 248721556 596393549 778319855 257358872 808200684 600282146 865567104 337456101 960333640 915805997 670989236 717419760 534765916 732624761 500869767 310497945 69046440 256700298 956888406 610937975 244195841 978943893 779930244 157361427 474811340 914582870 447720526 700791937 95048734 421411896 745872542 777225852 12447046 411583842 515088058 938572404 568269543 828731522 778863000 768261845 898058188 716081834 111362095 924936682 699538721 491230104 478031083 395224039 161722757 981898172 707829017 140718750 99083153 57453690 228922284 670989236 8769076 314035958 737436459 91012609 755796742 846843912 919750705 979028172 248882516 565443006 705430652 258293944 887241788 347051567 734107878 839692407 344119288 529292460 52691407 707858958 933845963 899161604 749545342 21808545 937533472 988961976 852414895 466064172 813394141 901928346 135190699 67687038 58562192 645090962 469213204 946242931 839695613 216618521 705971186 535643701 709440786 845634969 965991899 813532717 962986482 830103396 996199504 919527268 781062179 431652229 905686962 7213128 826425385 973868084 957920666 756641099 497953416 736335558 199810813 846372519 864737312 371356745 696753309 975340906 301496569 369455818 327338874 362363478 437590496 62519618 773033437 610621095 586867373 789757912 394656622 971736423 863174551 724384822 273365830 544245911 800586095 761719625 887441828 949057345 141845973 723070245 601957596 999330725 634808877 943885202 151758073 291394872 793381749 435656385 841207350 254925474 940635833 99371466 85132469 3166485 545490274 653292728 139955098 539277382 915790701 319165583 135972321 638999767 935128626 718865169 823073810 719002361 249611935 952780349 726415308 381516621 925707763 809037189 862094130 401305805 243835747 533200752 692864828 931665008 375672673 93587061 954464227 473870826 628212764 859403760 257913520 280108814 670989236 522930700 540073735 143144824 171645751 867058220 840507866 761110218 880131573 322207636 670989236 56322961 919412530 535835117 981178378 644421719 28643983 625937956 143955679 13353405 727904531 109617363 554205878 558344705 47866767 187692423 423036467 845795249 736930487 743229451 661407092 755676863 234395429 844680363 922035429 741719167 708242055 744231485 420497618 670989236 706437658 725359920 428181684 490291957 748338089 755410858 810089545 505703829 236822491 716877047 995063125 12538638 757891023 105047978 832392411 450634778 49948169 50462785 761964266 790323178 716356821 987980643 434676964 710214517 21711153 657851121 312868045 859057805 705476714 6027182 233866137 862704056 498110558 670989236 151393979 85936970 306504099 966901088 993910797 891944897 869003371 601284334 785758630 715464636 881089759 745903969 461123081 782157353 979793948 899980061 927107109 722634067 655439275 739097715 103986193 657666445 370790889 994242455 374195715 877820315 905721369 820652120 367762051 874137407 670946304 293832021 320302173 524196014 662078166 499710350 904151169 181077504 867674465 442598326 886076184 204929893 671725510 693990434 758920926 695766857 784174156 320829732 668617150 703544128 559209917 870145096 763635856 351667121 4291108 820752121 635434963 618095724 341323060 993322501 513484880 943548320 797537900 780007329 933168310 665357602 508636076 639774925 707706518 940901847 386212577 988200886 16058888 543922644 607697619 811508606 741956528 356892647 495340744 610353789 119539382 864165884 433714151 740223531 8599652 670989236 839073268 876346611 29598533 716149369 822984271 810103363 449077768 528795040 883930131 596120678 882810163 271179572 528163974 783753583 982877834 636194922 984639538 815053636 730637538 971468019 874556969 842469835 993781325 148342394 983900856 898457968 712958986 704583829 322728551 980753238 744151607 469928546 670989236 562800239 978871431 300005728 428164393 76685306 764659425 884531317 981323094 117971616 51123324 333465771 853246177 983876753 212476880 198534253 126533159 682680895 934314892 952687174 532792673 736258126 670989236 234047609 233443339 379976236 999500334 981095891 25405805 768342933 706122328 544174050 988448484 599630554 738537733 193099801 701471252 997094463 709721127 858527679 148810248 162682159 920396699 833723416 905944730 889793711 613586025 919060263 720862364 94035643 365984534 222845555 775366124 121455740 174316631 670989236 612371413 29275099 688215310 760728601 289208712 775865992 722463008 677848452 860555364 549833714 955454932 798922251 616033568 30522800 861036303 670989236 178914945 751499848 683893256 153768276 121350019 595039929 709749029 945439642 827199472 941883075 747194473 91360394 742946633 828216141 481265104 585339622 869758727 165629417 170939242 770483394 939077212 819239003 138789615 909853026 410339256 83092923 209558976 322571573 779698966 267461981 682511254 11663386 687484491 674114343 712405652 691444355 353915438 735134090 697963186 312917177 788171150 976054691 427572176 903306418 938423444 946801613 336240344 949056988 753318802 916769084 259393852 191898867 899168744 821425628 308703510 853329467 440625861 519124174 544339900 736641900 560302175 651943718 869784671 455204214 620354948 892889271 843019210 460039522 885566084 210946212 843240540 954425823 215384204 276965586 721629936 96243652 943821377 818854772 357269850 891482181 153433448 331155171 956008220 763549224 984961285 807518157 556683441 68028262 116762112 837358758 38883627 973942747 932992333 839820840 462805356 801835571 734267368 665066168 834424567 925034928 898580148 218074270 814971523 705606703 400780179 590880879 706835362 843963626 719804640 62735726 864493062 959900970 619344944 941781994 599516710 115492556 987334581 805205031 770098703 524885795 189216051 746006139 689979912 307104671 800121275 364912055 680301136 31860640 819430505 339691156 870047642 774700991 6822372 183783377 259004739 379576088 728018586 568513865 896956013 655935342 986886750 276062614 832950559 184484565 303333075 876565426 895263847 790016394 176121071 217054091 944304428 980828578 747558086 216630081 905973369 301690857 686170063 774654270 595029939 672731451 969458808 159759237 172269631 813709704 6832094 941762413 744058420 726911604 998204271 177769482 448829254 799657862 998780929 737262869 352902330 751350010 723739521 51221547 886669010 958356722 194158213 818643943 157571767 820023864 905659631 57888507 906976362 841108719 89907798 930270056 417869896 115331368 551151044 119312279 978460669 896375688 644789963 406290271 429489669 149363988 852161638 559268205 979567428 749821250 540981660 477292397 724356795 957099682 663464999 558273449 947795207 792603453 672258737 791238358 834408329 854085766 899963323 865227677 766118505 84806962 948661338 572398334 964598227 274837888 773701095 623674044 835433174 746853424 904098650 801143997 290300268 940684678 736360496 670989236 58398725 676624557 800180759 335130498 731927451 800505725 770076143 986999448 191663757 468380592 986045610 250531940 757747571 715377224 670989236 880295358 959950011 585210160 809043279 675729361 527038597 292605515 115851425 345451486 366814720 81790241 131112722 852858971 748999746 728971540 514213556 984823570 828772376 882738401 277597694 159043974 56974116 92627631 927433510 61723576 942268319 304692608 207191059 293003633 151247362 228357531 364898051 113298355 198889485 750243056 560312966 979863152 423422603 712629855 816549749 962900591 664008677 238523084 613547766 806552487 934666454 49469107 707837630 512469099 886407166 120739509 165840009 734830792 135337525 376514911 681013631 445200581 702296608 39824053 974442924 917629085 562619694 943075377 832234018 56082874 670989236 581395631 458605703 397670215 779431247 359837781 373554783 29945420 220467304 971607982 101327985 592862754 760138906 234020685 700967167 694116380 970744293 800012998 8900609 856571065 333445899 606953827 876486154 679071664 144345734 896648714 928313128 975518122 937856661 138492272 737983362 478286918 765279537 535078129 652685535 676496496 594549894 250734256 867185238 65768853 187846263 812680918 199434457 620443058 527656253 14121681 759594956 428223162 577663822 163149428 600594243 668651264 609297657 942526241 764143130 338683596 877616433 719031032 804500543 217997456 22094736 270078887 237610150 826320665 832596927 639878069 761002758 869722448 903549125 744290206 476502031 969847764 21095446 107317274 454641309 367070798 787987123 925807975 635311300 456729209 939138323 81146933 46738817 670989236 904938630 380978682 906212082 650330665 731225016 855439262 248825999 724760957 18814860 71902802 964314397 208503005 209564655 605899076 836132494 839558411 698185164 315320396 866462512 868051307 607917262 558326978 991847721 564170961 592216304 774263578 374571481 792909133 920675852 716598692 750110944 467356080 823053971 854929094 407808438 469924058 966739940 956809165 684581515 263343063 817434612 905935593 137959333 972351573 713897722 534717533 995781394 544875846 452440944 244862644 433473515 970246116 791665247 211035161 773936792 944846928 594489916 649149132 139312857 513537159 173455907 24735380 484285678 562950473 350474775 162729515 832415073 501193848 783027265 768911620 766149172 831488297 746761898 404125670 906933975 251877436 978498488 493586591 594839414 988714932 869246456 509918308 844779722 120833490 679551610 733903174 178236036 815555837 528918336 836834773 170910200 981972280 926384429 108734638 170539344 308800559 694040682 322332201 974016220 601317441 811943912 156612799 507227599 700358181 819885951 225605043 810864329 555658707 930911692 741265733 388137090 738375660 442892152 138633762 727597611 81803088 811221051 484411993 941729840 177055325 512050382 491152214 791372789 729360579 868629076 915751250 220923395 289664418 475644162 985755710 335694587 968369362 987527956 934864621 532216518 91029250 915648011 991178212 985667841 175509520 892337453 763278550 765146968 951519070 975104694 227254901 458218556 15896903 582366254 571723140 674162580 849706650 970549774 15171499 912117993 883979226 892254413 955749926 629941989 184764236 340221605 281845540 920806213 720401927 734903998 964226628 391351790 342873781 779539195 953947497 690986526 359805544 237408984 361612015 582132297 928857548 359805462 567305752 633247531 889954510 487841547 506518865 888777360 632861777 747442033 905210189 119941422 864523284 681833053 860751358 157357588 883654496 829428468 717131779 609146720 835483517 934153565 498347270 699688610 107752691 152315571 931351296 687290918 61995402 165029545 202926167 846316241 253034074 589400261 840136140 998899729 763440853 887044840 405070781 619644910 868986076 537159933 529051797 768376645 738302839 936998062 81834053 751004151 757523182 778918083 896695741 19502541 734677224 46606245 328914430 866859364 179211954 670989236 442098304 559248312 754237939 411820831 955700884 217797839 715629151 285283515 913585741 344232275 912329640 752701672 877365948 968489123 265371606 909508881 171944796 68395080 923658063 1864849 948599535 820758318 565788799 988539230 744736068 352353360 416338595 28657294 396245525 614284075 691104418 664953798 723236617 680360321 678282021 795765517 913540349 583665999 792625052 695806928 662283906 241763334 832946942 979358274 795216195 171364140 571981561 918897394 521093189 705042061 978021190 113737355 607260605 779348800 734110569 445456114 574213887 43503277 561169005 19565736 670989236 583305910 860983662 887237624 84505096 858902534 366296593 430936631 462787320 611616633 235122126 746859994 19402723 778767974 356591428 707540567 256488382 948832315 624153009 309813140 818163792 591336798 782447086 816620275 31487904 399819366 834197634 795373217 912332452 559817456 997340105 216122976 322079019 487773885 879304436 976280353 344354872 983240627 488086406 707783371 661498518 269707057 855878516 343522356 820280839 888114230 864051468 837830609 915124127 847465894 207571874 937667237 522069886 745952602 527537391 431736004 780402114 36883501 670989236 976254485 610251383 396045194 905729569 681695509 179375797 624304508 805963210 136683421 268144780 72913765 933845475 980208152 569363503 274335590 871000617 166901650 647916371 954433477 845785963 973036192 654065877 652705994 693191505 693598045 613619816 670989236 873124890 775588327 66888278 615541069 707899096 639940169 108141329 726964884 748605285 814098112 216530537 226539692 190790728 261987793 775430190 468500618 373785353 812277473 584733415 687192232 280983719 896106174 905283098 469134613 730228029 782440427 24113795 893587445 923838744 157191119 757807643 696795485 746716329 389938731 982105974 399029165 843197695 264156327 788126927 990917193 422598177 662533519 994196819 990157247 684030306 173442687 986429654 110085682 996344102 797143530 323514406 235360683 694861412 316937258 74991668 13381969 624210090 170445392 756100417 494317576 421024196 889391224 673254388 66950315 717907563 883795836 652979025 167183570 962755358 223688812 747630186 923420245 723737939 762450342 834862636 913115477 749142326 62941067 56856011 7547443 429765387 865709897 85563331 602788465 957372062 959448728 74902156 623000417 867539714 669532143 705443831 933463061 575041349 582190665 762114717 124708240 928697471 666233799 107953254 396538975 861588164 855400197 439953489 808014909 690098152 719777680 456904494 710564911 792672030 816116314 646013198 987003342 37644277 882106331 733060688 841070066 757655764 567634539 358665335 169739079 670114607 856966922 243370636 505524533 729780044 876272246 288757481 881869986 813773925 677625921 862256473 732586619 128468306 358384244 312174873 56632882 848797382 87265781 104414069 470896680 237392321 886770621 704711061 663031268 837406263 724243256 650108117 483073128 315351701 682061778 165400001 864867910 951944294 355648528 193317861 53290260 764907810 33777266 905249467 803951063 834558260 785953816 32864502 886022678 719404655 622208130 62474229 86257778 860309693 118888920 447916924 106012200 446977601 894618345 735306191 211777183 255574116 641121737 698641746 685170135 928084119 226751834 258526422 791829063 991203159 952214035 785918341 11198488 221768608 16005570 844616901 784547984 842454531 311146045 9581501 978326749 209596283 295697929 693360321 640570915 782376102 965371553 526097902 691693695 157915978 801681589 331211083 145049617 779861193 766095183 539983460 892291533 286792808 727764035 365990410 537703086 175223023 782285252 853502675 356318606 597758476 332108865 125526620 300472361 188052383 535183816 712003672 697446598 715349282 313903002 173700295 697464625 92277214 948785998 927034652 947079157 680174399 420634961 995303095 336276613 155763886 212538533 651309591 694936318 604164260 910469402 956646925 670989236 949181688 794205830 953241940 553716109 670989236 807317339 727832943 9532259 909015721 808257181 754702802 930954924 50697781 656772419 606987872 152539698 739668154 975330771 813293536 310495303 31990789 397889955 627505367 691727911 55109399 325732914 676914167 156400219 186992051 648726618 904349553 767371951 386070080 974463460 754859372 925600549 688406114 339787563 969525602 154833168 385406981 996800274 747012831 741076108 992211327 240496708 832423409 566678304 681857550 305265795 388885277 404349436 595138476 236976666 895108748 970458844 604455437 821554833 717066561 939433336 104350182 740741691 558933811 714934666 285643583 440340302 225012667 542337066 267614455 900609578 290249740 264506908 666474226 799413032 161369675 788965138 537034940 778912153 466506904 628725831 861343804 787811250 822856185 453221447 182507860 127855353 96940473 893975131 479049486 844200371 850656566 834161104 652690444 975223074 738605548 895665704 921297000 283552717 885075456 764334518 965044240 652130927 839555939 840590924 499944469 841139498 593832739 319667518 822525121 392253640 837981211 860343420 956811508 319688697 511536128 18596970 729127919 954686548 831370882 523894956 80735328 431203820 123865089 290240234 389895019 169761633 742183703 586833505 728288232 462150177 891967042 862994961 712681257 893568397 454756917 415051343 792363798 793562803 750271570 533839358 473184338 24094575 115465688 986235868 970968492 652641693 982701314 550607045 486042843 382446510 883404457 914940112 927701789 792817397 112703197 423294910 490440585 915829250 662826783 831516368 940526663 923890583 13860469 54549504 832162709 867853174 877500547 3351105 845629928 793046875 748966827 627315588 682376897 999150037 771163012 40168493 629332560 362102568 829939230 80916093 391698771 702705468 816616706 845817608 832247247 707138893 942756712 904616262 840572654 520340299 686743661 853485298 932724350 792658477 774241689 154209321 128713420 222146286 716490391 282570899 495180974 857960039 888780438 307929188 889588460 999660875 669910101 516464004 721052831 308254528 298853293 346642327 464304746 907254260 923452289 401858764 905549665 449781617 22877020 316853284 485594525 823981518 763883431 944042098 634552949 950173596 837336677 13797434 182381155 808229588 983555888 995944068 161828057 658225424 173358706 229050547 955638121 908054263 554985035 743067035 705326188 881294243 702070305 184814653 805787138 362964489 321563513 699466274 94181687 732095456 943002848 128678364 28324830 151288719 682033895 364840959 438814247 573468573 440706071 236581210 841758335 25674534 702275517 676375027 530308651 986196151 766506559 275210458 846527180 840137529 442974160 127934180 898944142 12616443 916286246 672645192 691335380 572848351 838465269 533386055 897663728 998822140 863686423 494494870 964861816 842119558 203569289 872038838 119115022 176192957 133043434 830042026 710651561 682077852 689778864 866054754 470043736 670989236 892715236 935336802 977954720 596803726 661575808 756356111 318926185 859945143 839826841 548136892 872099234 801578248 270735970 942530486 174925433 472681682 464550617 765362479 363195645 33717400 688508688 590199805 571262760 110248480 872091220 738099779 539630357 704893575 737638257 401420703 381203750 797249001 349938735 530936496 893767038 21316957 823380654 973067549 482996809 837818194 961504076 919706966 824309573 514618868 922309693 87147520 502809041 752008342 465758485 736528837 969291234 682033091 176019325 39266597 109887746 490217543 617074711 940952800 977666368 506867948 958679654 655472202 835164611 826366242 488476620 909449070 364626361 22184363 713697692 742810375 102461739 228362290 322212302 860813745 805589812 331247476 815771801 541248696 71451597 188057265 433973065 508046 416644674 59662919 599492646 719891420 403293422 753290460 767154624 442312528 347980632 677391954 863432770 721501386 812278952 188737569 862581832 881540064 780866469 773506963 699910365 815057375 468472154 100925158 326510437 785498739 266437644 500652884 25507945 289715078 979661540 428361683 681406640 347686559 977683475 849673860 991859220 119035022 516515317 686165841 591984958 360077845 39792066 891038950 702779608 896156071 992313735 783706413 54346124 88931618 765504727 378960674 947260101 760066439 38967223 946350784 799640859 994852793 808045667 884259155 260423880 729282607 904521472 615096803 683137297 989445624 482281106 726291901 451207997 992958264 43370535 319968904 692209079 661766298 724942813 899352467 360404690 707650880 725716769 34470756 642514308 797456477 120405989 311490642 800370292 850857251 852848230 918205131 235287777 791792368 910082728 310615438 734051683 895326317 836322558 944425371 842329459 446454860 649679472 858726884 593889698 326022207 140952449 916940557 930744435 953139827 557015015 36897355 530880810 56608853 386523258 534134399 517634034 158915753 756086170 5594531 802029382 784760618 214630523 492763398 820805331 164179676 819129861 382875081 992737553 627249835 860629558 182176606 130035235 691178514 10616222 383731049 598647156 536850797 684098309 566029032 83316544 583865445 938593700 937077682 222069675 198911543 273861955 792571833 907667837 746085010 837368950 86709136 954343014 607324310 846491838 297707299 348350801 308281168 332071843 670989236 711489394 805429508 960051599 425278434 800233565 488155163 444053130 848253732 989626639 295558120 612388656 284611981 833941925 87101366 985850128 629747832 777193150 918507139 993373453 741341366 706418067 716806423 800120012 562787485 961821441 853383353 616581081 834675602 793753275 746142713 166921660 670989236 267173503 979113166 252399668 320595160 939056728 532153405 653564507 735472088 214952017 768903168 810962177 623811193 491626957 453271267 802690095 844698847 119916435 65779490 973159911 443066353 749645448 944520647 800343860 881130330 729254690 38797697 453786926 680357255 953394707 778869003 121321111 870189912 871555735 425278033 765398696 85809271 711221968 639709036 224703218 946991676 990966297 790412126 775077558 257569503 892751695 439631912 576446084 948145251 637794346 84540655 609962309 277591530 847441328 632966980 738863123 997186853 238309974 670989236 842967968 770124630 83236251 670989236 427837368 287792893 351030846 808640034 156506802 583633207 560464385 762354004 868983738 920682403 811431033 48524745 406061882 349232558 738610623 812061298 785567079 370874434 898168992 162048615 324637211 144935799 363840219 871103964 56722339 97638764 858939912 341308149 436143386 858710070 877608807 396004643 532942913 725002528 730824310 913756745 936850632 721581371 99678272 453523795 292953125 184023740 65426179 674106600 986917993 997032109 911437757 914365304 948538038 815393044 875749227 967145296 914613511 747295897 434312195 835683144 809949878 407249544 399127562 177123135 214722775 648602490 691246478 983159268 385978165 446374850 777474784 670989236 822530720 375099644 118247206 82357664 756798921 902355999 930948942 351106971 210180858 998726115 605578090 360040698 476661244 956473251 475661365 205625892 226139133 168578101 907436260 930801999 583879423 517845576 969664046 235796309 950478851 781141347 696425643 321709852 845791245 821696154 766166406 539575843 13233496 197328350 180268592 783842596 691931720 126607195 643156828 915056547 320861601 517179586 730966350 496966648 885432420 960215359 578705923 434704813 811425863 786322639 669168618 266369847 874170364 803240812 971610027 704128487 992621599 600524811 868277209 129669960 217475373 968344219 887941171 277926895 73772369 818173881 715268172 980146327 273331468 7942442 424581971 752119097 639223695 670989236 213402828 863908096 879388894 651552417 753994378 618376761 756834059 974188274 398200257 837692775 797195407 917024388 46281423 257670733 671722572 719358117 770656098 31158232 599206187 885610034 654864785 980646914 46398183 711910693 159739116 938926146 13506935 553135488 819102738 260512138 828905036 56788772 658106262 797569051 84005645 6150667 660313523 713712325 852783427 227307482 165273424 926559670 3568363 372102310 700417984 771883990 686657055 368009088 829529425 856787402 674883685 363840205 161038057 673071545 486441256 206869273 809975091 738181854 651980972 818361478 124724232 125709705 759924920 614799458 786242287 677177931 882076410 151018814 720658295 702824240 293350456 304883375 819733877 1274158 567211985 631998562 855500842 825698477 736550696 80846204 862435633 193257228 783340559 977419797 633101410 307884176 673026 640945012 289241850 916427330 691086633 418570050 855150690 414355603 611123382 297294441 761315998 457928680 413345815 586272651 975005407 771567237 955846927 754255176 128470471 623563991 895197514 948797179 334107036 467855507 807257818 842637423 924207006 144839979 159605640 957369674 690137590 638049798 720458883 680428954 93678923 415131199 884133753 963375183 167356901 835813120 334103551 207811492 876652218 371772753 653305989 936561663 474489424 196163384 710192131 453870392 782228017 707269415 607923927 79201738 704084507 378785037 656544097 881606855 12537393 857905885 480359692 823626957 132070596 582161427 702321862 753265910 846150015 827508268 471894211 379279173 224503061 719901707 626006997 878955958 310929717 969021292 310453227 701658280 821066313 770332038 672285547 652658282 834675154 888808295 822846893 709252585 278854426 793959264 812379357 748798131 474277149 645307258 605631272 859388428 941313256 804216630 853185183 840044660 339439116 533923495 167712713 893681801 932592621 670989236 36779979 807790745 951058757 412989143 976719960 803918773 886489273 21710968 437127127 942875187 699971811 376940148 968749093 353892304 967706749 111344979 262930654 228572559 951883242 621919644 350037286 876214366 559418276 670989236 857741754 742555772 908719014 570311570 927832237 512162159 728753676 963410657 567998899 386864585 724253479 309762514 864199465 630326328 952330543 282745838 544945790 656570732 325851024 428706346 268466184 991208588 802303901 694593808 986909431 89155780 753774267 263611485 693110490 709731842 953189388 796611203 184874861 123772836 265955966 229890911 700340501 498222577 993452284 812517900 943550669 849337352 542334703 574648590 311980946 800911451 211262033 252795648 169702953 573740346 918723214 486918696 886997234 856286666 622697149 736054276 429906676 826631701 346879681 760305900 712301356 789504266 900418913 8311477 403599675 773955309 961883540 415685674 566906989 559606794 289470050 315629481 752584743 752584224 836022134 979579878 696497954 655876523 987847640 537024460 436658615 272405760 217513981 445576007 854224946 160562454 816605100 716297734 646719153 908107717 411139591 467890566 611472481 897188676 545398110 811697951 140087305 936435008 165228690 82449602 448362082 438815148 828620287 864149455 903741778 458685037 905530830 996693137 942473744 944874825 485679511 157480572 147746401 961204866 223960284 13896848 803016186 784844915 755168717 930297649 200627821 571753798 990610392 770557325 270664523 966768216 762792642 361874558 802084182 926859179 992062710 845026769 375904390 827371906 842547375 886743454 441634677 254320133 900975145 710820635 556967675 137568238 147118282 399870575 856540454 734923380 76893865 853328810 975776836 723199652 563113490 693086075 502346699 776887446 389699918 935618828 995080039 410425902 286270514 738983140 400038588 906129514 600436103 35828745 816081065 640813178 294850075 697576079 702355169 885029563 727294073 457896263 864749616 167696377 506440635 416685770 926050752 589562734 978652343 682202553 717711527 368049295 4966081 571797350 475006474 709097778 217020002 934951713 531934776 805331931 370615465 891893037 329256651 401890279 555199298 256953334 831256376 447064202 83437152 782934668 881709715 814816325 34562195 497253377 513281886 585521874 809008802 856549160 732537252 769446515 281436594 680380800 653721157 685753333 827939296 280279081 221402787 416029285 899172797 890633978 999888035 505376095 972465046 336016255 506477138 702237050 936125682 171994260 770496469 736431798 282579123 259601330 738525070 736727801 43852739 72274651 632096577 132689491 982315507 798904877 721004459 334523078 786603686 825669498 713870838 97911934 481563429 906322010 339691104 216437509 871553310 670989236 118580749 529767127 84588708 787046386 276559446 68102980 214308336 553581007 255169340 958676913 134248222 511339014 560057422 836389999 329640372 999879520 309850736 984039889 670989236 941457873 91342242 335576625 731737166 96840705 324519690 229029135 513004792 221089641 772093118 550221373 493509195 662283407 887475388 983821237 283645146 299085273 685542542 965697405 822426149 92746430 467903934 708899911 574617494 992428826 329624823 556464566 165497786 835948681 392578472 927093556 505064074 984136083 731316657 940810328 228588823 277321398 294612083 653332016 65523311 212315218 179897920 998301425 817914758 670989236 862502902 97014939 698395580 246291690 753590655 944710846 661961903 925930008 902096923 984456944 465498879 785000938 171456141 733597682 432334019 469041304 702672526 846938220 712378099 567459470 590186871 873964403 483341668 10426356 296906977 915478723 324493793 749353617 914442392 910706035 671646661 268717509 482355370 487949102 864347353 883706651 961788875 801326043 299164127 59621151 811887804 230374245 160263299 279733693 723758055 437986983 707487130 141420392 884035460 985093248 846422231 746933069 436537016 94006108 574685452 775676893 40152588 444272240 397158902 250091314 612895753 677997947 787625892 826775039 729473178 426237655 562179337 471690225 878299104 117438047 44772216 629915937 687293751 783508560 527911645 882352775 680858200 946826261 765631235 42779861 832253186 393620950 670989236 753815163 934976716 322445392 743461866 183454343 865104023 929175489 870237682 899595873 257217578 917835405 987525488 981311689 816822885 300680547 704274863 803759532 425553344 959822438 906554092 515864340 955382120 859934730 894501644 927925252 244600203 976425454 829502921 255049804 273250384 236515327 765585369 308006467 515051237 35219841 506610605 382881499 634240814 934926988 390807632 234766644 524974367 791727407 923912531 479688982 515154216 593851041 517174088 879263929 953257719 974026745 827649480 64465611 879771147 906637400 896642829 668160023 137391591 700632683 594237131 720119828 806080805 288106910 418328710 831026204 307973242 975904668 830810924 624979437 251974416 690588605 920219417 138582272 753015599 722881955 452355926 645097876 193041283 913972550 654915 72339189 74410364 514812578 432690693 929255226 616029216 837338748 501329485 498231342 181988273 895027791 687380406 7031220 431281355 844545956 910369042 272317364 954027113 968928448 765657815 181306446 786877633 134406231 869729461 765547417 699214292 967291804 625202728 106515596 698516158 762270380 694269927 212196352 925712346 909214823 362288895 694305014 929925952 102426308 933790617 751800369 673476101 320241496 832931817 964137325 86842186 865477070 74529326 921918881 154396092 889404829 287215235 638089621 531600731 654928558 649303013 807152845 188328684 77994677 824578439 748159217 671767152 775442495 906577503 72904282 892773124 824329478 651825102 577199981 674245613 662621995 723429741 633378376 492732976 177358053 66383953 768952252 535554932 206170934 670989236 500793239 341636221 954026355 834507685 903294314 568272124 395115390 820610946 970706345 93170986 686878585 551323897 797647154 70723478 986030145 648216712 148190480 807136601 100271454 595153860 982992442 699571652 987605835 794470294 814764075 918423051 934327193 338449182 687106257 138051728 967474172 930723354 138387945 839545557 783580200 974041520 526339314 585595214 687361360 253014709 645907445 3259408 849036640 115846281 210493045 159279523 188821471 815765361 383230936 770952710 639933993 916614350 326612658 476239916 819938695 282224100 887414965 277471756 345108590 755767066 821742076 271012395 484471789 310413724 963375138 769868582 588891167 252093710 299403466 176123613 761229470 990945987 831635127 971423642 718955019 319157522 524396978 936036276 781159329 698041032 375393193 234927455 935502949 150580814 54486452 597473161 743989858 898595029 100298198 841200806 962180121 95941655 983350689 113822403 689166671 246308087 316297010 655116443 554758336 492598979 869339378 955215473 4613037 478478472 337692680 280031470 48027502 979367318 702417827 416457607 215197301 701440889 138862144 790686238 325133869 899388924 481415754 249622921 970431967 206465617 326349430 976666752 824963175 772405124 875378557 989257268 61400245 153656570 788921086 547549707 298341536 894364249 954672012 770636227 713801951 766042529 474383345 904459079 270734609 98909639 889233182 603743099 794411117 746433521 550711497 291978858 670989236 731391045 43109229 902267910 654934137 242769154 809461709 924365431 749906862 969000373 191247076 721506436 464314990 510464234 988670341 851559292 672492059 994726168 495511927 5440355 703908210 944263257 820941269 608419553 619165467 689925332 509919302 305664519 574771111 273185280 954426062 579802177 142287620 174719677 370355383 38177059 872128908 959686880 527924709 748214625 933398670 42324533 914028974 553577296 969105098 307081985 941620562 102642536 57076816 959207358 56585265 288591329 979362473 791348133 31634903 55566361 789132669 927691057 833520945 289076159 804110388 792828827 586777855 226087702 691856058 998474797 746118797 698071254 688171264 573737367 178257219 846438176 829995179 707762843 641151793 573602498 793338884 685661284 193463722 942217666 725733870 136822425 798649083 43653523 343512517 911140647 469659328 781397336 992888569 688268513 190336436 853805232 736267855 994191139 465616879 936134366 392024479 913035903 944295537 167897721 410114610 929494855 639505826 953929813 458263757 153057682 717510476 751738507 379540062 942849202 954609284 747868289 757225878 763952848 541656938 569063712 198717643 623260570 457860933 383735533 438475186 558608158 625994668 12339392 648023691 733032224 186283974 473506472 784213534 505955613 988247174 29515070 590960508 745589890 24522462 670989236 748630465 389609728 48878121 895870392 378454013 88952865 745466808 54214590 925805335 749982245 675656749 777917807 365240314 734227518 876006561 1726623 680132176 913814884 975860528 921175532 996493457 986985413 513833003 746614765 535103860 222204304 888883127 695076729 254149697 155458014 946285415 51546632 721082917 83664419 587276446 940233102 497497043 797969372 572826173 215127687 950792434 206527952 950146773 593497847 773017137 286672781 619693616 192256333 762631216 972810415 30240651 429134851 704854215 825826106 598812229 566959105 37209744 160055619 946546937 608078036 948787257 25473396 943467867 600809080 681102453 849143825 822362417 274182444 972837116 275139109 948023037 243771820 870614774 632872172 886064916 241174948 814988610 268025461 201102796 554485820 865757181 99222385 656073446 192376814 1334037 828811748 314098800 995755520 237932709 533526098 560101995 795721320 501250428 201569242 596031774 92083703 237649502 965862189 255163943 307049754 458759172 633778586 752438830 463965361 960634527 943275728 449230614 874690424 938741733 593169284 958424433 408788464 126263100 430705505 490104139 146549909 89684503 939193453 109136402 169403366 670989236 605073720 738178458 865403641 612819532 872855680 813314393 772573360 435789979 871273600 405949430 598006647 762675111 140616371 597549339 938392165 775995536 857912189 960181849 931378143 524466038 677668651 882613415 888977553 664790922 128947725 949832604 716174141 830437905 869212736 988501048 335230180 614914018 676272816 706187041 979749256 416192833 938837407 488758859 703704128 44977006 926529026 935954285 335818146 891443626 670989236 571778282 880447728 172037441 619626096 895434217 104585677 503988510 311538785 117069260 674630279 973997289 360009731 837727696 998745626 31888665 920525865 345874471 788214754 998532950 733379276 580508132 613026075 698152617 366856760 987128664 920483817 711550933 223433141 670989236 916727777 861264127 344260046 839609291 633314414 500095560 506223112 843437920 911428808 748954502 947638655 12408721 567402081 173775184 533724753 613919037 398154842 628875920 502142278 998934917 677977035 314952318 205263639 790988497 11506397 981887143 995648236 116601815 546175646 219300989 42078674 207091934 188531051 75180263 582267879 818496510 965000931 551940143 215963736 947757435 863295095 130829626 557465928 585795265 522101435 725606031 268375502 77598083 262833450 385716962 840498335 87669833 366361236 205018917 586183793 901712021 702608977 768580271 668227983 988019952 346064161 808378580 880756744 238800871 585775454 298205032 662044535 826636407 229546695 678124347 326976086 31198013 992538588 436612954 925400467 842694214 310519413 868521558 987627983 719748764 759922801 748624995 865036064 187483980 850925274 184962990 941531527 211013861 859907647 241863976 935793081 162259321 809161068 688933701 453011118 711242392 34967534 985338023 94248800 718467831 685224176 552240 147947980 848903059 138837743 772499409 928316863 859035413 987520622 447361096 846716698 141883099 884142114 899679480 2469329 623351541 448414325 812316345 348579738 268104386 767543892 975080527 868366617 878248955 797566676 862864971 299118881 820326303 723228840 381968047 953141721 700131714 704287789 870842434 839398122 948967603 363461107 949778464 555709973 676154630 585253068 98066396 718599829 834956149 697324261 685261023 790117404 302435723 378426000 948027412 752536917 724151456 713763047 828469613 950417470 390901879 848981330 840335216 798049954 11053180 445045824 251089833 150130723 559039672 139785145 567936313 432996935 339160012 579608826 302076379 860895944 128860908 488792480 908378503 214170047 949479661 153870276 751815761 73838977 711675865 527004344 806654584 290543570 185769768 165391509 329583394 750535082 791105908 286880699 979032477 76519577 511915726 456904831 841188604 328875128 543952855 51908424 453441163 811980454 977251500 11816285 50063230 172667731 227564227 674561321 311932487 961088891 481887517 864601349 927229552 980278032 786245278 993417075 419924951 541241541 624734829 316102897 413521290 294191707 670989236 955034064 898500390 476354247 407266478 452376770 984033921 981491709 937871938 235743678 69415399 7884885 797946526 407523802 686291310 798421698 725437975 939334532 698786640 700855994 966964547 402847082 832997569 34344961 366342247 885799633 950279442 102917108 415395080 674788663 715775968 879550009 615666619 995053690 970240282 815959620 842051042 159600665 128467960 344559528 991965366 958222749 601197290 814442560 853827927 873351192 725331877 877812752 748543879 789138584 905306854 459431248 874091747 611249680 961851317 738654896 246003340 936119842 671172165 286257497 152112353 805329117 284939000 281575255 678321930 625121676 852420486 795794801 16435546 87183652 356220089 197375786 585033865 407742062 461957853 818443382 295232912 947927337 503888997 568679222 601163882 448245438 598866079 295824546 999211806 112165631 927704422 333334431 807491314 930852771 645680050 196478319 769358850 19854104 623052267 761043537 779714019 825223370 416950004 722786249 510514005 556966599 780499292 979058053 845774759 810381505 70391263 630856692 29874919 466160059 887934576 136733578 833379247 56052533 997332004 355882502 865621840 299938030 245183608 20494184 904805640 203981151 662092349 130601135 921727739 576185089 515991806 613360822 859351515 814058748 588338260 710210141 983348653 491151845 35579694 453926307 978972876 326373299 506681349 244002856 850942748 240375901 793356260 889064772 265861028 739899118 675052972 419543356 227760941 187245652 151235055 712371128 720803642 713062770 945367477 351197131 909270269 129844739 923584212 915900841 907799101 444011834 662049709 799506957 226627422 32220428 776399246 873691147 862891972 680698856 734616141 169474747 512443398 943343055 552623524 335938204 782747705 812117197 140465956 111639108 80842506 12755428 864797811 782199071 939327619 184274961 135042115 841740109 288202344 535137627 558320999 157005545 938077242 226572489 769596085 497702459 626509988 321386105 349494714 809965776 339513268 206464293 987920373 171648904 768191913 786889796 821383159 328370110 917520775 790536953 217449036 926751642 430750086 961792958 374401733 754374283 601612820 108720433 872591515 667890862 743989053 860847989 819655361 643967302 494707477 491879437 11257370 280760576 670989236 977805275 703429650 556941159 517946856 368137310 910445610 936316517 414064380 976511729 984618211 901685764 626425121 239241221 670989236 285487208 429961894 983833793 791199324 720949557 772991045 823319841 333743827 509299090 518209299 143221854 266047929 593288703 384262095 219244802 103930491 635707348 968639329 185610734 963337211 777996595 308763602 379364715 248377856 599429158 859242394 805906901 756940522 918056248 323159415 924880892 199028332 946500708 347941279 697364938 723182191 231882148 180720703 161569148 782432420 711658728 991749590 593977942 906013339 241542976 526089494 500339517 764611858 992796989 714493270 582150661 833074642 768813572 592258592 70902127 471670512 236685689 848240905 944731271 237449854 563279635 105710198 711165009 896878435 835893762 51932338 286699103 588074803 911373431 943309683 141569689 938786178 720706481 778366440 902639110 619021512 228701944 231577230 723242768 34437194 299000904 757155449 222053033 86658328 802373619 509650228 18217074 379432288 507942354 670989236 229425170 598704583 176010250 168918918 541156579 3306080 776945242 837387660 833870740 734946330 583696949 476770868 700386133 80424097 611647102 205261267 747410720 853861754 823168783 362183714 788541032 786824663 701163633 308094225 999704598 993351514 719539587 116771340 882570749 82504983 855580167 968775759 796794078 889234152 307207982 271539836 705667741 30444797 413052279 528492522 996505954 911329875 491116036 884957190 954099929 189863628 680458902 696821687 834272140 731355422 844127825 189612500 312789538 708107921 518843609 721308681 534897053 914172097 844602659 607675917 673220999 820612800 939454615 773536139 370989883 869922070 644030178 777167765 965661877 786341286 3421433 466526062 56018132 133729231 476681054 49326683 876196027 135731652 311170236 367551230 362203225 219315834 795973372 802282083 737392891 810232989 686191037 892580037 900059146 753480006 796178817 856294660 254166541 151008768 291787048 898135221 234577457 976151955 770426432 946646942 845929278 994386940 983920555 21658087 695213062 4385763 902517838 211353492 530578945 524290792 703528939 933535655 81588696 31061343 872233314 177010392 553461201 282596597 721663244 756594904 18831244 237865319 238928511 840127706 411571857 84853719 937504372 56357192 343882712 150172116 94470946 142802537 674382860 492133039 888111942 976841218 797593265 641083379 986000607 843317699 97710819 441429192 905625007 393104196 621517775 138898191 563989719 209681645 233796384 764956040 309664257 598518617 350093159 358726786 870853937 545906275 415609809 914013000 932071148 762305147 930380052 775978236 277879423 291094281 834538810 736627567 801717453 677085041 29609500 925135576 273411381 782390505 740237903 725406263 8226636 998175331 893341574 632999419 809502757 801211870 884655617 180339711 928554479 133645881 707711788 858736213 280118284 339934363 875852633 602667910 30201513 775785109 327562399 981958599 366116641 252575756 988325617 497492026 906309035 50654862 634752471 250213911 257181417 955601191 350672726 716361933 591798724 510263575 152974255 987488834 380623092 963517533 699556843 129724682 825217470 890721936 432952100 439892050 175230919 931104252 670989236 755496672 368991314 716170286 356092883 744055339 550379106 927976793 776454429 510268047 394803543 266049337 547337232 347800737 392429201 678635630 297778270 375459400 211545835 799359514 285212456 545414579 871597756 12041648 934442393 600329465 511846730 611527287 202881708 240692525 966756642 670989236 898408648 836948956 231531333 483962121 732551567 603620904 743457758 761773161 754188174 439617585 845679304 477703300 469745694 765227865 889159084 367568923 914299985 289736368 947799955 952178619 21711037 897619894 858175920 182709222 759634133 925552907 782186552 794821138 833744981 707205465 991875561 427817752 670989236 560656180 51337172 984946864 923732388 602872414 612534546 876781039 318125358 593618449 58607592 773859014 42027816 934696561 864445454 671624633 471118801 116186869 416180276 252272033 512259790 239132552 906719488 40970436 542936952 267389065 268076509 891974189 410875427 299686274 232483907 935328405 943747754 509371250 398279307 918613146 932466389 120742890 670989236 989067316 84054295 885754797 482365310 341291437 827703103 498678644 787121152 985045476 230373553 676018362 958731912 994910618 331148967 678047491 682711701 976023015 923239889 173400464 39929460 338677105 890023265 905943535 835120679 67268908 980237475 174837166 296092902 103240569 711724832 567130212 696441300 857020243 518789262 702481935 774265788 899317513 749668241 121570145 147185629 519573235 64470535 885348880 908552814 98308326 645006950 160833726 376561188 962782529 915305533 849914339 754907092 894418733 942875360 702845347 795576922 497490060 226828530 233327749 799088609 311577543 553027850 546804723 170290759 635374719 324630529 751734935 215858433 935802751 65311902 321202347 787831325 44836955 828182676 417131325 194706325 493756185 488234133 411871246 857180153 740626315 344338178 121403923 534918183 624119595 29727307 367524599 515175883 500393405 203861717 301021854 125667435 694739090 272745236 864305215 4573805 769580838 454993792 647828745 791847897 763407932 892740909 704708572 780718941 670430573 386032811 610293891 950524840 707840278 306250784 688140324 696247437 957337574 210169620 991635545 328316351 150268386 559679947 421207786 259043458 589285442 674055734 721955005 604148720 165196013 819185245 727394738 556873596 190566010 622490520 731733233 329305617 694759615 202194634 264993331 680936987 993502625 373539238 302242895 590286394 611174567 6502133 858609141 756944879 691232093 855002616 255530592 969557323 959701551 696903050 53018824 191878959 855192562 529459716 495674085 18509753 932807068 886081898 704760338 867896080 88318370 140764669 411049610 398510809 670989236 517956379 449736235 884563114 989944898 11292129 553386551 917339380 81226283 843248137 231344607 245072177 617484408 128587009 842839723 776098521 406839861 146722361 94016919 897375946 796074697 513715256 498913278 486136641 135685187 219262373 911710749 826360899 996476662 852582705 48493667 825272644 786474015 870351697 156136014 770359694 128438048 880251385 361862279 819524653 629623192 979602949 916974137 842801771 991586518 742443248 880352959 51988516 747093533 754791805 190602683 1609924 109459892 736756655 931587512 303254704 859005138 670989236 744664182 522558890 285925098 842329239 381300355 719509910 137611250 829381597 960671929 108208243 801976949 843178331 662059576 820296575 831430008 725580478 859083170 213963866 565750394 725692003 964526255 258930639 653479721 389345466 860667900 754147675 566403607 512901989 572031375 386613284 884869992 255760551 466097337 534544536 999825993 823462605 864237825 934123625 940943604 671222692 988936597 229034272 149046110 218037030 67614629 808926176 177117883 599557651 916419893 957584607 11000588 198699862 425547119 827561366 963262540 257053516 381186870 536317812 567817348 800925302 973857493 794478413 116158657 727404533 902848075 771861843 178607517 879660333 392875893 881637659 420433982 899298384 775407611 33609568 979810045 90830098 984087708 804426698 681549191 909936260 539716604 762329990 795042977 948692706 740790871 941396435 27517523 198520587 868906339 923983462 977716798 920063638 444393571 932481053 841695126 970034877 339014809 793885187 76851228 983842538 316914630 705000799 330356151 22593336 342558196 938546558 235767044 758181324 205888296 899583318 378649397 184946748 868042192 302187694 730090640 879868027 487696403 536417200 612160785 480539383 831517779 129485580 901466785 915503791 811630632 932569988 961387671 53342716 782747299 284514628 613405965 525172769 688397557 929350632 663181332 922690263 832173531 684419831 468586538 439917817 10749382 999564046 717047542 299130640 108433132 713372761 810243603 450829639 237146942 808378623 509248793 64532502 653538065 46099041 632034615 723846156 180493999 952568183 464790101 264699054 332953879 391231787 428345402 791612255 273463039 763037110 334251592 654540811 804846056 803432070 381567836 830532182 676627275 126699602 975803422 453241169 306054509 438845298 956500771 803504468 697498237 553790361 659122212 949585217 458217747 613398541 841462578 776898866 638607921 331588187 268227973 663880815 447119126 929484884 299100684 426201404 824642837 561973842 103232558 52024472 999980600 442311427 936297818 21417374 670989236 124081665 428006000 846873453 839525771 295415614 688081953 134366029 891709567 708423949 359139043 760870874 663138153 264659698 990059702 766584075 245702536 11654714 777389131 78670200 796358566 759401555 183171012 790928211 277270276 809237368 705542880 521907619 940152972 679943074 609863078 407993237 858861529 780543083 594758256 832820189 566697557 562107645 433770615 856446715 687964392 126206048 5175930 900844704 89219461 107506026 447406348 3644925 386938220 346397779 985913800 928975223 218395057 194275912 670989236 790713427 183414805 676543721 475672716 438737101 390102218 114708644 932318511 737348437 117805844 65837836 414493204 688738653 746861334 948823535 471443277 798810940 542832080 43742490 687666422 709992227 782881485 326371750 838357697 187502013 560356374 721989673 399567528 436676608 474690783 108578431 751617893 956822539 943059658 931494284 173482901 10841219 538145871 753749228 352192027 876352026 142364868 133156208 805454992 3907345 945197019 796752074 697545976 462680312 373025377 254638447 881681045 387071102 169382506 7055905 616789737 366641057 833176434 343850452 816036647 908387731 352125124 434469010 726355883 942910984 826756948 248360859 768811604 777574418 58001566 971203555 985500606 145116098 146694028 806820350 563077622 979111278 146916297 523026948 111259497 815615871 858924503 868753160 877232132 930180095 942207616 138388658 569024436 155978366 863421902 706857619 360558923 94273349 746276318 795967558 589842883 239555515 917274505 940111178 901456119 756784309 789852748 901339882 15080248 975182872 728851302 909296231 200335721 639883827 783979442 585546253 762197985 278683539 229978140 982921249 605531389 615128164 876132989 114846766 325695938 538788261 30411244 455416667 135375551 730210226 800113501 842117385 760397505 781710532 911474675 726869703 902002946 810021863 548203833 870768434 999593996 945024096 925705381 679316317 190671369 503180740 695922349 968243892 336596109 755891342 98152986 952032760 796894803 856023997 586167676 118332469 707904648 328725852 830518439 275928121 46305251 221063274 748620349 246066145 701576184 53889531 761303852 904830432 751866104 379923357 447035168 81905526 992627223 738183913 537012094 638509450 731654255 768561093 833559277 670989236 698301904 582808599 319565974 385655637 877131345 733629236 993007505 72165173 448068941 787895968 716792970 835483109 439946484 360396925 874470420 175883174 966259475 920294905 363144869 830463363 657246602 241641507 670989236 710390912 337195252 193711311 109252439 353975778 346072564 509779601 690506451 338099676 709394809 136414785 516422547 395874804 891365000 334240574 936645218 510728941 878873728 917148297 99913222 761014271 785920558 639991593 886879135 777049264 592276523 563889643 348719833 207110459 762720950 16706123 852447317 326014172 16083572 311033466 833555726 657576346 438389428 313524376 945410107 749575285 923413142 847063118 268702109 232959351 780733899 869101107 974566262 788715713 475175341 238454043 277110969 79931160 500789084 139957438 517087724 125330815 518396085 943312776 190781905 752252986 431378336 984595642 393254409 933684107 794365149 630675281 942002365 754121431 822529916 50867349 133968543 919557903 843562608 561523252 990671846 684950875 896043868 90964012 878114394 873495398 242724823 78727172 472955703 32324632 825327810 466814598 971498063 876081448 519637320 671640578 643509671 954584177 717932135 752773927 987171735 17242314 911017397 595277672 35742520 111346331 806102658 133884668 623710930 168379490 154641057 593910763 635653469 983462572 262295632 871762207 306323939 507053797 785280439 774699669 398716773 904278446 182158812 411771983 618151242 932931027 757114668 28678730 380372448 634816011 295158930 727747599 895597507 847091547 290178200 696346259 824870858 927414231 497992746 581675277 188755219 158936448 903758539 733615989 209582878 886168619 755854051 984272448 849248843 281083909 763715624 887149430 216876952 815294736 217167776 518769394 817741622 908955955 858246130 249724705 637888477 885953196 966608766 466995791 954686605 145871971 425632786 61677294 690401284 417415009 162174573 961941965 754013445 500859802 732081323 251785045 169808215 345237766 936702674 844991332 585096446 841400224 915897528 400283142 176416815 179677019 972639874 913863384 312144146 529344218 970362645 435182999 740664556 774617653 707552704 741234098 842836286 67125176 642769277 327867445 986563069 81821846 118488758 568773907 463807143 778574176 308705110 265972091 789830209 181118673 682795272 829058772 429245182 934739617 994235843 980432435 670989236 951735522 148505910 940048410 845077072 514698130 189204082 917473178 763102637 856630619 478473162 924579119 213955531 874141029 746414934 382556675 803084820 493233265 377919763 744826515 852170769 770109658 307052734 160312008 413456333 621594145 281959358 594495980 506876890 606796439 253278139 165443635 298515868 583918556 234209267 896133983 729028359 748711322 697094589 967491422 331541551 423319071 670989236 338287668 995928231 679774784 5490676 875767461 929765766 59377532 672703052 926460372 946568368 669310278 745400270 779118063 326082021 591177255 474267948 430994852 408691502 129979975 189227849 489765225 670989236 310042161 641488403 780871270 939808496 368059476 47720864 560968331 923510079 169572258 231311805 765720468 742373475 766306761 826161304 703124242 580937146 631967527 986285241 578746216 670989236 606088881 785933518 942606322 22194578 162156038 932072037 4125430 66140439 130666237 705441016 846129813 658378518 12535031 856076421 669969592 679108468 72105432 191235542 746135226 800468218 614753401 615602356 354549393 863422764 758518329 608232305 108522538 733191115 624266581 961984385 913381106 951613815 576208446 176142333 333339636 118573449 799818665 215280563 201255856 800732829 864115844 636040804 448594441 788207572 964603606 744310448 881704333 973606189 885923263 694922693 293910462 257643233 294043686 670989236 735863077 870017368 731743942 829434022 445213154 14215301 35814754 92707019 942236373 870279545 921362105 780357809 13018732 677246146 848425856 973755268 756560659 485963038 924741656 246441798 551723732 819480734 28004843 76816605 758940317 912420798 169866410 966621411 752218093 582074381 711083809 94776275 762632228 293760029 284074651 764992414 227312426 992871164 264971978 217467278 542576202 880237772 320308513 287877739 791331641 498819787 722127160 948068942 706720070 262318914 235646682 237991795 641826168 992075900 669139166 695724656 181728618 687636523 372369978 618112060 826036300 432389731 796378748 231060789 451815418 37372024 5112041 926735776 118693485 831096000 759264416 727883297 442916394 328278106 503456248 517865258 383447917 456189005 574690578 39541414 918825841 818055728 600057156 730781828 36912333 90562149 919937554 298920469 923792690 761799169 128512350 513472515 702720833 246314531 773608908 798776125 736879139 111979773 514719472 729026502 980900266 374280961 453887477 670989236 637903872 130241581 239883478 480283663 699380371 746364630 743237183 179033538 444044123 451786479 672369567 757685202 991659777 179967000 206020760 77136365 171934310 405339424 955242909 780462906 168779393 994093085 310545206 575814213 843499353 689713201 918382432 665986030 691488126 685533629 219398222 14036282 900405232 199412928 885809326 337013650 700624983 889741548 455913197 610199222 166142503 367985861 539748017 816523650 515034671 232387254 207111251 99925384 28669938 415207757 516667024 822238089 672833323 792546366 637394346 259189961 212922552 561898210 399193012 56159847 992011350 862328813 818234030 700333013 877487924 618110062 826126714 851811012 970669038 900752590 345878255 743462042 596102249 963864524 491849189 216887847 26574477 89715933 157225720 520179098 935918520 131278653 24322573 572968367 779901359 493583273 432313380 858738394 28769552 631433975 311486810 850553168 650426285 821021896 907886047 911539535 3048780 629060150 434729050 444072208 677834833 277532214 81465191 754831559 585837610 273086795 578294640 866143628 514557589 245592685 719830063 264885030 686336196 992439595 892322554 934925435 891700650 861454774 215539183 887559094 95767067 304193765 300036604 757474021 876800636 510275052 991781080 142906972 521603505 977391473 826963469 680284936 188824759 312021005 104847984 731031755 625056543 958916664 677126223 877972044 713695016 975194044 919425241 941593450 961042903 356532668 138759001 670989236 103392586 421812616 222616868 332782369 150799424 846888645 668294327 782547665 831457856 670989236 89764889 746097091 14361156 474190389 901525264 476517541 941130781 830614892 16523533 936137930 654097029 489656002 993915755 549400911 667520074 189477028 580517889 931580791 142977261 863461429 893339684 252774335 578312358 723781852 495382136 210233876 796648893 672023387 328424205 756392137 688456819 172026385 814485857 914824485 182228937 435177429 98014556 146444474 192434813 180465909 543852266 864540112 294593734 839861646 110395417 193326116 962242210 951220389 438460068 380835872 629572305 841143853 876530864 986427392 383154239 877685811 247173949 154474048 907068359 706496891 670989236 249286759 712603415 770198681 742255859 448002162 846396133 672062989 842002164 972196394 502442663 969987020 687712150 487755731 391994089 60489753 714343806 110924219 599318302 736758662 370026904 652347001 962556586 162870934 501816399 761987840 916149552 83252287 691556922 70411709 600031937 773291938 512829490 670989236 115932472 433474851 142720288 985534747 497361674 910159214 836352821 696096945 387762887 62808594 118812316 799408225 970892063 227286971 329174565 774614291 827165843 861205172 910999907 632864543 648806263 446098794 303472526 657959353 731132639 884125614 254440620 903714894 908632289 747247442 490856410 702088715 614581690 657783439 688632351 116969691 441326084 462487228 406595694 708670806 899376604 728078566 984101682 995814795 912475468 759419436 615043415 233270754 743066872 891861402 745288898 964107977 950607910 617127916 670989236 370285619 159140483 968158039 813491653 168509683 856817660 383727558 863958680 73250861 768392852 915209110 285013565 677496591 913770834 66572626 480527292 437542681 925405012 330508995 724745849 645078936 482429537 860912657 173897197 428202589 467327394 808962975 143468784 713270018 590613614 445210135 841633509 910612660 798796062 782550787 518832530 992080997 793356493 101191600 519951583 937249018 4645059 651627983 438377901 111827487 903244006 682672582 990531985 916580060 217295187 377000523 568779649 217872430 968270717 334536206 995173564 785454550 735103828 722034976 979022516 407250597 204912162 463662878 901449819 951161674 11356571 145452735 176552765 279989068 126087419 708972796 276291656 982951143 818346461 821428688 735598167 324635516 690935853 916073906 289669805 936450049 896206021 826421423 739641582 445704910 74418485 261385253 515856912 3415860 290669817 244892080 762715810 963761289 804418760 656663355 708056061 958668883 856255634 673460114 670989236 384502319 841769528 799795410 320337197 196536987 695391978 865406203 16870815 359552190 753358075 903744278 722008215 787005392 671387815 131102871 970121879 781006196 472217003 514923938 926067851 380378644 886983280 168027023 58497126 924924913 418250204 905930354 703654672 398401830 849167666 100372111 497324310 886864545 937927877 813072256 515640559 151047071 661782732 505818333 292777163 295395123 291889773 792090262 896602876 307038466 977091156 132405293 560858604 12518620 813687477 219371590 903431084 940085716 240357938 172834846 868341655 202391775 667173887 193780751 761119291 558435311 158403692 647947409 474354821 401232572 932139999 692276237 390854357 774426659 47870601 910616124 566515338 670989236 979943150 517745949 761057006 725794617 68153030 945033853 924237800 841042812 720765053 970801708 524413981 964394994 526080686 622365155 748174406 111932292 857305234 923696429 396110708 784011325 780491262 565124225 427751430 689003429 904596796 878532504 185558278 404305750 867434903 193521340 246015602 278578226 471912573 587521024 774562436 882183682 716834399 724326777 476826268 808184142 715432979 762016289 957181575 647585626 126116998 846350835 600603553 866912158 650604869 570844118 850884523 240776417 923223136 607084956 974819848 468716913 221999780 27714098 932853326 849121729 578684908 679287281 837249429 987873566 660548217 253394625 565477959 560650805 777936751 105147089 787723943 751579959 363877694 220015088 918508213 205205327 702459587 717688813 994171632 553335213 955028134 999443240 253812029 684597507 758853959 895152888 740352693 52704824 976910267 960098755 828163297 259738039 670989236 911094095 886961719 839717555 308147765 992083241 54609157 300853494 467186858 777025254 105720671 843099696 775985118 19222678 991476323 672956480 968372508 794892361 336335022 654150857 68958818 602672217 787414762 203049716 721062998 181425506 636485352 670989236 334496106 273153641 231303542 433584933 861782560 152631376 826270776 502343973 753715783 542528185 620255004 426860335 204548146 670053432 806321556 193746752 765777894 785833376 253906947 92660559 246373891 83618834 974139898 750490260 25362530 194815541 745080401 323798870 773481202 670989236 896334694 391467329 585667424 972381339 670989236 853416503 38992412 134511763 992115142 331085968 790040494 261647646 150653252 350137945 801375683 10687383 855669586 957215672 665166274 15720928 329335717 673938868 743795568 981118184 775410470 519962796 966188164 660678694 775874723 733913726 738457212 297243769 355091518 308983098 799899219 778174034 719865024 612161910 67436381 809104588 724106034 887039143 625709950 769725783 131282192 175296787 995121436 622573242 192565650 570073944 928140309 926856564 529670284 449780956 907299722 551489282 6333761 759943673 76895331 982485350 748742680 882814989 409053045 891506927 419670605 651996177 802226614 538914389 11455356 869358553 338578233 764504892 865775975 922705415 342553949 579034226 858465627 110935993 564833084 797013453 360456671 437663763 571305833 886647902 379046806 721504180 413543220 536007046 594831649 544759539 807685820 138058361 311735284 899709450 970023783 382147987 728928497 608700187 560213928 893915796 670842149 544396355 716745524 686486979 91697284 386467193 559812056 485021825 415701136 579715373 825137423 241309679 739743032 230050236 805117472 193293690 185574219 913612800 788943285 477634309 837154226 440520760 221863018 67470053 789324786 865998363 681725918 672695923 665650063 714059189 958007852 981170833 250533395 877173031 304849049 840012458 637661968 658045139 797675940 330246382 640758290 695076781 954488601 994993308 754655908 603140324 457877921 827656253 428429960 848791558 712899632 882011453 990187038 671576396 696934388 269305295 979950716 821398632 874213551 894629548 827689530 521012555 783605649 393159350 341473563 694203375 945225924 309850005 85820583 826830453 353959528 901204436 60865446 853613936 336711921 843987065 429008789 889229672 712160164 83582389 39482125 828471759 267953522 870399414 380286579 433168633 308130766 94043822 515052270 932323959 349391087 670989236 79175274 580829555 26515513 532555836 955551250 947971108 735547754 446225245 837675244 413067086 857872965 18843327 449162697 133087657 716314808 274513191 167953961 861150374 194196415 959680224 750101087 891947691 321242476 169409737 332843635 340984849 895677252 799401169 364875030 886541505 900761720 768476613 894205387 942191672 715107785 740867825 963883058 955463670 935795354 924168211 61319137 862446763 650676386 329066541 930309805 812016162 218847652 584315136 883069073 734501165 35905388 230788963 950468195 476141397 34524876 936180591 190908648 251722297 859805310 489895854 662786994 507055516 972385036 322897255 487185376 95228103 280210879 644256090 857352598 100910044 268201322 605291982 490611777 776711604 668028066 288975966 676699427 896481126 896888825 864075452 137279944 322027712 743306819 476444531 886192089 794386328 425330331 718201041 971604198 991087802 315223370 430294850 679335718 812076996 389353745 774276660 870169301 990833143 429408113 347951443 15694868 290313165 69120091 878032956 759683472 24049428 670989236 681320212 891609508 927542335 269171472 267216027 793673388 777780835 924013263 525730624 815784342 875264095 954284601 442777722 458885428 852983832 101789739 852261793 939240797 588185629 232689290 58656775 256124929 138785074 398087560 971119566 77610725 628262060 66188471 813478613 289056418 281457393 726860640 904192266 575925885 452694059 151984243 292584935 420833356 849991276 855018852 222268146 140840064 717498164 208762720 889919612 116278357 988990760 841473188 362996269 691074584 730605825 194764233 505656596 635027544 34430308 468854276 101582139 343726054 324226491 978224106 42404012 91302455 145438645 493908796 947082645 836954885 696359186 519608663 453748940 760369986 53913601 398828698 306650429 53161689 918804038 27929902 876291966 139449161 999494702 120362907 398115513 760858019 689765960 270033406 95415852 517988313 399997868 773002265 625525059 725436589 720720968 950935309 619036819 510633315 500481929 243018048 723209683 727653094 894481064 133606786 131114516 852023310 593350405 313669009 893258202 837073142 140577430 180628632 783540403 422622432 678870742 832081387 371054275 679915333 987737195 19690462 197754146 998785854 392388178 834528206 249172303 871165671 780453425 23700607 509348928 795426109 679880614 725854155 676648345 329491174 683565791 19210030 76807292 71881983 865145509 418051607 384918529 957883413 779732320 247009192 921719632 110380259 734920618 984122284 871513960 920189861 759059584 752393430 321403887 85588429 860227467 965010499 279866403 163982560 600457653 886978915 962584709 326254287 658813340 834723166 131988266 63573240 158887272 529483336 157064731 845085705 553281799 399150858 605178421 812801286 235951633 583169054 803748996 935431870 699923346 608344981 585930296 977157375 985845379 71225814 346772951 78808645 452069084 968580356 983264158 832377648 906782145 649412181 763793171 495302546 557580602 740126695 808659778 514422706 230871394 849915775 751111785 509886316 87921618 912764986 616452313 835021161 841402364 955848632 670989236 431070940 959724729 871168779 121885652 788026562 767809702 263165146 669807938 753713912 792327507 714031317 795585305 372627642 381740144 96639874 132234071 121914899 245197291 563681079 998432657 702059440 222388301 266230232 927931281 711488825 986504463 936443508 379665382 854949004 24694760 308656836 72652976 687717954 784398689 39523680 410954819 934912120 223666574 670989236 921114105 712665498 635258601 450409491 862505748 111301110 673580743 186134043 886365743 210122203 330433788 335274386 444233889 654039909 6418523 963454760 562431052 643889638 623439434 908277086 93109217 571027907 708197727 770125821 699234682 707366562 518436077 717298668 922778006 184108141 810953444 376257202 692309907 747321313 90943086 765112965 682638693 641180040 763568705 877304024 595605171 164436703 707400048 993274895 803025967 426901891 150442886 214404855 124671132 996803352 858805407 847865715 598061382 901556895 872944674 896108427 915075173 255194233 973532045 977199017 191961227 400435863 861038739 307283871 388134567 716933352 862475868 865563984 880128591 987974475 674270588 440476671 3278186 556349011 934806987 491911952 63725809 513053892 924666528 498947453 100379257 187570572 276983160 757648103 443015878 965436477 842587944 345890028 889820650 524460745 415377196 35791486 478788503 49056277 836117698 11566421 652911483 316681451 762058129 203196216 629995787 519762168 168271537 810047938 345699065 465865097 341960792 701762517 535731858 97088049 767157800 328924800 927723966 203479064 119727608 331223714 738612894 973923788 834257142 26152848 891744200 939060054 611184104 759477531 7814108 898501154 965863019 743568250 586657011 878119958 400653838 186341348 557134353 537107076 29433661 407729099 830315197 732404514 755743078 858490515 961080797 31064975 809245428 104500013 829395782 745222645 807136381 753240945 878770448 941541129 557456569 304879421 779592393 619050486 880018927 612179101 265737980 829600522 851774935 57431104 248014201 807399960 279784768 465928779 425965594 931885961 955183511 510527483 454458759 670989236 946708512 738871852 975755933 801440412 435511742 301486559 816335127 483138233 585520891 236457084 210989907 461360693 269544460 924614943 809276459 329682439 802673263 364554186 454269087 834913408 7157061 993012900 386627637 815943568 982185047 967112296 933994323 175133755 77408585 602162320 674843873 200952176 765794906 466424119 451142542 765629527 277484563 26848933 440348432 546854430 351372815 343042027 484455997 646059359 152219569 514086433 618404038 477283061 674898104 926778064 104883710 534716245 689977000 667810321 959057872 577735094 167337052 461809846 568504442 146517698 248518027 807402742 166490195 921156880 786573486 539485446 843592576 274201729 728807270 470589545 743075510 429800444 831533490 735462642 136159906 719047840 420871206 309900071 419001724 988027661 777048524 653619949 877678089 882017741 506751897 510580129 72183983 255189283 33064419 768624896 963351056 328917189 910391772 632256477 957631203 842626216 207448147 135759930 898443048 806839517 521913440 969168222 31367083 43196167 305951680 812383080 961118802 761758514 540771378 441067078 520041194 15439022 934000088 49356416 202368075 393978799 785451904 772980596 302658124 989947372 667665128 852919744 670989236 903422131 411457314 694130610 326362656 31125504 822271667 687430949 20364650 659114724 27432059 833055707 670989236 818259090 339444107 454073968 71289145 715864606 128249510 672554570 779023833 892127759 202236374 255657085 770665627 892779530 811228509 670989236 928368291 106487234 819015608 846376330 386436523 427771727 380370630 593629030 976125719 699294724 300156980 56777443 363718297 529476749 339672504 714272696 728888534 791950940 816166975 801113942 981623535 548690076 576313762 379020829 830566488 443658446 945699735 814801946 203391071 574500764 539890807 873926415 77802081 721598762 963518811 695659427 719675785 258407950 917502832 379995701 196061978 163668817 10628088 555329734 193463270 614151614 427076672 810155810 792095471 802573958 10586172 527968529 176025407 290203592 491540879 670989236 704897713 105724110 44273716 521684958 841997919 786710322 638381220 865579824 732915505 720879466 586512684 200051705 533066705 55488233 557031653 920376110 925797749 821603746 431296422 112119026 870158639 180896729 815917157 42822333 850403380 909714067 752107419 815815045 552966962 865030400 478090131 925169076 98040466 380074617 563640063 342903017 759498893 562477895 940187042 614332226 304767882 907744006 303360507 670989236 955003928 126460285 40558802 787752919 754321258 405997627 89054991 490468504 670989236 240064062 848106281 884469360 257975663 129313010 971055803 567724147 928257883 453561349 702924812 72453365 936439107 479992139 942894517 435823400 906025843 912095828 936834417 838583484 691979757 502131335 936722053 676588467 894160175 34460438 639641658 483652379 850764368 976626951 556943597 854552483 897945706 773677958 403432510 160791122 901438504 733803445 133749590 826400824 895539728 542124183 534706727 781168840 817400606 482817495 979089070 379303617 119725391 772432959 809277014 266964243 676478531 122599970 816119449 256333874 145157554 901903066 907759253 898628013 885028483 92384487 540173646 877194718 702996261 930679737 97857325 727197993 917236043 239228749 242919373 835044992 175325956 996452991 651414223 717523250 198590768 783454328 856430452 741195286 764282098 899195608 701865860 329758417 657733231 116317558 157377999 659904921 168339472 708832332 805142831 925908638 134661654 998481338 836279920 537471181 905004629 406334008 694749927 35391637 73374036 970109496 75269674 760041992 767701240 762737175 59658884 757101477 674356045 694409908 378194039 303006541 973456393 423897753 319195735 775091712 269497960 666262395 982302614 585103002 510137854 878714424 871127328 308575562 831322378 68573725 318920655 17988279 790672314 880700560 51766111 804738315 676488396 864415949 474941285 56256903 623624554 938319946 217571542 845645568 977025843 285736701 197749265 724371078 967693714 822345891 691930581 766050103 912290911 561081232 812851593 736037779 687035160 51084418 310822731 236623748 982978294 183749673 734042639 457382594 25494292 751034283 699797185 324441317 237017693 542883431 859392814 926871101 529088583 145480519 939501565 5114618 991316607 885067528 383539907 558884009 809297425 244913826 177501428 492035286 634029433 578748072 484178695 539084618 935416389 833544916 811434448 172056959 542537334 930417705 81284024 722290879 745455942 914612361 88862530 595139607 878420303 585893251 249898652 934878856 362555271 509455004 124489013 466423677 157071133 684956371 859745898 113910537 575089655 91202737 974102597 857361920 921799656 66770987 757585294 16161651 727311990 803335887 995087238 962416730 795524708 85913585 843052591 366750216 831509448 575994257 48904723 92923179 309739601 686697737 366075460 524450838 36180957 526922711 906836458 257775329 724832563 718417450 445426315 129350963 488495880 640097773 169209045 485023576 964835159 612778884 868351295 751084014 821029591 959162947 385935679 821055834 490979481 184874282 53970292 448820425 190653024 571526261 204888457 481334277 428115039 51379063 49461893 564423348 724602340 846419231 120982348 851608263 903530882 735838065 8219130 533773247 88791763 740296985 937780436 814902763 110542810 672495022 517579546 216559004 691478747 762560717 230500023 380980956 802907505 766596388 477512124 853765768 808591661 84119977 330067658 914483183 754010581 980833496 420060360 305696362 784443473 153947297 206122092 145116801 365620655 764973814 810400515 307534125 90961339 390243082 800591219 315911405 713275599 196736358 896966270 199333611 717850981 914489504 450756745 781900546 412191633 898430863 752075722 640079471 981003650 760718072 981246013 454938823 233208015 741353943 62755528 510250327 91481408 409202817 172719191 558605562 169457462 999205669 719060948 684510353 935868192 996350288 819684292 872528506 685590668 490904450 850810284 958034889 417863573 87459332 703932731 859875136 165907790 854285414 365296445 620543482 4212970 443935668 311127512 706066554 275738923 986188770 238069297 506505246 386673502 960011241 876389558 303980405 15032485 933893794 61730219 88878055 12486338 880522591 635029070 38067324 187032662 724043659 880023738 519921732 818443466 680397064 320443044 627353161 345542997 786988754 374169498 157228005 121251691 494891283 917151663 175572336 947512454 705111848 913786050 520495473 435311243 553330723 864005889 711726000 147607553 194276254 942086974 670989236 953295623 768477906 348434516 54341643 675801046 883423430 48881560 654210909 510716340 858919502 926740634 682442567 780518148 792162248 665542726 651546036 159786698 983869845 707102760 705102930 866451100 175172080 790625221 283851358 673107963 340216498 963055487 997612853 800040151 876107682 973712925 630167794 355120144 279386894 429511866 612096265 557714782 883536918 606021533 780015968 926375501 76391329 538301950 902167705 453050673 344245035 175427957 957098357 44340472 84591533 591287619 102198086 144957655 105982493 113412312 408176009 671535334 962390375 941890756 725225577 437084261 592116238 819320735 999528991 210312066 693160256 130691559 994353631 700361080 670989236 670989236 917717815 74761200 38703943 739899965 790050752 970756457 749268030 219233147 989930219 8735047 32842651 950112703 774167743 628020004 383912130 771342838 333108210 707543426 923583857 727304902 159443305 732647643 722166428 923475988 39800383 93360353 495703862 30103927 591753274 852292978 824759737 303215258 823625691 854575479 680742429 338649191 173192607 858356308 7681093 792243262 670989236 523316532 878412466 510019111 785481927 937719470 383570879 639691624 220636541 797343141 67548232 41225802 750507757 110130160 921534058 315081246 499578045 404416207 900634585 902662632 823604708 693109676 430882278 820774018 669524177 960181702 756442078 824273204 171948510 244971100 662658482 467999690 44315943 833841682 753766072 578185370 656902465 584467118 744656235 853041072 772068776 402706566 978376103 97172613 149697451 856206553 921084782 912888732 688312181 188008031 960044794 798850166 657715834 218222955 116529705 457255582 528332655 725055683 696863939 814614138 996296129 973734667 372459026 337602884 994734407 780884626 888943027 575613938 890681090 219175490 139342634 704110268 760350424 263256218 757913571 725918286 190513409 843858524 858897114 345154216 202402741 573708477 695022359 850432308 626418204 808615473 299335229 682336988 263044209 754334959 247751106 562772746 773405212 774205776 502313878 707990465 158843880 304909520 917247357 467285496 999817625 291192521 963636209 739935697 758154487 17503644 99452564 811088112 201305962 922547799 910643617 275322353 144370469 924705438 312327031 976065905 681204436 408669280 698764257 264366123 908939358 407806312 844914237 501333133 527203672 811409887 929330290 843405547 914308354 780622321 908879368 185923551 77684423 397563238 831828738 830249078 162410627 657922347 807795382 924841745 939401372 828319323 883663669 347819076 467186421 17648353 949713845 734090100 24475325 684800406 582012395 106902534 975839192 387970891 828797848 896263486 771782561 575205132 526430963 263485550 485066812 736863373 293456975 843823710 735828864 706807667 759242717 65115933 948518977 851147831 97188430 591371491 895214623 180504998 3368516 779681149 941406211 615337520 354000490 267466161 623891395 434125961 708568487 776571984 3644838 214763856 440688476 221181894 857307956 115712410 196379671 938300319 357281711 155803073 728026394 494518153 245097310 660665982 971081480 886710112 547056455 123561240 161739538 93286132 754533696 264291190 48225573 712216776 818254390 15313681 466905741 508232039 666165266 461128762 484649410 805785930 674075823 708826640 756080319 933560828 787659527 79172346 751880722 972535065 770430739 115941467 967763617 876320936 718397531 562756066 828217857 421308034 869782925 78393948 454904500 618994924 498354064 592576661 764521465 803132613 954809950 831047614 963902874 437653152 856469669 510816635 113238573 143245472 870952844 324284534 829411774 179673875 401099875 197637132 136550432 694635173 588834449 726150506 174671378 817537946 55861124 852707465 496143752 841676179 498905272 919463592 822999820 355321858 628884798 977120285 200829680 770631938 359660934 905330126 802575392 877652094 684625885 893412848 670989236 915508518 507070479 849742202 569686633 511850514 411930927 863183946 992497698 289267577 950819535 345941401 154401148 441829805 445939581 717907766 510924350 896829885 691749906 672213230 2681506 829277375 615124157 294767036 221220859 622965582 983354593 831756120 332885254 821274603 841560020 828505161 662696027 800646689 460435750 459985327 690084161 162258030 695535432 626700574 132809032 725062559 404395602 170329512 161300744 14258186 438985189 935584301 716022456 75262072 902834434 271851473 987272981 263799774 745875914 640449287 259653023 642731037 838793385 821136122 264445782 684040575 670989236 391492099 359221662 724109450 121145323 716596782 37222015 309729446 713038173 735439525 716955384 471882731 373212268 973136944 678923420 963286205 670989236 784836726 708124232 838686777 963702150 518427285 429439076 287478144 166638602 939117560 982428278 638031585 744043438 959671561 43024352 917726337 136137640 696757178 896910383 769692937 246116419 275906454 796492237 935824433 775661145 709828232 931843063 270414751 986292111 716085958 191747222 995376965 514025182 874467318 62247046 141753202 775924278 284991099 658211865 404263900 813310208 985453067 821110830 693775125 954782755 777824608 181984872 821865017 637018941 791535070 531626892 802242898 819882346 858771591 564511156 82289858 686459141 760798764 970025017 488102225 714685557 973047236 958751011 698659146 338963524 267752526 880953638 313933503 814017089 558385194 574674740 478358222 60420290 64184610 370327743 775628815 526535792 795434611 911047847 263287828 791438960 821097070 313031289 365947490 793464503 840772382 694354132 645422012 517902591 345649533 954055171 685805676 717551019 700803274 512661486 122969846 225841986 912407231 56055055 285904520 910341050 11991348 528859131 81159962 808531050 618569799 879290277 886780251 585175808 339312554 301110927 779359509 817888684 808896467 967422233 559710457 971809087 681255513 490349512 25267162 988562082 503908635 778775407 154019064 512299059 611812048 538353135 976384518 794134624 437694169 439644970 112998134 670989236 952777682 974079400 680970874 795844037 941797181 701315646 613345266 698541079 755444371 623908624 939192514 791644769 317956861 505305185 230026778 679775772 885538186 705681526 670989236 778988280 787075480 44661368 620657439 729037755 35543977 814962407 175127620 782563832 691400587 525184521 451545898 939663302 884663716 670989236 971370283 719244251 839892670 32293187 734055976 457389102 381344320 557011780 68608078 947266962 839738199 955384603 47129794 366255294 936851554 672881133 603664177 764787703 816237125 695421817 955230276 115232424 303640080 259773150 928727401 425977585 295151780 318589914 827380155 771731920 485849935 361090231 469067361 950629349 660941820 942688203 331791048 959006473 987734264 406316927 482968881 783853617 260261321 769147386 894853176 721845839 827582990 439703266 917814402 960831822 955830048 621548922 890602490 205240222 745752853 320422943 376136448 675563073 805028368 422799944 828339375 180868699 606032368 956098173 885727552 860342767 170928213 381857839 815723098 144018689 799442232 988736579 635692660 736389456 978414660 126746036 773697771 552035046 208856540 650148432 857545524 497316678 712772765 649887242 29998156 847164363 282298057 956153096 547960970 272452582 74055694 640263038 991841371 469498744 277891637 588280756 829991223 673661022 51574771 628637633 261446194 324524551 971113077 602460999 148974556 804937651 865183661 838056161 785965440 100257082 636525768 186722507 763255189 91622364 745036790 771727883 420567787 897025285 828519853 703452918 22983647 885350418 327445414 145887092 849035081 823476011 373814017 516571533 905578655 753072362 980565180 864268477 732370639 242434090 727270805 705048597 800444828 457893540 908004399 682889561 450908997 85437167 357314536 996339454 894664127 947618713 587591686 592564193 593336481 285609296 235552578 234000138 797694214 670989236 516313745 474269555 805320201 948779725 14388379 8137538 245950923 877195829 233626277 323023673 869126334 828312845 860741046 281577245 745862884 708600159 897529934 35569742 733565933 972837963 852874476 955000290 910284128 753122319 808209473 826146179 764539867 87407909 786083575 921676506 157502712 918034618 879013000 834077232 797516103 770913871 168894663 740642997 121715693 165302820 184950842 176228098 868394737 469205229 254689320 433045375 979083754 834158534 862457817 851669232 960576298 779176586 640332029 784142995 691961157 709485345 905989247 311859258 82091174 931003458 563558191 961350891 765171946 905254123 891614066 968276700 829739112 851108080 522362754 775607987 670989236 275186053 307321194 565702150 216281446 984636512 845970634 973596933 931566594 938767165 682811032 853237434 819262748 848748457 332175357 434050328 800232415 982250583 313995518 908556987 942485272 134022058 921651962 837137384 883445053 954336694 776584697 596175366 575693793 606995650 677059019 129394127 504910191 116162316 868796966 675068456 879689198 638076630 31094044 119094872 982852331 46459608 559818599 279119662 364386104 961519529 936625801 966205644 586696843 972489201 125682519 204526027 206297482 283116505 802316328 190279489 147067512 980780690 548348435 885699752 750465391 840263127 831480239 673587529 705186874 256954403 501780394 800452898 533303140 709050751 243834618 296878387 580368623 560031702 691281316 888983352 70508148 72167547 467097365 740655586 896945131 552585392 930955327 797295239 196148648 407783838 375967400 870612854 174034786 528093027 841619861 634944855 542872537 742605540 36817824 721279576 701745150 206088363 832246893 329092142 585357940 980321678 626704496 860960980 906752473 783780201 721048696 617712861 724131075 955824088 859100079 566093465 509557634 870833181 175799635 648642817 822170474 749098864 725097388 999000825 916129236 760012392 437921426 203968114 881860266 324698711 721056222 926121777 703707070 881165356 246915374 803296311 410179560 224501840 724973139 747251497 966933043 844038769 778854848 37008137 480595347 796509060 985792963 923072315 543051229 934465726 602396647 303931291 922671073 856569367 553793697 321949124 339371839 222763698 824044176 987250339 161555069 324938287 905070437 679525503 515156579 529377435 7129706 484655596 844264420 201168111 937426486 808745807 746110315 806360275 937384593 323481753 729116846 781812005 761858533 233516063 852943106 874756027 603013871 824170255 316945513 179976507 327906555 389228318 621321912 684699228 120832874 863750541 601912869 719078800 530595298 344822429 388550938 995624640 771609400 535902547 13032679 812555623 941927057 735288832 483128772 967025092 95230762 255805225 951816002 937834661 758967782 274619887 774831978 772275047 31099520 937972500 223636949 881893149 381685876 469632402 516536304 411104413 504182094 811203965 150764794 207112022 410645746 977365067 290491361 878356502 671010876 948708627 54304448 251782015 983637776 72508063 807776838 196888551 788780871 713062522 120041174 766938498 283081643 828931854 674784234 680504185 999561281 766582504 382170231 253567032 443852154 679706193 994141509 354500330 605591650 463345227 282125246 623885735 834458770 40047538 489904899 664121011 547760659 670989236 731879867 587626362 40063644 898758233 12606264 161914511 575005635 726985440 670989236 180517498 698961204 72850937 929255600 689901299 567850479 452090377 919397450 420243139 844042645 722274858 682961849 977458116 647028969 213064333 837766292 730600082 398782556 200721685 925604022 938670522 503294947 373694493 929813865 329448989 837576634 794922152 993196858 340350052 989968222 721814773 722182345 916152302 995632621 873546808 966871359 896651410 59019340 858068844 689430418 979982629 488228755 799669532 713862396 509644381 339669742 922387709 485715544 92900467 810116350 884302153 785343602 865270050 256214293 751651383 890085266 798295463 114985137 993583774 869057613 961478148 932589159 771195939 673131197 750776728 39779634 307980494 15233360 984326765 52537955 396757621 805874020 332062842 485226962 73316348 577387464 320583160 952378453 34590878 627311967 885827209 464400758 242554966 5721133 865091239 592118041 226601193 953153410 614747751 304079699 53662936 734048462 920437810 746072885 476299275 549191433 412996305 361664777 757432258 672169610 706147168 781049315 740437813 252883022 806438852 544318442 384750004 471392145 828660232 510720466 786982295 793249736 990939317 224704444 463114883 824612724 769366084 729338830 94889535 463099208 369071509 418404599 44627586 535998754 751912215 770957588 959745711 677506350 313052094 581967336 952876776 62924456 293402687 953957808 717188504 745352615 726903334 267122486 163947426 973520832 837195718 479276489 439159093 754428975 682096405 639833744 750692648 761616583 30609103 88892741 842979485 487937353 575265184 366901623 739373572 720789428 19474590 500781900 648739320 698939565 888301080 925209054 49157478 191957429 676078852 928040399 88104251 743176640 556298126 203569993 115243606 200744968 670989236 225878619 844724709 820329181 448812331 805025523 959269807 801645869 860404508 838640116 727121019 78093520 28716375 991638624 306799129 609331356 141396172 46619613 920305115 834867213 403906934 442891634 740306227 884403421 14598780 527433887 213739405 486181801 902776837 842509468 356473096 72447345 968562039 775679114 743626617 415233144 922172912 325629835 38590510 459469842 473427286 434883350 846944993 971277662 32661321 971146239 852520989 619090756 564575757 227671389 190401713 137948234 984453148 694652376 920449959 83473760 701109222 686098233 444447153 621219003 414678915 967920620 725948642 217904327 745730612 281331905 21978469 671666957 357961251 100817793 830508400 127133152 544892384 588103325 962943046 104944555 637656192 483906162 860887160 286352339 118015003 847715717 690299432 857241507 59312133 820279071 856715941 672984915 755328505 995179558 443201503 96134817 176818350 20149542 968046334 419064575 142113158 83844377 532115118 220342678 71400473 215657939 791672708 682048761 872475097 644455074 777241760 186924839 922856818 845232449 509373216 466987926 776717677 744271427 844283065 122116450 870488857 819429833 355013313 915178496 272382247 763438523 739729646 709497724 156652753 952088203 83624033 739541870 243107548 851600632 968284998 494323005 634213295 769303683 536612245 972170841 708032570 552097604 775618136 669971419 457982619 204505317 993143467 991140395 889616359 108065982 790634430 963868610 274899362 880479876 605908809 724433176 277388577 154833991 373684791 368724105 905161517 521026903 176969916 954739747 877177007 164548950 164026595 480283667 468709489 97700557 95723339 806224523 452547967 579756711 106101861 921510848 892753489 279529453 261140260 243914905 746785651 639388110 932141979 786223367 670989236 670989236 463540298 670989236 697214051 14326267 937435482 708765474 937033606 49305329 545840598 542979939 996151556 85117129 200217889 765544313 882905431 206091431 768049565 270184124 983342628 644063062 462086964 709073991 532066132 373399020 815375542 579824543 131305732 948582018 999632280 13924771 670989236 252230551 778610088 311911562 801836131 881601995 960226216 855257954 835780541 934176428 37381855 6890973 995995098 401458751 240802965 784479858 635421754 830855173 792313440 193202400 375049035 268638432 44704508 433879830 764396562 274004726 758930612 747198772 100383574 979619965 308374849 853619174 163201782 956534186 702061322 255968958 396911028 426412158 647944441 963858474 288592150 811092492 305969158 503324469 829882566 801572014 62928792 789344753 857905891 94340866 243111653 518626244 706354540 994126641 724787743 944393005 505703146 356230812 129996390 95690810 996396065 670989236 816829497 169355499 88087569 713455254 459393766 955440327 540835216 311775333 163486388 489916175 478743939 813225586 927456389 406913493 5184874 939776200 405125743 494196922 514552430 948907325 749897668 843962657 503318078 882923247 745461803 439381260 359656891 911319324 799045341 791877536 848663930 782209097 993137558 831240629 175812022 460928610 360428310 22479738 738709702 262033984 922877356 732313227 395678233 992455733 738799144 726255750 160912393 595033215 722159751 503062000 126323029 674246246 997732423 885892471 883548848 550265978 87674179 33685015 857297069 815857263 909792704 704405657 691464118 206936111 833542691 847758487 692660825 721635765 553096704 617495613 881573632 395187741 911660672 362699988 984706068 41657829 426403277 496639696 287278671 659739338 453720640 423916324 693616554 139657789 801035691 762625619 453641762 581704481 737579739 916795630 932378103 883192028 422115751 808120336 228210880 2268844 629327569 681760850 980755575 243526994 403170628 776831312 324426600 822448816 4085754 914601654 507587873 765454722 547514203 349551938 934050799 969194754 787065448 798541328 717319337 560610193 926462179 645026846 59309312 585228221 968472605 981155648 872526073 650002190 974550163 507064967 985264362 988058695 783698455 244250798 428057651 921853134 904776707 904724563 132944122 893383675 969796578 726120199 136828830 69627795 513793708 779817866 275183840 254163326 83467110 555554713 894384980 103611283 682318805 757465410 938359031 516656198 594836482 566284329 908122353 648967974 250863003 463981876 721578569 453465632 857302405 736961267 556421987 328751839 767226188 170244472 670989236 397327618 219615674 113359302 907190150 57287431 670989236 670989236 185062836 590134160 478983904 506296219 320215916 222202146 16933813 652251086 808458120 49827291 114817485 843768316 443152214 757427552 587924220 679649798 442648266 9247585 903707443 945741957 373660652 393735268 967647576 605016842 320761313 628993209 703153528 284344307 747153243 684601123 768531675 893572290 145650184 686169438 341440834 188346695 472083217 752935306 713303868 902085457 627749062 662466877 593715294 832080980 990413615 855224709 686720238 912071902 868723723 52582262 551852266 907180563 588712893 591306990 307482436 697504461 7141696 553923979 558630737 576621768 311417873 196913407 329595078 851899740 812072241 68253527 969258300 154167952 900221194 831425932 183440330 679861262 519866752 760953409 801045150 100842003 300481272 911524985 233410891 516773985 915528540 291075206 738732455 19987145 255813420 495642538 869739260 355256871 755611196 803300342 431175729 817204385 901831051 488332882 971814375 359466188 955374053 96037902 985058810 826004556 702573412 837471549 688926409 14943540 998769050 862208491 345457628 923689132 957373645 819547136 700144184 779684589 403801994 97170262 427457412 98695473 260420451 481729281 938228457 833108342 664646473 357538738 508397684 915289905 237281195 130488148 61304360 230466650 404206963 586601201 762595415 299194699 969307049 50558526 611601030 359196508 798833850 840454042 825844958 815528444 946575732 837452899 309711534 377052522 866993885 884704560 947424423 296024021 930825641 762918933 773863558 899888513 168754423 684967891 745293039 999509113 604461480 696571677 902456653 217142767 850609373 110505124 18609849 631194210 732136820 89603703 621441566 945613408 602001918 609716730 668657698 670989236 938635875 543828523 883268235 988046705 14602154 740699920 861244048 940267968 987934193 248938311 496436506 15153113 5896426 806838289 86760043 672556806 972277604 51719075 489233368 300940327 6466596 590940829 695216974 102568387 148521152 829219554 807701720 924960799 691890127 746070246 377055831 957655067 387997830 653559643 675926377 882839766 582465906 866521962 645670722 679671166 360727254 214153588 691801358 179171587 316078383 884661939 6473995 214462926 325423376 407804447 681614313 857125083 517832562 542866805 262702696 628884903 288453857 904617568 40156006 639967726 731135565 866732980 176940538 317279638 977703330 640155990 113548313 624908325 679963356 932135445 821347965 279405489 954356035 969540100 578998962 142823819 864813055 729517190 966226617 997557174 821605137 224121935 783956233 911024031 867017574 174310938 592353663 816879734 961360864 908100878 431101691 772706089 183818667 754075731 749728676 531654638 745977942 862168375 911236832 864570084 756544099 973968773 770022979 827363745 708141006 580572421 468208286 942729303 598941593 564305365 805542756 740500176 339135512 582737468 288744599 38234411 784547537 125331898 861427889 245384962 990808508 966205523 718391450 995645359 645422516 602113992 364642567 37901736 499073722 24728387 508523424 149408241 407117753 209507427 964208368 971968707 391964465 909109744 928895380 380300449 841141306 831980939 148094598 765131411 744257877 57950138 856711774 89841633 320063785 614555349 760060308 224006760 898696604 236617143 951515424 968484971 245285788 976737238 371478034 118669728 295966478 549629008 419458980 942066134 681025313 714655091 490663017 776410255 692298543 981362084 262667634 661656749 175907785 897840601 601800499 853234166 849630888 212925231 950495169 346391233 396437168 853004168 816803132 297130916 882194616 974157118 522265705 827571333 685944798 88081345 832907794 301962494 648485542 607941127 577986957 429377810 469740079 690339247 936067070 484716625 311872047 540617857 679473508 7067075 954248920 687048252 619559682 718407595 957806226 801823646 34514591 896094084 676376544 823325059 807261540 390557621 908961975 754082409 809777386 404819593 635302072 359766048 83875889 550700028 135725533 703320851 723527311 942879937 344012275 948890690 323729728 348278912 317464096 156946512 368270455 773431739 885443038 732338849 141585515 214373320 805877501 366827663 929675876 813254508 603803905 70563288 791018508 66622631 221765395 232918291 243180645 767936788 955845399 932021025 837958875 463342420 806079407 492414222 816073273 780819129 526456758 86291534 133386784 772265620 258244342 77173134 549693406 678656836 271767469 615645992 742600640 678780928 806955884 919269831 655708943 327890605 737941204 573536919 832866829 752535044 770173177 541616694 699988020 40388054 645425480 474245678 149875273 926016769 995744861 888156580 154705490 916720491 470925655 778417222 401321151 954829302 60740204 229983020 133178376 750393225 730694692 242559414 276870228 826661020 807652297 625084478 931423374 613729247 704603593 102803591 925064311 810626563 635179804 563584033 765879913 932733459 912821138 942698009 957542152 671736110 675362422 60318945 789539607 787197821 972684781 959099804 616474052 964093042 248982122 331001459 838523663 106410160 41905418 935398616 303910776 956320359 197336349 903223471 100246201 669248800 519873803 419178480 295017932 759866086 857253538 27396083 385754927 728515132 989999772 860148357 223096688 816630478 439763546 901061859 252174699 288245592 257565419 592751489 748580718 940857888 818000139 275723462 501241019 670989236 685752369 951711280 944784332 304421016 765313188 970396887 379103780 876107592 790042354 694484324 303881815 562012128 531522261 359216136 204954155 734156030 314689805 912337544 41382062 193619881 870011693 56179200 345069464 760739137 184205529 786865195 842869019 739002640 390691664 883631736 818310356 713802695 935890599 843555178 125221691 693627250 563927557 267958707 853789146 915291095 536222748 675772554 580331573 748288249 602662016 23721183 601715640 76136889 87902352 988148717 12436308 966694072 339546498 160895396 243018277 599821328 737650461 966363776 792821389 85929634 791213883 394040409 131099821 616731738 654192302 852184307 459003820 63412957 403157286 652668320 168121397 866166444 645497780 738353520 498819378 98392739 628773262 881769849 647044467 934801834 682803444 340547658 731468292 669098759 38195823 819772466 587171703 807077671 937505590 802919285 199866878 953376074 826760633 913646714 572999275 412074070 603455247 717150590 342028392 873308093 823491461 986777887 126917607 103014249 838991533 988175240 304785995 479594479 107982938 323044467 28340036 670114736 867404824 429221031 440804267 633058998 670989236 195422589 991960577 395137682 709698113 956613201 705079628 294314731 936341130 852173432 204069782 910577126 316291580 730442671 683241496 964182151 808362156 772693458 62614475 975743673 515994599 22553043 724732137 865048735 695443379 214197818 278567186 576687318 818017655 978260908 499018720 9979746 852530880 307204917 866971375 188041218 684943419 211849912 313856016 209899611 486661789 987350844 195885902 515128599 894702910 12287845 909961961 883112581 906653795 990071568 843795552 567699478 261084971 741311123 907684251 828508350 175301630 898080500 874519079 945094548 120439285 772245940 838919071 763548950 461112933 535369803 670989236 414470108 698112984 800951396 481139397 546197401 910899337 826230925 218801386 236682139 582663212 880889295 236462309 473177986 103617776 914223900 793910912 387644981 341582372 978101612 575048436 811065275 190890006 550482192 732615712 447946251 670989236 270632950 868296098 84034805 624216027 934465961 939344512 16503506 207293747 938766704 517162980 71572578 921923203 951739618 887153768 709839766 897157770 790636891 845596257 929080721 130420212 399614470 998180769 917043695 489738555 124536204 863124023 979576410 814746241 670989236 327988384 543185878 833542313 234600181 719503577 116273937 670989236 909229324 787426705 432855270 145727121 683881516 327735119 172396472 56654792 735261230 677134780 166491017 590739399 510641574 636784685 602011414 533174084 381896449 568705339 721801082 769884269 763889153 530716444 620828241 351208678 148080531 975365428 785930807 33332956 975118650 970141080 815391361 568278561 740578655 840949008 827884261 194335840 471984445 903033012 777875667 865112343 415042384 140203445 996302671 442022295 905934470 33958005 812966771 236726698 53838647 32043246 725535134 657069582 155975880 139015806 670989236 332472770 939799411 264756651 604497483 303401327 609373228 587587396 181751422 690687970 78165047 763890349 145020546 157635672 16546180 646645503 464511053 952416850 387988867 919505888 81918956 534729109 959776641 907522504 67611353 935051660 742594694 760005305 925941700 973840282 974580070 871252318 89636935 288863845 229378035 532570595 103473637 40653730 872103904 917443954 905033984 877869983 912312761 863018814 752187625 240439364 127585811 163000053 884617042 675654465 231112662 688379860 803454470 281410577 827308518 759865893 511961206 371335991 368699612 945850869 592693647 218102790 724153531 46949448 670989236 464412785 47179453 262792619 117032025 98191690 558324541 795372967 888167645 796819762 283130018 678789509 805576200 130711276 116894081 724692136 295404644 847319971 570044998 770584364 696439568 721813154 946507402 813303973 806381091 406848532 74655028 509488383 917882914 920562981 452933773 993988816 555672885 942045941 998814388 184146918 721222337 881086400 731871420 91537692 860952721 319027136 672829464 835087417 815898897 565705886 954500216 988658128 109374103 481578120 896270971 889160684 973841422 132722630 767013789 927281780 399735119 330165956 157554438 390450608 885582512 720229802 505705189 916628911 455344073 183342940 185713504 37214794 280480545 17904744 597818096 216717953 812284335 79923869 500991599 325106061 449918921 997692313 70646284 375133682 833945287 489916846 480076129 171034447 256127697 970468519 960577333 120353104 104751787 993634500 894024117 765661618 539249233 521853572 421714711 933013189 664376609 7861573 963017731 110976681 763914275 115885024 496249852 473012459 962563456 132424785 577001553 301905780 567711015 984731740 109423498 786881559 952904005 961023373 216243718 40961902 750885270 159542404 211289449 737456998 98897358 796065920 572774665 560754743 845444261 807185017 990625018 906016959 801393337 211254701 678593095 615915347 434366896 749394206 521988215 955200060 188350073 833447463 258929861 848512237 835369437 906357555 741629173 798353906 877286934 688579568 659601379 516782749 603035856 21222290 180745371 455933386 840768753 462089599 530150335 831443375 404688121 294367709 693738711 208253684 871984431 604475559 941132911 236441354 973837487 998439479 792644999 524881882 407487329 382952500 711024512 780918648 947888955 871496240 681735077 786633234 864596589 990077793 205465418 70384783 631537491 375565581 735088057 822868104 82115595 491930672 412179058 474849987 243026884 670989236 351299596 733727656 33127658 174122663 908314491 948476967 999221042 905729416 734033213 588520964 114415244 172172772 711194208 261020474 647041248 15116420 394284453 213421600 98813698 350541992 736806124 786639796 114334664 301032923 210166544 967793856 592783268 547250736 720555880 915110185 896294986 379473851 240356803 395816139 173200213 152034552 832747019 699266565 474103053 637564160 862066490 874192364 41828570 892176593 388690890 600891567 873468991 535162905 71055326 377659059 579390437 639428509 911022418 764582717 617600174 628663535 742209343 312064872 199238050 857543463 146688813 462299961 109137474 591352208 679253731 956742607 324043933 392157118 333679529 217041849 314504026 895329390 417784723 854717496 927363857 983466407 420884307 118836262 570477828 569552900 636198045 445932591 712289430 892555885 157790904 43939261 641363773 48105809 886471432 345128428 893393710 658707101 592467763 551396115 997179473 241135115 94974977 239377204 312314155 801828475 681310356 826890806 815977643 996123043 515147624 540182950 343139626 372477751 27395146 982601531 297073496 550658764 117517618 536277014 143685065 882162780 869595818 937602765 697334066 820403792 712292921 766948777 623714278 775944846 742237056 649915452 717783479 697275519 987265172 339361147 378970458 241638902 691017303 908795472 100095674 881384269 250644230 670989236 564564313 830300542 499295401 652976626 450081550 354454293 169316762 929727597 984157896 855277507 550494056 777947729 818610860 902607936 480078509 703112183 850319977 676903782 412342064 705815981 856939601 328311650 845796103 826080661 542737954 691155764 548819293 180002374 461776233 697524807 825196194 930380520 904481295 605946829 394643813 3128730 847086876 125049982 638636334 31691893 416983633 252151988 874451863 975006852 745826235 216540826 726980694 769814098 905328783 969030415 497981786 810316337 758296479 778471875 496686238 816276568 799352268 307727564 793066194 964813602 751576301 345680375 851520681 339459870 709615959 191085489 220859528 951542542 63073374 610971011 142034318 63919498 721107569 626089800 691854676 768113989 519206368 794541700 904157125 945027287 442073834 74488999 840129649 9956261 147298254 930786981 905365405 770582690 732156783 516534318 290425655 432110886 858660532 86054729 760935863 509515834 893305425 935663487 390724382 942380787 146179074 764681874 505467739 152939398 661012668 403000866 335552686 727937818 678277552 126784300 777027291 785229376 142241596 666508802 17822825 734938758 957220091 930335284 752840523 307759087 543383958 401493027 284476467 959097488 919391184 684307589 704397947 852969236 683722722 120106503 694983126 746222738 689768724 336366093 317891402 356782737 669297689 971818930 893544389 786628998 807545696 946484133 2811248 729207079 545873087 705450328 756993777 32829612 852463479 860961354 73624172 999852715 225565425 777324878 35367945 34369553 266082975 980757920 917937288 422037904 663211030 819597945 499455670 736852244 230749110 807828210 952491709 818585251 838632881 283393286 973627505 48732865 905908187 832492486 670989236 803400667 344727461 37033783 862565886 909473579 18691578 173325665 281865329 354160720 807020078 487234224 812815868 887885919 339156932 821061099 906328333 842525969 63594403 375189879 940705633 293544184 690569660 286539460 496805715 246438519 826659768 159405293 918985105 417745496 232376245 446815334 152404009 432072606 617717725 43364406 775032686 838622878 905601100 713945667 648912992 302208196 961747156 845791569 766026633 882015060 328638615 649044530 354726757 2190116 64590889 32984639 426105244 276689922 437486734 6104566 631151484 8056013 738522209 956049778 679632830 406579562 952158469 264471452 57348943 914265446 945980620 262588355 949129140 938419811 928874122 293561337 296908594 538499307 781907098 991853536 815882286 821478243 122896908 115413305 611605230 907619902 509670591 342946545 120447489 553152881 821349834 856953727 806742857 948885901 140514925 702161337 794919993 507543302 960580507 837773406 692405508 742800677 917719637 842847175 840698721 817898003 957295649 224511760 725950984 173364941 319618709 440721461 234196998 883523164 101675475 94079180 113480035 693713055 726726659 762463773 592891972 252487523 117869120 539380540 962093838 252702992 328957162 638992716 253721532 210429219 982653436 996082214 921932675 661894101 80760519 151654927 802291855 630708003 797346375 388641955 938125017 145013126 326112284 23268669 663699448 943494353 310124044 713954014 449612515 932131112 723914323 900206954 833627442 272243464 197162633 291719399 622542891 717406284 4528294 690935821 405070076 184397160 689938516 944549386 20994380 905742027 454817932 920635523 795738752 437554068 915599851 728841695 892606869 972938252 787263201 251526633 328346692 72620489 772896067 329587905 768633565 424310054 778736927 959105065 882543658 831036906 483942732 892419747 850347948 781271347 292687256 759347369 891749079 398484836 44519858 899287780 971903731 96519357 956952533 567467228 224621713 696810765 880621292 843309319 607090032 832063124 646416020 319029282 899321771 666755286 409154257 826012697 306906720 202408864 923104405 191860655 810367595 69809973 863826434 757538348 880933065 978845543 221246418 683421312 426009323 731423308 317927855 392396361 608507286 387949170 987648981 209309625 762970142 936659142 701795964 973170466 871742555 848096124 885102429 961591558 723041945 885744038 906728679 996881180 687078023 954172966 705464132 880235411 160448583 161522694 881005822 337534553 759890985 661229608 891633740 804512120 772161694 867922654 413090850 931769921 121064340 810599677 857726151 49206775 564545209 987967822 240035464 888189800 38989095 896446880 927557575 507127049 860374364 617175359 787395515 107562598 724689428 343775385 696174222 945551238 184267809 718250482 739316916 901722915 512471415 553093530 585535709 464144657 670695970 688349022 812062298 528094941 274388136 377162614 858111260 603645466 55333604 335092027 991625885 209729112 160796022 846430134 982716531 810047444 37031491 27607378 55621236 365272346 681451478 392699205 795334316 254334085 313093606 195199276 66282247 855816668 392402788 96976571 286384275 856461856 853764703 819967992 243803951 855360466 366987585 158685647 87947784 231989253 728230114 991832125 157846689 341386697 595804067 51712161 870825972 866309420 612010960 726833934 747921101 753269265 424108401 913302313 844459183 709176983 65800312 963196026 602389462 252221411 458060437 702797757 224920875 843528122 876999266 578816453 323432568 257738787 625356797 816494358 920206032 535017035 933418670 266148914 782877898 197100534 688292169 793948658 934745416 80750867 605888349 689509215 867777283 348493230 325573074 986037911 956153477 862013463 242584164 792510844 712522275 869208771 25961107 930835608 783517003 688409654 721928560 777107399 274317384 707771900 565768026 953876289 229369550 967110736 829067569 758443845 379652220 116447210 729900478 347959693 96742862 621136249 500055624 859002580 596005751 717790889 331564708 919717505 239542095 40477775 670989236 818529395 410110911 349490092 696326112 434558798 889995703 7625865 107261718 826244427 743750890 428472261 838430603 767057486 918343720 670989236 993221980 921636602 208449016 817480549 382662371 417065658 823865162 913239678 977159761 802679505 277768069 853750864 445089313 805383172 884360968 957459165 611232212 694501289 413550083 618442702 704442641 271338663 374711257 261171415 976423477 672978892 550412658 536797426 921540511 212533303 489893579 710425815 614570140 784384654 621229106 825750312 670989236 692657712 26822395 339691636 300725658 652390571 763947673 578159940 184516807 180163434 917553988 260143220 773299318 654530240 491176185 661993363 862735088 933490708 550156507 816264420 127306534 634264186 674028107 822373883 688970813 442478778 946797554 824849982 762207869 99757992 25857667 129738469 371513036 972763140 13610903 92881119 841230216 785628616 283865087 913128963 278504415 973592580 721848443 655513380 402394947 671978022 124763011 898239327 444046802 154694837 518396707 343785142 773644192 668748831 670989236 725476939 949288218 934568094 967719738 756635590 936598735 973232147 206417937 735664350 209480226 776255761 280464979 58326643 198522443 501449426 64642093 517832057 651338180 837303212 586401925 427504532 842073975 797997676 997080667 517314524 996818327 273954772 726798910 670989236 641336788 917440122 696839466 856564032 217513470 709044827 146386374 846972348 570055780 778051747 377805354 182982689 146706158 987512111 919600407 736036306 32270550 673393218 802258786 867519923 63340855 947081482 885810644 134606388 455500422 850245535 905659856 932855402 825676946 139867724 876793995 620574828 915307260 809326108 519040046 998464496 903249344 327433405 511158444 375217682 670989236 259210146 271005442 934589451 787409394 979824542 275935578 871963949 812074886 764417413 714727345 667364044 85632343 560716416 757687476 966376598 745822237 725231595 785933515 196812926 735361658 305954216 737579253 61228816 796027882 726916563 121839681 795521721 186215965 708064759 797427761 748251023 6771506 989338131 209156199 76318816 229235891 91233932 405553332 958545684 984022860 735875967 994206288 324233883 905316667 637777686 900525385 102884509 140411613 571898939 683303069 836433520 767117119 194769063 991330822 461116328 920946118 730368080 681763112 213803998 646458227 787585369 642843271 461702466 959332389 939513690 624153976 286320641 31423401 680357109 717901013 299705678 650004437 234001119 260498301 841755024 608565295 744626113 27609071 874608479 13979434 234437257 984235626 945670093 30968163 320483334 890268231 282958936 928841579 537823039 343313068 426675024 374969893 937941290 904907341 864336642 492952904 924801618 979989968 850904604 127376417 869825121 282486252 326580376 74784471 489374598 858359245 745834312 53384959 505064064 205928236 940232704 634749696 732435134 671097982 826752315 455695535 718309811 888066663 586205545 775985340 163493296 108834710 437066768 25466507 985764795 437421557 847057455 952836749 604336556 277857591 344808985 97082341 699986377 319319495 482346237 670989236 182889699 857454083 768473235 622180591 863039290 208381020 329565120 602013936 786917675 263885490 151675558 703438517 149235605 733573955 786674576 862380806 434299048 780702815 707070605 705083159 173636429 94562408 410655899 807701164 932206956 779012663 317769145 832517571 849492214 747077500 670989236 620356700 848459446 881419365 936823257 601908203 484414323 754128810 832691601 152465156 766233524 905205101 592317716 457043189 704931761 823713730 516594380 199579437 166167693 392774762 92499975 429003713 746534688 950623666 276865995 322472923 373372742 758634305 220660163 243748865 320327291 924715166 942586291 383504545 948877449 66459921 291567722 944884232 63149127 410627093 115268154 182592936 651886849 243290633 882570502 369476896 314349663 240477449 98341651 803177852 585049537 946894865 985983236 38949958 614645983 380800993 687359694 333860221 853543012 881782092 896403137 877879020 867299566 543234456 67874173 878389462 90849193 891804258 364794421 181138392 934535441 831564147 519478976 731795719 797507211 15726425 994443566 997225643 839636667 695834061 724373606 758398321 965435871 475812507 544842434 950307702 615334436 774460693 76256822 502846345 796698172 608328372 616599224 381185073 414593366 641899001 839379923 806139974 705757846 755698238 805414475 589658222 42262392 331076764 67546286 496137316 703935128 114109635 473078043 266036223 722275853 151860268 979088239 657178569 233497041 896571551 873614910 367280975 45708904 600984005 475634536 934536515 152992666 992157629 486459525 764991660 7233926 995464909 137807665 538621107 113985038 121912184 244908642 707569311 361433804 895111571 191415728 629167625 936393670 674634058 822428554 503816993 68125586 995685654 609702256 171996399 954120285 257331763 493241312 733564122 744399779 271652418 685239740 662112023 569627625 920298873 227078336 969215537 872507187 197471406 963066196 298501665 601354025 564973158 359667105 238822855 408356359 744682969 799523731 687998623 213943266 900527449 814706624 171183652 453092349 848832008 430698083 45035325 963700470 217921666 799385870 156996085 629867845 811810721 939573939 801695648 69856577 598231605 689273189 839554051 828895612 671081389 730276079 938466331 812163812 803146621 322703715 857080689 929262709 976021488 444211831 408932196 897679896 643557587 15077166 230376725 880672624 64392748 749666048 711838448 273650122 933407196 893973140 620923373 292130708 542086755 189228998 39553356 850640029 954528527 837893131 418076085 833320711 144046772 126168188 60969188 853660791 958794697 161324676 964016905 516984363 551734809 127843487 291806377 487313681 786904943 800378815 776275250 404345967 22950053 768744032 848369052 302398488 837755814 118083028 886533662 779203038 959980275 42327007 477021884 64364949 356921519 921538344 324688827 220903307 761439089 92117591 966035881 144514508 563793226 883869719 826915109 269331670 150869055 167862409 29853245 732755654 808794529 354311305 790145749 623939475 434169277 730599205 987494199 184694802 353849015 91672329 821078922 662210708 413598983 275720789 665838642 711429626 935932691 700783968 489292417 998185345 226052848 442173463 944266554 793464956 527564931 816183480 472890340 888771505 980739511 282778919 889057419 954618981 902164234 735017783 241012533 309812236 901606764 385965555 927102287 220050410 335775411 816122720 947536526 725544826 585736356 88906780 943819555 772082336 292503353 165515488 721328653 238648012 300092859 248823682 196933560 499080037 180449436 962527359 921552839 690655277 40924467 720343232 196788912 714156359 840448312 179623631 545837766 739849168 949586009 985804258 413623236 818894603 135195605 716625492 737432529 429699940 707629652 337028154 177742048 754785208 216343864 612400243 688726584 755759873 782932427 706541195 253823852 19940447 340721930 123071004 870663169 387654144 741296794 492668297 761891249 937573392 827336890 192073651 109380536 906104773 645632307 866677094 345575397 839062542 9213991 219684135 800458199 697107697 737623159 691660281 800103592 557275572 718849417 797969361 271130918 739228572 498439135 632615623 984472769 930582341 994656959 797246728 801336198 651030350 85475630 947632566 778750043 563100123 16884058 771380204 22539340 994338249 994682021 743536303 264030924 949417168 42409034 616842019 810634581 871347402 359211047 697533545 309238539 822926911 843638916 916430535 186285275 715827830 60082287 783268362 416500682 754672255 716327862 482096697 859255234 828628854 677621674 4854228 425380085 926207653 987679488 244392945 241386134 73674698 170795042 435568392 404758317 477794903 323238818 266532059 904083554 281707309 556422139 488505237 269371684 323649027 734242411 739911249 684988400 38921758 690110560 911233091 304468928 865031916 863040209 899407233 754898810 280077188 69319802 367726803 515520505 350925243 923635046 160320917 409864979 795028676 398095867 474374590 835558663 344943594 461875434 321030504 781200375 664126351 414959444 373700296 368956102 735126839 976158353 852366170 12288382 945577839 907501751 887675446 400393257 739752071 181235387 525917401 810521954 151239029 54548475 340867791 885092168 46706593 183324119 855055471 848937795 280887812 331217026 962222443 209477298 771976113 628102778 83978433 895518593 184958160 709665481 947453417 833890397 865512769 398587464 849087187 891569351 215839344 990861046 323919162 998733816 896798708 416672264 740185899 877741222 598133512 937026541 762054429 900570015 676296989 920368743 778930700 940631559 813228331 799075965 498910981 336859936 297648234 826857432 335892169 549257388 336271266 290688582 928700035 309877094 202636619 952605268 926290926 162890372 428076327 194121432 677240206 475150931 153361460 270276588 222526727 941500346 818714229 82502657 674752236 636549279 995397068 642571856 484361917 712396625 766531695 699601449 859015163 24418007 366591032 964472876 782795847 747981811 866425983 998866554 756813818 198511373 833797756 734078131 811640734 170047697 733480466 219440823 79310669 959061463 153741931 273115142 474169612 362419904 675942684 302564542 485006924 83843554 727510853 369783402 74168408 899928831 205309720 28079488 107834494 643847808 881474233 318774538 868377383 928469175 573773364 808448580 676167331 701553278 460839131 691311269 819423421 133510540 233042469 933446196 609601025 771236344 999355675 119146465 198453190 765485175 83631811 970680195 512936910 905905719 916252087 469074684 356025452 558901504 266142833 986399367 682080530 925014287 169945694 692764051 997837331 736211784 446228670 917558393 977035584 985565565 471535147 956828873 623199899 824240682 800913024 178411215 443930378 751544555 711046882 442263600 189756053 782788787 672079791 156653167 539010442 709608606 43988187 782522279 177613307 682389612 172478601 67513304 702748137 396459693 906088613 971751845 856619033 439082352 32372287 982168815 870995188 688118363 839065097 580433762 641917508 478093313 67883474 332315706 169258647 387756622 145666507 769410108 289101961 582191672 939796359 971141967 914502288 662810535 88930493 498742696 615035458 379953514 474398184 696705574 923098921 269950522 472623712 174998226 52346760 875919844 818530703 89555418 747027279 931497502 636551901 887494640 204330207 447958544 60696135 88239109 971391341 774469750 660939621 821002792 826700369 860088980 528436509 451679080 878194199 949776614 967304423 714966656 856474866 862514435 162437032 151700615 392253358 180008700 952039798 97209419 220539454 932480586 200598902 126899624 879071751 874145911 718942861 899105415 406471238 907049579 917550347 478207287 771123700 721549408 226786491 628350338 159983686 16884458 795520546 397885183 743135096 136351991 863062338 330894487 892856280 938893370 66644421 736348334 707471390 755684669 448335904 840981519 57138330 748822261 223221022 652850879 597424762 824681920 688147553 593840799 907364054 110114028 804524093 188263579 436073872 680542616 783543559 545405311 568825313 843952683 689836227 724568337 645203799 60590899 355361256 411386458 918383863 731840693 367343283 712615845 550674980 7812524 552317229 738037597 564448753 696646115 126310380 401813511 265235450 936392692 431564253 675760842 813935978 992442111 437289375 417638895 701443488 696521517 777247888 939824769 996756510 940551430 991198782 992741165 360524677 832326309 891941592 609951670 861620551 953215747 868789172 818067625 578515408 948341820 697874424 522308377 326770680 940224835 973135647 89556442 816087479 670989236 875546762 689821317 977756663 687663786 159288974 833920063 221499164 888521405 568286191 701356561 430161233 417942284 511544623 241350545 853138485 927593979 627432703 364829972 117967412 790185494 2801781 112729280 869755460 208844708 642434808 169077539 807931431 117816847 923095355 799103490 810535041 750198280 714072637 810581638 168354584 690388219 740967467 754389312 862014972 514326617 828175263 786353617 863137276 926066768 538100057 735548319 791069827 213212170 985222316 937100608 725877981 493032838 708438559 908404612 306087501 859001969 391312475 99020002 714481676 842055086 43522304 819239024 371890527 332784431 931729876 801370332 910457737 863625593 821254275 937780625 369214027 892276995 494623468 698305532 735335525 827761078 369311963 656010159 671768768 585758044 740033140 672359086 77361889 394740560 45557340 647531854 964397042 892697552 795587547 446478079 821501421 475302855 888002653 610250818 419992454 644866212 555967636 732238359 574967811 242237751 925300297 301625274 341034724 684295629 32243447 267843354 678124771 904467894 858131112 445817539 251767818 231184428 295576240 68365526 297243163 792542894 14292877 762839476 752098108 804606491 309377166 171609873 143327427 677747714 632323034 872571717 897790072 816170080 166134505 925239012 548686142 690961660 76894882 391047163 294762509 314350974 358481454 716302346 765879442 786299022 697222835 987334952 140104834 900165607 943024297 527387246 834378040 406808631 310131059 124766350 227951530 677760618 276949065 578122438 904012224 621865746 505870673 791718412 727127567 354945474 39255997 927944533 476354356 968419147 930068662 34693660 970101687 981209263 752954050 474784134 249385535 500029441 715812126 734079696 204231548 821508793 165828160 694849612 263366725 822812512 240536103 626256069 260527498 258699535 451129153 727364818 963001588 734026206 703222851 985097497 278880413 818174460 743748698 583530553 366278872 27265554 980709080 831890223 161652354 806331227 770637756 477927393 310587189 422336938 735323552 408845297 428967517 218746579 16519781 970046898 968610508 2416640 793306648 96328351 926199992 909332742 763448945 947857975 414839273 892337315 873633615 736646207 804623461 4100526 844884488 38073056 51017381 260486908 931251301 760227474 893150362 136505879 680937865 163967805 605406159 873714799 751000076 760374045 274492907 211478909 92773213 260431748 922619779 658129747 22542946 342646599 348912087 470758064 852181299 702012496 917703533 876760236 847984126 976782623 595113059 233205570 940889605 680336619 900031804 671494923 951949701 586607173 107994457 935012910 781619036 694281943 955259678 767393212 790998687 720312454 898754988 841786160 642906373 629934198 838574074 252298679 683699010 994691928 778841328 964557467 940321304 421027809 805065268 309089284 823684407 218551043 647351079 143689908 851562966 670989236 338317036 688900222 756856911 477615306 655499231 447861448 308269258 541552721 747060614 929665164 959989592 709310321 889338772 851991506 920417314 854755953 750501867 415236113 738367450 713209330 580414367 716060355 609494872 204885997 540858529 939427387 542243670 185277700 894705342 675862296 789557678 153490666 541365490 591360318 601171115 689046994 663178106 999452090 680362368 797087911 641739017 670989236 894016418 754651963 476950152 690537335 339156333 76824862 776676759 335515846 722572055 949765527 842517926 509811693 714202858 438925270 338224813 969756815 149087274 790909274 975434765 387735981 627747381 346632097 383812847 687540783 858993457 866527260 801495163 716101765 684283881 499104413 682781267 935087517 296694944 464377754 741039538 753966601 796900007 48734291 47090378 39460377 896690892 730828570 702475292 387752588 794807189 182239220 478890822 847847138 744440949 171932951 832753169 971880365 332640396 817444782 555138487 762854360 687561643 848233823 191137905 80004949 777815647 420203868 549171255 972011414 643656998 98184063 752034112 991716257 851315660 254720305 631857586 437654198 997971332 991223530 550628497 962428890 354170114 94305223 943000584 8758367 873566435 713231166 981726700 338664428 727654897 97845089 739382711 524701826 837750506 442744123 930109682 306647415 770022464 714389044 346246059 592870231 725273141 94609700 956274405 737211417 435234996 979964048 547684162 144322601 829547733 3925485 432230691 987435681 913428037 837261536 651885779 311942503 386163369 962802532 904879146 592547740 372899737 84407199 954291676 519626590 455498768 670989236 263616665 402212017 547525893 552389532 856390081 522649001 176806774 945772345 660367038 553463890 877228594 693730329 519080756 822062831 175919386 850279838 583895007 39316251 338925817 317953718 475295126 917118886 883077770 4704990 790415137 683389135 910704399 767400554 764529742 731139020 412800785 614071823 691880763 924236911 939398568 570037626 546980271 835161183 756576795 432159984 423322324 847752646 33393195 864162136 261659366 878435174 616799664 787732325 828432014 624367986 840881507 617101488 83989690 837648897 547562296 603538728 592316 29193682 833265254 408169499 585548605 681541643 743696635 460773484 208032195 593566790 880044007 500732547 892691848 17225724 457983504 32888429 99614742 302819246 788231013 628884522 815969848 825036711 959942190 987469019 515570229 101632539 819515369 62631345 969329379 464555831 705105714 879788951 812718824 524020455 135809059 222309437 617626248 861596236 619979399 186327617 224774001 645318037 736067517 761468824 392503988 578828865 212425962 785284920 974899017 833589176 117578679 724968000 78011805 432413653 409195904 684708361 49874905 509164469 8893732 52680781 771377845 961391950 200627905 59292426 558577422 965680256 670989236 657533626 559717875 812459221 749022669 52845788 990816087 346841682 326745031 856853426 752946883 416113753 177650718 624284169 691957224 869807238 303612484 748439398 43390837 507915247 295650765 695556528 523372854 165701930 490456416 832778386 453772696 550699932 103858048 140482545 776004448 407480350 340254123 81688297 934293533 24996564 45937034 912369197 884106653 164032341 300462588 222265509 331234085 979656584 833425731 824603661 829174877 714256370 433865497 707600447 821044802 253111379 219390559 552455117 144504875 403906546 562251970 279535282 995724043 280006328 243744694 896014762 343413510 612871638 836260364 753933584 355180234 392151532 662157960 863568938 608435686 607502317 803063827 908153443 963082913 146035174 831094679 563757887 647952498 909272284 911322018 777343202 663139255 802754095 377293926 937437292 367637996 451367422 375528703 704648925 387721513 972750938 559436786 994715377 279734693 512984818 37596599 224647710 855161467 670989236 202903428 812610252 509542636 946516038 228539656 732691046 850670926 451042208 858457231 903383033 70391854 223630747 283281063 95653303 935021238 914663841 791670574 831668668 120629629 825858909 259051025 626783223 336414481 698501158 913985695 399794155 55703796 134019001 373937902 82655256 455340653 479430111 824798551 764028044 284405888 822323803 931775394 231662151 835411021 422138021 911167417 924565708 171840291 70396911 301210917 535623920 866047706 671285436 953675554 520443158 709762236 59038860 737068693 867706393 696368540 691838509 776662680 263516496 564767238 652995824 349871395 778546877 290268279 149506243 668908987 746228399 620215694 664970952 374184390 503904845 888099343 868242610 943275815 509849962 756176325 923876400 728298680 987600076 475510498 923754605 753494840 727258557 277872882 229772981 37812741 989840975 222370978 482319864 864847357 846778750 191111233 8356301 669619790 463661575 65712356 665898703 847074103 712042756 989934655 107386499 83857585 123210191 718412542 957779143 861254902 725599758 670989236 688413661 793050184 566192607 784398484 393893632 741020016 971262866 171837697 618623765 721830915 216339672 981404790 351373005 92797358 864866091 638297792 656646642 151551606 817947530 670989236 806428749 527480065 651369444 818921412 445641446 946829716 593011711 85005056 393085408 609043685 155782305 838641215 987015140 670989236 204607119 316019072 736980322 543947517 398507984 348903517 817083969 533532735 686510330 862065212 802977172 545152137 907658939 742476864 321971314 769262923 383419662 109578926 463377241 742576544 839967593 819436473 279193192 842565998 999228577 776640049 899341692 860121144 842352324 570731077 466943868 394519753 885489799 603776238 699729727 864765144 642576515 750017887 980156575 256079129 959296628 617485201 707446682 680763071 567107240 413955788 779455664 484006979 410859794 14393970 606337772 67203819 118668721 831283971 759340939 451097054 379307226 561624716 873089367 492621759 547279136 854062796 782751168 11972305 560829416 480113659 74441853 994536221 181858854 333734167 892566247 433592906 999572420 172270893 828510025 232220502 788727928 986121270 196391081 785263626 394883329 749783266 780311617 277532877 916616223 321899729 949531546 353552117 793394412 776694673 944381594 382482891 389167233 760625262 801828484 225349368 905445680 686941066 664632689 576121729 41752425 164963821 455691926 956697278 503933894 428274057 462017623 700303731 889635601 194936425 718745161 974232520 683293931 252418398 729986606 768530528 565243281 727720574 622515853 793630771 727181647 439858405 943153174 841807235 609479103 713194781 195363734 434716966 820716222 10604321 253516856 117596511 529665677 770693015 805563797 121865942 777475156 334241134 782222236 534620437 863988615 135089753 27608400 122131660 706619688 261038910 768559306 977502251 710367288 838555108 317477317 891510205 123998691 193527475 871336281 993044206 864199952 805040799 670989236 9505525 405266955 390107557 511195407 840163105 902730504 54479819 927300549 871063248 991686626 386897986 597649255 571171422 563261651 13936798 725792046 309191535 98075948 624553671 799537026 827387223 645135686 83863511 654540295 929530811 187367505 910431798 444838793 1687925 612419619 277354157 774715754 795925065 769595758 670989236 846861655 87125968 784880434 670126350 294232786 560137497 565404391 792230675 991684015 334445854 646870819 851056871 105866404 694782982 261258498 544410835 533351791 591085800 490196956 717364269 595270009 160474451 477068897 883259133 357776008 340394434 889775627 713776688 963773457 710845197 826436861 201723748 160155228 675139175 958822252 839483393 494381070 253770101 975642571 917116584 192967374 142012025 637116541 670989236 531855407 903647606 710921342 307538196 833624740 104434332 912957294 359811726 587810088 213294228 901048769 177953617 292169367 403991963 737372146 192272124 595342186 686633955 423394625 796321527 327665485 876331619 817684809 776054325 554256808 184514 663112114 865119179 831035711 751834764 57169660 279563031 905820124 962279408 806197158 338603367 735640316 746801658 248989256 726208780 635657971 981754107 387426475 31413017 265445752 412637242 53468240 488145241 797356058 224380365 892370386 856238079 329194567 111146827 753786732 508613302 716210756 354418553 922402097 664737583 887578744 569127740 108496937 989423157 589484538 931657420 593312117 471831117 864492371 830518897 902445594 874085229 381188172 944491340 61736034 283295361 891681690 984961540 781700960 665629690 875580612 751622342 661604248 132819644 960749509 870706974 352025141 14106696 93736632 670989236 236763853 542619902 887303735 913095165 896849687 834829380 286367186 370190535 859247712 742855824 992138729 126659648 367953987 392706111 897967977 134920215 338156322 717554178 664778886 33757068 849376096 711379874 432217011 65475674 545325691 745869140 862422521 962590808 294872485 848080822 764239699 43941767 269677963 420559169 288311780 890070277 253146120 991823440 809509137 685775431 906930114 559234029 121857622 746190843 907766828 135346976 888278280 344646220 893119507 143611226 949029354 938027625 834889902 588595051 405462034 116248056 877061185 244531859 648133328 965669650 676960524 644851583 464720825 726842281 670989236 922697192 794597172 202334443 223910297 567561895 148550501 28936844 725996752 842548618 917095670 619909037 272702791 612584633 728593192 49706421 905813202 893312163 804097473 332172317 755843960 573091562 590511902 867387761 950707888 141304178 489534801 546547845 195797070 943852673 489199915 99633827 792606374 953438299 938572273 301937473 822847401 793315261 298076820 220306054 115633384 432566574 868994758 809582160 962533322 481546582 354774047 657782268 122494633 899807572 791984142 614432928 629423335 543076787 469345893 705715887 337156284 705766994 962129465 356124045 184677349 407313022 912889824 764065172 619383752 933687150 452868303 122647304 268205809 261669580 872116011 710874453 699199642 610154481 804933126 837620203 894213645 49434503 682630314 793873659 813463508 749590673 133361695 213732116 896577091 670193626 937188686 179609471 930867580 209191495 837457015 983564326 17530459 400614747 259108983 105720061 473139856 651172005 831524934 984767330 327977901 896541333 726864162 278642959 786241114 946078098 961145466 655692912 845214087 814568827 396333177 974880525 674625829 903201846 634729127 296889660 946309625 754947048 453462922 765367610 698496469 821360452 897809904 673789292 38086939 810247705 732170687 177141908 855382758 970270311 127173388 467111149 771598309 800984619 658294835 504137440 812032361 346448113 286503150 25892161 726003218 667292442 811856397 622651174 434328556 420363430 237654155 238617092 42243329 498742632 440413724 177896768 971083960 543496315 16290816 685917372 335236506 650646871 50461414 552591266 765174485 994974803 373844310 685848802 95914001 964736029 338644340 116766247 422384734 656746044 326590417 35146805 40370818 869767275 915113572 879613588 773056476 503298482 168696741 967940495 881712966 562714454 72918569 795698577 187197128 916666503 996340981 697880932 695588514 571557959 339158632 489288469 367467044 670989236 306286747 764006927 498376100 848728161 308769954 651122082 39694589 566933580 751294917 250241383 810583852 287549117 243813207 799522627 724066846 686375903 749021875 960895871 938212973 56327865 787352289 821374905 8970776 898862462 874209800 606502870 833140778 723626410 18818745 997010108 985272353 26616651 787562487 45366167 283637424 979871334 845157446 611800270 902342322 805353604 902196107 208818762 984163472 330093093 882551147 68905351 356960039 102961978 554524994 981130668 694894018 64981941 116801421 865073610 802682772 724891322 765810481 277174406 945288577 703591603 310405635 66698399 206596744 412784812 867772032 438779047 670989236 6365668 840376355 872437693 934777304 938594772 303151805 711016414 82775795 576275161 701247548 405017003 670989236 632230137 799385635 308258460 342530658 189417576 685741870 274546308 891943527 894230610 961718806 978351980 766685906 634824781 976540493 206645315 870532757 874060936 880594137 878020357 556316512 709239725 712159541 955884529 206175033 818996911 911091613 491618497 854238039 554732446 756734295 149055125 624392349 925493992 792878459 866050977 701168398 420513883 167252669 678126576 892104027 954294230 670989236 722163074 811357767 472741677 999692891 485696840 614021527 925600626 133385755 453287945 828202830 746618163 941606104 532815724 419050276 282164839 188154073 916456862 710522987 672135911 874883844 363294649 694162994 760536610 229520724 428067976 923811863 811917972 599872219 760635937 266798910 316174964 444740192 56028755 645177725 713962339 620777242 791492335 147695353 770358787 105430363 926653426 466144146 74438180 171424413 530368301 130929087 927625264 775993382 73779971 682697167 116526131 30894739 773398477 93575388 535852416 846822251 102984150 879721691 851725910 46282260 272807470 40216422 680557435 499216041 466853387 780484502 396158272 217214507 148104238 167390587 958589993 716383017 711559152 651452741 392644366 701285451 432122162 805371067 743476930 910150990 927597942 60053189 244219381 810055575 36375476 767103835 805938292 345332251 918854113 459566749 247026194 670989236 47432588 768199650 606205250 316158437 77849739 967646607 314284654 891779747 767211998 239353106 462842337 162989822 423680836 639927349 440130635 394435218 907074714 897303158 959904654 823882136 747386523 49825229 847716723 204490013 676083954 908180906 419175386 688737774 522532526 340317045 980971472 775229249 956246170 39578110 59137188 178787121 52570791 389878755 72289535 218914866 326888427 81654507 611038387 101618326 801126164 398561646 905226457 272092301 699477566 798454618 594913735 930370081 934293380 259208696 705822040 798094307 692437333 226894033 239955178 732657793 637124879 228098152 112878298 217877519 953997130 188622345 683908023 411418024 849097513 562470174 774739192 727038832 947096255 337200842 757196432 716680366 976493156 322895722 799421153 643192770 94203814 760994759 952321188 966175484 550497022 852078300 737781790 96855583 781100335 602439179 141766849 936183856 554966530 119702183 861435821 754755968 937310011 906897935 656641740 839340637 844234477 790482348 678365183 149873185 373141184 84229789 947920441 675416394 820547910 901140060 338913108 64979775 857198393 965025570 732240496 794149399 274902017 876099790 176497565 512922529 529982232 103691999 809812134 345485742 834590992 698680295 280344371 261177619 472144982 146439716 213819256 634904156 844581450 712045007 387667881 919270270 721646830 829396502 533024936 934362869 351261165 78874642 954085175 734793932 522102867 854790344 790654377 698740314 842007186 694104450 283323107 873304940 988204808 653022949 522025341 740807274 779018907 560052142 488149457 551394164 988013082 60257816 256389442 48180524 405969377 681483445 946591299 983312960 757045932 627538678 634888799 911355890 842708115 876834520 27631621 461396278 881276087 489009606 852485366 567082502 909457472 174372664 344539076 885777863 231225069 944583977 899322557 760831718 712553771 570101203 791853116 715218064 830130711 965821133 697887074 228838208 866711181 717743509 705383386 747975229 688637836 196906585 413182475 657390688 160996710 377488693 292945552 953316475 779233186 710095465 819146487 200232444 887081972 475536926 782805206 530864790 813394195 270246975 376970547 458994598 937890670 959960321 997280430 818826985 594753502 602928181 55972548 877065559 755740235 484954717 907213312 750436757 222429256 378476381 359374701 322436938 567053502 495684073 694090815 503526484 870468015 686581604 797701879 808879332 147185905 999571898 673781318 653549696 505628561 836585568 735484108 877907689 955673546 578615744 782904543 17326364 326495301 770345510 657746194 725419307 486656462 932575923 670989236 952286586 712651596 159031781 442285263 140247207 371545005 402418297 616313877 582379590 945025973 889411301 415291515 661785289 408848109 794253796 767092383 739306165 727618710 391846037 403130299 694268737 53969128 777914115 737831230 279198987 64643231 276227048 911706848 674903903 449707361 62529429 815561404 528057935 736869110 747535121 786359744 36734485 487199817 965338259 787403730 241388350 376844492 581486288 281576934 781676212 670989236 592484222 489438232 420091571 36792897 83760597 487501760 327651752 774198268 171654734 322326076 7594989 921695865 433563766 781646248 670989236 74793036 462847655 119477745 994595412 33068531 56951968 817054139 368901511 325989376 830593569 905850410 712459008 695338553 808983890 162419652 556456123 692850194 201766351 907341871 888733533 250182101 608342548 944127332 985967882 377518517 625409123 972172552 755691180 751863547 164341780 624852265 207298536 82967797 127235717 199208561 355669305 46091474 786127404 639226675 933972385 757639870 252182142 802326455 65069529 933593941 931448974 253630867 974499110 108889063 860641177 429988169 253416449 870318511 842836932 999966563 759890202 8685554 822250616 719799409 915195020 738807473 618252649 315443348 356728561 901082317 115398948 96828989 670989236 794370570 718998890 682539702 959488854 506144656 586480391 151439018 986118735 844450820 722147827 586432857 38143159 833587241 396309674 16556989 619107993 843524807 71816296 471114947 977720987 80764226 419724891 695471330 715641723 801635439 378571968 84493994 717370664 853320640 655474198 220591812 843074204 378839456 972842728 18451290 177966234 635596784 801080665 785714006 717082542 733116395 652585342 560824691 529062960 17854665 515666699 498365685 972227713 960365881 435084320 353274865 472793009 513822341 484899866 758530179 962423103 461248178 200681668 247819281 322362611 852515562 642341074 264001246 598175467 842721357 342178804 196500616 698697298 695812363 689742232 92315335 198508153 853520118 838919386 434117809 36273539 789771178 959309702 213794639 62529647 354802771 815046836 470902135 884391515 565691337 399139041 776105979 150457198 332445503 164145458 684275609 238150431 721770537 294203211 765066201 766399635 188790754 697023568 883565289 670989236 834454161 979105958 754935987 654332731 998466135 970596341 171245922 888061422 88260845 395228054 689515572 953856371 956689412 788607664 688982886 16155582 850495399 847208846 615412202 861022574 879534475 295580482 548402431 27904358 765302388 390903905 913395988 802683354 850409812 84439823 22198397 418645267 784185322 968000315 799088334 694735597 356448487 693001842 69197759 80627419 925900812 519128163 722067673 10686301 136286806 336042830 983060873 956606726 859194973 602873709 670733186 666053323 460954975 813554846 509426421 975410944 880978603 680046776 897368356 408434617 688516517 71158712 823086970 617967851 736452724 618343290 958054712 507330689 972371619 465811476 868188988 437273919 327015219 810112832 292942672 195883642 40235966 222736304 654110743 877545582 562359165 764901275 745292476 720134090 407326036 829712274 497406606 544000544 711589005 772227654 424772603 657713675 798470977 432842449 76547138 694969787 761705855 509569556 976672619 958472413 897295133 771809437 840915633 933092537 683580064 367316874 613664678 231394823 809409808 568243563 39009884 698779411 253885582 884658142 941161009 869748562 626226619 122340348 848192077 659458117 14782357 798373685 810546163 776715092 856046182 688393102 254343445 779909407 682510834 997164237 478336362 921456760 276854286 879568233 917513423 753645562 758677490 378841190 986173718 712423197 929379630 866023531 875763242 969787967 961091972 530588662 63402496 932115672 304434698 905739412 144172634 870819196 818948783 814735086 618862489 765012687 800302517 766851794 988865318 568989448 813896568 960698369 343972603 612384151 894997646 686484593 459617577 513894793 533636200 779800015 986473731 968000198 727056331 850599952 594198706 444922100 963632980 348876354 758794516 679797033 542417606 695818081 203078159 15336755 672638573 645142648 806230901 836369586 313798705 981650907 844618389 998536783 899762380 272600546 244999456 72432203 948523314 701525337 747674073 958953603 949156022 962904508 856855439 140992661 951187490 747147882 677451757 898302670 983610154 778380853 873969482 284323596 439086149 988511061 772844976 390279376 625431603 715321305 898613212 733995225 478524902 20812511 933885164 20862788 853446761 607437234 366364710 690562839 502609015 406074808 803773961 705796490 876757694 758490110 439745882 787548344 980399670 670989236 2061235 939955517 675546814 768180571 432885202 198895599 895757071 917935444 194797735 3050625 809855706 830494126 757717054 152161380 802707453 523025888 752999829 558310443 351146366 357091278 740093048 199803847 987094413 54095320 340464423 398311140 298320766 387155643 307222397 767633561 621014028 182073032 709949032 810613248 702297317 39353243 892006455 881340775 760266300 421117016 468711306 261246585 671622243 83932411 918517462 297339757 437563946 725385358 852664683 978635729 906164656 988480337 253868841 908962629 11939644 754074147 195812772 92446757 956949235 523592367 886495746 631602392 934636027 959953083 182030594 246346881 323602160 666784082 881465333 833324367 625808096 609196239 376848488 553353799 43398973 631339384 794691521 301843888 949767971 837399303 491245463 959051642 832074978 798286425 998215725 205862286 531519227 795475860 408109139 117629105 657762401 173645664 721731591 489732821 196861687 221842455 711114517 941689036 877813464 400313112 907684313 871319593 220917533 496195306 760797555 981886639 528230766 783938586 307272229 506067907 988525000 745199769 875288055 968507657 713355298 366287252 532888412 340473020 581388501 710044089 205978692 767584881 972618338 751292148 549163508 896428408 272429015 381375591 958532992 773497913 664048536 844741950 948597387 2792065 81672527 693428317 915543707 858103321 755538338 986729180 917962444 271893001 985545305 235166018 126324492 636121820 677662752 65283262 297486179 534008646 795667701 222521566 953273438 552244509 565325016 875104231 31973578 546622431 687784947 482080646 755512708 416236198 742113948 886298759 364428552 125639515 487043882 894185608 467867394 670989236 709597852 676110380 264671181 636972201 704078281 108535032 117404876 24061361 888758054 444398177 863336079 52076929 987640360 884952236 508160614 892543658 834467196 448888323 93497407 670989236 911655274 887668723 250682221 823147352 21647616 970301388 278334947 577422743 992141384 765588573 12167513 805682660 961712110 684560324 18563542 929147640 777333443 6917891 858111280 698520118 623042342 778694329 903603958 742033364 697171892 787443619 977355592 178872283 921447204 394780779 445534582 438033605 728646813 687417227 389212124 63762254 432331599 818903795 855648774 133892416 705063041 679116094 20090158 982246933 867249536 587171091 838418381 837647452 42318131 553173980 348515280 707593133 28370257 346409337 806297903 912982733 981029494 804737565 360215006 127152731 245541029 989756343 888010459 930003528 440119632 195142845 540153314 661721315 302792863 356827268 323496287 152931949 670989236 510903473 535260100 744845819 95651763 373146535 888422555 833450148 685075630 937961601 5555319 292499268 413280701 658915302 111044262 833294400 740193246 835330638 875845368 962436443 783671966 401222771 524698485 727854727 635371711 821013749 48706183 747470199 161494989 56082025 125524490 272917925 693570860 240815374 43641539 674656504 963174011 673525201 195965865 131130292 934959408 795184731 3365143 937033187 489447284 811546078 607612307 819675890 961231461 316003128 829471922 428631025 681462978 861059472 887746091 743156724 864638590 926485145 959368135 734238494 670989236 30551279 70882223 718164531 730103711 742029297 997676519 990838561 986855883 630863200 823317646 964050373 810313015 640216898 713897839 485928726 517944462 797894555 729999330 628788726 255485266 820678129 968126778 181902451 703268146 266320076 935610519 638571427 956056747 884496365 700902698 101596123 700832548 307106257 785814859 879174643 732679770 33544530 780275337 984980416 604674262 600601350 583341814 736200053 49986591 384945702 601126586 628722506 948574480 947491153 467661696 430388668 414740052 399247854 328597970 832144280 461308592 604100729 756485860 552973402 884439267 921341111 833143412 343961906 594896598 741001078 298659544 176851247 778941649 262999424 742202550 497866026 138775414 526882315 218201760 110643681 972918331 670989236 910280481 259204281 884940405 953281760 863779093 865860802 900464934 263429836 695293872 995781598 911915828 561932721 970530166 818926978 697293328 137575196 830098940 314970157 872643455 810751283 90785105 492968708 289433758 193558925 821799393 501204278 662709131 293637943 52631111 861279227 721339529 657331861 118958701 686046645 691277459 819443035 54035925 721681205 511481757 87297083 51323766 677524764 317231336 877750820 919717701 726538375 996471683 302342947 938075927 735023049 539690973 926340604 852295362 927045201 808913286 710882682 328481451 884913708 745674931 468554058 890416583 616732688 978783233 380947579 883676042 773540346 526519778 800670458 171293566 272124523 968453850 563383416 674328620 230736710 57479038 350036778 342465054 128515762 652013160 713807816 992718323 645606740 777385711 781684076 761650022 675783957 445962996 974417900 544979977 759123945 807618624 981858844 508628851 999294701 473152544 797053641 622342675 947593808 945468852 894371290 787260800 963608708 928952419 168195947 811056744 141879448 276990012 744666726 695325591 279629993 992058435 996572773 794021446 751407497 395903210 853936887 88006766 315482188 870245702 869392854 202409849 872778163 292936486 26038878 144704882 295188903 671484873 751968385 536838952 354738171 81999535 48319233 732065927 991918393 233247884 81593351 990333542 852116587 41161106 514088213 7981220 959857638 282746923 750044322 247283748 755996645 189810804 998168821 421231629 111488343 447382750 339717320 646427203 802057620 702610105 147902710 659655339 838614664 683104781 647969144 791695357 160179139 362635470 790549154 574812791 54827057 472800961 343370026 945298768 891327460 509982621 974893103 789235847 502596607 193743817 906195143 933262269 594268485 594860887 758084968 564133874 927116252 416518005 777790391 949730726 418760790 666165736 842006986 361998209 694423498 530304926 871476370 688516798 780651444 859967336 887373817 826317452 392363122 809118549 693946557 956226485 915314525 696790320 40481862 369967814 410934349 471025318 561330924 670989236 982839434 670989236 409102039 85235618 775253139 506804685 690525693 819300256 958265158 768373707 864376554 388461975 286377405 56270985 743473330 869819676 231436919 368761870 863677946 927959272 313829529 252688252 534802751 137763542 293988792 653939 180756151 874258547 551430349 460298356 891557121 260284928 836299443 657015898 914724244 605872431 171449283 384906097 828237306 468150118 942473211 225340766 938801974 248163111 995261310 52841864 683781222 251736366 662969747 397268506 873685129 956023486 789192548 918928784 948563045 688166919 508272376 145164053 1774238 960770822 66674627 989515576 521701105 201622414 819417540 895129584 643325334 878724605 377259023 362624061 801725046 646030302 274771016 99247423 509205342 812222134 464136968 881874908 89417918 961471467 908199314 364329071 567734844 859358704 549463619 765597002 554381858 958989609 699145619 81210892 882292920 124935662 807910804 670989236 990541505 752412466 742242549 748089407 699266666 862545863 665373699 514207229 697049 189043165 41621987 116659664 925245031 905891710 927104213 401231244 167687775 103011246 883031211 50385662 624614516 893547659 670989236 997945019 680152217 724129040 286880224 965568376 678474492 303599757 690104003 781088306 506097850 288211888 69861003 695028400 41625472 866723924 121814044 929352263 854831463 14274942 32186933 237210226 387406062 161719522 394485333 476724910 886158190 280338436 945548025 928985734 194072385 693358151 994383811 783846338 789125873 909311655 281162110 670989236 804514794 970980435 464331478 666100617 616746829 903154864 670080689 505522288 391608315 993461378 273210375 545148155 865504877 714496640 954739237 792143375 323894826 754595156 723868870 775376074 869726874 159044250 451362365 911664539 941619896 863201419 876290305 562308078 65114071 270812502 67309418 848784460 5606685 418975036 280027214 947531202 808571554 123448677 855882012 740005298 453144999 763448428 117740975 670989236 973725596 859037134 467724132 576890779 561218253 887555492 659907906 749352953 922042391 275726603 509394263 534198636 625757508 13938357 120491051 689100440 568212446 767954153 744590654 613208913 454036430 868922632 231013518 777987593 249997212 521115105 735016713 794564425 154686096 491497505 886121359 691844988 875006194 904460089 965205342 866103112 481254244 450932576 285446007 791786335 975412334 13822314 569014485 757166450 285389982 697318839 446136159 740854412 748296344 567621957 270792603 838290262 843054307 676097558 931129435 730576069 273955404 668024539 865913555 205906026 882141683 274654517 977802451 110486384 665020710 818112655 383874039 673913947 600568423 682926583 538952441 53333272 38679246 713411078 113598755 910327193 908751155 125044482 906549713 880865629 12237756 781483677 99497246 640932776 970024310 884257308 797520329 892889316 679024492 670989236 825252311 414379009 814110731 603492832 592459135 880493653 913640143 313310687 580307346 250999707 723196796 977052077 859550433 908078457 977092916 961210227 943409857 96157327 117333814 717433056 722801340 918283143 417081113 592596220 933466181 518495842 874176842 702133681 542751236 200366768 220478784 799412573 716161189 753298219 895398009 927321368 141681148 979439046 981508422 205080199 545598610 791822432 160583934 823450542 743687471 948337264 874705246 135461223 999463443 63536923 368234812 477666564 307379438 303903644 166688936 42734575 428984469 939067174 113336234 739716179 588510607 29319506 699444607 871244252 894233734 220626366 216482980 683055420 875606846 773367939 49120667 267390601 415164586 859613340 819757290 788717506 707466299 887931833 831919837 226377580 604885939 794461352 924789381 831771000 711893671 807243904 409941683 916605773 776807331 702048526 941377329 977055533 608309919 355312525 931790613 810979802 337063951 914600725 328561230 288423607 380338403 235889501 711543077 820242233 34887133 342399048 348739707 772762709 820842198 845629048 924444046 870068319 11892887 357684523 111686168 686171370 854068475 256241681 405424428 306552866 749917407 766892520 132632170 729177063 273405988 769708563 759102205 589020393 852936052 102860348 235460414 423069302 53798141 788529533 808034563 670989236 932425850 85566058 274901425 621192799 480894432 969971398 920384588 529648830 762487637 701321819 513035823 827401577 996409912 96769388 672910821 464317928 371035694 327181638 453032692 494570384 922837229 810612586 998880413 973672408 475232785 670989236 992910748 771077550 762194587 128351205 746636456 538987425 27781553 447140642 158158130 404439022 949969895 239462794 44540935 911251284 784799568 148343265 842112322 712309549 33574236 356404790 827299787 105864588 11378059 918355829 362815407 170632793 201516027 421195286 917629508 644421400 580864432 762065508 565535707 394741042 844100058 878672077 856932768 750980095 586058185 874616498 217345374 37581978 983771540 872852794 687866590 219307990 119785375 219884286 620428986 908576172 928544802 791311773 408908135 998941589 175006669 915116642 849497010 755797447 290806502 229619549 802006651 208232686 277106557 661675254 851828659 799522658 632076873 190152873 847140436 834444237 195885017 50267998 850996298 578035763 628031236 113896676 89636154 371654966 367483100 473356703 840435717 501988590 771657376 796241913 737538505 235123112 745597169 441721743 163434207 783308594 719848598 82460851 933156039 747114766 162487174 226790267 625222907 479035536 707258318 702326708 835376935 761624062 193864528 314202361 29937203 938888477 739230468 407485972 952801167 922761787 443445929 500388576 629021704 551916030 500101132 410999451 693857280 614820202 713133554 788963541 786174151 212728594 716377624 780535127 145011383 569671759 378512594 909752715 797461608 934646121 946710215 56735928 176826552 155664105 140208918 345496802 914507409 670989236 805671128 934385521 85391313 550826227 675778024 978191364 304090629 138859748 764835144 738934950 740835484 692004648 866803403 940415206 756259530 332628085 761298140 652739198 817632549 627951677 804657838 748496830 923476656 399684167 55927890 734947962 926284954 212699179 806142189 373172689 971788057 11201132 670989236 763050606 572573026 367526149 800998104 516708161 630301204 914207985 909038948 830262087 993466186 565152911 747716175 256909728 842795593 277354799 698137163 325332306 779415696 971262032 107973234 880181134 744034499 56604829 366482455 186468046 569375714 684629160 632238263 913940146 731285381 11781535 656839037 595204720 267096439 462201397 988634614 701829721 956424593 140651333 846628670 819806655 784442493 929619603 50703487 689355639 284703100 788060600 945884436 116026395 8008254 947961200 202063310 911330632 456530001 968990891 32087712 592139759 845465475 829340366 517281082 730669675 748986125 869841652 861842545 610137489 725178944 910088094 686761996 614100646 749122025 968595220 117650000 44222721 948541288 884232636 303948985 714797009 823541835 245545305 805730751 99641698 615716031 841811062 198281576 714496462 106111670 422897943 743876472 916410598 669229317 198648685 758664716 628797234 483887640 848181107 274567026 938875455 896604940 368475375 830298897 670989236 679581630 837635084 757721920 310471871 711243210 783989648 760991376 810701607 961800967 274869559 438787382 4675606 734946725 503978547 78832480 686789918 861200353 441240665 856236309 938598701 694208487 226356000 651176347 203947348 789441900 689542115 868518425 737691864 883755541 877734192 76586873 668795461 796282246 890405184 540762067 145862304 132879225 973501423 627234060 483545913 509877251 914324777 779848823 502300823 740772842 364067079 744934353 124713798 58553121 258826858 792580066 824205272 281013804 799738720 385772966 86117015 235697787 336629535 122020365 854489701 377883712 297835339 303959204 802444625 810167344 663726421 929569515 652098120 854205606 823759132 58354773 118081146 872204001 687238185 2547161 552049057 138767522 345517850 846952981 309741018 820833559 158383832 828729503 899792280 180791993 918095829 722359575 610765495 549626008 786706950 601462358 729474202 678716507 1945251 892122050 817548411 886778958 703069457 740948635 671000989 117597205 849718418 818918529 854419439 859002934 850704277 443526513 833683783 75659400 728354118 664627890 921273714 657970341 86277652 431618373 678702422 694294314 857229101 277145940 961375262 104300031 908310526 88201029 871756214 771930376 538273322 931457754 763068957 813149374 370580552 976593418 817474839 298706128 695802023 943725306 811304668 878180664 608488275 348055156 124131916 719285502 762531928 41475299 700654587 704492519 427744092 153909610 68307574 110672837 939823441 701954225 680541192 280753749 789572585 690237949 824074854 955871944 251509742 591561840 22312331 63088329 168122348 931581159 738960252 363115024 599942731 398969229 784764346 162241196 864422381 227674219 76354037 963203523 357132965 904043714 695038707 50698362 105272460 741967116 950492804 794202629 738551674 280027577 590332415 467645472 487444534 282022513 777686163 848910778 882115149 668953675 785354205 994923405 324077158 211372628 298466417 923190017 678220383 776635194 444000419 844664076 775246861 668775575 930263027 526672330 501322049 711667898 759426333 555099997 150864415 846231999 516543294 345565234 629291970 727173911 667554368 459818664 951894023 706878923 737301340 169796263 876998986 427687661 734439176 669662306 812521651 687493138 521601126 587629685 333822236 460697410 836489180 97519150 772688430 107503104 822315245 785000700 690260810 789393637 806478776 76947679 317346475 942405127 838003125 919068458 177177004 790766727 956111972 647182844 810987966 811579534 727229395 108232971 701430261 5922380 313406039 555269288 557006976 797824935 10217105 574493402 406678037 489107733 850570524 103432031 693958811 437453277 543987969 459826619 930954693 786349697 24218134 929084461 134520996 670989236 264916751 63671614 292747512 165982414 236606941 694836255 720471372 557037281 985567540 972691243 273140637 640151143 981314457 963973279 805521420 736805775 821573320 260960494 299633555 998446207 356947937 939721783 703335101 444698831 768227565 862265147 469405962 58551876 384371642 670989236 889001868 953095273 411619470 703370649 884267230 352430329 746427014 143493204 670989236 10199030 789149908 249918476 169457113 955395094 812570116 737989362 715871233 256547601 852682074 909778683 580238959 116942665 941991539 689371045 770695006 602194875 902489103 705067239 101189039 477107726 96398605 898342636 984995840 418627939 110655333 364184687 951295944 673530746 333337822 800234662 109766417 737154651 185366962 929746340 835895313 989015439 419261255 179976336 156338743 833450358 466864733 231102781 287173465 278696820 670989236 116333838 967944997 968095796 299441207 951495947 58453088 909156682 447917549 681925259 115841676 182661679 825624336 255728764 811889801 87336456 541287583 456642634 787932424 531211285 63851305 48694660 427198035 872307473 206355258 8206352 964285017 589179629 364825640 810975040 861324057 845252075 677966516 733436374 526178853 80594100 871637636 738578166 361643152 675828940 594155609 787763197 19722324 176506477 768276594 921896800 937462753 263715187 702513265 71776547 810177836 981083104 844344550 777877228 699052831 149393764 41515593 513994568 692358056 849017216 71262288 57440266 637389613 126990415 652350990 422953785 480371212 845300514 435399767 996314300 798120291 817790955 810763571 142552376 578990986 991885565 831340997 147497450 770316990 756749757 892203894 883871796 611096787 845902046 324938753 818137941 788186181 876497363 282318085 270050117 105785728 978288654 622217895 7469346 8235146 504911001 130492491 719481114 963333388 769541222 449422401 635492010 260581483 358851302 565962898 992156141 161689418 275498254 787247578 685215992 919207753 943229007 849704371 375854715 543353974 727917978 175817619 814739034 993733640 654970932 798916786 478189676 759924505 894040329 208491541 4844117 119889316 423619426 725750877 446608224 859367224 882323935 160104211 504322296 946778731 73239504 876025065 745070828 928259371 869128443 878226466 305688923 483249267 586498364 764011155 103908935 995040661 780069722 521662466 715740407 326750336 112838351 199228723 196877542 259936761 642045992 752238068 937002114 3752379 952855341 326923798 888799184 954977998 823277915 334342841 58490029 428211261 788623725 842268887 168659252 217227856 999295666 449163298 909440305 862734461 441745421 171622925 804075582 278932182 549452875 272565305 626409274 501135017 205740839 767054561 62920953 819980170 726396110 720117614 190650738 844959799 180127027 457124280 437536570 670989236 22977010 694007911 820748315 463382276 963784350 567411932 283292610 477862320 670989236 451957384 127582316 677579012 862699123 978216604 658222949 180875557 692632295 636910458 693033497 870123312 998768893 190103588 295759956 23171036 804974413 973027122 6243783 715148562 765474939 101064924 368538399 367531161 65173035 832897921 937985083 802056758 309862617 720486438 62342727 266569514 45051911 762730976 314097370 649629927 884130184 617840697 830344951 859531691 934637689 41662649 729838405 761691920 353712794 239808610 253453089 642064352 884070904 946363674 421109609 785047346 777767266 968296211 857534128 939749372 794892607 727514503 678435382 518361476 554651971 996362323 795105139 264854288 890452405 573373405 454706557 909238112 950207181 699195130 103313560 169593321 155863737 385514919 877186419 339523095 948550067 15409555 273465586 538705194 619972707 711088922 360561247 213556408 939395689 373057879 819665032 809860227 2200908 352388712 865340273 702718843 143745918 670989236 305327180 963367402 871710396 547984925 211384909 87121453 464832376 420031061 80362481 317053431 828541904 991203321 812591278 957674349 998330857 923087586 922687064 430637385 621876235 723494387 912569117 805804203 830313828 708410572 348008337 993997352 948174307 590925713 714225852 719000088 807074707 758464132 796338929 488920975 757675054 920350983 781694170 720444064 744742202 827315034 529874316 749738701 375334945 751276519 806989070 920801603 779037053 979539227 106046911 567077761 139478611 625428803 725040334 819960410 570596074 79262559 611318414 124624950 879450991 223989055 882277460 647688489 428976551 670989236 71868278 711597806 226807985 258111104 343887146 203137796 317995126 558738761 943376896 408272182 766931593 49718441 42306205 567885893 819459691 712680884 703990614 882557443 380253727 846331773 87954381 450049529 831025750 24651219 813828848 396401301 147439424 319676378 757558582 969751857 805903561 397988333 279342518 806739222 923707913 130019952 772518157 66574976 433699105 997672036 627619692 847969255 783441369 241781186 589091236 666661456 900167274 727225516 545678182 98528903 785425271 548827401 967805716 717171221 688739727 115494351 968616434 338974506 498861518 329877560 937928543 595940757 794487048 266749982 979938068 629430508 773265527 397383560 279877586 670989236 269021882 763484438 843170989 496520592 816441099 926753642 777807931 356962095 571319542 199030720 874203765 48906731 861700522 865685058 747661695 848192782 952754980 980891698 957504014 217788058 464075181 877870657 813747699 447030886 352386217 45807527 701955831 519589590 639231718 657084770 740027739 253605647 506834709 866685356 726106754 954075794 967600080 528008467 991335274 816999994 314316871 805447592 653461679 412176799 675515454 178809047 471484474 526956877 912369477 724910456 494159631 769435352 485851809 253523343 573481005 112718917 940403548 740979058 605046360 756744798 535473351 549782240 346105299 232277488 512409369 221505937 993876575 292549735 959481419 753169689 936295321 823919869 934262981 696459197 723354952 993018163 124600650 940525466 953421575 418835633 840012718 103004963 946037766 111464403 938314487 708138195 858501046 748424203 685351926 333371135 165284187 673400006 759201507 966952421 929638042 991157674 179523315 865617667 140914633 931349507 937953759 315006363 573957818 843884482 455641969 707136462 829597837 843681087 297856899 700232084 781413990 474908368 118975675 323135184 609429660 62740488 330864260 554543149 647050966 399701579 462538563 953187319 291004597 697966267 966933814 322968705 284511512 685410958 448325721 812256672 272040959 438016262 479102051 513793741 11682907 905439186 862466553 308250819 519505878 23873915 273657904 806942040 702998600 835579966 360452413 952883457 908614495 81880904 731197183 811440843 790080267 785151607 842719374 755457833 739162958 870176369 913024377 601627916 814385281 903807510 430374087 378294424 4885667 455870157 247099338 465369574 616957533 607315434 776769612 996061555 566287920 46817422 766088033 832104313 869686312 826157795 88233975 473747228 826647273 116889550 864457843 602526350 434400787 815348724 229102909 883467400 241535868 908364072 532369287 702391413 912760472 584783094 582229322 936454286 969056078 497539595 629032065 987700401 461256768 554531615 533881517 777464818 418162790 603797773 108127393 935027422 899429587 749694928 851580954 801337597 934093164 942091231 268061455 763291527 764111040 457643141 958393544 885940147 907528210 997311985 979685678 745309699 112297996 283244752 300418766 233465306 942468443 126439586 268107270 738044778 161965062 914346410 672083924 846393065 761546509 825518021 723831107 129871667 832709769 638363908 409028485 716951266 810494487 755530103 961270775 487062702 645747710 223686521 400252821 874496671 350809701 441038875 65958083 885629328 344164104 928162838 803612541 375092921 229854563 894622239 937271204 905880648 777270845 668782771 573702201 290443567 607484484 608152830 334097681 803707362 964579628 280894737 642042541 820452627 972744771 952534028 671652191 201557173 509150517 32360740 281056534 804759362 435961250 19837365 128923740 30620190 762962190 742122960 459868561 351877498 273777668 250588621 145163159 860054004 438027404 748864272 215712728 978526539 994265075 193364748 858531943 2603380 910278435 455362497 606491964 196166132 737919190 765112685 198113856 963087499 785032492 170265409 873365085 378098708 657546003 639725246 821406471 383827846 960170041 809572033 835328849 874900264 281761625 965996599 44980303 914488667 364186818 991252894 520900002 720940429 944637445 762082806 670989236 130979332 442164979 705729197 811253458 210266157 298673165 525193256 465407984 477361259 907587793 152006829 375364481 380886207 653166844 453743482 864308692 943776229 841721411 989856691 672319776 105957427 577520929 92370925 274459808 99565242 141768166 542179390 3582523 670989236 712390866 902667971 650783800 740373991 105149507 192613222 769112008 251562814 931119412 429713821 868520947 598000604 547146793 971247967 928434773 777257247 703969864 879138905 466100799 397611718 643423469 725735786 496535690 171052964 570166839 634616753 765016619 696566095 910685248 126090366 713091414 610132992 453659896 298862620 995156638 733066549 499788169 551139388 351953123 716168642 936464601 816000842 108308188 211156080 420661293 789684221 689583900 131916921 923754734 529419123 457140429 363575987 840678723 764944118 909717343 633185935 765769155 466633340 908801529 259645635 673476939 384280497 109186615 526859949 327715021 36704786 871439094 998691276 391885206 64778120 947074938 804243256 889800558 673751208 649451671 903164074 992756303 670989236 794880238 782537770 585110957 394783548 15487631 794684105 691286848 818139464 849657030 700906639 958050788 724510524 812570416 361935813 749899452 104568830 677745897 936578763 420184102 812153047 977447626 565663364 622709334 917746629 418438171 222421304 569896000 56553754 685989556 704159458 921212532 355130246 616658111 923439061 855999200 881130092 529561020 451873716 880798809 623233404 900409446 727414825 118847648 206429389 599977361 205267351 671101884 758259217 763124212 845024665 245264693 879014686 887389200 156436685 934117219 557007512 772893558 821184145 192490088 109230253 829235110 12926879 214408471 894751769 780149872 176864305 889272828 747610027 280301418 555266325 890361594 862626098 620669198 226401515 286003902 71760181 863092325 829312811 395472364 150744330 883763145 940969168 977593385 755993285 855809907 793742765 901315607 527662616 721613000 703121790 855090474 575639196 5497978 524587463 833968011 388149191 352584603 54206561 555183342 872349553 854894161 349274088 944141498 786425463 691442636 690361155 371510092 24411151 13313676 781977999 23341956 235904360 71375411 728993375 989619911 841665320 263717210 724058536 392607041 763301343 747267210 173493810 558667810 892515848 828721540 949486752 128002955 815460413 992779374 764242660 517537059 422341920 96082423 779751309 592705859 994432733 457731090 28018305 96659248 790956448 479292685 27034828 221578929 374027078 781193195 592578362 554172292 643105405 970309720 317725895 345649312 820929102 895677740 855949792 877190923 79941898 34565347 888387883 857652251 986609212 916720507 981554781 140008018 735185028 972177857 220594909 316201951 256319539 46031548 764030502 632869713 412159179 12526518 583262755 311787230 22722275 401361603 730399011 970336047 652259555 670989236 502820694 756508564 496701867 805535384 405167700 767794474 989291663 111658581 860988162 722984372 453743489 937269359 568527483 431932287 669250349 555550180 571509484 639415069 588998856 830150718 131271638 636947113 899037503 165209971 929999013 748199871 240440130 887928593 624684211 132651538 538764376 257938489 317645080 894011171 961328195 627712963 886505015 723901263 714769682 756143197 421651496 745817933 543217501 1843574 865370521 885071284 246672949 86064990 978040503 461703643 514366333 800134227 598601647 18845403 829613584 44300943 673538052 38435334 965041819 815921415 904207882 813923268 232934523 454179346 992690698 790955035 864204636 895902412 827252698 895069512 736411048 867633448 298789213 184011059 778880464 999241485 500192823 644265480 646881544 400013491 567408274 173761858 118159915 964579087 727297548 963700577 686102044 930141797 231032243 282567830 165034531 411342692 387407971 405523427 593737588 902170280 925072981 787994587 703761699 836664821 256795137 890940895 289206669 320419634 903470264 184559228 81583181 692859438 46635620 804274109 245246902 243810170 761237963 725524569 915334518 908611248 720460976 868562313 335601024 464673101 419622298 367045359 634581678 396486085 631276873 871536656 359581559 890045271 670989236 303957824 961157325 69465556 778121719 441320992 924234782 942696599 610437001 483178860 975847415 954401109 966928808 582870131 886455868 216418060 630160986 446994975 725474618 861636453 381067025 701696629 437800433 338721003 670989236 938732072 671922086 943771761 647375721 797959059 372241910 356243721 643108067 352446150 826687749 882286392 45412571 999734012 119515629 780172910 70862359 114044611 118193634 339897593 336075627 321850858 809192138 326697987 756343171 877255042 359399626 995847999 714127876 90168904 818337301 432032854 562414117 860198407 192066955 973803056 784309603 378357808 807234384 947296875 994235962 58199322 282944592 232436501 694649955 489817745 421481262 323698930 277963801 307192669 27782726 243564757 947486548 536510483 946855842 713280357 596112784 212913034 759737060 907762879 960934192 979097861 772903423 685561914 945307111 691974589 123596357 784793936 353104202 940683270 142140924 441126379 608883067 119250453 931110634 383081091 716100676 977627763 672379727 338483649 840614104 944048636 392264274 716730111 778100771 556578433 713114282 369233585 668943415 161088458 811161786 320179874 837587842 326941129 936234569 17489798 695548269 720377119 885230749 724526555 586192047 643974575 762935078 894597381 198797121 880063047 932338086 20769761 887797706 134809945 554510007 544500256 420152369 96136071 674287566 237634529 127087848 775369143 784499086 792892736 667552885 761434245 706340118 894934464 867559629 885454222 427944957 703166572 758572351 499336248 857634696 705096182 552456470 311517059 399339982 829403374 721571633 462516995 144846478 724704803 127490563 875319124 977710959 739809899 444620389 877460720 985400500 986788731 947965787 270060916 982014662 673939842 677408837 761869915 712271558 672205391 712865321 504193526 89224769 952475620 451051807 301724346 755981052 372002146 706765838 132136285 831250601 622841266 827458978 987363791 595962587 195494534 648757292 892331490 721053252 757583595 455220919 404992904 380767734 176305877 259332148 736820720 675828174 30519387 476354513 571194041 935507427 369683489 746314860 547705584 432227162 864998200 334533456 508263797 696454243 824962391 653353309 875118198 54259796 415045483 38284558 399617764 495026780 826228934 80206360 40051695 507806178 391162322 845387563 701094439 713127421 153480848 693993977 29671009 988606477 234399192 74920769 891199325 44698319 701312842 173239375 844430499 121825365 234981298 785014063 886730008 768199447 49342182 256250986 188265202 280373693 604802435 174155230 985360386 257641797 419846104 910187868 359435420 870384246 943348660 786440341 877195906 326085690 861683323 80396792 19159333 891201600 824356578 621297412 33147402 246330129 472391346 594629604 313169425 233651577 646664134 840891036 732975034 934145077 551241669 779820589 935469931 46869557 875152605 56819151 765638881 728149013 675346797 770043491 173181609 909418927 822589376 824862690 782275065 799310535 572284313 244293256 875176877 756832294 539052870 219428193 811391935 252153821 791503622 555228785 948967809 134160377 723164373 929114250 664759237 166823388 441053617 951280838 780505938 843703781 795107716 857093788 422693310 181305672 685029094 306276902 202255961 260734709 842839766 527573274 630945326 389613443 564744407 498099720 855293344 854754873 816148909 751050553 427275667 207928992 816532411 671376896 192400086 950373993 666245280 120654281 712984607 765242789 711455689 504884499 845854206 484094079 674839393 42552145 831083019 595062973 458939736 963664400 931750275 881804882 135625350 211443980 706557711 788654343 914827017 814716396 286301760 908291571 762918164 895104001 150064147 393010951 498241663 54457041 85305176 843103034 669062747 774174288 840036460 718370956 942340532 199323602 850273256 972495032 180581618 785400850 222258979 324817293 15210187 767244603 396251718 804670430 679088368 364591863 583103484 406578629 794465370 805743314 336018021 792649705 384104874 673817545 242781790 8240680 462010000 431512925 747000291 274785490 697800141 313787162 764120495 930758331 710000850 405563633 514682656 695963997 302327098 514518815 802448574 868526351 439818386 730990901 629323973 195279476 463554116 753486931 912403350 888329460 420303413 228538478 469664142 899845688 167922707 856702563 733801702 20343699 948529467 725391782 343358466 393897636 663928774 988387262 670989236 761790217 883954474 668450845 849639410 92549246 34014819 798338211 365834170 605862021 736394047 580248258 736883522 772250768 693716821 670989236 487500401 115450649 724244423 260083423 53662335 670989236 402592961 644271512 179151115 766566709 87348739 505426509 854100798 274981822 29095996 492484044 831707313 658078468 473193195 921757969 27990282 335389904 237194525 493095138 808812884 973452370 892138863 608302480 141134249 53898389 391207435 876690386 743128410 845876015 414186054 774319792 399049797 89788967 122839801 701764799 872855980 567149365 442863823 642542607 731248899 254610291 223885422 61064883 603470773 460846515 486733422 817237024 881907285 875690550 335396214 929333802 971004184 342309197 505814235 775034987 98591931 446065383 886713153 847945476 312594547 895027675 915773077 711323493 814279480 508210432 906368487 882763764 280446535 133977514 563486055 940948014 399589946 810910605 543707350 561310550 17765874 929489709 542702684 891410397 33798572 505502168 312544980 96712166 704274908 886884868 78708842 718622393 715682032 974033426 670989236 906803986 900914234 130427646 498711578 797378135 930135663 179660011 28314978 720173762 124910098 853201516 954094130 263381322 64290733 898106027 892584274 838345365 892913253 824329867 181399336 185087325 99330386 51953156 686696813 968278967 921845358 933078383 897209349 61141494 752207742 418632201 148925929 969781406 696973264 750655839 358377026 105385170 939174855 947688445 498465332 307937582 953902718 802619562 370132140 689603536 93173625 739482819 779031568 372984229 89381351 649767047 694013171 717473438 458098712 998928436 374865436 114890100 752319186 139859594 131987539 921045996 867639574 70748467 710212187 375952099 934459635 986566465 634841993 670989236 742297201 257018429 947636895 206445033 931923533 320458161 779884978 842369668 517384801 168495274 396422921 286821253 976110041 987107062 907603326 723053300 831097415 402848934 918323744 710907422 481287547 992298332 733996656 934353416 519675793 728917701 456975346 988670075 949516879 327054418 831089342 488994060 858276091 924003682 247923777 809719398 618234259 672233417 815595540 282832468 290623720 703674103 602070152 786737805 952708083 678770536 884021399 722798356 883148643 238889161 762820901 329325071 983953435 784297399 945871969 687028400 175864348 834861833 951239262 972396810 770673690 883076473 975665300 863300159 109180503 722548211 770487854 993118490 126187471 693726281 903633914 747271940 585395496 918794081 639837745 430524100 566768210 382292849 382914500 956273671 687514217 791886273 634833880 553449428 943388183 430745035 333607508 829729097 732934631 236123218 617833299 841583653 231934373 701117526 717428977 614760760 370022816 85302021 5131109 466557914 868851 470661227 720410708 880992204 698399230 136357501 205610852 739746152 572310348 806927450 508524002 323382294 752803370 821194312 370981348 478133470 457171020 63487655 989930835 411746428 296772630 910077803 218196450 478793279 995843517 670989236 521760610 212054829 989413667 840150252 15155732 569522947 992697059 104572773 736526762 984981323 616224239 897020843 75642086 765813304 817195342 518982313 393403548 825727213 563644508 786242749 723815510 328933787 974078232 899627617 818323379 942111968 842645650 774052329 493843267 922304703 670989236 984330582 97621376 887454303 486167020 114846050 271549314 824060560 789639695 714245334 994339601 983199289 577410857 831307177 329471244 383908349 788804689 551908842 255733264 100238539 583675787 859161833 708963560 592262011 696036665 137378149 925093126 931440458 713396395 87118374 923746868 719948904 260335134 256794924 360593748 975730770 635666488 841588412 636957689 57914439 946714233 983825319 807006173 247087415 596240899 472603964 586325509 503997715 969415033 998051976 913558714 638099244 782593424 866865776 480085808 953035145 449268505 534738062 665864025 841695451 490526697 60298285 997193150 72834915 212331434 217025203 939373556 245445913 666992358 896995940 259960553 400229550 855625599 644227523 579409289 686458556 721121458 148563193 406346494 194446608 944157667 775361204 979455136 260043173 562542983 645258113 300474193 198822196 671294651 804595261 179023819 949672732 788413353 657288185 556674351 53518219 539200041 724004983 68451324 545151336 168083310 191130301 149396045 459612295 332722490 783484391 788661390 972225319 851981268 401402462 914424688 791040258 710518169 668569825 901117463 349495981 529499232 804954801 540108253 697086273 916443791 754819560 304212269 83743140 867962824 791143927 362995644 798146889 878470726 553995517 851318996 477458020 332578039 410988524 729134085 143327059 448473041 840383731 998313524 820801863 728321709 995578835 331184787 671090362 769633082 953778969 318245034 947231602 56545655 229291597 429806458 174489094 839661312 377221879 357277097 918236276 219499598 264280184 50526005 378938195 988566883 965650933 823019410 840032871 701870516 978700341 670989236 707270288 768202647 603712243 698513873 708122689 477323214 755380860 325709353 414490956 531630830 818937433 60072808 798455300 864184729 832833755 449585439 315104888 403745868 571764176 723403790 553315433 171968204 790205910 967796147 759798678 841984671 825486505 427618876 850562018 680333504 823353011 444062638 627366260 212459849 726469790 727033050 54513504 863341311 670989236 858552668 849831961 910952250 859581835 992190760 875852893 987240439 732781601 981904583 38859652 743910397 586579287 125737486 870856031 689146304 688317612 991148200 238063425 565268218 465351477 908826250 583875739 637207581 564345455 174210765 82886337 936264380 646532520 924921389 178196689 763824130 148179579 695794317 742973878 357567639 262584848 918741054 44696853 936811700 761368802 684980650 341528850 981472452 50469069 124344426 738879161 662923920 859446452 549438129 26291645 373236636 919778383 814607954 536393850 461027627 796350086 716995885 689553517 903029141 837827839 892960395 901785216 546667545 397479535 669381456 942368041 164298175 204686752 214308620 745631408 760442001 608027779 33774502 140732242 50565350 726037107 956244887 568190872 890928337 936503427 164705604 478756743 974600161 972126695 383853292 710715676 517271732 738970039 16144039 8702808 773990301 706233992 609090304 149483197 101590305 829423741 401045118 422360581 894442208 453617941 844538188 975846623 510248055 496781194 925226831 804270459 500231961 925258493 959286113 520057021 864903376 658206270 838929699 965381922 809124492 917917445 791137705 742480334 741786540 245009589 578734981 997570846 481590383 872647335 319070152 973574348 8962434 192141135 47927003 275407160 999502830 936607446 904130716 156643932 948622670 877622426 125773842 676515298 749800803 879371187 807052579 742099184 756162808 38097625 915943992 980477721 98961211 990895839 748949010 963399900 376127816 231804070 282647309 712354488 703810164 726504152 609121571 507302622 924230241 651210769 955535258 701789506 358521081 241058253 986332840 990740239 186384959 464204263 788034998 950718101 511805353 821617943 831451012 509359546 836057856 330965457 878631385 161527403 619113530 297359704 712627946 903682913 587757427 303654099 308342047 964340207 780788322 898433337 675687797 691294805 602279855 590471932 163220375 101698907 291311249 379741396 384973738 764958687 693548499 691051799 749608001 435609871 615818129 729632093 678712465 303521835 729161975 575874167 532765454 849119803 963029512 833064507 710593873 237923458 833205448 866751216 47454980 66646348 308712010 275507565 306325234 847284729 961465171 840288942 758208586 779319737 615616076 804460992 734129016 951648720 542781596 536398126 664523127 415599077 719125358 410779026 973683395 949022452 915682246 746884829 888968251 737742683 669219293 788539135 70741802 970596551 431257994 670989236 911415817 429980407 932957184 743924046 64577280 740745899 858988575 151441658 62449325 863290901 837376858 711514247 708913436 601121693 858203253 413525328 835183772 866142043 110865282 200296823 883124630 676507804 168746787 752557395 681135531 293362979 634015087 815966716 929013302 226471475 464090020 407222210 594812335 483000500 918262858 993187531 960399978 247948942 363429754 780479329 117038662 572842682 153558395 924508332 212475594 102873276 278597826 782143831 814863823 940592935 327597463 677653077 912051239 572442161 82421416 738840782 992438443 856955622 101165916 727591264 670989236 853562990 483118168 461108400 974408003 870582026 33532541 693787487 358848132 922940698 741677523 490543080 699030239 90118147 355758690 450059013 625583998 529907829 269544415 650216774 739682184 670989236 985134296 15895147 992758359 677032689 917679505 109269314 849587192 467812240 446814122 655452800 874984177 669588620 313606351 346382570 592072976 108623568 553475776 795445290 687190166 54685567 503434937 85865235 585358544 983376071 763385152 447117581 470873710 760397093 614588320 694992244 916078270 1979838 397314604 657556607 9591319 863258455 706110105 957500219 779742447 801061921 852738302 826473330 226053763 180623243 909406238 97525154 867094871 246088065 556879882 978657524 263020426 864690584 49216934 254925476 798400579 718492052 937820660 105794010 750527608 860513428 141484380 408960042 925628601 754058962 503818052 738820859 699170391 628354753 550122257 175081186 693029335 371066849 158356538 236198662 553185598 445016665 758140582 987868148 303579535 304273375 987021104 662131193 867788113 177475610 822692876 76412902 751969258 934614828 689664750 689520759 779099438 833140762 37226167 858362709 505757038 461857515 727589640 823659891 721521023 728593704 301599288 115289317 3964073 832196561 589318341 791265854 3832336 247005613 745280722 424058960 818060508 963556908 839243081 890869436 236510171 595468884 732191872 472620123 223190840 256545638 917635284 903415337 87102375 933918900 974326815 949839724 974331551 285275784 278634253 145608462 974834877 827840467 778284238 465102951 238737614 862174785 192759590 871120300 998487491 580833604 224115067 941424928 855001181 43040096 799742912 810721718 882620326 670989236 755503373 54696859 964816239 861278105 840027735 958236512 760152375 656923000 982505229 239025782 771607405 35335001 600995905 736117574 347272969 523137190 956817117 934868536 307222628 912534133 966760363 439092136 893810238 727317261 967525055 582077297 804250432 795729297 403502678 358515159 912062062 687504492 5999834 708370991 801609380 294200406 514955262 708304754 961660434 519719346 771654451 266016782 307860224 959392429 439695334 450963236 334034770 712172579 878065574 735251836 306967577 680086631 915389171 812056042 414950108 322935826 317707672 784313782 231576862 58851587 994570947 658830144 670989236 90233268 712435223 30150024 594234830 708253120 313250080 994879448 907623122 856587972 954250629 967822147 550725901 425104549 147330654 869222143 808038247 700875754 983341311 921373537 915366758 104342831 918757238 689566734 122312787 895490063 996176784 625951544 847204059 540742942 991830326 15301907 708931276 781599615 903433117 916499457 999222922 445766049 917404775 41864553 737733514 701918068 926856011 363233557 853061963 678375494 53898870 56345404 933122583 755839715 374965806 833795511 914511183 255782427 810737261 747455530 205067837 738428858 191445948 488925659 969388310 915814763 658176981 867926581 19545832 585752089 851164098 889478122 300125704 103272571 33779723 766927951 388608739 860302743 834407479 781861224 840706309 780272134 985569125 228879291 894079695 534647894 74997128 675039929 767577931 3157971 137194418 915509732 237576447 995145276 411799903 804933659 776956936 260924967 617781573 893923332 226432917 540180396 42257658 914345739 583039945 816715678 228929088 126464986 837389431 11009645 930276122 211382664 702301757 434649780 219217674 315798995 985113255 141148733 439400446 775396162 641758840 997613490 316498580 993281481 750016491 299133311 811604725 56084638 662646081 409368684 543185677 841504268 769670443 816119187 68379494 826072468 727756735 376509681 611093791 416202206 449817963 709555348 676695684 454640929 997572308 921539578 793164035 692772961 509792447 512364762 268965863 684503878 763759988 985979249 992162402 833702642 803446118 296602096 614020492 755372573 906121762 817975457 912942122 998618037 88375531 762337182 639713462 790289253 900651184 910435905 73174586 988976706 101443848 913630730 46594383 295132518 97886011 584294584 147085905 813597825 770801006 978612988 504608768 889444088 795327110 901554577 229963550 30713236 21066061 856808210 304301204 869244512 757990965 394690427 630768486 744130830 696846388 753596984 398701126 310845111 210487213 478650283 766161421 179520466 620908356 95911724 792801699 661583151 920851437 389798737 290075699 962402525 917849968 335775088 525040639 69807544 727385997 859222145 597835542 347601808 467141332 17027266 373659100 862299661 639263882 586082078 118510500 679260726 924983099 731179567 308228326 859306558 940665949 970334115 917160993 95127155 841471808 141932745 375296420 74526248 839787558 859978609 517171468 792095069 922440482 740469562 348400309 88414630 687441358 59610493 256217844 943709958 507510682 550627012 777926542 823579182 983537542 411737574 994502431 172710771 963524784 937697398 352290978 702663942 703853195 982653626 941191076 720666570 922803619 943484017 984389319 732292348 740575883 413982577 978034241 522644320 153077117 840816969 998199572 113090173 373583380 425845342 980743060 502837591 23155586 771565427 692241272 125143382 464823665 469941164 907875992 998806261 680415420 572323937 803513209 521856715 267503815 15274014 632369212 455491422 21337433 966658185 304371864 67589633 666313372 132016758 893611659 24308346 306652121 12477416 966350004 655956102 763512204 905939233 670989236 834151885 871508852 221714281 277975677 546738124 740609996 466343989 707952020 892008792 837436460 885079797 172619119 308833216 773969737 270250059 986021735 232903182 219415245 366127627 570294495 717255601 812650390 809077339 721443217 757658734 33355540 42629781 582701145 678082094 675562221 882241450 108820528 46660444 90982377 404815730 41499915 688730065 839288962 200218328 208903828 99068588 548624847 826648356 931824543 670350745 711148734 144925446 594034959 910257835 922172788 689683627 212572013 598564654 63069360 761870049 735643110 835785172 699469014 950827855 524479027 891916092 430171757 819700245 152593375 531648632 588712020 916735201 817587015 21838188 305662192 789160781 586111336 699292296 298806439 862670090 559594760 779277432 553722062 925525637 923771390 416554666 413310124 357152154 953350884 524790636 873281472 320211938 742192275 952655496 600318217 767095571 881596918 731286633 673815739 57654824 990324086 6422529 744563930 492981967 888294387 161513742 688922505 711996189 939184410 536062559 663904982 808266615 726233128 641108803 875527355 898882454 671198491 345173739 175470344 504021134 51653587 762484540 687510113 654621663 564228425 53930948 806916555 824040813 273113141 673642318 977426248 907630410 816847731 228484207 605310729 762716269 943553509 422285116 921936580 831124429 797796416 662690674 492461134 955085994 321547107 251225883 530246424 529660365 753127052 530351292 755211417 607552465 939467574 186866432 862008838 899158048 94104060 783007044 869856111 935235825 825797228 224008859 689002409 710284354 894646608 108386208 960042334 613190396 617346214 509501388 826767094 504120184 600718629 419021983 547565152 818500012 442094595 791859806 119349470 742038754 702407064 882222424 654252575 13179886 835367030 972295352 681475814 691554173 368845776 443359682 761288315 243615580 816643012 952073665 135998132 751853385 680547711 829599018 365165603 426783685 751909779 921983953 643501402 567002774 707378602 991211135 301647454 937694728 128942041 479638100 248167315 831131106 102714253 860785577 964231198 770722560 129751607 944387227 231427894 289615987 601425674 213835669 213737675 939864675 990052158 398288748 852053762 583013944 734745929 972318757 440215493 654209840 197055532 967692391 670989236 325318462 716120173 353777932 428209359 607516127 587374258 794091748 533235924 410633109 773682427 474698931 941223647 688986184 664205214 975412284 754287150 965196766 109558318 608489005 120945376 750317443 28449486 986067466 111306562 355636121 189136562 567051314 901756471 532867271 965801681 929670316 57408751 63170196 252557034 979616348 767145128 337820917 162796688 316367597 771941923 505960111 709752260 424248589 452727256 974165145 742953195 789664831 788406227 723923339 859957510 892593996 712097545 928320985 776393834 957947145 506932594 616391667 233360626 905071928 957402002 296869989 389322202 196749191 6436388 365732118 503051789 991000661 979876036 700840131 311283165 807427058 824003072 890579267 3150232 206294164 456978486 114576265 885005435 557319087 970002858 954318847 18427551 994051754 105452085 512663385 878146605 492043323 445663363 363204008 324867027 913363580 142068476 906473436 832835979 640145062 213067516 167957637 139090201 573047117 297262339 413799386 811799847 899692572 722311884 936533549 900922900 709634634 775630103 82037942 678774030 955743122 278546639 348809371 745375837 712501954 954718584 176294895 676098349 737112346 165622648 870018490 713259985 93013047 162371887 889628230 940996924 360607529 43106766 271649641 70949026 985460381 652041267 969201565 719916971 439770601 597551304 694094850 282001330 514192931 944336008 894105550 950568497 991974621 592833490 957466975 944800498 592987862 509244117 844527194 650257499 695194080 883430745 824185113 600595250 200834264 127053315 948938730 583521151 575685087 603342637 879627363 670989236 187392321 891177405 484107020 821528353 747165533 674396351 645311053 583796358 856057422 650645199 155601471 827383437 291321941 708192379 268948782 537913255 813671215 938451803 81363406 714520415 138483682 508811112 808812133 912440144 371235150 128275473 819558440 133168132 780897456 261852249 594056884 543227811 837475062 700330242 600247874 824553491 645416463 940464709 692464256 440868566 842576955 801761703 623887770 280756762 903283936 7538243 908645620 941221500 146322283 987169197 229783216 717895617 993691200 988086786 681472230 414167924 61774218 152840761 808116517 597224000 379928201 962239751 612869078 913472734 426236548 794684863 332642634 265963653 775783324 847243438 634676441 852763518 826852442 865993260 647749545 288633920 758041648 756449149 895960541 704059538 879992861 550741146 205952492 637561595 498853142 316891563 743039793 971031812 977254207 801386603 15141311 987519389 243416039 477965494 206542521 899113323 611493771 925370354 550290749 867535324 776705004 642814651 736608218 789754807 843483151 257442932 905028673 889291768 219818010 345150462 611102453 978612177 222235612 255747680 761759227 769003419 183920239 396632504 731312330 987664402 143754763 422250588 556592775 577745044 684481340 68112447 146410416 730152342 769403940 896859089 432155949 447897432 825523518 7589643 714328815 823664866 670989236 978429464 796151505 830350668 96375764 619334828 361267671 910632408 934695318 800414124 388739748 351282993 699045055 806958345 942542267 253204235 167641530 883707138 926245397 143644251 513484827 742918198 935047803 782198015 257320194 291037463 275737212 27240865 858667640 145367233 682440036 841124932 837019302 525261406 495447160 757016285 76133031 821213857 923504071 692322393 952789204 974902989 602890212 48958890 150572653 360655001 934561986 935600773 197455774 739603535 595492830 12525647 185282334 189091010 934279422 740608386 133013873 818236147 757824823 919327776 924542395 390990037 951223709 478507969 374815580 893334145 480461130 17366822 246818759 954108180 605097486 900005463 441204922 82412973 724020085 870033699 792386353 854775621 773137283 812975069 724662616 775293345 546730287 980543724 702644111 164885550 195859166 766507426 168612035 188930169 351382832 829828025 403118240 907400734 364571969 98580326 541345209 118014761 236050227 905461177 868501594 819264200 572370047 286319245 929254609 343165486 68667368 683411057 984586321 870688655 953595508 622971949 210250622 763067070 301439618 897480413 103975064 495387091 715770219 299395792 367649252 458532811 673458424 180417670 648706925 847175406 122221247 267175171 856181080 392641654 195137826 591088485 315509508 875199922 564803274 511736703 802411006 122761162 361728589 775155670 865478421 394511256 344683944 986873749 512816413 720958818 778388674 78296515 36002156 774897304 239116929 352822019 650782736 13654044 518010383 197939661 612420309 24756212 379144987 107706770 962533085 632331597 175045781 581970591 675197863 789252033 252565752 612656154 683286169 736157168 142253133 287999644 453283905 785176846 412061190 193134963 810669108 282788249 106712286 773648236 337591872 658457136 720949832 696858906 809491806 742731257 899114925 204910048 808648123 978426421 69625679 712280780 250017098 537165221 451710242 670989236 599214220 339955149 280357129 774842388 819091701 659794048 790530171 893826305 585851693 197826674 264722286 325238676 271072123 433680643 877618242 823755080 611973976 298536577 859335822 684272605 981710021 501124466 711297954 941988474 724079166 129511397 517913585 883499419 802452240 754133910 720387270 364004044 53000003 938242763 124755145 664884481 689188903 337960397 727188346 969929457 712687107 426722743 574340628 779561275 576188661 412686034 230156082 982927980 967438496 658693923 562935286 98811770 549754914 846712029 803106214 134983614 690944147 993912150 731299071 102253750 947376107 783903071 551998863 730319113 946847131 100400121 980393363 856180253 857260295 709111365 187774538 878427894 659213936 171774896 345974610 186913435 600927547 798635565 567854965 505840360 830312118 214261546 671903189 407121132 941452431 678894795 975730530 381591749 511622657 454792221 90025472 290618859 39223225 716328642 868866086 561019500 800941697 883870038 379243371 975363530 755715098 70293324 651392231 812374618 797744960 552918319 670989236 847151286 513067879 351124817 486462320 989877947 969260296 785526622 337708434 740996788 537312722 821094248 967007923 480670146 183743854 766886606 718899988 835780580 831853861 741402738 233595805 906205190 5341965 510422103 502035416 138868689 947109617 872523049 268787954 762113897 856681962 433791432 879271596 805405951 958534462 823079727 532314224 261523673 417979027 720659996 424932719 799064956 708198319 759017202 831254061 255805610 678939776 912319661 97184754 933478300 818776979 584882867 63261192 797701068 776279429 702361540 638353998 122745492 681622441 709801059 379125895 951421103 730474188 676653617 688373166 679551010 791531600 461394267 378816635 957849503 610888597 518810225 714560360 955595539 216413993 510967637 110635190 702539233 889338129 318878711 983190053 797082677 548477547 11200060 937433540 290786503 20462389 112413614 498347380 86768930 105227273 803707295 560136147 153975139 564823784 83684356 987396150 583914695 832519716 672324029 128355541 70483846 123828781 811422049 808616860 884227441 794904360 420824677 774762869 885407340 483592372 96788909 849095320 247820591 130154132 947156613 938130084 813557865 665356053 755785645 854321822 480480341 220429214 695215026 46620285 27945206 804624648 871247446 415404219 989674433 348964665 26518409 214128463 522812992 710352358 839564787 903629251 120855771 668404996 752109972 838865923 438496749 366683232 824536107 314815147 652862950 706279654 420744220 295646082 262133253 932731687 890144110 815981078 653645069 809871859 969339763 513361746 781197793 942738445 257436194 966473937 986887587 284234274 520784307 710832555 825446448 931120006 563082543 750307447 566494785 990315911 929344761 745170297 670989236 211555683 547858396 221997207 974674818 845895564 792254458 186873073 728454345 106147582 150679518 444917944 769749980 987725255 947184324 768203299 244092083 339181686 792499544 701970391 791755960 861830382 701566876 930755152 179185696 998540740 827509981 803711672 890501491 375409131 728347521 177851821 928340387 496045512 902839977 670989236 702477235 982335658 576334734 611930436 471822433 894420185 990603536 925131754 709453776 938870105 922421505 670989236 337743602 34675281 384313909 960291674 920476086 994642814 645052199 399170468 991927198 413616810 968007916 531465604 27523345 353073438 778925772 959845584 452334556 888009230 156951875 8590843 733467456 767042941 17819429 774972058 986319442 420311482 834194632 953741397 197348259 670989236 723612844 443922667 224968640 892778964 986996211 989910551 522939807 992509889 195726974 325219999 712492747 354978720 772371341 382998730 806762737 989373980 802376246 382187669 646718191 358214787 386342627 186106786 439093165 730824777 20829340 334125704 624459807 985134897 734665484 522163654 538981522 600931266 194396331 896367835 81195100 479997412 659991246 869764091 824327656 728067687 983635950 899553193 526504842 578329271 992431644 531983825 808706019 760258177 562199900 163029267 703037904 920706141 772428856 733490915 500515586 325666001 256582591 761013462 573437816 651669548 436946681 944820334 324445162 222150269 850904516 735412726 83653832 830677742 891998937 559305910 856348105 719592454 57536046 970221848 812103423 297217517 254801840 105769274 260261703 911022734 250840482 126839888 528563669 479624769 756987380 820736030 684686701 753735329 288578794 299496687 282843285 917397154 940281112 643063198 459154411 28661703 228991238 955385947 334247335 619106751 801970095 572155655 815500592 882390325 790981569 701457016 914127014 672092012 467181985 769185423 917456309 176932530 821996888 209293018 991326560 541447194 157789907 489529512 672565117 29653275 881108770 868067652 805129756 704551915 539359369 421793970 5540876 385613243 661231307 750143252 389970644 214475377 982945831 928798646 488363519 471429163 439988456 891534005 809564225 900643592 297260698 250502830 773552798 602766044 203628590 201194223 734415242 581794609 903337401 404646915 875031417 730357296 499415856 751999023 71384991 587288319 684414838 158210469 284180935 185646983 946602267 139734349 611199511 371052423 954307451 892444480 418231929 888812061 722315259 203780740 767252473 714511387 940305584 534072044 379349308 421251025 871807107 455988396 696298871 27250196 725498986 740164790 104733021 241507478 194308178 364816876 189290338 205846569 979752529 643318535 221725937 342499188 161893356 154497105 356374762 281894871 731430942 674768176 943357458 947376810 205710943 309463503 49252526 587548283 194828420 98841320 445988854 40824587 623160024 714173956 588167653 260313916 213220161 698148159 636045861 823504724 809636707 741016754 25499264 851672684 887741533 205548967 696713349 140571593 670989236 493539400 446329227 483936375 722525034 976998413 770254263 867990400 483207525 764518488 336943966 236442419 995005172 855690152 862605415 969061354 967702533 149139165 505416314 251042159 786666633 391210929 547335669 753947324 951579707 674403214 903232370 921865684 713646946 768720207 917528727 608796307 837112512 600764002 695381895 413450426 23194805 791461491 825793996 903952342 670989236 73162701 612160846 784892086 205279021 80439195 87056068 484982567 236038100 257586028 316931682 755243797 575918287 255747553 915413941 46833565 756726959 707283333 282757334 745952244 649947267 816895028 98108491 210706166 935580993 207310496 859177991 843199739 622240091 836147703 87180428 595724941 50739102 83806945 554294921 495893739 750807377 240727714 611312473 795472889 574823300 220572516 922437518 672735625 562761755 49621093 796320082 673108780 55339175 676801747 741000396 710428780 351230584 608201530 621543611 203192307 326326911 670989236 791810086 584524646 996751646 934671072 719089609 921794774 192080067 794409376 739250928 150201532 91241530 629963513 317860033 701989826 470289628 420134636 719790404 691669528 127438507 188264814 915277720 670989236 397389729 930000282 38755650 920357477 908993199 344396492 231627629 487416771 723447334 852045069 21964980 691342573 292323538 429738673 847677585 642405212 809854723 88297916 959894766 434705008 855509986 341774733 907314019 994724467 750586540 363566365 840829894 191526070 757433466 156134601 971718942 796069151 947952066 496052017 305859127 195354220 962768709 670989236 671075583 676880850 183208132 418355729 758290650 110301368 159660740 5499826 426611539 114057877 823720857 698338123 615969590 498266912 352062667 974205687 624910438 776332665 78107842 867571300 412455788 628018327 670989236 859738072 473866486 529144769 822355848 928273461 865051167 579093495 606131896 857023059 697347945 475883817 789905683 986574275 70611573 986888430 87129077 789708367 158192722 879427621 697543250 518047750 358868189 81184070 881370143 239228638 152834479 116243941 836049878 77957657 733719937 256100714 530794989 118845461 983395733 852637271 250815025 47067216 727152361 789129790 422356652 723335371 330277616 399687667 976517573 168034879 551923476 463553477 998505235 86486503 216771457 69454257 801977971 787477969 252283930 822949900 732818822 973202264 437569713 823266269 269241161 785233739 854567781 725198547 832435760 750645476 504292363 189825566 495662960 671728650 581521794 822414617 243399679 875413240 198751331 721548197 294763943 639272294 388636948 79733866 649490558 819116932 264989469 867321134 827059887 53683762 134582399 907558664 243273283 901389103 182946956 479505222 877468773 977315274 834224152 125533546 216132543 685734493 963893822 797550351 940534011 868769250 323147892 328276719 908674068 936210679 990237740 888486520 999330416 619880992 138183866 969304948 564606457 771498626 472878212 486093405 626922862 20584368 608359792 774973174 448053334 720770334 445660638 450976309 649796300 670989236 724782059 174418541 435121027 462045588 105463565 528236533 352264504 341386828 383925846 40788656 766169436 676473114 634254014 866893419 904861094 187322423 551683848 797295179 660153328 840465427 730395632 331495741 670989236 648504201 832980904 48957444 262720465 803753629 470493560 1023049 360173673 274238761 705922949 445565682 900504085 340153151 973449205 656166566 548553671 945679844 138572331 706157574 493133362 491655395 965241368 909439858 13428435 568102064 271317811 982332712 790714972 970057739 891519544 63866062 915478217 922276202 339720692 350009198 748526465 327068409 383173280 585595677 754944063 609141342 890176399 911747071 35863912 569783483 874435560 53220651 29807516 673709201 823168450 457089806 907184418 810707800 739742872 695253357 873371357 121987970 952866858 724530131 867269026 896106030 958535078 117631079 976160793 853594486 853329697 578173570 685152693 229633076 293699488 216737663 594347633 939371896 741768053 725184395 946987150 218600313 52003090 200991878 766851926 854504555 729433836 508333941 990122562 721071577 252509907 851886197 680872824 972745074 626858165 525970526 865986990 986223469 974068135 756239386 964547676 845194423 397952505 121003060 45914311 317302479 761948213 634112166 126217487 803312846 788911788 891000509 907853968 835451290 180018287 331771878 99805596 577335992 984453858 670989236 927525085 670989236 937035566 671017603 916064340 133324658 848157365 748795864 770879494 924644002 768082259 739477557 164546530 547452588 987642065 298938263 476416530 931791587 177321198 972262347 773715135 239055992 975411824 918257067 910412589 809498675 389644498 483959382 632212325 827400131 149887242 883675383 247818005 659935466 670989236 989240381 190755320 365725623 334209811 503828689 596104699 926846716 526313197 965216623 4467267 851885199 689754407 881121347 688744548 937290909 555588500 885302535 184443778 234799014 390720580 989383218 566596823 95952758 827080907 266872907 12890991 482588329 812675874 134928721 820066796 816768599 734142316 869178883 888358174 221432142 802064355 779461821 594248987 986590806 882943096 890885107 6535690 504701003 705205713 112502146 85342816 796287890 990683976 745921896 734605941 766866895 850225625 605074425 731869243 335308166 480422779 627274449 501657785 901074180 638424849 468648318 879067486 950183705 63882045 434798412 216440583 734300400 327576931 184548806 931862463 462083567 935646808 650659063 665239550 918214865 769459097 280908143 556922462 806364343 674192276 817456654 775897225 670989236 234695205 855645945 263349464 457120584 838930628 770296474 124739399 218103663 132352716 453108434 480864410 603990531 389158875 196636444 752213763 804951088 420951448 980314119 477786538 837252175 763923256 685144322 248449840 331746671 898948255 50117963 435871569 446170636 865197383 843623720 478173375 725488305 622796402 700837423 990320875 670989236 955315353 636024320 642616869 917478638 934507668 99336260 860344689 796852825 90494738 530973146 171981984 939687623 9334561 800585879 696962839 815087518 209194538 670989236 358579361 751173726 718700045 993458155 739032961 130536014 736316276 784302902 70283318 455867649 32892769 169964460 397953897 761020559 423201055 710270201 311376031 375355879 775261532 382787431 15750261 759553923 94169666 507124839 393930242 983006767 439158174 772724327 583625130 217369679 920793876 683376790 157244262 935267022 721136502 769466629 921655990 415518763 585229216 800764360 737790850 880624573 593970300 280895781 765763815 624802856 550792295 329060025 494691898 572497744 771249598 206986180 852337482 779758567 399183016 179151101 670989236 614857766 680293235 991874301 978886492 273432295 512179514 544048200 972114432 125302422 107438364 159667242 9690266 221501552 888528216 707272731 743770755 975588108 369164247 225129637 884700315 349627982 306393473 674084604 750356049 137445803 979566741 167481843 805564875 166615531 876121549 995993687 361895913 685709474 704429714 968023734 539499611 977045393 124070184 297921617 805658079 670989236 216197290 728456439 398763239 208242156 896381995 553533669 701871214 439705747 943995385 626536883 839379401 771566676 194877127 370421932 392049134 799321140 402848148 584222439 440183668 984597863 929292385 356105176 564245104 971495195 586499925 328364028 795564337 771401988 554229286 814211054 219245909 770512375 870845546 324331873 928953802 278212723 92792224 156000301 208985414 878394828 207008991 132344400 875496199 303333218 406740162 892416638 749810949 754524375 881599202 769990101 591054735 172968223 212974637 837626415 786809595 319544534 424309716 521183144 247102482 881215645 79122490 718862356 385044954 984911405 463316027 400450767 223583098 290485533 59528740 709059141 641644880 162072907 911435078 834683987 19417579 393358836 951364280 780097076 746864486 636444615 939654216 184043110 490687424 663793715 591496677 389305928 118872971 525196353 905787214 776694134 597243848 448750512 989547415 956439009 670989236 342617061 907553370 871537406 732280032 503079861 684611842 16247257 665586682 377032662 586130077 43683331 402263942 714779348 325782675 588904288 881620990 873182234 797521998 947192968 847564083 698377253 837924880 702012415 230954388 6257052 796539172 880767118 849777484 557284060 646268416 638236387 865041229 615214769 701354628 973941111 124361759 798013966 903616747 874354559 633769425 736955228 730512075 735378604 569458426 534119659 408548075 790019984 983857294 734596147 801071690 701349763 88985006 246771751 276956454 718132901 901842220 999976771 889612095 106077033 550434098 39116088 896554956 457528257 529228836 273519873 828703749 78322148 899698931 32220226 276605901 914453390 727287040 789449059 782489996 315422075 435166382 506568181 937726442 552338501 963741577 292997119 597690520 95834551 860250116 485958947 731283703 271048308 925701036 358036732 204653216 771875203 51219728 414203201 527878439 276983010 715525565 80117112 230375212 515524759 548127886 866838064 764421149 412040626 812594710 880217723 709076576 439112197 679743191 279801147 990867417 819256398 812578051 851194256 708995448 958658906 546490136 995921036 754582379 612986279 59455626 233785028 263249812 841052858 890166200 3172721 723503174 967067838 933716314 503495067 308314698 941004321 685294812 139382571 816600502 706120310 899752143 507047506 334927348 845762169 673571182 960209661 793638109 122107309 966587552 700257211 791445666 659366554 375097045 313501310 147781156 600073650 658735371 787900586 650539499 932012826 125511001 967007571 66270577 359765332 113993145 756582060 907696177 949408308 971739124 246806497 999420637 791335592 671964394 718226241 741416443 817863542 855211355 670989236 898011373 421162877 424653492 822917556 749789132 525259181 791825626 828271033 658898173 893006389 472731527 763329048 857575461 906501474 738395617 927506751 693689552 670989236 252281244 695446930 119666334 723174642 830815046 894641876 755255796 985139279 777280762 861180142 932461189 159185977 722504798 279747391 383446489 651712825 857582756 382452872 720956858 694420203 693665467 971151396 893882245 458920287 698545973 976466876 200287372 42104986 504560716 658113393 10152557 796604259 739137779 121450614 874700872 306369293 824594141 630975754 289945212 935354764 794180338 153701311 833481377 477213422 190388548 941675065 191519666 22651654 859614505 223687739 718144139 705789701 893675093 124444674 585173285 640206885 925494396 540321837 429950972 344277621 430946473 623746289 766599112 725412465 505306733 883203221 693042177 906631692 931623333 406985183 574389207 528091982 657965838 233660142 131585522 701720543 533235754 759808907 817049322 966509874 745510785 906848004 579193597 32046396 994572813 575126402 967380720 932235036 930480431 951248986 395557873 389425994 162315896 49722273 366753151 455582196 762782294 768261851 266209270 617092599 546482859 394222826 757184870 374006283 988383728 870620647 180818866 63364895 369757346 222476639 13866321 674648718 407397604 890624206 587369904 469219997 410687916 285677301 74584737 113126724 815168815 425058978 854697395 721680823 953126013 643698848 233796238 721785230 717599008 426378611 784327654 730476663 810654509 626277106 6795163 766838539 337707098 822231296 699320465 531474923 521479905 773526197 934083068 730686581 56840619 494314441 845455053 664461946 494488434 452854505 599468458 827929441 934134643 917923187 983750553 854770518 663975361 84389371 227761911 920869529 410680379 500730643 844330619 787231829 447641056 52632921 452883044 797863409 539245714 619756092 728686656 820919796 836869344 962801215 920096427 308159155 626950082 128592036 858907171 735799201 985648791 676377510 514077919 437092636 602582388 699119673 629132760 797766656 43547093 373600112 919226141 754615851 441261395 772630479 297086826 742494091 909241425 210381714 173116192 563852171 903236798 498405315 842590995 802383588 891622896 943999786 489202889 821447987 278821234 102286763 777260928 649790745 501451901 302176661 717671943 17296624 510868050 587444666 95171492 1450167 167921169 670989236 862704580 757098869 978050560 739368267 404641193 878946505 968653420 890020787 52516258 974962742 979161846 961203412 150722535 979066214 645973751 389287034 626213817 807786082 403395561 900816304 917237278 790892972 853102926 665684789 263933074 333621446 707510052 569790002 708611922 242006508 206741489 946804999 636039856 314055530 632032001 208492743 937318615 975539991 495805842 600675207 144798451 872558223 730639494 658594806 625773705 852777499 884000969 166463648 621712328 153845812 924034255 783061035 354622633 432004792 470402584 240012487 878995879 905207323 420150042 565990516 731862757 220968977 819131927 878341199 213731035 697373023 574174420 368168746 765532275 45747471 81241283 622595301 886287147 478100732 424712373 535527501 847357984 45845736 539132465 217696931 707818257 881832173 599042075 889502321 960217520 193692607 762976211 956850069 766332778 864429020 875536513 336836317 219794252 334265924 960665540 446359231 437521916 126992929 997304069 455359447 241409414 788552400 903133033 315427901 483524370 50311435 318188739 728109523 670989236 733170943 407714159 823060898 997190838 48707712 745952099 991702372 784696873 670005561 829363917 773488426 875928761 670410892 535548373 155091219 917195615 833605977 933352996 902354633 161498627 830744018 805368459 934181478 363625475 914136261 337363354 865243683 55005998 749549317 946403321 302749301 826309505 248124839 871541751 931796393 494049944 991077591 21518537 70724535 561407351 618685153 186524937 774529053 871604147 178459917 76394904 163434947 712418131 849589754 760978859 410691179 858525901 341927144 919342575 365296982 832291049 630190713 777117350 605575118 885639429 597531095 600269017 890067822 743431977 935058106 814375344 663014247 756475787 823610041 971401329 974338838 837835935 130524190 9706780 459794038 709737058 54025157 302856694 743767518 747238318 623966108 869737992 92621304 621518696 885531772 708477798 875638778 131385344 680507753 379106531 900325129 533894576 380706400 47067603 897240318 307829022 983562693 698781814 861808687 916678318 682817576 991512653 866375787 53450574 382545138 544986239 366845905 572572191 315695323 346566988 998692886 471687076 251892631 384906186 794919350 682729283 543980426 711173353 758499284 280290823 821786285 888169701 714992819 587722336 11674637 687999301 677180878 785138445 291059064 169720147 916968417 695774826 810151812 777083568 950638663 898443189 759104221 650509710 441181415 889435609 422525875 954794435 488456095 410638574 944238358 908356285 768475122 721492890 808662141 991888810 916842116 147992770 370963061 48579147 934127166 725447600 974612309 523449851 451975473 287888970 691075803 246868063 324659527 707096606 54473809 803676529 934065771 337529049 480197208 238533960 945970942 670989236 927950624 968206792 552375963 771227952 803698237 35036654 415874978 758978407 712325294 281509483 178393081 683698598 710480819 356425398 444842899 569388169 886035836 376975351 728458334 783464964 762821005 580734117 791840149 910457964 736885650 987984231 52045156 574257300 695557917 707445652 725225619 714423845 920745091 344079748 844901654 798946433 916780124 876827143 401418216 629974333 613128769 248091350 614195492 887193922 944453793 763760634 135671238 739106014 670989236 980344854 6998992 762422444 898001981 368852418 763812376 400555229 190067549 764102100 440293354 686589950 461683833 819863988 971789004 831220098 410188197 714100210 951465847 250538459 443219848 607115817 799004183 254255040 704650431 79778290 505416705 414457548 111278348 700832754 76186045 587859993 923466134 727204368 163269723 649943325 548909939 378526918 751866156 869819201 579092706 667379095 206473251 537420573 387106315 753325735 971790169 552243681 479699462 412545886 3857604 845918154 500763983 408549378 847299550 237689907 841763160 545431993 423703117 175301404 791725833 981189446 851373732 919484352 22152408 732652462 471840792 228756905 258385198 972846184 42482167 818252578 856864829 21798562 879100639 626645837 719420849 141798462 897404431 992683192 486522889 401540319 871529823 776596757 847635311 100857445 746247554 918595222 591384152 818172840 215625802 233182452 902402257 778989664 738683447 378329166 80709290 936105031 842809460 970802039 799069889 980141297 211601066 987971976 472610231 467559661 155535524 100531943 229794136 684841429 941411761 887969079 812539844 988478759 735755118 601618067 449073303 513738496 4098058 511219404 942452265 947432762 931401264 528619195 239915326 680808488 747752993 183770594 321309918 46605122 92405519 996807173 975675626 493231009 189491865 864574011 424643698 674101720 957693579 704995160 651030920 909351482 417416823 192405706 211710817 660684965 926107456 298156472 350230171 565391901 980061090 50542996 700858632 282465108 14177024 556102273 72990386 33196423 428194252 730285924 812780132 346267006 559467546 181184875 611402196 833707875 493767439 304561898 833722221 864414231 689352333 320143351 586563293 553562525 102454451 296306201 863292142 773046030 619062477 2676101 505421347 183742816 687276482 144405093 575087908 938157591 912756569 998045931 985882446 875431845 146979928 798507960 166948206 955378 929706859 801701352 753511235 910393297 120362115 865455775 926285986 333989426 528737437 762468603 597244520 141456718 668069637 591487504 968501641 859860360 979408744 734872513 159988762 702028924 799097496 943852254 911578946 708608011 964000905 879244043 266089088 702582679 461080190 24119765 678607687 946742814 524480733 118183404 736496702 909461477 554552269 566769488 891149523 527674941 330119756 439580160 669549678 300728954 314132713 239954852 499102828 219806783 351181121 65016422 86539647 962335010 819150952 679955067 464239049 973824038 782983838 152498818 843011652 740265359 431273477 262151195 819551517 46352519 888386545 314673679 993506674 816962591 941060879 950058803 662644598 670989236 613842950 910669649 952771257 320200613 577281413 726128723 46377713 756764883 891654600 220438852 72057339 410982026 997201836 758584562 516543200 181873264 226906886 823728564 731946663 810186411 176446189 344499683 386962125 324678191 930898933 548690264 849540519 693094695 858749575 60309063 801367123 764178717 897841125 106848118 821528041 218929510 227889744 258458252 81892254 514725236 670748203 375125918 121799549 968944403 521921650 52425723 760580653 509272375 899853930 120728280 842188223 810311053 757036828 937882101 66731089 461062840 303268468 906320362 388695443 667806664 60757994 54897260 587892482 652943642 143751398 925804772 142998661 879751126 835758998 322503777 518859500 332293767 555697045 7370830 15554249 917986364 800366952 926173916 163640540 885250128 942897631 989187455 361313579 947088573 359467068 376140960 155309646 761701952 247047586 923943268 416334598 725277338 745114877 529379415 813416695 761394887 575526206 10651664 843943848 172429572 403332939 826609223 597465868 921948037 535750896 991364981 387231292 51093896 450992418 477222771 321196787 985907824 395929491 53873199 273591505 674138505 831596834 586196054 561977735 926034231 9245248 982144290 710860972 915527107 72309521 985343536 378306685 398984743 826943073 863906872 365647526 949345098 658667510 858659749 993548572 755786509 87120345 930984887 890224184 447729698 262774432 42674658 907102024 251489246 506102052 688628246 278910288 635585270 908574383 829705462 744754690 47927302 797262591 794557122 972453334 482139662 851485942 796659168 758685769 33552959 866706163 965460013 691005347 96686242 986728304 13512022 250102606 679061682 585454507 814312890 977246527 200924126 908863007 908304783 713135754 685154436 694598966 468103478 236528336 849982990 756205214 558631532 856730298 765001391 766964865 926096083 767966192 4938881 703901041 386083762 538662289 162543367 202871285 174345590 161916461 287950934 94227115 722482371 995673000 414124957 149710691 288376761 716396721 838371212 134976475 159226140 759717679 862094597 521975740 428907629 243523293 902108853 853216042 285025414 194661800 541882535 361379680 308981954 893693243 25638997 870691830 16724770 844011483 953585457 434253716 984667507 130192627 498213057 169874222 689626055 988117135 349432453 631522396 91318118 2239542 443474448 378542956 906915948 819172221 282516409 993449857 699112662 696509060 709420180 704788372 61431481 996086995 398523046 111611286 316229919 327351888 911861639 969220685 881600795 472734775 166722995 563147967 800348865 805584957 539795158 847575452 695090388 515224096 172351177 114976998 574980296 265336534 909360436 998183075 825499059 166022147 683039115 854595748 773175202 862963372 759718630 830787349 703226008 906986480 824729038 989762935 947252028 684650596 611373211 894704216 956189765 64274312 667296010 420349990 987392046 390760969 596803878 547792642 1746466 70484900 588976702 954778841 578222881 683231873 785754006 329693654 797532672 451298808 359727340 849694209 181823784 14419347 42184209 665523742 477448671 8795280 458166213 908688014 288795201 477196689 754226769 728304587 801373317 354783629 682220818 234793678 389808563 686247590 200878908 483924610 499748834 396503229 849763020 883356049 8224625 832312808 997333895 368759009 756092998 953336255 253622568 421868578 545666897 90303101 266146125 866215526 132918401 215751238 693768220 861476082 890056900 498664156 918448380 65496439 982848397 657733184 846576663 133882652 773132269 703212713 286582665 560235637 35974381 4534929 578409585 801232634 970759250 740621776 868288283 289717965 865738703 70768631 475942663 580166634 51007644 744647168 814030958 997687365 701059132 670989236 60008945 454188824 993578202 880968472 854560414 101731338 304637012 856148855 548984469 934426737 310952487 932817107 670989236 134358084 775693077 755208122 60544290 442596480 725643155 801309013 924516564 916159800 671681617 541286451 815034593 749133458 712119944 833971901 766204454 549904878 64694571 356610073 886187122 439672781 584160585 102712856 328253742 793379299 544628808 803579524 62624294 749506063 687190303 847131225 700552195 751876169 155811133 939541610 850660161 89152232 413676992 482419891 749679625 442347378 888765319 448698690 995367694 797312129 774030511 571378256 972915529 783048719 980721133 754052722 751187178 89038388 345412994 757023740 727064748 968808712 10520891 469119670 413669473 435539812 720821247 187073773 776388941 910881187 835087436 238220560 339655889 192218592 814615420 742390871 541826625 733928863 782694442 447690494 890523832 878990572 110641828 134620382 889214357 930520793 959408926 857189177 952147959 830591569 743023131 403303475 757896262 710422135 981986870 396305791 126023446 880627998 821075192 882413087 418451507 298347389 257328925 917426443 616086476 834888182 820682640 585954491 881413791 985741989 941073810 963448964 378664010 481650811 923582004 841717105 470363382 805492667 278063954 769205179 40862995 988021188 49616821 965399548 981739354 372118468 692199805 964366527 487203917 153073358 258665726 162955162 602341904 765478287 745963900 95136700 95603638 878601634 955050651 477832926 867507657 344356656 621635032 119492491 773019667 933144796 498397168 240115192 390643294 940468069 993341760 233288056 603537926 210977459 961857661 33692042 947894805 309451366 670989236 823396799 745554602 765116349 790632086 811243368 211215242 701739785 119198492 918602318 977237480 30924261 710017328 946121207 115775869 214199904 999340862 696608753 629763445 690243129 405129110 826779836 902420134 941860980 738842140 500887286 824849795 180312909 638673851 739350863 754201036 526590742 544136330 170461678 106116738 801060828 393773004 790481478 589393318 740940180 557240770 937931159 920459892 968977689 684123120 304526909 12199700 594440072 730775285 570246410 844320728 696025445 933467358 361369366 849393627 751858533 893860384 269070550 670989236 898546349 951709335 709322902 474539243 54652740 374555648 565484746 670989236 952083917 876731864 337080693 397507604 611261537 675371680 968113532 504719856 960621323 400294150 220868348 449057961 709098982 670989236 175866670 981783393 844837251 963574710 963113337 959053206 769141238 886175484 878052262 838140233 492046305 703272991 717308697 252152960 804452808 331695572 760922735 365547041 113395472 492699716 780795457 770573011 934656307 590480834 11086907 463776261 929615243 74406963 200471072 134001593 12126592 249498177 413056470 344568017 558646427 593435753 215457876 692493238 318063917 369773947 382703191 134804571 623900336 694603426 772601467 905412413 267652551 509820700 194227957 768237322 723783882 392839730 377217265 77634619 718171885 854559421 707363256 597067951 200046038 296352157 190650846 897548405 762109093 132102993 583197758 761049542 889244833 493372839 948676174 945204686 724236661 515907833 886781986 169781162 885966567 354979925 738567432 487401544 5927363 886816134 589119014 695014327 949996047 165322300 917038953 967736464 893676491 797095723 202882208 972043744 375513173 416576065 246384289 88128695 658328370 689718213 15781822 901592772 812773390 385630670 78099097 687230240 889845542 674218539 235239124 86716118 711984577 581534645 988345807 261731842 894739328 208995885 684678479 137617287 947657250 733125322 367413344 427423059 929755769 768653616 496808665 605282688 326623737 340539190 748336761 218913491 751150621 730129395 610515161 211206825 258124332 319138136 652689263 515725671 939327940 977754331 241132572 714831007 25109119 519227021 39441449 747543726 851646746 730362377 909047915 713121338 872832999 591988863 940744306 973006414 29777110 928958239 57431592 478200479 699777587 9885493 902072393 32878777 670989236 588199408 706537451 680848346 923485774 119958917 874929216 289016334 939424589 245546797 438744562 665641037 484314936 563269305 346541141 337371794 770938679 551275817 390907968 543575568 585204387 668468070 307220821 891216428 890625698 723336342 346247816 827178284 139592877 724987844 907736882 831110881 790439225 592120910 44502854 739921493 771001207 189086901 51048920 815199427 463141301 820743368 188031027 99165215 935437611 571009954 29455974 436858295 922246888 824878583 326469680 814131073 963029974 489798992 815417806 909963105 873206488 374937768 285794430 868985416 915389438 677400359 647135990 523715073 888129561 420710119 335581621 795770164 265374084 566213411 247630166 822506540 847282998 800746622 776342033 670989236 769436637 11103398 785031316 695899536 679081881 861630299 750898937 521184169 530526216 833075264 847306269 953293618 718305874 860668846 972982930 407551940 980758467 881086942 574272034 633392566 738732156 262130622 710251967 295650437 468061759 906455724 735682773 571561518 529823176 985452994 331573917 967929437 438515397 700859237 812671490 862130205 342367504 925246615 412940274 149410939 449148966 967451769 947375419 240423164 478537370 989463985 376426193 639928669 907418158 237149212 798895939 855433462 824207453 957922706 246163085 448674877 964347672 162615099 766625005 814525118 495788327 945725168 750940738 688397668 842192945 836798651 860082855 869062130 662362622 645791230 977176846 771662793 924324057 303994857 100387625 73847304 239131151 781961571 682976412 911575059 769257022 692309679 369306385 677373992 27282164 651149510 800028258 290820466 865476714 549759826 958651388 347170027 888518675 234294983 548462280 149092279 436994518 769401525 340363629 73117209 996510101 184042478 966765001 623053931 844307181 134587626 12930801 699082003 915931809 808402729 107280542 713773064 748161722 844054840 981966631 66056301 961141114 512343889 721435994 721071030 774152373 498096812 355765543 858238958 186581929 480475099 712145439 134905750 967490320 930223191 129912561 674302996 970428992 246372003 89669247 344326515 326321667 514705824 567099462 181412504 993043401 638873555 265778832 741261613 207422071 953860768 405682261 580618503 890215871 404984028 233883567 887878059 120990159 777019580 966258853 808871526 880843382 866510962 514922494 687746913 556172643 253073263 448158182 882741531 758870809 404557388 85912155 940580581 731104817 632546122 161815338 757623438 554621123 226048505 214509085 475163497 866623589 376375495 966781010 660678142 864023711 742216713 133052864 164120148 295396258 696699670 681020744 755792126 718403227 670989236 870113712 711204524 960879749 839891070 833799791 457679029 896886725 243604059 796427374 249385717 141339612 693019568 383765174 539084886 961191923 452768479 455152125 756903749 687604331 227329419 843473013 735712047 856860737 694485764 725834160 948983510 721522937 763986826 690943918 31124976 944551402 688286105 447610009 943169081 526713186 928775254 972351532 675150552 72469932 867598706 167087841 512389473 740132411 193034786 243663265 907014401 692997086 443062454 992172675 654051902 764766845 666944342 388605468 146901206 97521743 337747315 681183931 299149653 725133206 983401219 930605162 645482178 752179166 670989236 356282180 544829069 929836780 381236240 152471986 976718910 289665782 714659286 523595315 534483368 12317729 351022889 667259325 202739875 331840200 515125590 876115384 691134236 402369972 996093515 366032677 748539805 735972472 604932818 42109391 846897653 903380017 803389324 409729476 897855614 637290651 426668007 877723626 411019653 291561231 724836330 103909145 457168365 872766718 869117225 425807695 985369079 345971790 964723918 406725859 318998912 848608302 765065624 193425965 319526790 903309170 864063522 998759511 984202289 809327989 715178395 855145613 29274420 670989236 173796299 401428095 799992371 785698725 930625631 24468 986904358 50456744 445633889 346439684 940044589 422840581 934190106 494477500 529262639 872141978 847446186 907572610 182682004 236592475 743633781 522748905 302435865 761503481 33053586 664454630 62047022 700368892 576900708 335317272 152675415 351059181 421593823 799752651 812462087 943280097 833521152 788404129 795564759 831241039 790681360 684593145 891984084 808581246 624253506 973853228 624308902 947481219 767456151 729379595 821853480 240804023 494143607 256211229 212583011 317267790 344437387 796093058 942128255 670989236 935716095 580066146 669846962 281882622 843591662 498912660 791345334 384882689 301028821 402822102 185824172 121657950 950730741 888053080 760189615 957523540 769470267 962577588 85149999 922432069 745035145 709169682 121960749 444113304 747224222 675258578 520793756 772904760 990197119 323427627 584594913 725622794 55937000 687820957 272769160 905489061 270436369 687974536 863553387 660355234 638815286 364728550 877257470 769910854 334329812 996190651 440408159 906983081 106285034 967583590 907496563 517642993 904745341 744020144 737358842 450745508 43761927 994078508 504954682 698348097 860557695 204257870 864507122 27381941 389459926 686283527 565123876 493019306 197584904 920998243 724621632 101686579 12454829 839206772 722536193 870633475 694359983 125423064 706191807 870525028 905967992 368487138 924938715 513969611 168970571 821856704 46131897 709388185 847268064 278208574 753094266 383874625 516899711 285089361 897744221 304816336 673237975 693300613 122455087 49517388 680284184 326501042 692080808 760429657 10883949 737295412 969844574 663758735 720158634 300618361 617906002 266000436 271121810 243943007 886934078 603565922 621668368 311002045 947270197 633474684 686592448 815212378 810512564 732140768 780822394 701541166 203361962 924669438 761518710 551158438 726588729 351468600 899819527 121636578 877390522 534432488 303461134 358407546 955166260 723172495 511477551 853710816 206514270 447491163 588188004 526360017 786435168 626750490 728114746 915445208 730319894 671316974 821969310 687058756 816933407 924007212 200463358 838546666 41106890 718269407 684051631 711182269 392371301 951624059 844074772 52456746 747102871 866885651 95041722 670989236 120708574 903156719 278052027 935499481 403704738 7863287 733526140 911932073 177030582 990409588 686157747 83364431 485122560 95806859 809666755 927301081 437519564 343576457 823148299 723093287 403102208 890812694 659641560 880592661 502719570 4546567 750545705 529172502 99429393 781163188 207542317 794501533 985174762 800531635 674428881 816857063 262229602 845996024 451905905 540817751 841433945 683359260 764220472 66247993 745321197 133591295 737790629 124517335 700849349 222201516 820895060 44713144 818576749 620632039 429673697 937813958 46543569 887247669 457095385 788426071 567721241 982418968 320730520 388029678 969855798 722255953 718486127 772730552 663250316 255382627 95338053 747766281 143986388 925179521 625031536 470298629 223087964 902835298 974217560 424032623 704522678 618491132 801135526 310057588 343437609 579095064 402548218 878449995 223185404 286641570 225535994 615886689 866331137 33532106 719277680 675405174 670989236 256400276 727690427 354637423 143503803 752868487 424077659 732146496 862018541 268313766 670989236 59213807 371078692 650933449 643212906 830980951 653073393 716872511 774022214 554872551 98011169 574770155 765731577 738197526 979238491 882225421 714159523 10169532 771837868 741553511 938819567 760758821 398107617 757935859 25351850 865725337 70121006 980673837 970742710 44423546 839476915 434403276 798330403 249515098 710582126 606028157 179369814 242870356 785254452 958497473 389157815 464860858 694340811 704015010 439438506 847049694 677611743 238609077 234332015 394796738 889945518 607221066 668478468 75960529 351846204 590264339 937248909 272197570 779814955 93385403 960499330 10203067 954523177 995344827 782081923 464963313 792403713 825733327 155704271 943813272 167962386 704580285 965277633 356835509 475309790 804144729 309166068 325196245 810250820 783525962 540144884 87705314 687092897 747673139 587137542 794629113 883045963 378059930 75113512 865853120 834459009 687514602 317353720 281167267 698612376 287287727 892045738 561218531 611926446 475672862 768853674 7140689 762998800 766336086 730872381 675313350 819985188 70640668 706576027 135907114 839279452 951723421 718941112 176014232 945893590 473536544 105015406 256374759 581971268 721371633 282643349 673010255 840096396 12703257 410725446 76321694 74169227 989598194 975628174 260025696 489410056 883865881 992148426 196977257 949634856 168874107 680845110 726793870 647321346 246759127 745987926 845924716 740121635 886845201 178741134 66937647 609479884 919274103 972672911 77246155 824327479 927036642 730451320 112591344 447460768 476619839 934291569 82031724 823111539 354007610 937575210 635870347 666997237 106240505 97859193 827397317 53127 832612696 804522073 913303038 546417161 959251999 183006044 520146381 934415439 697293718 765253422 660434865 974955584 473077032 826243732 44441730 810462265 925251742 367738783 328198882 740061154 753932480 717729998 670989236 529739989 926415716 655676054 854057171 35955277 814599885 823702237 803834443 856758298 591666691 48513131 90643546 419896537 428131170 144142635 426293587 550059601 888482250 363523411 491440057 591584895 325218878 805209260 499299412 762137209 444346742 665411071 95745931 502584535 784611247 985229025 425448507 974281293 413289229 208186873 873475064 567822871 960880063 917290838 900471538 871726704 588446372 702773560 842711902 671412613 347502337 983494843 206389879 922507573 356405805 239523285 396786718 392558133 742086722 727807050 282679077 326896738 827923114 993116008 900422240 518092587 188086476 982755920 779755201 637228773 742323986 144063359 670989236 979780829 945773125 805485529 744839367 650516631 59711749 525530556 803293797 660485008 231556103 708149527 74151568 95014659 985027438 937281688 901688162 186678663 734781355 795148490 828372593 670989236 960264621 600892666 176713614 599261698 360886037 980334458 710935917 47282704 923682831 911492293 807769471 690228335 79624952 145786318 399696054 264283748 810349282 708049593 876744339 7858296 494947685 829539018 278738191 856739764 863252399 888669299 573894459 984996366 785678127 43634499 500220311 4995404 451675018 225176104 564225678 51508304 462219515 425884422 847775627 833533099 910620118 710058008 747157624 259294374 467711955 250127193 253104384 406891973 590783301 405851247 942073581 883796822 686127899 922446496 335795170 554488793 993644898 331322988 890743645 753165446 160828114 447542259 776924806 735168941 648588442 457278824 18606427 135878357 707903785 857386015 9555852 948638350 828918948 540793929 673320534 490317030 124090749 770898170 388063473 334069672 914757228 32188742 977789846 365028772 902052103 188072235 567684426 764348591 598072268 688493422 848191887 877959371 658364073 991055695 708460483 998300094 841004414 537639985 864365105 233737537 471337384 979414334 151843436 979275438 527036725 99521632 728571126 709118100 559696407 780654882 714779217 357687553 491100392 359325525 779802114 532415177 454115365 821083890 280608079 711465767 996173147 62050933 572735257 57025287 670989236 890521391 864132238 156376334 21989591 623532589 179956768 797132606 824676040 722528929 716646175 65079761 904966499 122721109 332584496 215137278 178517110 888261351 987952286 579590614 339332347 671971278 826114129 836544869 393828049 875004761 779060273 984863781 666306506 953609394 243452533 522962356 824204019 592538061 827350159 715628659 776833175 917879939 387967739 987891973 924735680 317529130 720418791 775317882 125633638 620274516 492829296 898417752 768123541 866370684 715549378 992970962 787769993 404478533 657575992 900293655 668432535 800598875 38226318 877903760 87775924 824401382 727766779 889173233 164884677 994929169 389080680 606913566 152215237 912299496 524053027 554131348 76766237 682239111 498325595 196656981 904886404 254641241 758343492 507280243 900799230 903749391 56841875 311585829 810475946 933844816 955694656 974888698 894260181 670989236 935640381 481618974 124188730 955232299 676473844 741633397 948555827 788076924 741346343 784022365 280408359 141971671 819800178 785668476 847576988 775012489 845492123 43036663 415849042 884712605 990557750 541518744 877666729 709574590 955127473 965912345 916066491 593576560 206810496 44930720 24256373 650177813 709703738 837291683 930608340 102231974 449526903 146347276 354409550 190818954 857927147 892383633 150197458 181964656 377338109 78594520 348217835 705285580 498091457 881720255 655082355 81867337 412360178 389943643 866313384 28342602 940186196 604750597 770284717 670989236 593475288 962988221 543551406 204716895 124226416 824640335 846176013 767223011 118631224 55031195 846615428 603559495 637843469 578876648 798407536 633100901 927390877 103968250 887357555 672547855 423062200 529442822 141961547 330775872 933065333 886072829 826914428 495551718 865759913 691225029 133537707 822400857 765369596 720372813 168203356 492663093 246706440 681780569 318138383 364732769 640884760 716883716 936299527 797170394 781970881 908475084 747700831 592317074 733709800 985131815 704727910 743286040 946422429 525150881 695434675 699482089 876189916 602438509 892832230 457244656 416779154 451280906 946349535 52031317 670989236 944103684 133697729 476238424 335937788 731575413 516142818 341423653 114609410 717617450 926745853 996940452 995645418 596461062 14907244 712964793 517245046 950590771 118071893 14794828 790299427 871688932 670989236 958111396 206927004 816366158 188255116 476606392 650242162 714797053 699521097 688934297 603051608 122627673 789389701 565433224 165218025 935964287 836660443 358586066 942131795 808531572 72021911 574330319 892344795 942782318 976665319 892738880 744474361 988888337 203065148 907716882 496120720 905371487 836689174 608695138 812455496 823299012 531199837 816693599 753973945 941898268 836862198 378523021 364004130 863238525 504454394 263409111 278959740 124981881 696007716 245561305 777033756 702529854 57139710 926613113 980147365 805751106 25342879 583495250 314713408 730147234 446849926 18721528 994843615 593419154 346474854 424381993 687366118 906029534 121986831 692018262 619143720 810692572 882417083 684856513 487138851 728682524 670989236 316734826 486183423 68110018 292939678 872955325 557191235 381394504 966782328 919420148 28251096 444194448 948641529 489423710 584269512 784976641 846818612 640107750 477060949 422763730 7198766 233258759 984869953 787442474 980156590 529330848 319937123 347514453 237677140 692584940 899193355 423415179 529449935 284070950 492822256 874518795 771962457 728395000 897941581 64596171 554546246 916238766 982399199 78865134 962781804 926974089 541001488 73774123 882536516 543670278 950075532 285396261 35549294 776244184 201511411 197661804 306193782 831157599 814614487 442681375 657361310 785170228 174345262 943818571 750261245 919329780 508044615 833633485 689459982 463032228 822003514 792372795 892835129 484768301 46423991 160520634 148099782 934889179 217500832 290172665 837070587 934517412 576825196 900096690 432413367 501226758 507361609 308970113 149909939 661905523 60999843 900605839 734327492 265681951 956946111 491992294 879610549 64436397 766647745 37135917 424130910 760326251 354351818 455147183 740171327 895533606 571049450 144444075 395647036 812331455 463202641 766241060 718984431 633399338 495719615 922681366 177842323 898302391 814153325 558161346 757302622 675405257 679515447 987498072 937976373 749646635 898831676 190743891 182103834 662710089 951147185 312584551 326495582 631023573 910659276 990077979 663371904 553542728 591793914 215177238 837229413 538504329 809825135 527466663 595163245 651467698 978136496 60308220 501973079 671918720 160535246 321322916 746901878 473202667 134347909 612279816 997470121 458121920 738088551 656872276 623583169 614539309 698525455 129923449 791928749 848059435 835734897 195950249 961129096 813268280 219241507 905976169 839584399 791829657 889489092 526288379 794398213 689374643 310933562 588336353 950444784 862566298 497424106 412184801 258533137 895967771 863039942 932826926 871809828 889757236 847234991 585644781 911284740 522786067 828422740 817759991 937997028 663198714 901299632 829001017 701074120 804472668 138981442 947763603 955306702 399089833 828419121 278037659 311660106 997034116 817652680 835163574 32535967 868724820 741355270 945910745 950924071 765801757 815540682 582010836 36620882 270165977 146295339 331459056 299440568 972401862 853777523 331252737 746661694 178924440 503086004 751514034 842593707 415884303 594104196 701181388 962369639 763078372 949027426 661744742 92277897 205822529 648928396 945011681 545495620 876319873 865985706 806279513 446203371 308454937 803455558 435960526 954692731 602541181 952349365 528463256 900220077 968107877 544440576 769477703 757060393 253260003 698649107 692781786 336838898 183011516 779291531 289768801 333719113 378221953 846029554 478759936 704243898 630812054 221871647 887326922 665148780 512147931 767134381 778658413 781222006 668596043 491972808 815635297 263341057 22804376 896246578 837039429 565635456 841161898 465152404 258542562 997391126 242744607 712421997 783747180 430941861 843066116 677434937 444198036 469149449 678635398 159693347 598288368 890865914 159050866 301734957 113526275 555155789 29081492 641861269 373001858 75291634 908804109 901510011 982943804 683413758 925775990 793350055 727222812 899746663 365578358 832754093 133936811 634881712 951372670 877771726 501355323 797123806 996737175 805481389 898857696 86920142 130243818 356635558 72648688 759779276 115018379 803912639 732402592 235504545 996408410 905462806 704445461 746270016 408852566 684337727 565544120 795180704 706996084 3670874 23162706 570657117 626431995 153691495 697230685 75646770 541629813 502966772 456058729 265941302 135835473 454769679 864361713 168810941 936596163 324725043 271347796 807786575 136639359 875959330 811826830 997164625 423176994 889423301 896702988 833091240 628922058 707375246 738219174 163858687 708385265 856542858 236515234 310642581 67936706 879967409 316437061 567567350 775981101 795105339 860948816 887466521 722708990 661516941 205530500 728686215 965645553 757818705 883770287 123853303 752926703 699564833 443367423 724484575 331417799 746749097 26540490 758684647 598562869 994641438 860280584 183976437 957410893 347251726 931857184 627234264 377429762 627357897 926515891 735451378 853559068 540598048 130584385 957933174 998435667 797865917 468039459 940730182 790140938 343420366 987038950 731607124 165498251 497338260 212834283 303966465 331455077 957356299 810026599 294596705 890901196 822219238 941964650 520980396 909595936 240730214 121009685 801898731 979574858 572470363 791215177 321694375 819780582 548022180 698624713 545404941 860318229 84986244 980359543 523327212 614641398 393181611 749607617 492145962 401024668 772729131 744312419 205746231 89621699 759700530 564896092 68284549 975922626 670989236 884347320 277383734 560928859 874531253 758746631 746704324 745536242 556793955 758517218 89202701 561822858 405388003 725440322 556364082 966197400 710243347 846617756 750459677 530294616 728055933 51865004 796823131 54619287 955002763 685163546 808128755 294114494 837769281 789924161 358304146 466200304 923002662 656154742 36159645 711343981 696809046 703794262 854100189 13425610 363423684 829947962 262359896 314603057 536792127 761857872 923593220 969462055 526752679 886713759 970414133 601698538 941499077 861932048 1096216 720841455 118564145 837753839 858835914 549652869 957147732 863306752 25597047 571443889 550287366 862062479 324471863 867262660 197961684 963283315 848950558 105305967 703883221 854046128 779559701 216903854 558287543 691796231 941122002 87462034 642424943 970813661 539507803 922752448 857121154 759888038 20798357 902434262 901437541 658846045 464928534 753329262 882015758 343245733 965977038 991106703 858807733 146514028 758998256 997412199 506122672 533365087 763506473 64764821 603320 210320415 3518825 254854134 421355232 473235874 811112229 676849687 826806206 994539482 958276453 519680792 138810244 296726270 941929950 554045178 876019788 183565116 726944465 76587971 79238283 797634012 868288039 667574523 614137050 719217041 723363692 801753581 700672424 164944135 116545501 950082554 906518099 853510247 177678230 627396901 8153600 812738538 199804678 119224174 169464424 670989236 181497938 999257137 639556089 800252511 891101817 137497104 810909506 845607158 651122674 801289995 195673723 821148743 299937901 588281184 390472586 981572085 919481939 843451414 966818926 671151713 909893522 156017902 218131563 178690707 330248987 67051536 847672346 697019609 834972674 867681847 671861290 438777264 558907712 921878598 891592925 80723400 300666469 743464470 997610084 467740637 918272829 164371972 966765254 998460684 807079751 499253156 548852112 4870789 788625241 824874763 79778999 109814948 916506577 787098774 806037179 459192593 803650741 842547353 650023914 19264346 161989901 17977449 482331921 358943946 477574301 902415397 877763250 817328472 827811990 168448507 794337580 943373253 684475186 455286194 780950185 107056684 246249113 819860578 963428296 49588819 895801053 677948687 800844221 100305837 778571869 741203584 804097330 666401714 401867364 958779741 159458135 955953542 76189274 714595516 99341911 929074626 743488342 850580960 792568912 726841967 805313643 162976722 990587852 413651889 749199207 839803155 863148993 126191284 576285487 321735660 752899478 873524696 316200690 770580785 901664469 871480304 94886722 364500049 282110573 661912371 924719724 842298818 245165914 900348936 609970200 374093844 933648532 415270194 867346792 327565566 794599354 542600735 938636244 102293398 760350028 533047742 867152247 774232167 925081790 426914130 726003054 387677186 855469811 752718667 810100252 143830807 817185527 240883058 589116235 559020803 600548369 197219418 591882960 104457379 730411300 622170006 866595416 802527290 823944656 809381736 539877412 899716611 728611380 500832983 27482404 596961249 871620798 799452664 160876954 192256810 325791162 594292635 906956410 358512422 166532322 747572989 143615428 57332855 786559808 529547467 324865800 954207446 515752658 773779578 431399853 436616891 392678071 556351667 63963414 574252463 103627506 590384392 446335831 964972122 559901614 578668758 381978728 792438724 94210421 25617516 933415457 692432586 966058552 917122773 829527534 986206034 906226558 525462482 183714732 414579085 695800159 283917511 504571264 771754611 630061659 936866781 115460235 477059749 888468703 129790941 413565696 635902643 797306736 65054817 260621623 70544742 597418323 532697635 320574759 695616270 21525132 471030652 723945210 787863066 854331288 214941414 537677976 714380033 244119700 360206072 431851755 981151835 218982655 974149203 903938963 62501396 400633399 409856762 841061075 623616269 566805534 768893457 914015554 588565212 884322910 256621475 721258563 521163228 583633483 977247593 622996299 7640609 910404728 940253396 112394570 682499143 518657487 647583190 161297072 485136727 162659327 70446050 416414209 105853351 164772472 675854633 614725549 890276893 789867104 15652686 763252612 977181371 837604120 754020064 683365680 577634626 670989236 946468113 710383082 407369548 256935748 513971045 420824860 537441076 699316824 352326237 761304006 520837443 437854001 670989236 853614812 103053022 722309 926816596 287960111 237174761 728467963 903003095 712493108 543037174 823689015 767464516 763165472 38015878 145673534 785086883 790523264 747120811 463119661 670335116 250199591 955624735 241486007 129487116 670415281 545990681 187492782 801532012 884575194 658970033 915281433 525596478 775242514 153822551 980003401 95735806 857601560 926468365 879564000 216347122 559570033 918631789 3751078 278479726 589202762 799553290 891451859 119038178 429699353 862086956 515910729 22164844 253221714 169862642 829366987 431138321 718533731 539204467 104485135 373679373 698337688 132713793 112461171 896916546 224281076 876448692 854488388 410137587 332166941 931675061 896718068 430426809 748625165 563044247 749964030 53435160 276456439 895198605 871388863 744370361 62507658 704896576 402672100 21137955 754497726 499623344 854669615 973511023 889925887 856789089 714722816 959505427 874362270 862922009 159856951 411408973 912689060 27498812 714304873 156448848 408056024 868570793 159891547 463538107 894763304 673341466 72520534 525260733 634852977 182129034 927780540 161837399 345984534 455233653 930068142 754687617 358987584 852112449 979226094 539305214 985135830 307589017 939086242 830283847 865333137 904369891 580616649 665222542 832176223 996127497 27256478 980152990 105087099 959403917 255836183 886002179 674927041 681222368 589911813 863381129 114326559 738045065 521034461 551410101 191221698 707663666 754007885 997770626 901416479 239632438 235381420 791867071 898314790 801475697 662311821 799573497 70647650 810142153 999697836 237492371 960221827 276352122 469256657 641671337 88974008 247905724 966666581 804545384 711942497 123424831 691485843 683049759 756294253 131742607 642201850 872073042 275364216 720637286 734436489 418125305 674091268 756398993 306882653 903832294 964548237 810815570 30342145 376221873 314053134 765972107 509641987 795674507 967931239 769190531 850755894 755138988 880408465 954702512 892536529 509571867 231139976 853810582 868456001 911913292 844805990 982203472 236726711 736464038 255343012 966334765 937759168 330248044 434871518 95733217 274987696 405218952 491565868 338406648 806223711 216258791 580813608 933244590 351150333 913886194 945106109 232748109 747476496 303309776 676366291 511404011 685948105 133070832 895751596 813211899 896767401 6882128 753048226 670989236 7888467 692622754 645456651 768974741 670989236 820194483 92942466 646423465 82757890 91710480 974695547 242046609 186394301 944242906 980078997 678057724 971528440 884831160 30592493 777616830 150511651 670989236 194491140 309955419 691066657 542570259 827089679 352224153 273547002 662920790 894817444 833024151 176495016 107312749 926640658 923792161 499400972 579873496 991106075 44135643 316648829 205699945 661567543 823756641 575846534 469949452 937770463 442569110 909035791 782486349 739017182 449750518 746447620 378731406 548536137 653314142 642873448 885043721 703121709 773110073 158179402 24025167 606537316 730827435 951366512 723395139 816180994 700999409 166633536 670989236 758446712 966188378 246023857 946270004 133157279 872484378 369714810 345981846 624721545 858736611 673048326 706610986 496011457 311959825 874821658 737095864 637275729 283738853 703054589 495408226 381854427 345844874 973397986 840715200 598551704 444897409 749384999 976179479 981830996 193764995 280580553 948800972 883613325 981922204 982612076 42168910 399505541 352583207 335824826 869946448 931338834 432226121 413685414 183608183 338460418 921571373 873024661 702304195 670989236 693110263 108960341 367580057 698110845 919574940 567314260 999715866 965726655 581341934 326363130 938759464 252125021 815278124 501829188 751091244 973011277 994899752 671425019 745956563 831136802 215416380 967027733 630534299 794249109 981570212 776558912 912171433 756491695 22077796 743951167 91652200 711244794 552920909 46723666 667747111 83005903 214438649 92306007 593017909 477479308 721816645 971722531 689587718 458578666 804654214 897178717 526055900 24571442 670989236 464498202 726231791 491451135 753536375 162865060 188524830 786513666 491598179 914334649 886719463 672575750 779624686 661722613 395402135 24633326 823520728 768054893 996373275 233608754 418473647 535495434 773221358 102521867 670989236 863299260 111424356 804023401 458821172 837572266 128541205 439065160 175114189 459269116 816986813 836377480 103995831 681556849 673685526 610540641 136684706 304183575 850926855 332219188 804077567 13968985 485327530 714483802 251525320 922435070 826356679 870367351 543603137 829397158 430401504 321228876 543749900 734707988 925248371 598571141 997036124 707570011 808437905 742903294 389078095 883661497 108871677 279604686 34387929 672996510 435845003 636225778 168075123 229058478 952323201 773995885 293002277 942589514 372288966 102018046 850819813 505668099 90757994 310537473 829617662 671301968 735546040 790894064 830119674 684122315 880405787 280009930 856685407 421376988 806753633 710685000 964788016 953940865 188446252 846136102 952865573 444819478 41922729 852408639 750155973 242599207 303148746 771311186 342833520 72074534 123919161 558519303 680246618 553306885 828075843 646875800 758491887 521171090 909920691 750969493 885732220 718143986 931808627 775164837 28176551 898794479 382263104 664356973 722058223 616436574 292765270 184349487 536244579 877497532 615450526 912388963 980172083 531531864 686550185 843378676 670989236 832856705 4812555 603507233 987719653 752796572 236558526 88089352 329431353 23987202 844880601 145498494 258177309 732126968 417787256 852209850 920271609 782041135 603658843 815499017 894217734 316003565 808608689 521566345 408632860 758374179 807869670 716461320 797004318 844604841 891124843 135316906 332138307 5040892 352611811 379309387 171016114 721175743 255890759 403482176 857791763 149811299 272377758 932056698 970924017 303524529 639846290 821312752 799689914 630227415 866578695 416562353 269205838 850574792 158145066 688422762 273928887 835800447 524035202 666859274 869278165 879467184 766873592 68359821 245389951 943381676 943070800 443196149 733504122 806227277 53821684 783477324 478949449 263164791 748899619 27941183 215863843 158765995 351760971 818217561 893853224 678957443 419864239 824232626 817475489 835355567 133851283 193310385 921682268 362576932 878296045 80642736 994613511 634971328 808615665 890377457 203957276 156903671 151527703 759436314 868176789 600564810 934244650 80706724 81493104 876415625 236983426 137645715 441678875 646413408 402484678 741397816 263178256 864742642 632048748 455872745 651231897 827790773 191649304 565697370 862737337 542320248 11291551 751685893 692220258 412536645 119967158 848603900 239990796 149424802 797708440 383771619 836239225 658459376 804986935 917591986 670015797 670989236 440804764 903822284 608234470 244087657 210932787 71530373 554816142 846926083 855342160 854032859 73244593 192621835 671372419 885139964 564506292 69179832 705888489 496921477 739295754 933907578 670989236 700122791 129216207 745761346 783449879 51554288 966708635 105627848 793436128 993052081 992752657 728645587 244535652 921969141 964342145 614485337 958625091 677330426 725721995 26330746 652064328 380206094 805463501 477160526 55419778 211901829 452695838 996113127 158590829 661050785 39300394 812780993 831146293 781478694 511893154 881359020 87970403 212519817 690567041 549458040 896571635 878601869 784971819 114115153 723546795 312483060 73816267 715124853 915897868 671015299 664468899 419928039 657445452 291623080 437542279 604779933 337168900 160844236 91135270 786508148 551945257 607170895 459883898 477242514 476937918 895145527 677053396 951266764 171435488 538459724 577022943 84950871 214155228 878166840 670989236 806996764 673914283 657142211 615857600 771140040 58720019 378675859 975998319 685624103 791586498 168409105 394717230 808959753 242863885 847354729 714597658 968394200 645223480 838768939 640611813 530132204 780563826 937064650 484173181 412009585 298364689 780392015 424492059 933544223 872590857 740436952 747780560 605047892 972199376 246842887 477823748 777883485 976701468 344914094 135165608 238925238 358064050 281068615 487174898 779452202 26018265 779887672 846991191 211613118 835358192 921103535 416196432 692951434 725002141 388252014 210803546 191058001 860393302 957142648 752184706 716236049 974736135 76646404 787694760 997155186 974446509 897551212 960864809 361202072 905820291 743557894 905187162 51624076 240831847 697210878 494346990 669711096 408220202 662155575 849765598 414059759 492946161 836597143 823072794 457180907 955096922 845357893 123326556 980272541 82642558 303957659 673166230 757267798 839735030 242897619 707622434 884948762 675262707 287954786 477580504 51029271 900160447 880098592 170817867 773429710 373511707 907919047 886048231 64439312 970110182 694332496 713878971 325344612 654334611 811300201 340965885 819510306 670989236 551435629 786505707 153997680 598111908 381778757 229883737 455249930 591728400 72814817 267311994 398389210 577325938 916971107 811742633 6460967 727616947 901141370 958497808 956943347 453170771 13430229 732650133 669863204 6072345 46853353 808371960 631663170 993704763 727369699 250321077 278929883 341439035 760995870 861869161 21006688 540966988 268030647 88275952 991852127 601831909 85943772 670989236 802537352 889432323 33376691 29072910 710567697 953918454 920011839 920834714 718419265 516668837 93913406 681436104 426994469 858405366 772930461 28991355 397526658 788170126 883674949 107486879 421774764 772969865 807875747 938285453 676656856 670989236 694378204 476392212 512072965 65595932 749227226 53787131 283591123 651256057 805685713 869132465 991691732 362104442 662721473 185908849 907975009 23630780 476397311 408129329 435559331 738901448 200375287 63981645 588898567 640947228 334433564 936434879 561884260 824322544 543419003 869398111 616311735 778823776 838455677 269604358 980357269 388330576 994522893 738913817 97848648 255911045 76213079 44037462 940398589 316387416 680000720 524159617 196116845 903405255 264577764 964041255 180301928 184654652 679884136 698849446 319333723 77981462 670989236 578491433 444516332 802375809 61628414 176081943 454057210 39392755 238335717 848678060 816248599 794921637 739066366 460280003 158810311 837058560 722127526 834044961 747433811 700675372 975859222 385025352 266201799 332189833 686894905 227100380 191841689 923857550 695906792 974494651 909268082 107369538 54030597 684327903 749552347 85547947 704175295 844968266 49744886 680282947 983057626 733692493 16124600 753791037 955362107 296666740 918310168 127161867 454881881 408722150 620098623 398571505 153243753 850298405 500384888 532488051 674739292 802952564 835722589 672765490 958596324 992937415 746262364 482235819 293134063 535858035 653407737 788232817 96246222 611122147 731206091 868203672 388811797 228617004 75158917 490851693 608538800 739678589 212917904 61791388 677309567 747647715 789228016 192170448 978611809 282571203 914921118 882676644 87510722 416690878 955997549 581981950 204218312 984657043 141498467 969475835 658512094 242315950 714547297 921779266 120065190 585780496 378517423 767111582 332793742 271990877 918551148 531583776 252027208 894079788 408294048 833581609 670989236 39205049 259919981 122893622 224230516 819470281 799959339 398830231 814115504 780301740 357181880 978547019 576848122 127882857 998635727 912578625 932597017 664309494 951290852 808683945 690298267 923562014 996845010 757956120 863770300 829671579 391991404 190886522 894739875 667067674 514208376 24497013 722591259 313091176 897796916 240850108 701404699 909247488 756119952 728050472 702621605 950194793 281650122 529708021 249409528 818250756 344627148 725570658 838793074 993836024 164958729 719980303 878238870 993317032 373345971 262773205 135628161 844525694 761297142 156900365 953229125 238133852 704211972 167068053 966769221 792184697 451859557 785475053 527615285 179722584 860600918 21238811 35461987 275511140 876674456 856609317 894617310 135633607 852315230 36744385 813980165 736309470 945770253 290261838 745962811 969608256 875493202 643893427 813708924 499635827 695780002 494392093 860819987 333261643 869060852 817774695 459758945 623713914 329643030 424661718 515153156 727965807 322045124 522227397 670989236 886310269 976243755 291107977 933544867 568914660 761959039 741390122 764872773 186483463 962679576 704536591 493519513 347759916 885402971 844214395 901007557 922440300 694285470 670241931 444417574 279089408 938020798 95130846 32808301 928291802 320804578 775969545 833702800 366364441 536493834 162531351 489699740 801324769 400580229 178635029 745791207 458549755 645759082 489606555 60645956 992105410 717122693 734622156 341362154 614038859 921525319 671952806 605593303 816400370 987393283 807311114 484512278 406351532 211891213 687261261 688552884 589604682 56866730 322273344 352804289 179591209 614973512 210139156 110047902 175808863 403751180 893145064 417976830 863588025 110535791 612948737 331077951 716132000 744769284 937675385 201232424 7920438 988244827 859585800 622072494 295604865 774348493 758196439 850754963 680684089 786837902 361589205 95521970 571638529 397891421 977464735 287813716 551686713 607477968 87688096 703877570 837263449 676567036 508664741 750820147 776701185 386936617 963334970 332128187 806213591 441432089 682448597 459723649 829484558 837304279 740618615 44396402 479403213 783435261 161976255 628356791 122549309 26902482 601656268 236889014 226846002 795286037 781362914 800203914 598749936 275219427 670989236 942112019 686099516 930445386 997219679 762015732 774285295 958290546 686231903 971586995 679988453 821740887 880232116 827816770 968844278 217521726 177596450 901100546 807741315 973317633 888023856 281555987 784043103 659701285 155546448 691829496 260617033 780772380 129235607 876948854 547386371 799061874 75516666 497762523 879152868 862760740 700785794 719062966 477526524 425486655 812261437 270046793 324363107 871886362 635966002 73223132 387933583 913594659 153781428 861134012 532540535 928128714 129445942 547441586 692862685 186414490 7917163 469929271 585258014 153823354 607162866 555303980 550418173 995861509 698004150 223755238 236007881 80920494 218167132 60792465 859579230 337045942 812964139 396383665 940709465 245703125 709025189 417685913 229064919 703467896 251462378 779415625 670989236 899624147 437806393 624843252 867787932 82250525 231075512 558963264 625247284 601183014 718731963 272145490 330708191 564668027 18816082 736337016 867720404 670989236 691456600 745430148 670989236 745324049 960095554 323602503 49872270 61166077 37838095 61448592 828349814 757946206 848275479 287077208 507848847 121482296 795787394 660490721 651224388 696542066 320656213 14662339 178779098 900425039 765083359 233749465 966229277 588914658 119924967 670989236 779740155 897456196 542598225 128804894 458988478 207758934 593504098 355541196 344498087 518791711 985405646 940705902 27276407 239942649 255886680 281716135 909679946 616776523 396753038 681722797 822121080 899097538 907599842 413576516 616554391 895163195 740281123 983606293 738440449 718201958 790994715 590301113 896231386 546760564 894777662 988324377 547991864 441371868 789921514 494006622 392522224 220114839 964147391 384339443 837535947 820388920 153787452 718692136 328582192 730527432 974978281 193400110 512993135 213326351 413429928 448138827 712089386 212881618 879451743 309158659 549419833 123548283 45663525 46003117 984616242 312557589 696475094 816384460 970510757 64145996 611688591 855763550 403718123 516196484 93754694 224111960 277679475 62086370 444240466 828446672 480197289 696947564 813450231 946300422 787134724 560223420 283159658 394578161 693901737 577413191 876101174 708213528 690040185 451850365 790359875 59530242 753303294 327324677 125879415 537141676 935986996 994508053 356337483 639743030 725730530 794113437 945664863 478528336 716202461 355947101 358202741 788334955 455422264 558133983 162293075 929718157 473754086 684792286 491622214 766100990 795653033 661523241 166377369 808073564 850229807 756335029 381871625 824983398 741820415 712542068 869195320 683113409 734885357 329078792 439746018 379012709 973055465 111675872 956283230 863680672 352974591 971753634 863329387 945544767 182467170 736411100 754952750 288836050 172988210 908077219 691827641 602441972 713651265 844213284 680961581 119625841 7344962 256009153 206195814 797726963 872828591 402457356 815213405 670989236 374079822 26789503 944958207 330123833 954210955 982947064 821956583 835721315 996387722 71154145 670989236 85566778 26769783 113561847 544880623 202550053 307406781 452091414 836956283 951004116 622010735 722824160 984487287 99607 670989236 900757123 433124989 930945342 709126132 686524735 694959559 666502321 837939719 930248240 479577513 973188910 215767057 242402771 513149628 191346472 817721828 840707896 754937178 629512859 528493720 653425568 99129734 543327096 360219659 261831171 443355762 539992121 918665757 793376610 851381233 305309582 867298858 967101369 861833628 925013980 816483561 776127875 706497194 604970522 332443432 844716651 692796739 962837791 618176734 122427054 849459809 970956291 878470458 670989236 178520744 914397228 823415246 963030540 598605812 259754412 83681198 70978479 508201726 898888231 469803236 655186681 873369077 146287973 988163808 542353584 286110624 174683724 149217785 198471809 436637827 740999838 978181083 128644211 8883945 949925432 184786402 670989236 843586910 121065032 954466100 628972268 925975068 587639658 646735043 688360689 908181221 743946813 911460043 931231214 841311448 186057883 25405164 251605435 674894529 256098346 849224701 811227139 949739978 337044406 681062039 552912257 244496795 673060345 408176740 772162046 988436329 325684460 843231129 798140320 184446249 396504302 462612287 741312974 373456874 737427781 316287670 758206157 965078159 498070236 413498561 754932291 670989236 940146348 337819187 544411882 750412095 203415829 877786957 980260865 146543904 17571424 938340146 687279230 956414880 766623742 764390534 437315175 898612235 142132245 75470959 683938058 137477266 291524609 739309012 549334871 749310311 824881486 545213881 797538661 981606679 784533985 767850678 714415907 44928051 651270102 560511574 295550192 742147096 842058083 902592482 195822220 575725976 122067626 500189844 732173872 538871116 584443904 287106195 41588953 722431870 920740429 754668505 268333074 974713348 464900737 923967084 401842511 418915036 539889884 795853135 875463326 928056865 779603656 674350757 439972066 108706912 758470540 941062392 685575396 854618633 947372472 704817794 458400699 501292615 644277111 672766009 752300876 159614588 557509696 845770682 702979115 661500990 970147398 125725755 374559548 340888783 729080379 659024371 680686235 565455241 441629724 839563633 219188302 670989236 703768114 133671376 738873153 969480363 573193646 143780606 745860504 708132446 962946198 567309437 408477346 116284594 234177417 462687526 819198469 797922837 829678699 124922046 905362007 203515646 531967172 896143542 989131943 962634612 163191598 857988194 18184738 433526794 743380467 230267908 969577178 925122564 781211230 990451104 821541776 890354011 234456883 552885773 399304756 972326169 926565524 930950951 442465925 75031936 698571615 906322717 880315192 576457729 893293016 205409763 852168346 36575203 851806801 627055347 952149441 507127599 846958566 473236521 705404093 921984632 782670830 731614833 824193019 615998410 600453956 516039152 621791980 233552021 731332151 566825794 803806243 156479713 291783498 639995605 872467327 628078098 729576009 750525515 716758573 614812062 809313167 622205860 91154294 712260993 670989236 793269481 887290022 950550127 960711441 992753673 441697529 290066416 291292925 694832517 725097888 965765943 164836568 743429498 597740163 837855253 391808162 903946946 579189976 91697524 614287687 875722109 514447597 536630367 562759857 405579240 799723016 228433769 452867811 617493126 931824490 551625971 481212854 662269485 374840285 401046765 416694125 604356339 283434534 728950342 558771504 136559428 526976069 785307883 251352298 995838728 883172972 711028607 973206519 591200944 155118040 799356752 277145796 992728946 869899876 712609738 29574198 76941583 934003224 583837209 525572343 939244819 874891362 984431750 773234414 794652495 427350837 592301498 494152231 231349139 174529993 821489230 75362111 897022893 947092036 850175533 953971828 94468732 925716084 80560681 157261346 603874166 924135935 623488282 589797183 989526477 931017957 880048885 910683342 748459694 592921989 74716609 201294657 559066541 956035997 837059240 772468362 565448909 355005056 792879473 726744766 93676026 564929299 758030091 739391286 538240533 94012489 993984099 209827713 42591491 280571871 919990713 759239948 188097866 388007630 693674292 681034370 837955847 499152279 700988248 200769554 827496667 525398047 839204850 382002873 786023426 36177119 783952596 881715928 256995534 794217965 774353865 71299830 889224315 673547677 786279135 863612726 659444434 212706464 70600583 142386130 779617827 139214681 442204690 804375992 655137320 796959790 933949321 829962292 152318591 723983550 169336732 419695276 195701290 702361435 618044134 357864046 843122403 130406470 894072291 513418155 927227044 670989236 749012081 834240827 51542819 948993222 963429182 805724461 924953329 800329572 978343112 7776567 708690030 595790130 801673083 966911713 841127840 216867286 803956515 906885458 856488787 402325251 112710093 456146624 817093566 279085537 200308662 611284374 461345394 680796192 187245799 669337794 956227127 671152334 217433961 540162752 96746211 984564226 580690419 313507887 550529946 437807121 745665642 835130255 5456513 971522145 722494708 819485001 172449499 687722394 374333792 887560923 804972843 407550629 171736430 835802436 40201363 526123913 725936343 402240079 778210272 858760345 728311183 670989236 447446125 978997091 828795897 683395883 557848662 125846125 689297430 336792087 310791267 561881737 939355612 56906816 257180429 552030202 694637533 418296833 44259550 997838032 820833804 842675063 368559228 804345097 594212879 720515949 2753916 154057073 920662785 329793215 174627308 634574346 991826531 783413777 757180120 670989236 732164108 967129959 706068678 601858491 88457923 267438234 359888061 418589025 763906973 971563165 296253319 267587064 197019951 558819086 47301030 442644101 345426136 703803852 632850507 571875308 231684964 962925834 451513344 858146935 980240031 595122249 624760227 385335415 529870252 853844151 670989236 823890254 854868106 794803888 843588177 473048110 614828262 992650468 714964153 783820896 359946199 708595024 229629480 653947066 321421252 797143383 501902232 563703853 450859118 160707212 557054244 802070603 392875007 809185125 792823305 908404443 853226870 792582122 591667034 747032570 145152808 80222923 692850206 960318450 847492999 631699534 82329421 748310407 96887058 711425344 318808501 652388984 114790316 753770677 902718314 740682033 822401749 929310750 831281986 134854343 590933511 982893966 413807837 694524358 829632806 781332922 125478182 116714101 965791508 709236895 200003180 906342575 916273392 757266811 56194990 714241296 86652062 764520132 530419178 527930078 851111178 616276136 702549431 856290633 808899639 998040294 173058201 996633803 725251707 617945943 187452479 207616144 228294883 838053892 32236244 423291315 700266435 175579502 384387333 863134096 309972513 119360754 982409359 881195019 456734560 851895030 717094357 683828239 953401427 139420208 367690465 777445599 827722490 500938540 299389454 364676091 219594556 35971099 904193534 821379090 753517093 35568936 809712547 806824683 340072731 965748774 271862807 901313436 349242173 342296093 589234612 899950019 399897603 924697536 874686493 66711274 943618272 670989236 897769530 876282639 471423364 666317014 920437293 914994595 675332184 844281294 777953014 702951124 180261546 759257155 167160439 360826059 887583749 324681534 600695075 981676341 170482413 459426315 422640781 876933965 273151717 134568823 918357825 966184742 724127618 252715275 539088675 839502589 166065953 788307725 122399020 445706029 623601033 732255896 854496524 567107610 704377837 912083892 119273217 738600936 65769699 869125912 979478013 925151523 576769020 640113568 437814838 634537261 471867427 280186295 660654304 830796966 304437564 472046747 762636213 57801405 835768367 886120597 719479860 503114980 828666153 249013117 911063956 618211239 29346421 716353773 531611778 686990452 89351011 772280034 677164636 800082219 840512458 293490343 452038034 286817876 296418424 707804619 952669039 277385295 740864602 679629864 745651882 976779851 617806064 707704009 700583813 670989236 681752268 316108902 456663150 359190645 338852007 374213568 770672173 795262182 842300844 983233075 232237178 46921199 568371490 712318141 696555674 662815766 862219502 309235745 122949393 969455067 164048921 401147819 505877843 826980416 58674135 894995290 965284458 863874109 174231047 670989236 581864578 578672348 368073445 430252256 418818940 173523412 954515329 182034568 695601506 76189761 913163566 137009851 925862061 671679230 670989236 180993753 839539690 382808461 678569394 922572365 467686417 345113524 413696326 470222428 523568348 821660230 30228125 234430229 268764648 744359606 712170311 506481208 618135287 284646310 965847461 998273065 782893192 694421599 892490864 125499402 942623407 989884163 351558675 723734236 404857694 980075663 419537662 880327696 441585445 659625522 412866888 913882047 679690074 420854032 924712041 699332653 896402743 673424681 694634627 17199885 814531617 890629435 550776312 713759089 62931259 699250879 779720702 91911016 92495744 202208283 812682614 901161421 673965021 443519032 873485159 771139090 956313508 629437215 19454568 278999059 949634178 845550163 146093987 988470463 913317541 751910326 479558383 850355482 747835214 898338459 421388841 297024596 3484760 424494992 988376672 799602746 690147829 783364906 994281676 696549770 354655925 428958449 444428365 960982159 404364820 732520646 959387524 938698619 724779692 746098711 731476320 813331568 162940103 881270653 995453614 869729598 87235341 685469695 649342127 537715471 925572736 206558425 275046028 761255765 121641516 702428215 936183158 165151194 255193046 569572417 310168350 902602849 324930142 916244739 705058008 872772109 858140202 670989236 542926165 838273312 571758971 771549686 844906360 588682204 956224929 153843923 921646186 946852459 853251851 989113620 140950402 836031725 921116807 778485488 137534914 58582585 117505827 230084600 332775158 906894151 856871233 81698825 703828690 219950408 446852187 670989236 168529498 901179988 444044392 476626991 985226068 894393588 140899730 727023812 945271689 3267078 364395580 800010190 298270984 253122636 974265867 669406016 924395083 897539960 887539969 258970516 143431743 671803594 977203546 770802618 768547009 238560541 576378377 790850072 943843841 832248498 49636714 411589949 705385798 368135007 800071302 349010145 494323890 428039713 950873747 246274081 543328284 480633571 642709696 778935152 87638697 153335245 752813985 899962633 320645873 546988718 777490874 730983059 486702274 902629286 861911291 853660197 713527534 338182552 306680009 741862330 790449716 122598240 909969662 975061461 565453980 652395525 835318777 91301963 926213750 619149862 694680573 89276469 989380778 851143458 616080157 491568006 562160555 779165537 851283805 87972483 279235515 101553347 661972773 311320123 622105081 899911398 927437862 670858346 918026479 978573011 928220792 994030750 866485511 879413639 637035209 895282003 986103178 34432950 118594138 289625771 562112483 976188980 974595218 430973738 902119041 865747985 805660803 215954539 602444590 841446999 796314705 339355130 235696704 720784420 579635479 172948277 911138581 26396196 524596962 847390823 975192947 334760833 626732861 511739784 928206439 440785591 903924048 250587781 951309522 441578136 868607098 669552184 900112123 367444401 321557774 598211671 783696423 65443803 188089367 996711834 594499110 395330295 459499669 633060125 842047270 213739606 111239131 490111031 668159256 261988338 689713893 837016830 383931761 267870437 963197453 670989236 687879112 702547106 883867682 557134995 260617381 916900660 911361270 516275938 440415594 88787751 864834652 588528594 312487496 747872407 573567994 30075866 591900344 638417609 696728903 654349976 772265033 839693203 719130495 675691670 41831192 747588375 292022626 172576694 336916033 565924820 809476813 811775737 159124208 830683519 765939674 800397821 908416309 4135085 359178288 701830607 776776849 713840825 403372472 78837532 399660742 682537210 839682341 978622882 945040692 670989236 642089014 611799837 46991653 630079397 408199963 893198612 4889802 50405440 503907534 683758252 435418130 540925795 519958201 65738967 965236532 679076950 846798687 870032973 947591847 831211600 350249112 993984829 121389894 473486088 561100942 845026654 814637686 765533134 846243467 663311401 950053203 39680085 717746517 774531555 175195773 343103717 96338525 369027846 572069568 690413626 328778802 760716032 787198449 905632829 702468122 294923909 472620049 864703870 942821423 899532510 845843193 302683082 13537555 572425468 297161748 319169383 149340255 548074851 982515034 88940542 786955839 612515777 971047114 755736092 988398025 650942332 243672694 385595420 82122436 728481448 813781052 43099692 455412513 29625953 465356108 431104840 15968742 98354778 905216428 103184158 965008334 977891053 670989236 108006244 456222179 777164788 761171561 296727872 908028391 814420639 670989236 185660068 268211523 865186959 852057905 77836769 336298436 341919022 61705292 418952602 342101418 879169528 980289528 324827620 986079410 282535854 724305228 29938493 131664898 69248561 1838427 112164472 305328824 693619614 979808171 509232383 241497434 732210679 427847864 780466108 73070218 742679541 673115772 470032382 532787761 690912563 650959158 820438905 986913482 630737979 875663613 738216453 789735737 700359684 670989236 691840446 66782631 222796339 759286388 787187760 885633263 985885917 726985767 269189512 709444452 939810099 869548262 935372311 615476771 799570710 995951080 483567838 951284318 780420889 273356905 345068196 781812169 848449651 717326860 853534493 633809300 794668379 125921526 786159623 698997194 62513409 184613568 600899285 736920410 144819441 969393388 868936399 344153143 877473115 203963678 737679993 958670261 926736052 757705858 831892733 654723646 748571221 858387250 416016452 807907352 138099569 470013391 694292795 984899588 856217772 9305510 694946383 9667792 883118935 670989236 673614579 614287893 814556027 904838098 622950718 728395031 915460513 289259390 805298837 812159568 792782131 157100869 246326603 484873147 985589453 779650944 800755542 482242901 670989236 235093759 547245689 197398032 174245663 600189371 178005559 567429923 713671551 759089526 320890171 472953269 745833077 860966030 598908146 792788132 723346397 795018289 399949262 454569783 200905466 488258332 154368706 240787329 135460764 167495968 966283626 73881452 571971926 807066817 706675859 761781660 927249410 651538393 987622488 842993379 270950815 296692656 864723218 611681608 933731012 867059851 889610529 1456504 145665502 865996388 359220346 979071846 447457845 856350597 946980527 794740502 973728709 948916283 254082555 142328410 923508103 902767272 967753131 703813574 512891521 591493507 662664427 907366155 934176224 879640167 639944523 651400340 838473414 480588787 550205209 708425871 941490464 883336454 523337065 881809342 694487615 684119358 281719660 393604247 310361869 713460811 218120918 78044250 583099648 929682917 353763498 858029831 846783575 766381782 902650389 754001164 949330438 244561040 314702431 951062490 797175401 934472739 692982305 908068646 943310121 727935942 930885397 896893214 302980958 971309716 555605123 34475637 684113795 33878934 987389541 110707505 112294055 438382863 889170356 912640911 581118325 678966498 500831131 456470761 267547600 828420491 726485887 419654867 831902126 363367506 124469522 704268533 347810013 915827011 19795898 468755559 822176397 59718803 481408879 917687285 232702328 938693531 327409282 826818619 929537243 689922624 830721720 188160011 487512670 670989236 769255735 424887738 682829818 23399686 686620841 737811470 943734197 879365152 940281334 217310678 915522871 157007405 469927419 686350655 316492516 27383505 791089454 96651181 679035253 381379344 587441398 483143647 779472315 845150064 488744868 568478773 67939263 857221129 216105993 653882291 93953895 195876172 948614468 205629617 833382287 633216788 68718583 701503800 589449882 366517905 970274958 633949461 841507811 277593465 901570661 165412126 348446814 205024136 935351421 98547609 404987039 190616418 749611620 926521801 109631588 224825601 280113886 885402914 958181789 927127708 863943840 893922583 915320190 425586375 869076924 689684909 803112156 769579640 325694083 771904080 692201435 784242642 971509707 621326988 182510082 615346826 758779228 698169973 133789569 160855364 697843149 194936808 682508918 946540542 9670924 562798272 828225782 790738835 817730312 90903760 566207629 956178938 275292222 490486428 489302206 827550059 118862638 648861255 54273970 670989236 809279618 670989236 929107317 128829377 968002552 880425398 706501704 708760235 496948557 728314064 22014012 936610972 863968938 550556619 640215049 672569589 977881362 738426800 673224567 872783675 962722338 871491614 672791277 974466766 212883315 109088451 23027043 766378597 163168389 309479543 920189608 845567585 710729065 378060175 337339010 853159985 818118935 856140040 834370035 923654010 292171533 692591520 223358579 792231803 465712169 982193058 693741713 712444201 958649350 453449675 731587521 263923294 128055460 898963162 113915006 941921292 172768211 49844980 325199102 420737738 752014826 977547652 818650172 880883647 36717124 720136542 828332102 531457414 765733966 644649060 358163467 851781616 370020032 868163657 930695299 296663306 47921071 817654709 730531024 808770166 839703970 81514195 541728554 47964564 210341834 65061231 76891891 558068692 708277387 311158642 7377075 613318739 185217356 381600642 430483722 666363109 493517349 786137750 395383903 490398429 197083342 433758827 681646134 53020158 962686761 812200190 983013463 316586052 766106113 317527230 5579064 599174357 327562266 294449498 745353390 501614685 670989236 702006049 577424129 713303242 791479955 641087873 496297504 67005326 345793628 531944106 60593941 879511462 627932634 759957812 700284298 730934703 439279524 731421159 428108283 954419329 172737043 358770263 70653734 205926824 781600293 277379631 964340066 18378425 746906534 678655744 459497820 307921159 951627889 343199155 147138402 110243593 208044749 324442708 54814389 419392700 696614674 126671648 820492237 172088763 734656082 175504079 692257663 175535279 828754951 278325473 69809401 663288740 730320139 323972775 755004496 717549112 352699556 5113430 205850385 670989236 893697087 724587813 910286807 987314312 250896410 303077374 88296781 688892435 276273565 950538805 825204075 213724753 884449018 334034242 956531848 725145763 818486352 233241481 725378697 883877310 975215256 898922633 994227667 779039262 82304476 255240509 742069621 534021346 275525597 334142814 286626104 713915306 841617327 809237757 883945029 833577192 831132465 889553192 487186023 892353778 820795873 940105673 29797378 855882559 315704850 299765673 328965088 685724080 208822971 621468336 984406294 921653175 496865194 192852450 907153395 53257734 254007115 741284607 722166316 274333834 66514304 852074829 556576221 7779144 764491024 503681383 785804515 70819499 193854150 667893003 200611288 412315433 250836771 289364486 708743407 960720538 479786326 161419656 683231741 685431959 934856147 988407044 976941969 749705458 488265019 734891360 942410123 381468812 47808061 439767597 897691312 801447199 837033200 986009253 344857033 752111178 669557756 900115500 666546545 330496514 252876518 190630801 119848996 379742049 7277177 865611546 814022743 368602856 720910412 680599952 875782266 983879598 993387312 525991788 907835807 810585227 34074246 810874446 962184378 5123937 734382996 785486598 586546209 490335377 629018586 808493241 224420479 921964716 838246021 973941995 193931825 396698707 710736844 357913776 625828967 700528590 985610597 614110673 854966234 289408483 271742114 423425144 239335858 375589223 840899259 673967208 947856510 995689624 884414357 298874102 803156458 760238692 600813879 272262445 772422523 172020556 582867692 502338447 700491239 739007413 727914090 293773842 777835208 924732274 260868680 577467225 822270035 989417410 655176283 768068848 212666403 897668872 31511145 930058648 845044467 867986065 791592884 901256486 670989236 773970816 861472696 312601160 733451957 938333700 611569418 615419233 224967151 899785113 850197871 916486366 670989236 594055848 343818897 333980673 728396684 894333692 689502077 701088036 561331257 186686860 919703133 967595686 426448159 657731048 884801602 987617109 752488128 34751036 744048024 738856452 918423525 503752302 570258641 53450136 964012451 324155663 477915098 315784674 921937441 769404247 710283302 998061033 52958332 889633428 971641956 634277627 836240827 902943335 956031533 426253977 749793642 72841480 323416398 90311910 968167671 151266113 161370370 428817969 770237354 987314029 56854121 530388466 205837491 711625949 702250932 750718982 825084969 789242702 818799580 788357540 980775511 726469726 554846744 357082878 700670361 675949829 440689618 153151565 914947330 918037057 809626274 554059537 802809878 670989236 645945235 238309278 111711236 566730541 297071968 747545095 462512098 851760944 890725844 32296834 245177510 971039324 517404594 927609048 771547174 417166302 396807383 827108530 378404373 157734151 766909064 350998291 704508741 708625343 911650828 604298401 826071334 827983776 955233427 328180432 248221267 964479243 892643029 363804365 546258493 987086836 378938165 173822320 944032418 955483557 292302304 436565861 95279158 191451232 707637878 585577075 366885095 304410669 465908982 820777670 591848884 113343264 471533702 879955512 109478857 187354831 120513606 593836788 807873131 72728365 133678424 460441575 780814077 914043581 797908953 885374584 924936825 899364930 753735824 34311464 334086532 891049959 695309905 987027489 925467322 853042271 763808181 728679885 163506767 343282416 988123287 229972482 941000667 838847030 777541598 903422922 664567443 841794839 731218467 160696250 706131971 255723317 673700164 53127739 231249908 480019538 700239185 223973463 433761867 320470118 627798707 951775873 756133670 821433046 807598674 588326460 756763600 860296584 672666010 450422085 686267482 788802330 985701161 752377310 907488232 114064754 304869679 746463158 397482015 899007569 549002124 474502503 995462671 894467452 802283353 895985066 379246958 31442460 52101193 829496035 275060692 706450524 949482107 252097948 258904016 999519187 297067059 675959780 542216903 55201689 782856238 797938343 741602065 716047219 848140058 237162001 812927464 360607662 456889737 991593248 214004178 278642210 871634777 776291982 72806587 522258745 752538004 652746697 749361334 763466549 903206972 644202956 605445974 78211775 777947062 421214538 882563526 949333449 34552039 47956807 582048693 378632449 283497027 345852730 335674387 44959680 858133953 687370573 261505391 847988141 244912100 707866066 759392986 145790150 111408505 995966311 214719199 744440941 958789202 401449910 390207496 735085243 519930427 780459057 930834896 404736994 467333686 938466311 474680248 850956919 706830665 665318783 868986003 723302717 564147092 287183141 471405693 379217907 419079535 794560565 706396844 317202168 981073376 845944527 144914014 862754155 33595280 345515570 507714894 59949537 742943532 958079910 243953200 959787499 932268927 990035168 465260204 436730517 820355504 139185219 418650636 196730602 692074608 32654235 434877458 631869103 237004852 753915125 181620253 411382748 864998001 844730071 830387519 146204635 410997905 767443321 776473290 750811545 474307521 127152287 823223961 347859253 116474282 400603971 734524822 266724864 559670711 482445217 605129152 936493473 558868579 218734488 228806614 67673342 30460204 369238448 730791360 598311768 971714572 716777054 61789308 632718603 558201842 932003670 373279101 853229487 538999827 58245338 897633673 196012424 699049204 48751083 399693156 14865263 702030138 749042873 29534182 883808318 922283030 451826401 769362701 907747366 735554396 120177441 957412691 364883859 179677283 911799496 270964347 891047669 731555963 743438306 761111705 659164331 27383916 775193615 228500171 924400576 799081456 949548538 400186556 341796356 83653585 475310172 91004456 123187405 164589956 878366159 376243003 751747297 925219722 670989236 880352832 448833578 500441553 100691373 670989236 707837126 765084093 922730331 121302389 70044649 735799266 960212654 65118585 662104935 719195542 904765040 159682273 85304490 483089907 232002329 791611177 619136535 906653128 978696682 443622830 686358308 478328292 42245471 197066866 685206535 891541471 172992740 100066590 746875505 488242774 708398563 792282569 728209166 404651907 628844464 996772656 45415288 821423678 772652423 175323836 565959694 612694861 774297660 466283029 90767860 953273070 893318718 418383929 463669316 661858874 598964435 587009479 497976126 217144124 154143055 869719195 930719432 410684892 376615478 967126883 116760128 180651120 566877246 35366290 850880441 798918430 492373308 716782542 844489806 904077336 312261400 787340676 801353862 355709446 230128985 831792076 112752586 730938089 724850624 988005657 487721690 963113393 469030927 927627409 733202781 259515322 677369589 101523375 350599983 514948354 680991866 595738291 759374913 340349172 752008854 164956687 985319087 659022512 760042096 993194207 681657972 499975341 814061536 922241382 682310687 944199622 822625854 711800330 56176524 28010824 294838259 534767179 855193400 981894178 725773675 634102814 344434868 671229496 761901827 708903728 107815041 597450773 395358575 508798533 150728014 259266590 902109169 214394106 259671940 986288900 787086163 160210466 70847921 19895140 283364664 46926570 399623650 904194327 766309780 378291955 824313862 588182401 953120676 789055405 425847960 346403118 894406945 375709190 823698191 210542054 936607538 205137240 491048805 347946735 920691561 865447174 845061489 670989236 687809628 190979802 785781926 432049212 693159422 398986134 645943042 776568618 814846583 307719630 722466301 711968795 534308994 467806493 557156852 670989236 754215891 915648196 433504170 915837442 39001458 748820418 396773083 310230831 411569772 939858135 618981248 76024291 779266953 620397585 946463316 310157086 154411526 839459241 642612947 892614186 900670713 779070873 932076642 799144994 819836545 700608255 445175104 748490959 759734317 343061940 145601450 832469655 183055026 972995543 818458602 720701302 557255327 842022475 898718105 529830637 761116033 816823004 247867667 716462233 998334062 521167996 732938617 419441590 43848295 570562283 455270292 886293952 901486444 331207775 183810924 946480985 36275 513783499 635944837 267644421 806503132 677763513 670989236 685270529 279933134 817116536 692660266 969961349 807354691 318188221 192600338 663253858 93771066 625957908 418420626 978323203 11375894 919804530 170499213 651502153 984142859 345809767 795385791 349208292 77448430 822710952 885794582 265177174 912093290 991165445 51329515 756081737 475199355 865792716 942120420 892621993 827871493 853601104 958143225 751118055 600039608 795693957 966913385 258005193 527736937 638105297 116693533 103571315 73056837 729231438 975909886 575915900 358559110 825536059 406203760 9044326 978066296 763715683 576859842 568487905 840947813 990376651 331940157 204281120 942428834 133462756 15661563 192497073 14031170 927484493 986047381 758319887 704014686 949332541 735568210 670989236 264830349 742373163 993949906 894660647 972813744 999917982 316004074 699198155 268568637 912156344 236976283 71795439 512378531 832064522 765714424 493213916 703744730 2562440 861447160 259708161 233447787 560248343 214717945 740594535 177382309 443814793 650430937 186062234 762865370 911709055 771425992 224347851 14042035 907428766 456487697 624875909 670989236 3409876 843924620 733580656 260611783 732750644 813705187 115247129 589947988 840955179 829978006 217259916 220032609 907022715 760708806 863964681 817140154 250222242 58809698 961420863 798109551 955799589 826508758 630963571 248695638 678363247 598529132 68407568 12501477 618898761 616642131 945373038 979138699 243651555 871535265 197498607 972156044 772381986 265845232 559733975 37700799 738599289 545281812 841612489 119556758 398874398 605878168 187479137 761314800 172701771 48603173 901414687 759012736 808081523 999442786 137221444 591622749 12961273 527250823 87518111 462108660 651172924 734728693 841922408 557814150 924593361 698779710 281921594 286355968 932016430 860204570 745283335 792675926 855907449 740296929 769740391 480793336 819140139 938172193 942447580 346077557 764044061 709370442 789373067 735632004 975180910 225752650 975917803 706164499 13771913 958559117 808059708 846541913 990000397 620325681 195366897 887628834 117575340 15520296 990191853 835107677 48206592 645412724 788253571 718446387 760787673 918314487 233872965 673652816 872439511 314087623 436741726 562918071 429091355 805974989 944769977 438689286 441851003 800892176 932688004 725306448 962094187 40439141 724958467 472327522 695512260 715609404 681763962 693798375 796615401 465872081 837771039 181306814 765993094 319280062 416495616 676040700 687627454 481796023 917481611 760567374 727139826 136227671 287293003 220276556 690201486 865236540 916013153 692280299 934756892 173150867 312459277 724610205 876791787 482345144 62023451 647080064 832163011 605336330 822397547 298780678 477347815 977584507 626208840 250671 571333441 719069883 772084711 304878414 422789968 795558628 726323766 328146730 115867202 580896835 564588647 818712639 174409715 670989236 596587426 481298612 752330641 848327150 720103298 570075414 206629866 462176433 51291932 387823033 846430472 795747954 875661576 619119548 439611831 927570978 956665245 688226776 845885675 296247953 809954974 540595375 770274912 376455771 610878384 905823599 694620219 398312851 782271626 701544696 628993269 430670472 145533329 104841419 801073032 986378796 915096476 821628140 201624232 774342195 90304365 930901464 635860282 738025163 634600617 604651408 867405672 802360821 941253781 525069064 799875410 902164837 795472873 800184793 439543154 688327072 756927587 753089772 753904763 447374502 874491232 990596817 217629423 593288880 219471677 192337001 324515993 821160164 898958141 817506413 940226191 483422445 312860352 161003070 670989236 771269987 486147211 674892829 408170796 694036218 783933503 123686210 381318322 165135934 525331138 580357322 80280958 748628858 821890952 688788383 976798515 874488187 11189804 821919210 686535604 164761283 118236449 562927045 756834893 743593536 923135132 784601894 19596705 606623013 507639168 48016708 746621897 688961347 612759841 915700082 214006040 27288481 536296937 851703227 619890691 159616887 211037511 835407586 536481253 640786397 530558450 800679138 757042070 352726975 976001041 985526301 633038988 867312588 758514823 954103510 107743354 868572009 399178386 986419098 897080927 218300413 720763030 861432927 650727064 64753286 785288553 796354450 896709410 272171080 583045550 884088332 674489962 616830854 743993867 2820438 716072094 396603479 937923714 928520817 640235945 760605018 138919198 808802007 812347053 773815841 864556187 756091397 74788687 215108618 663640853 753905724 240951655 643437153 978393711 609125098 234045714 173752657 13332854 711760671 753455000 350019041 238105860 446982270 388153151 918818124 897618799 558348229 573614807 97162889 552237863 757218689 485025259 994143364 983111212 449220432 182609345 382540784 873529797 871931540 916954420 887039151 540302765 919556139 563027183 495351629 396123415 66404407 580494749 483258095 849268484 670989236 637494229 162268293 57289867 349171604 368545775 511196339 913575437 424201699 248770472 721973622 134984208 904590348 395584442 705307439 306391448 904734560 545514997 746850624 234049440 556866241 258824393 841757545 262107969 101166322 786912522 201170927 836073670 558922883 144999928 690349189 191731731 849415487 670989236 312959394 999673648 900146162 245185570 896887781 711495610 671735219 480977386 905718952 392000251 493495276 216489685 8233078 510551762 701769665 380353944 292718233 302687900 341308758 158496372 649983107 437947524 701400285 871225189 964141578 147334139 178631668 96114802 680068284 909952993 938575249 576805770 265716184 859765856 199997325 197823864 266069919 667803937 317927554 783159609 143396031 468891682 116346332 670989236 781816193 516391236 305436032 598715861 198397775 521524296 783609696 159364407 893958964 351824353 909396387 539620003 899163003 329126303 201140973 545308693 332294576 264661964 264180929 718719151 993082285 380898014 543128701 140391078 794795830 685601905 793691445 751248454 717663969 45603795 866150721 708606069 228313785 249844201 232553340 580731254 815454694 499698195 172159533 106130031 233491409 696449147 835560817 675966255 376195060 617230497 774278801 46894489 809035382 575084046 698174259 921674770 976365545 700782014 882771352 946688452 793356298 734078146 843198289 784324318 71648662 680921715 113424500 774000810 971426708 764655036 644307814 390500291 153647319 417676860 199139390 740324815 125990221 392360470 818522400 956064719 449937373 926909585 992780832 224727327 578013117 934802801 38563450 688423342 684661524 942174381 754323287 411635093 166431275 733581720 317347073 930942903 839705109 346064807 921257749 66551296 870180302 655697812 91908731 69020587 841906676 676288481 894715418 88833350 911133987 833709704 288487599 674019318 562360031 617678768 189760372 608214100 252142912 751982242 749806396 285579716 632814430 559819451 602171507 383440631 120516125 978433530 332693537 538276470 860736844 118220608 924141854 647597501 693634748 943050662 236838130 918817861 774058973 864344887 997390553 268998420 859707045 670989236 478117645 709695957 755496254 138630389 757019712 610282013 544833105 91269805 311700738 237123837 855694668 740116779 278035000 889382452 701037983 408748364 720266582 704708437 268091008 798877056 869365709 691066651 728327910 840551094 640654762 191565224 465365289 915447362 39604678 774670775 420971474 961389037 910863361 609181756 457938274 105916566 951778063 654331177 863977359 846096156 419428937 973469644 338973531 228210665 976167010 615669251 880759267 406750436 856508053 950431090 716665766 202759979 891106455 894516416 874597330 170468711 842783896 902137995 292376950 805529793 950661625 963069824 894948080 788476698 537991116 716736540 670989236 401005879 559040110 174145660 841745714 968157757 984584939 900993307 863419651 756539428 304112953 679788974 846115480 100666771 422428314 453022541 636804197 944111864 351624829 631397897 719751676 786280041 163227491 942448209 918050624 210800659 85798236 211594380 302123308 921974958 323890539 512563536 267626103 896967618 460945357 734162307 912567383 858729674 906537609 243142916 994918783 996897222 759923750 944255781 98679878 848544199 489523946 918621731 490142847 441063018 948081508 736002352 263149516 694793970 955480389 71092124 925704164 937171326 924841442 981289397 866262230 759090965 971223611 754890153 293697718 767754557 924852164 716251005 429039964 949146514 188965905 503174054 704694163 846229208 877107264 555030713 603885161 536298222 971045197 903849028 841897408 914767082 150317865 899718812 298647412 972948681 790237587 421923860 702561477 664010498 413958275 167275122 52806401 478297377 694414427 897948986 671069527 213411603 58803036 744124374 535081665 842768221 736873143 499909435 955496087 951220091 131753561 834164679 221778299 206422091 858477439 491708139 284889913 992613582 350380875 281429959 702866004 840017993 363654538 559520472 456466355 748147292 993401554 878250551 447714121 723784741 949037869 947859812 846980345 753258758 820507217 738589882 954539949 170441076 722553576 907221803 740676123 647143131 609596538 722574819 788507614 254500206 679176029 810512988 502423816 649365691 433294283 930547270 703803498 959676459 852310407 163349753 310328859 148519269 784939236 421363332 974505257 878121836 540331553 847026862 904263289 114308713 390512687 366982902 788880898 113258236 956320499 226849132 854166179 399343410 424903138 932087284 134854899 968443314 596243830 670989236 871461594 569395969 208956224 992923982 353879864 479900804 406026350 256815307 790430531 705573920 64525175 352666468 692313272 428659942 969946150 360682244 979898568 975062322 535550781 399290092 507857057 217345653 976903072 402865962 955689821 814873239 876061433 361480744 161759592 905417928 970515998 195201145 325299634 824177223 770583646 209439292 775312474 21396026 183641305 670989236 753196806 156383723 835489428 294194810 800612589 275740346 796548695 690748617 101768305 427915790 123069690 670989236 884076296 916661763 21021040 335304496 42481319 232118609 598648165 841918657 85818751 827537175 74802708 740149598 871088241 85248056 900842172 480717493 360599385 723978824 199793708 780602761 105536967 543444219 916633258 271118251 420956596 997581755 49806372 455745415 693285784 303821319 850292712 87962886 268370263 735243661 930673307 217201073 46024222 786284353 963212667 703361560 503033296 675697989 519889755 183557855 461735097 427722915 789220705 49029476 883655155 278357838 455951814 273927379 41620798 227721138 821312909 864328220 747964999 744643529 930860261 604887381 695973389 436025094 735733750 699215844 333540014 548258581 588774217 343867757 858148544 956420945 654524529 429266920 419038655 741990797 408401554 50257931 918948528 954540968 142919427 879754791 189746687 740715686 875888064 66064882 288563743 829567014 981158006 849912324 869387513 912452313 552438202 878674399 820832014 724387588 860130334 901066486 636908560 248933632 82390099 540594182 49941112 824270039 970400633 427923778 787570662 731709368 718357285 382695056 324898085 298027721 950301427 433444272 941948945 754683893 956737649 188134082 673837730 429515368 511947384 349175305 66093811 754941780 626864122 719620388 966437725 444658310 171638879 580495661 930436762 196035577 475119162 300260665 303205594 359520360 76638310 737147518 875681233 749726152 878978828 678484187 421882746 912501699 670989236 973459258 46207460 990231888 628029171 879874418 707658507 371562579 580627395 767817539 638058273 934943550 842209145 903550454 984040534 622157777 504764907 888745899 821118791 688706745 67019441 844163292 972166481 842142365 365016612 860745770 116422073 691179347 565874528 861263208 840417316 664667801 905640742 832176941 670989236 480654472 852623214 671413956 618317823 829858704 429322361 8625784 975734196 91234204 975692525 827816203 97888918 991632649 682852622 417395830 494953497 888488322 783323863 903721257 978084946 755636120 870832327 947596577 9893210 451513890 714514859 840721188 556711560 412444564 699004740 985092459 593313735 484372818 856779114 77238005 262866817 416906254 124114561 751674121 679573914 422589864 468863580 589782871 35362313 235878168 694827713 138720025 759792630 829722616 459944527 587333069 707856206 393733789 448899458 876608228 597763224 829330783 802482009 717678643 168989048 733903685 795903422 904376556 157282158 402679972 204631172 925151715 814091547 950647512 851598625 609054368 670989236 843883190 351006993 135295759 711257286 682375169 962067667 968683446 857842348 890822697 726512200 224191297 912929708 887112451 156096933 915653501 713512874 304056476 70351757 998166051 414598723 793131728 314073290 697150622 397925914 571751839 826365247 723757029 684356088 53290393 803600262 777225931 117103023 994592833 425318963 176506371 784354996 449163567 741284306 529530005 1124145 649360306 929883928 673587746 211337673 141522434 835367262 752788408 406727663 967994078 716942411 875196819 110003080 483429595 599736663 315469378 966860595 517917734 286094774 262431264 211096908 781460048 716947274 51743238 857339914 948141933 251911835 600844130 674270524 371002596 722870955 140692960 294149835 768305080 732769380 318894399 338859547 931170291 137196461 685822101 136222224 720399665 988768916 944981012 282785602 376035045 840764505 941151716 564598022 508014901 249841835 164531152 351041939 507179131 832038561 999065728 662415343 87652891 270311935 963916098 750572763 715417274 304862297 174962920 446246897 395240421 730400669 926810654 675099436 431809322 905496174 763106017 670989236 877810174 615710058 733278739 792261385 883962518 813358455 244977606 824685086 914900176 813979146 402632280 899252741 194592528 900953324 60292868 939656499 257045379 858951367 680014884 837047439 873451974 948354080 613001947 717201951 650623659 937617105 786967001 648574934 977675525 860029476 548389226 428360854 735190314 816291208 897631289 61104893 211914175 894755245 536085091 537809853 682431494 812012597 700476289 351168466 931338968 201351873 909016011 756158359 542971544 556497431 937927960 889991723 918804880 733265101 298172180 527598257 813159895 730200506 808700303 401261734 550689788 839409731 50874808 297020353 195921924 129189552 458197438 439251987 999821266 970522576 724811131 971527437 679099327 677256236 898950626 562246337 873106512 278841160 716369528 114210584 850507363 651804803 820622864 825220510 628061571 519656717 657019291 771152494 599997024 349675723 798438941 762421899 426089673 869251473 717203439 420262780 545711996 867295938 323234122 386063527 45048200 329645883 940130459 185451179 523180566 870969666 717246779 764944172 527161023 48607788 670989236 433658173 451040621 610960571 229694332 651123387 636221607 970497773 863044576 460794567 15518455 817787733 981595068 23357348 163338880 37477804 742947160 918346836 952247320 818618487 188869769 520176934 772241258 843442045 977732910 970553071 573611858 670989236 412031522 311263664 903316536 994684342 887649392 995308051 39588736 985995927 230327904 563481921 672025862 297280683 502261942 409938451 923717325 547025304 992947500 46833204 753639672 961940905 526672035 9725272 373961289 803338704 45710727 281221365 958565919 309234089 793904703 670989236 543336864 681767198 954283579 982580313 921406606 940307274 891351032 989042375 857268477 89856580 747240444 634716289 786633905 167279885 966876402 785192456 935949437 208908069 599877155 874482788 410402495 744840845 213497554 84539432 948651946 196155122 694616771 658287614 842450585 673676257 51290235 384307902 983790363 701738562 132498776 226349184 424869087 578701418 666132888 738300493 23346854 811401407 212807240 752932366 860214671 828432368 578866332 268687325 840316838 160240840 371150456 929341005 882459408 116597255 401793155 689849428 925570469 296358614 743116034 713506397 802017229 745653693 870646183 446013747 944585340 805161037 709519706 958061555 416262021 822699133 795847127 195672391 357729025 771322504 299386561 117892721 588925478 937375778 531203034 351932316 288891560 741688370 830161536 902009589 88590884 181045788 277823455 973472208 557850167 734543097 705512776 866333200 660250139 399741647 736523519 900678314 261495657 914393376 788970431 694888127 953407728 833766780 37154983 707955295 868020168 872290160 181650839 490449867 780118212 854617067 907747271 671500702 550372902 406660405 171135233 389747245 233233632 660230600 558054869 272918653 762458438 742502010 713155018 670989236 184391379 825600424 649945087 76418107 389754735 891413925 998346630 808681899 733271115 8039172 739378629 833020637 566543777 809163731 460010202 29467862 527088098 299763314 444210370 475292620 943588244 693497740 841443239 208777956 710553814 298676058 37141987 576843469 720395656 921294298 713880763 282263169 17105350 773412626 255599006 56741569 974825835 983924167 48087214 330275995 443617877 178522267 639165866 627964561 670989236 666363855 120407195 305688228 271149257 598582712 901025858 351012262 894597609 949932923 188335139 736925686 712521887 335027592 787168877 411612822 832999392 39357157 732919951 923341704 640569021 786373780 3620307 860497994 870441581 698854111 79981177 193621439 958386836 717363062 731644136 86639012 845218952 467949444 837634986 730194696 943944938 705225120 330414566 128638818 976056827 728053528 707969642 497235099 488861066 738441085 697398044 760722466 954634022 438336878 700786856 106758806 639920401 635736225 829724131 475175803 986958215 737825766 273532811 464630304 799039747 569665966 894184309 627699188 984345594 713499236 970306344 244519230 933503713 284596350 845751645 179654243 891974782 533247456 873055044 382745500 172803889 876573675 908519140 664661109 558790385 775765212 728459994 893704567 63581854 157799653 878081283 810640255 277517548 759562177 899912585 54744796 393535943 767578253 699630123 402890988 880734483 448695601 932801633 713614327 147476357 923311613 493740811 441624669 428703912 321630057 665687789 670746965 850494845 747964246 777107306 59711529 796733002 898449961 685656532 119934697 609601106 947281676 64191484 909440372 822260173 693869562 689876854 820376236 746008009 700165852 117604336 612060169 919098213 675907494 911547200 711781654 323033075 537660653 763491303 325300007 265654047 673963565 925920754 832377445 399385063 677563569 927281571 16323028 620892236 670410330 522732016 772615528 171935067 919214018 751513139 108831822 769408913 941319331 87150575 475732467 947477076 854955352 953740321 831442540 405292871 56672261 348960979 776850698 989164763 231992891 389040049 604216116 419046969 528806270 991390675 611428387 971050706 302141978 233857199 350616659 951046783 788706232 872256290 391809790 980740797 569485240 335499683 738441083 317223569 977825945 40501159 900670968 764287515 733886332 902293752 436067318 968044189 810836491 544225406 748255516 170239536 902776164 771277683 879504034 401847898 670989236 101577084 916616555 404668455 535710479 272327182 956378752 696542183 958182229 539309314 798625465 51021232 582249411 244525320 32060667 716666292 903985533 694332991 265385934 252082895 679803356 4955858 182991568 579953281 761315388 881688807 957311994 933381732 723060995 3395126 767123101 978205172 896080794 939403161 783889418 236302768 883265354 615353846 474732491 589601468 812324807 755618132 709771390 820440424 859673970 9460273 941226605 534973856 262165333 384493958 950876203 698401451 500400507 496662429 752076386 514624536 772153937 274955436 917039696 201190307 400460282 948244626 674486108 895363548 50097479 624756718 550112489 5164628 836978493 699746793 937171757 454917626 560231544 796720780 712224028 27519666 239906234 34382915 744013168 893388350 925763440 499370082 793269749 58789943 834812470 302014680 501953584 173773381 212469355 271357293 839080781 780042026 855090391 973899497 759728660 457336253 749659583 244249393 526589476 957457361 588781961 808755528 50431893 556743424 651745926 766300529 345217535 87820585 976231560 368713155 602339423 344212845 674047317 114201670 670989236 811854489 769099938 885301075 456995648 762751098 757631240 705999212 274834231 497037029 306015844 698993697 933143220 816302493 416460477 769004757 608724979 882957091 947614233 85361868 704639680 845384336 876998868 839664546 241819651 997148420 231875382 798250674 290865861 183159466 771824384 487405749 363584919 784075945 855088672 924607438 888765108 380640471 461295638 342747752 670989236 712832754 512525065 690664714 985251699 860480166 826712153 877101706 852576099 685707690 214590961 662776932 706614684 817173650 492627917 672290656 955886261 792257838 299763420 649867314 185092199 718409730 608134174 699443761 684301378 147737468 555065559 509839850 884277109 747397462 325447099 29459926 964243258 336584536 805973372 874105860 728354939 413855899 576307697 445042418 796524042 146783878 678481959 811495147 994631115 715645173 819677913 191032528 940664949 329100847 687724257 167459445 38721467 678404645 9000203 752251098 913022651 846751443 455373028 878138785 766419759 220567403 777471728 596196884 778691484 566115163 541708630 592040960 915667289 942515359 200668391 746417272 728713758 919073076 845481960 308584725 138409419 926854222 940458596 426972964 797436305 395458245 492839149 141433918 775938230 451026767 945974662 670989236 633470269 364987580 405953055 489108962 838048917 920675164 18535700 210932551 893315809 790846542 999669390 923544295 634802866 159635115 247702722 218631657 479996280 977376239 815171460 202150475 998025120 948336620 810910190 919155802 604536069 541440189 155666801 899450626 472133644 791168644 991365129 380757594 957607354 946693771 913067106 939819469 206302626 812946095 819366451 843571506 997721196 782862755 147224461 530887014 638375074 109781148 99844801 676938405 168955740 874376513 720026717 766540376 525999398 191733051 26476074 745471518 202408601 101407096 498051087 525184693 236072988 463286658 351070818 966225766 795555252 698653903 270880599 362637127 780603334 685989942 954294472 184384760 319278167 554905655 751425854 978972779 687635428 908091493 204124125 804528127 400511647 402573874 551483414 826079224 777262450 623780559 688726718 544318913 951748429 504982558 167814608 890971450 850767358 774025528 573044796 633306728 226978226 235025175 677157650 891465747 498604788 690507711 653542122 753706521 928288050 372898101 575568992 978626628 203716984 643986995 215863397 988523335 957475398 726965594 45209107 670989236 667824340 138612943 247795687 848914823 107032960 760779474 817219350 860791753 11330371 450002696 563341751 961677716 70623185 740801412 181871664 965152493 972964205 617024272 987139164 862518187 475268566 221599355 33874159 84845969 375011123 755112094 485881875 779912013 160982270 763683739 803742742 528497374 454531828 492746162 340816466 226890451 566666461 647722131 54975471 293327643 230101509 623566211 138117315 436971890 108870536 282524047 95365815 975787434 712047267 167551926 14873854 890551429 8181426 681095773 449319143 770883719 317236751 976550867 496694650 950983787 706638589 156077297 140548569 803368315 911684747 275854061 415958384 809351171 363583172 294299831 773013683 44175008 850665573 34918538 380117725 916594252 587885493 288152272 814240145 234258192 813581303 471963025 737186237 309471161 135689299 857221820 341986943 189159584 454214872 345065111 965049743 771725463 431946181 900255764 836758411 519085513 285255250 21670850 364494980 13418071 501902449 716630681 854982263 475964156 415992749 444530150 49002308 890097290 762093544 460289860 666738916 921749113 672993808 383297275 138931665 283464801 206315266 845631084 707110467 890161184 957560477 116945690 412342668 877424323 80465040 945416573 556348072 434406600 797676721 253248518 697241194 867049302 224666800 796238316 373204193 981294708 765185235 216921741 231133350 746917918 843721068 977037236 869110290 927772082 768356029 407317093 914595261 228834162 968230400 753827576 267050768 840897777 867707281 651024827 223850330 170279522 105837077 270819718 708875429 141158821 139498961 392661490 710496651 887664220 1106417 802032836 929777131 712456546 951740813 961442564 989522020 755768532 268724693 222986014 689728939 919904882 580884194 730742880 955812740 604926978 724109333 767752492 658851567 767504553 754863930 481751358 283698931 946861534 330525282 808992014 672455950 939194415 721720317 85570027 702165033 761844642 370965089 967010645 679229065 670989236 675571640 102087692 318276236 853003908 678985476 29525491 542685373 186021993 93944071 824301438 825361691 224298688 638129970 30108821 670989236 973155109 456808667 708115852 205181177 738975794 39205156 124187258 159314553 828265562 947246329 814693210 162888522 312024815 781574763 766679922 373632696 880241609 505839436 794968096 644854249 818599536 955044666 861170480 771745582 92725236 300295256 951471296 622179195 166572683 324876282 67520269 745489277 588202320 293048334 741746384 656272575 47051378 271272825 440895455 920414369 904913186 786052065 969901423 743450483 134232716 718221941 483233458 676552526 698926251 621368489 424268995 914817009 95099531 409422082 615589809 950376561 436419726 790908483 994522311 963555452 369033091 93069025 494357919 371107431 194269853 781575988 329544960 952290235 977679764 504597293 918160859 4965311 707308811 944134462 975055016 542591864 167627841 771559090 850727703 926550686 691670738 702681624 866132719 827804423 325105759 463801195 743862120 602448295 289441651 892347152 274306282 406110855 874808664 678847969 294908072 803266673 482458304 412224246 29117859 764245267 680342414 82186353 859173252 587738435 291630479 671122428 927686660 900224247 631683860 783392435 885080120 45530551 273211720 224210909 680813537 726906526 835820129 749606225 282998292 807986155 363617280 798786387 337940398 226010112 511623786 214906758 36506500 27975041 148467041 59909180 795517185 489501071 20626803 134769998 643164555 974471240 721082564 59675409 870161842 643804544 62427298 391209605 660046901 819709168 403680526 423833717 670989236 736344120 732662031 656376668 685445854 670989236 354772354 960320018 217625202 915501816 834796856 755299713 824100212 964125989 908148036 22560610 638637397 478296974 960055507 409836622 964553999 164214076 741612959 872175782 963483268 868940174 573090683 34428884 787480565 450915929 981652615 937117292 516584848 996075393 307998798 670989236 870744770 963211278 234999247 265844448 49675865 534344880 832798962 169752164 921740385 998116828 524760216 706162688 896732460 977557630 986947849 501349030 830446207 746604739 984346014 254580625 910817230 744801883 775984229 901790186 995919587 601838960 522238365 329725982 782206605 736839281 167167517 494468012 311509031 800400720 557292861 430065965 52361164 76042277 949746560 336140241 957368336 697332301 345918123 296406652 996846891 877315154 976384171 702390107 613709780 626584186 918541551 39757163 20471077 364170096 449101549 77650093 156206701 130985577 676082931 892375533 675998108 360512760 547597697 979802763 811525044 772286730 530124421 751098044 973192934 204639157 81486963 30522836 277499565 759255240 24387502 118041268 729573964 433350769 23586175 934797866 785496288 163088629 915682455 550484546 813739009 749956398 334107442 76961389 826231793 491387750 890814553 532672074 821789473 881349772 746618313 912930146 806714166 373251858 975463011 140266051 448960954 763385524 62244394 623687027 343371197 778786907 412121103 37800738 216574016 99368646 739736367 897417512 259244128 674584445 877863127 670989236 939556075 837344115 635203740 955527149 694530379 445625960 296038610 924248409 816169429 53572400 736032908 315275523 159283695 924252015 970829824 966359808 271355448 474153386 264817669 925467917 828320305 830147122 351110123 773860285 395515318 707109112 846552344 46423404 875952926 934623786 917034479 304588161 51803965 825929124 937940471 498628267 704000047 783358930 853341179 9167312 717031036 688846260 85509539 149045857 541718181 340440438 823246755 201471600 577405509 872463536 926149625 696161214 989331530 730188127 670034461 269798188 967936887 510410383 631156982 874437074 620978911 827119811 818866137 974343031 250423069 232154066 671209218 755446589 658248022 251789759 982903841 862190587 756260432 809180233 787265291 43601859 601738050 393808219 850441338 681300540 553966798 922223267 188038113 721871427 696727103 964028597 498241166 781022580 467530078 919484226 981394035 834314574 774932949 728403149 879269739 591709156 444355742 969075323 592701730 598396394 513389768 718471331 323336037 840946920 879756794 255132619 497452684 813597022 110265267 686988310 615157077 191165806 331431470 896762099 823872430 903715832 782392474 752105209 862187466 734690095 472873537 824726400 713894609 743272125 627986738 363659437 783300263 882525434 816197840 790383481 321625979 880405197 814889186 929467914 855670845 797711663 757008227 965657962 799742687 371429022 359336184 22109666 388162023 724928087 514363991 261779859 426734323 771832116 201437230 145273714 487560634 875805865 670989236 663118787 832397786 772880120 327721546 826485161 969728198 684967893 297483776 636183820 808523155 868751523 534160326 393390115 824116747 696798259 49152617 344145255 678700865 589781830 241572762 276244125 38702325 540410763 678734179 424250547 794968977 930371664 284737845 939848382 841602465 269421852 973196377 815056982 919918895 753984998 131961874 684177950 589168152 968788477 741493363 846887250 699659686 700776326 672315658 933961862 84446061 631824409 192495088 670989236 538071909 229526393 728635703 95437628 433977068 149814424 831683274 831502139 972697366 376597145 92082908 333793001 995328509 223169616 20116741 667706300 893651380 783670451 929081015 797913449 264691251 263447093 152879296 526192007 976574921 889695176 944354571 464190383 200899761 853230505 908469652 649147601 29626463 423179181 593125333 854319609 747908776 940558891 591113134 898264152 286052229 774034615 918837796 974122478 515222809 356404903 760580391 677237650 395705189 46253970 720959335 653437061 641066674 730523413 964968334 337930814 690026625 4637505 868553610 986975999 513369464 670989236 365417873 302560318 791082799 146922603 68449149 913917242 321637544 494883566 871516262 797876113 657721450 822719264 94819908 770604460 153035151 690032027 966071295 100235160 894712706 547216684 55361154 330575522 75294430 587097888 223921790 976894237 376511879 997009609 774578913 904434944 799030412 135477122 691793218 670989236 911771444 918785926 839434550 973475258 585327602 990517246 840595980 772262888 808823162 144960173 400729373 677012722 297465684 962578726 677789761 714737849 737589239 125675262 141977393 361167689 557095795 837640587 163338505 689279821 566776856 963962970 964408907 489849994 170290812 944924526 788564303 388862921 562098835 670989236 959693534 437441535 978055063 782566926 676916000 854961511 771772599 926953357 822643560 590707449 50659139 142531435 848599323 834672608 751116512 108409839 770886040 749606685 433675706 371384072 370355640 854508933 562435028 642134448 613736091 715706495 141479420 887060009 589811099 516188494 901748913 976806732 765717931 45158479 897786576 609687531 571237265 169954273 662259058 14507265 846724919 939503157 697838744 619555143 668089424 743939852 276946434 879729911 488296512 747109654 392431787 679354559 747120253 915101750 193842688 435934150 904867456 692711948 429612183 160944632 345154180 795303754 949241873 809755136 670989236 702081324 822326553 595929257 606005368 101558509 591411543 924556994 479206912 114500745 772793354 233455929 670989236 723955429 304601739 880523875 910069360 820687572 687352361 138126739 881284266 379464781 440371735 608597105 718854218 809032301 562901612 496944470 829954731 542197504 464703746 735826108 7775910 700437548 914954908 112210888 823679094 288386241 300620868 346986710 929149375 480835799 96543980 818191705 628375783 316323460 135423135 785223494 888700733 98222248 720632058 51953359 972438352 860367209 142358406 741528637 458224326 125227801 208568580 29218163 581093596 996120504 611756394 868956887 766229855 862699208 954082307 969851026 13429219 387971047 778030162 852661702 564591148 649896338 988939454 400742045 66800398 29302348 75722498 854633930 627727084 50955117 296844147 917151590 981964123 771298901 854606990 252642336 823895882 845471069 98582854 130785146 749668053 543651483 689796103 421119493 809651242 506275873 118524564 920677686 717171158 622620577 428313196 949994887 770035517 332942825 704589428 965877931 881864451 705664100 54806599 968183591 139703761 681788853 212353159 165146957 907277467 818515362 874701493 963911862 777726665 697320271 784656671 686916047 719768608 842138583 670989236 684885842 470316397 254263071 990718714 691058534 689304959 813794547 705963046 664360737 910522400 935490905 446530924 57033035 905472181 280063876 426571108 153969995 378004209 83460910 814287733 175914801 485953555 991070545 734376932 898136669 592854362 983402872 319747898 277386759 184827752 733929156 826405787 693466922 472831765 841243657 830613471 699624728 350540575 880997578 966045494 933040600 883683159 962767149 949313012 868288553 217712350 321624304 521618475 954257508 875891235 12321215 95557211 597148287 713708647 769407955 525445633 613175769 254489269 779508511 670989236 956278971 13002725 673882893 440719334 940956038 846501804 132888326 222308128 888435250 94018119 307535882 625461074 920821401 692875973 730172767 844220818 723021882 290920834 744932594 980071325 630132357 345102237 484399065 761933838 339414478 860359543 447023516 742423113 141628484 896985870 52373264 927329915 812064855 317291463 319059836 912648928 803382949 740556999 71034577 166596638 498911196 713908610 955044538 829351242 97389331 751487435 394696632 558053966 539832103 201415834 892907338 934933039 633820860 735535649 670989236 369607696 274309008 492478106 497298156 88826998 107745304 332020324 908055656 814992217 682865508 889818691 315499104 724081507 830635203 897850716 985143232 993886138 153532294 329242229 796386346 517688891 941421173 761569853 842450023 54108230 12511406 399177237 169660019 714698125 683393404 158830325 661880263 946740510 404459671 979419455 193831429 925375525 298017020 738092554 690042796 19298426 384529177 956490571 368451420 708695436 929496471 414982160 758025944 286795953 707449107 591086890 786426950 212566290 575660873 644227597 99009322 806783317 753733342 740030810 599194510 704553862 825863402 882270241 512723387 444593295 736846658 922851930 141802516 821517109 860016575 901907799 302392172 248215570 450063998 341603610 67811720 934434439 578821051 576730889 214584919 466865218 680771437 331138832 341408321 70292823 631806610 34425821 263872759 205410522 270207079 912381414 284984145 79025782 932668132 784675511 691664065 278302178 929752452 565526084 10351991 590645267 506238908 239509434 382355750 386459191 493215990 965731048 987843263 836241708 19119426 306704884 831742989 418442915 854748675 643457570 677457817 379608353 504637918 296409668 383607875 967031339 959735343 807635414 894852621 314860067 306935423 391966600 677137758 378275282 681321677 715775980 447013072 24879779 205852046 703118013 991771672 778196176 313673062 674560285 20157161 268813809 769402202 376733756 710866170 989802142 700690427 698798478 63768333 707765515 742381398 284292463 819213768 799320763 896625437 814483782 716781497 905581423 528129000 529266188 69428540 830034933 381823484 855178810 602321427 722720164 964336277 696917053 444733499 901036209 784048861 870138152 723593033 833558407 276031697 703594271 706788682 253815211 701307260 734362929 583260644 764509192 685089468 755184972 363534796 260363956 728543198 721055924 400641210 197471835 513002433 820321628 489316388 897611640 401768471 357219560 586018590 480176548 395175888 942534918 189692150 876707181 643464015 66572463 805544739 974005213 603126676 351717671 623100005 846537641 185379612 251097952 11627088 857082371 910786344 525383134 514615990 795776445 589541989 991976684 670989236 681633748 229145653 535434772 701089794 456911856 821908944 900068122 333989364 734905051 374838823 673043678 802889990 673538178 497276480 531281558 889712680 694136948 345628801 815444469 354689535 614476798 729738774 573227403 386066300 866940767 701894123 917256652 536665474 202886565 90310366 470437674 730726339 584367014 921568366 469734498 724822271 71310632 916995478 812992490 222989500 283155405 539937807 180583225 935283415 366482716 53915887 709014780 884476512 292579022 547219443 935832146 919174540 692502621 291514761 625096184 493934139 437563020 670989236 872330066 971664396 614073845 2202170 978931511 503766368 946328679 968251553 225422105 998576726 542467391 580517832 491183658 973620667 926983930 227892272 441808604 986465824 929459559 997119862 789261364 593118284 118428808 988728236 717798537 10744503 29650859 708924615 882244542 304955904 695014536 588634831 767979973 858665143 696906695 368187684 339093370 485199032 384795575 577251470 827178972 980694701 878970766 11720483 750664072 102340048 956731951 54381547 916974421 927581359 828927615 292296768 173794982 928284095 694498192 197844773 494971226 248690357 927912587 845286571 308881340 708242440 371764931 187743795 477573283 209291319 349165660 941920430 846898852 818400079 952087543 960034828 201211133 745551863 237708920 545396177 759441326 213562132 422681012 834344678 983653602 581879802 505549540 881233329 582045394 748636483 903635081 420640766 270708343 720840412 914640994 476924179 840029864 698906786 686704501 687196470 423973853 882435974 62441584 514690276 110927688 951185335 706904954 853466061 670989236 736414805 580099766 813857859 698640085 879629548 912441220 392840554 795329391 981564535 961618229 551011971 968845334 54073709 314656438 519071193 811387459 828715014 789439679 860918770 147575988 543516120 42953402 956902450 171907435 906468165 623662124 710290983 764127382 947167996 21477239 137386910 242603398 982184619 753809293 185406724 130944379 77669656 618795460 881830548 933846942 642813584 156598700 623616459 691935859 50874853 404156850 382169509 717759247 781179314 751027088 375972404 962009759 337506381 899172170 664324155 186852670 306846559 551248518 619394075 742689379 246247038 456960675 223876257 576736428 762334617 690409355 867930097 686495774 805969936 378553875 213889971 733327429 897951682 213948877 284762814 875536652 79191984 298448079 645687312 450949003 849531300 611770339 944963897 859523287 934213464 893576452 309392950 585623326 192422723 917844682 572351169 892995460 874109251 725005166 817876912 621431013 276335361 324526517 567864903 196999843 848027953 448877473 762429755 868648640 106478209 858612788 589122501 28074865 843850270 804566480 910847175 945996868 327802656 679512300 959489462 609064619 947317871 918683715 826226608 447117052 659427351 830553572 720329863 681254166 821842941 875619081 232775584 48849734 406848141 704967852 649876727 779985836 438649624 391258960 107986541 576779441 461824377 563210953 951524106 6563786 45716183 710825622 735122159 354365719 363471352 982721874 130493622 417980179 116562541 365751377 953710081 270759325 695765095 862589681 633461924 670989236 547298505 830146862 202486533 531715519 610944193 899585136 670989236 773641596 429235515 162208705 821703825 646547051 99987095 827548604 686475737 670989236 822284301 693164315 801142632 922001121 680333328 930264326 887441039 127765064 51924467 963979237 200763932 679399143 359529393 977744201 420801522 369674252 56011775 61444506 966560565 972349971 757613779 731188513 670989236 455680182 252095349 934918910 526256785 758930584 269802591 841680915 410654379 890307767 313317914 81963851 179416758 897935293 720271942 627335418 844006603 712610410 717497669 251898354 784515888 215262787 833501173 943625251 50768785 158774673 897008649 11643195 786580532 582365356 731481808 674255478 793817819 707843072 933400536 671105181 934845458 670989236 197919051 920696830 515970663 648219951 522666451 765851211 430564192 847242581 808720967 998614186 902950742 292229886 938224275 719847531 873048279 708262109 834865675 903901422 97739997 730782019 96991014 692625606 729277377 842658884 478306333 593713089 765545748 423577934 177561813 181484305 447718939 940110744 564876621 249355340 344449668 605887796 966392381 710942015 857713294 350657457 902778103 696232320 397485850 263268956 294430905 789413476 269691603 655369971 557479209 815823997 981488460 757328671 349194890 675052428 178124386 257289667 828475076 760200437 767037355 326215406 834598155 527198506 728715464 865084897 990236011 936221052 708413458 552162287 743370048 311895702 725339759 361981578 799085399 829766108 536314187 23571460 927765204 832514544 463486567 8300248 670989236 569716051 766442082 144747185 611134408 697395704 602914678 961274792 289236378 46436233 144832114 61056941 202623907 768802419 682876044 57992706 755329384 914350352 435278258 735748643 294005371 543598259 576770543 223528762 9486421 64937608 826815563 639645452 224162951 718509931 633112260 897454831 632832095 893313656 805662965 99073736 890317059 1898669 69317843 987856243 708338212 852340012 738516718 570382311 681521131 311797942 264249667 565776169 680061976 901577220 898794976 739484428 632330580 439972275 125260533 506913615 492373454 527457990 203951046 875843972 636364654 838621215 306837493 206406822 102028117 504871305 810141231 29897616 579090616 331799098 670989236 93603490 708025505 590832055 92712015 760723434 534312798 185922525 900694384 936868703 953048201 918605736 973970086 313463771 793029965 716152090 715071523 186384611 857286922 634259307 685328355 673107477 241030369 996036777 238004630 43707547 986880780 739055733 838906425 139249764 644131322 704510706 767596539 608419900 711541053 920465918 97189990 338576007 204345449 756622769 200299476 25272206 33924292 984173183 375915052 7138185 953432821 494305120 766330438 71016056 358311080 803541102 670989236 891975941 920544340 849920851 509683418 932647419 767918830 379534041 692695417 572527266 42552299 841920042 928072043 722196309 535823457 460968174 429301029 153505175 640885389 573007345 762337563 23775237 764718720 996283105 253357113 71747877 853621586 704019977 705158272 873712660 718020050 692101743 948984610 201026258 347081264 601712251 791081130 91864349 733978838 261696174 903020211 936537366 254134727 863080264 959749419 53928936 687968198 482999886 441802566 620901844 715680004 285227140 684386318 203989934 795530703 851175925 535643080 965357804 906724980 978676558 858634169 281031 745396290 767095931 582467046 984846848 39493067 980280371 131006381 132223476 582583669 991058482 831257746 666972636 503565803 814828904 764354682 648482768 792551287 425466163 945904125 427963753 718355523 133232269 867002282 438312508 465592203 688889064 538499837 176203023 539428070 420168787 875661887 929027194 670989236 165248780 795238711 23653521 878821980 425159738 642628626 232180941 293769234 770824332 802682525 839418255 793738856 391997938 549452235 683475386 113952781 572589300 998464652 823331927 722724120 950684689 11854214 579868985 566738239 724339999 85888724 195715602 934532553 263601790 670989236 617469879 969535116 866119749 557535917 913396815 607460884 459317008 532193520 106466999 37639779 923109989 909912128 692197073 891102612 677432143 575344787 909377208 190283622 822963263 785130201 750430619 209359921 922408534 322116264 756935359 516981330 586522217 854553500 259676998 343360834 68863077 998351747 373537970 33358464 836305201 826163397 915963841 462790415 509235998 442728910 661503328 503654628 269898398 22752663 767134304 670989236 163125170 193432695 31708235 444634567 688963883 879989970 35194478 691803045 901129002 981910025 880600610 887893919 156133329 101426553 366288801 887447474 805427407 319002602 437021647 966736489 823975022 490920447 779406436 99142568 965147751 26186371 292038058 263268277 755111016 82196097 116929686 508113547 703736982 899809480 624590649 857859880 410936923 982054715 593915695 882282361 819567105 250437912 811762270 789496850 734625846 944061147 954890107 916836225 807689495 269689513 41523202 990645658 170482056 561521271 778175008 498644898 13739115 997015793 914693128 141061471 866375855 347557626 827202790 241312812 888105117 788801566 82051046 367584666 53066530 751850274 448228573 627097362 953327220 845919371 999371906 104020998 949270441 924647952 623923576 789725980 128232332 676366452 47512520 864296401 355116462 585812643 336364861 948848304 861367945 896725676 79120622 971880606 642004697 840214838 705284926 440628769 719729179 378534514 814173817 719823061 591373275 153756399 573534878 670989236 464779278 116368727 906320123 675255257 139711195 93242522 820769609 936154788 627244240 963062036 660925358 441189867 879493455 908418047 995682279 92119542 899077877 700223717 127053992 664188177 104214854 850810934 144418488 868555725 724335155 990057405 588603115 965817429 322807882 109330305 33858757 664596796 627316057 24947573 45419215 106780856 354081801 828871886 542961038 285410359 45412997 603620538 517733271 976661950 727280285 858460981 240015817 755653815 752184096 819553464 94294372 571995283 210667317 176572364 755654652 793803254 965482135 719400730 318798954 443592012 871797189 578048583 927340611 980501681 690845317 305688260 776085786 738163531 676402149 401225368 349524585 530071314 693247065 519579949 869736839 153153188 870841562 832674341 901705398 758433616 582058458 435048243 498646953 909422493 878348940 798898372 880923217 702723444 966428173 886510002 145326986 670989236 13337299 66002967 697713283 874922616 116213905 709918732 951045429 265770135 705211224 546766389 479317682 950192025 950423434 335293050 168906396 949395581 915939662 980731596 846056097 786907535 786386615 660090232 729313108 688143690 760399191 850633136 914760930 910515942 975257242 8473174 614241567 674474096 145391517 670989236 248370215 890333457 650449400 329488570 670989236 838304888 843955680 495395626 710797011 798172588 670989236 275879291 714550033 718098790 311416358 61495957 812273726 717526514 171510668 132674475 73396129 863833090 963166099 85419912 936565933 705239315 570309817 899896903 779519303 594546883 567966145 888026776 625779837 132552242 928457639 802711446 366801744 871585008 395864575 962918787 374825653 954359075 80399752 553801317 552728525 386768248 967406071 245560219 453607671 741002382 720867855 165693824 290809924 10954529 944096864 770841585 125582506 900965739 485069278 696423816 563045313 549743789 56847362 691494563 784771090 305954461 127816984 91070940 718440357 676520693 685759635 680514117 564838861 222429331 672236601 334044114 632261660 701910125 960217663 511591134 703211573 808651466 787711950 682747079 968180929 163283624 747528961 499988180 93875898 982388755 909093918 221785644 421579405 936775052 995129943 449605935 946717237 716611289 24740693 912238354 226987914 887636808 877714603 898210154 96120331 657802196 186793533 274511957 733217093 781690850 833650027 857245436 367858793 185395391 885417065 670898791 192978557 392115422 941034162 511642699 756276935 344743138 434601126 556435878 986109406 654354523 632494619 527669785 977927418 827427349 818538713 897695632 825941225 733142485 772608290 286860791 163847322 879237732 742921199 908160301 670989236 520768920 463205526 916932122 378723599 740229139 274625252 897500934 73203284 755589315 630224850 976042883 715327784 518434747 121500870 897466503 965232821 253009887 820284767 992465245 98142393 179138367 684001740 304145615 712043549 949769734 441427139 73317295 268235762 401797131 163159109 209646698 479555520 925341648 707615883 336781764 307981513 601270990 858200177 60107305 911971659 520032638 682960767 700474627 941010478 795241924 735625934 878678665 798424858 468154090 271842990 531086120 390972956 155884867 718745366 412401685 962968536 684540643 957338453 521327884 868739531 889188320 697377982 644766096 737178314 838193800 672058270 546881154 434093826 740623311 971128608 892414597 671363402 17432882 724962415 695207643 698549306 315842440 833246900 404146902 36563480 168979422 880140123 433871201 924130443 375377184 732919799 905930470 210448822 16899801 974236568 800356761 187786560 138309552 873033567 897349781 882441112 748790599 714771285 374072017 641672267 949223433 815918578 759473428 73553047 848459463 778706086 385690636 178386415 578731525 904159407 392397276 510347290 767066175 348468277 137177434 741240614 201726105 790794767 367078126 142588866 980319403 410168459 319732690 824978960 99356362 461758988 144925764 92108692 734296457 414133968 429348060 77239510 337406628 718977535 242389482 467461944 646491850 141186417 388319797 993071147 955023919 823214051 568294661 916484505 657652962 921321712 942937321 562900591 642113631 671154860 944297896 167731194 628398433 546155918 709829865 947441696 881396418 676383931 944818067 949395073 693594362 994809161 977496981 454153114 850254005 300295432 3390529 374200150 614365726 790463899 876501985 198851628 887842435 964907610 735301431 203803227 381208860 454327685 886073108 918973923 347825197 716920720 826278408 539980175 719245124 739769773 790891636 952655697 929078198 225612058 14770172 827558450 379353011 178334669 697741261 141830647 382385528 721748458 915433569 36734943 142629962 934661848 282403350 922791249 188223327 947130187 42286328 837187059 206109522 226710446 876348647 379676882 404179362 908292779 800479997 921488651 961772467 885375531 81785573 894026239 745076036 480591496 819699002 491186243 73379413 445416336 74157539 51995060 909442172 916926348 857502235 876979432 733325068 848428528 782418328 298982825 499007887 828347024 504897617 709705686 760849138 876341756 986381732 299706759 870931189 499927948 407658635 692017482 635747991 923525390 812655506 194651683 973636135 530543381 697340209 847831639 488660707 814981406 79142458 29287792 611638809 301628394 576261654 702638853 362000750 635771096 951540968 121382870 944181874 469935516 109812003 461641132 697538039 915158831 255813746 774894671 844180082 768930061 950465846 183890001 468505890 262057220 629250181 795674391 987645784 768739557 115453867 686832736 5685845 439498589 875339257 722048986 398216911 226823672 755813702 788696395 605502625 934880945 316797143 614305526 182294669 113406102 970281625 39086061 945185392 38522831 42857491 174064289 304505338 928559770 638376070 732907270 500614568 834049980 273485640 751704278 726596489 672088175 459513873 796182351 989315591 587442573 790303872 326982750 784461478 375295179 469945886 409019661 613323126 818711210 312008479 696083030 696228377 867933486 140971008 437150838 918046893 687154178 588171059 115200817 855442883 703983764 971494633 227032326 359971467 22758883 938297845 298295428 197220471 922629254 212080079 279108523 732423872 778876348 888133228 216197588 488669566 799355163 255001108 67663233 854354779 866539411 456005428 962846691 731301772 111971923 978922628 752014676 895563744 765540994 569672403 356097796 330519344 782031477 510324753 720548493 749691353 496646849 330696785 18123839 714986535 253312945 936117488 521727278 642220475 507058202 385893278 882142700 237007737 251584496 378923408 667820990 916582592 346839222 240935336 777036692 837022395 988795210 1229164 255386826 772487598 636540124 810907852 908735523 682832983 846122437 510115834 42877499 314461121 437399596 385703898 256638434 758629886 847542916 774693344 268989163 963201953 618778438 998065953 842924927 932818249 385926992 101505131 197164458 630518750 524389688 893429088 342197377 801043817 840319311 839129331 677920263 433967268 980924310 59265489 372831822 208398445 860236441 502051419 753626353 872169175 444625818 864553753 756470070 211120585 516029553 704575921 879545569 87321064 712741307 903633172 85514962 490625616 440607601 105823901 691219667 313621090 409585395 389864365 244858472 707761247 593530278 54239572 348661029 773340596 323889376 983839899 982800427 80174756 735319050 590143423 42843051 588920002 762557218 954684856 145217478 670989236 822690555 670989236 890252719 781128327 714972004 286530994 425235362 925012387 410067448 773032281 3535967 314822305 765673025 991242030 489155131 678079716 171799410 937146768 988835316 43675121 782810756 845730678 941949884 988389496 672955104 685685787 288689576 763883485 959788456 751126998 95515156 149632203 947727583 445474084 717379318 334709643 542127734 799430351 921941434 954264572 388698360 719045162 830433016 331434374 406670805 799208048 60642924 48465652 358598383 778176762 211346658 923890351 767907147 878602561 105447057 908532827 526006379 511196650 841301310 807988590 811773978 230705567 800816384 106473104 940778086 834542065 958528250 197604401 684584241 918341133 886399552 834857073 950559346 584301963 826342490 374264868 85131596 994016085 964466524 597599828 127273648 805609071 987017265 55363474 992933179 854548911 317747583 92634923 20047267 343061370 754315808 911534223 849253191 848870757 930803696 946322463 683552179 440737003 976573039 927828854 760125676 380033381 214359593 702162442 682799462 171534646 716189245 765355635 681349227 249135721 732824697 851501856 939752317 904580854 220170590 729310717 771967119 768218652 871345766 322579418 66497206 423916114 599211069 785645231 402536462 330452277 848705332 495708788 209523400 155358876 600918651 734117660 721723203 928449929 903602308 956303681 898508406 734833074 708531082 912005864 544384250 967983705 133716885 360782524 443149498 803383333 287303161 754110594 777818871 160472364 873978278 132396048 683256806 274093359 88512422 487569300 765001920 293144496 39137684 21700602 768229973 479586184 785531282 264418183 953153561 799551829 670989236 728263983 67011978 610078774 324249901 4331336 285258601 253470053 190225878 481411561 410143047 52876043 738495397 335562573 474683118 734857005 859460904 998517386 579696433 612446409 43604867 43957144 968581713 631583988 525938775 360375510 656895232 804413648 864729090 899283631 95305961 603314795 596172568 695778046 915354024 782570465 886261423 700792951 703041320 537673035 897566021 103068957 97033827 972850341 776569070 637896797 703768018 713735946 690016120 234697407 3949348 724005895 81449000 572286907 378409223 937715541 783169791 998791624 249905299 682192299 294027974 40874882 781851058 770389036 329953537 7235427 756753655 137572681 500231970 680331693 792136112 12789621 777301944 818095748 998358267 668024272 592237840 851633009 800933173 496677838 179165009 412925601 694312825 695380665 860953233 277530061 681367991 983591710 506729340 672644856 813341660 737208370 888464272 755955160 342936936 914970973 906937523 851901991 618901402 145548562 9751678 787420017 647779097 488863256 185326965 161473982 877543180 157271327 46791901 799306884 746162583 108863160 984726870 984675775 828944558 791339539 112720335 649725005 583927803 511528055 405361613 499401977 497114312 429834271 638349880 422773554 775697622 941626159 247736257 996027736 757255819 825701882 752755698 448398855 686576470 347666916 622063484 568186798 564080164 322998994 991002209 227991599 266957514 114917807 576850352 962871980 610307399 806184140 809225286 464832122 622827737 436642752 784704132 982014795 815074567 307538752 988778802 833253722 692844874 859760256 117313106 455698122 97822285 815867734 330718808 457210383 835521722 168910224 953857810 939433320 953995850 216003249 679487799 295428111 142891295 154869356 988812655 413767133 778479885 981029939 309918496 979828565 251677670 537254875 183638695 942831215 968075586 438920745 664176025 796125026 631045148 750410311 159288130 720536543 881275160 695393216 24234515 239619010 450338426 564905483 502585095 664221594 686831435 303329621 953296571 241161846 534150293 950990790 27261704 158986223 112181599 640284232 674256623 220764369 780610417 9537084 81832563 269495453 903956603 739712848 467380854 141911060 618766476 157406833 199402818 626544582 923956304 722036857 678812234 769909811 144256041 826023504 800410137 684216445 932524148 688475657 493873656 124084501 724650120 354651505 907337191 822749431 478136627 840090802 860277017 45282044 960287097 191248258 458082686 561941302 430932799 65410399 839516923 693172749 835054759 947156090 619946157 754302476 718211711 681492336 711636626 147070037 824474418 702078315 165781242 512954123 961947575 349677839 874674990 926221470 107476964 936147592 749731887 522728920 810759155 278573056 930036130 946492014 493318551 952359415 875508249 938845159 794353114 428420069 629170439 868520593 531883673 916530050 287839239 583889380 847997935 877615327 685350280 901776992 792517748 733257751 939054021 795980552 830929383 359539012 9142320 113951421 945081146 697433723 283936332 583145124 626947463 277974797 463052491 891176421 486430877 713059789 911333813 125620307 181095171 942429734 441532135 701381939 6561384 813255543 834432884 439870341 99176635 587128771 499106470 691092127 351788317 490349700 996488224 841044390 30754329 268267615 100457085 545548618 58388240 878290998 288619670 820650459 432419128 15079992 256710469 758209424 852776858 403447684 520131242 608142879 172027065 508086848 872731792 603069815 687279201 981239521 784477723 947586739 97981239 234655768 930825705 311489518 929519645 751443790 549735969 459208892 950211173 986609934 963758510 20456825 449356004 268776121 109395773 81302527 864365710 550502490 435153161 874708460 658032295 80253104 579041314 970911915 944859680 976479048 733854096 789194692 157053309 286204728 626072229 571137421 438440910 610022553 746610528 96281811 803700821 188737171 91356582 771623914 643644310 530104009 981581160 702924347 69918150 437589251 954656222 734503338 93793760 372804489 187967976 45444055 950382001 785819074 189087660 205219943 339603155 954010930 777660148 918458005 834593228 919530750 905891954 149453947 855827388 897613733 901449969 371987089 114586222 979608657 768054004 722028901 549763075 440955163 834659918 826595787 871265503 766649102 711911418 277679863 102751785 222170430 34430055 728318350 948521323 705088443 526369914 697381599 77411053 236669158 630576731 819892484 79114055 945640572 435558432 55586231 423856714 989489580 467102478 868075088 298669272 179452800 966198775 980164170 700799526 51738383 944482387 996183917 905207098 14684209 936322206 796615801 783653547 333452582 694696216 902875530 311328510 812069750 761629869 201050527 525456985 948499653 474392186 65648459 789937405 196206559 679936234 590849065 929030284 37650598 409553061 628017675 266280378 693901469 744050596 20754761 812239096 990724737 508615368 592120777 364265797 807850373 860921704 928150353 247874726 142557931 759550150 558711036 544721369 824333027 250865703 407909651 601814862 101463442 8037037 905059712 516019300 855875172 758600587 922686495 257790176 55780713 940990444 898792116 385272461 927696403 324820509 955005001 569064375 547363087 399344843 800626975 216541095 10046045 745910531 875283231 820628742 207032293 843040010 684656847 793865865 638488664 913624719 788747603 171929650 819723220 650568724 964684153 895126017 597692309 411655654 720440689 828535241 997576755 503901586 993473656 969797968 161954440 58218379 110749880 902849746 719749562 500359863 928241938 167554654 319867027 753238263 810718098 925559282 672096997 156028180 816360849 902138827 19934891 717287632 583419251 860322217 929785394 171806731 341183749 89768002 227962670 230732564 10782164 101595460 714318579 952297151 706430788 587560359 810974094 764861338 600095352 111254423 368547782 439310523 225739064 617512213 547341728 836383619 766293270 462489835 949344553 677024689 866022491 42321337 783935445 678550095 470471176 220975181 982632660 309387265 566173523 650641232 498809755 474417024 592495439 585347552 86708292 75914936 234057253 766788236 760066709 973294602 999348108 286395493 860756726 925875683 738220858 533560579 461979524 868217744 813568615 249298485 246529501 617029345 366715093 538856294 949501732 22637910 171804501 891686773 452717747 85816860 877080525 100323878 587089304 872098211 818573381 608817473 747085105 554408559 35026006 343825953 653815183 735850854 808134835 880201063 780326596 599739821 763284176 677457670 811447594 711784981 420712121 277190505 798982696 601498322 822980360 579873625 288987690 773153412 891586133 425192708 754023870 27606864 338014882 411088629 291177222 58139934 827853287 957650740 317462201 58134725 207726815 704275485 244003785 742169929 823055480 101861214 361499927 869473225 143237530 783301678 699507318 304399724 46411893 49898204 983246789 531552382 929326119 698718705 751970828 994124294 907380923 759953304 634809108 548056823 549616252 197800315 452737470 744259479 857047881 978042267 478578344 756496656 799663755 532749652 6238949 883439458 744237587 492050732 145614936 65599570 913044518 908971669 469205684 915487402 869248946 827922933 51580733 440952697 743302005 890783006 638719499 903161521 912626087 648298040 508041735 742187627 651239281 163058062 889734346 907280456 423075837 921852161 899305247 840529137 400778707 907257703 899136776 304117375 441841226 794340357 621322407 379503615 718718255 435152967 52968056 723714700 343110337 557067817 519413830 669295203 10936961 813295724 663353536 725067997 603567681 263402075 448994349 963280804 564451647 482880931 322396324 956658822 911739169 105249295 710475271 432287833 115272225 154023916 316697563 916143204 699489878 302294477 528794730 81415139 457803865 247994243 305393207 90062498 996156689 416179624 408064593 739402272 859290607 431082314 622192030 579538927 736746624 440915428 839157940 245429638 659454012 418137182 271734687 447970445 987430000 589108807 583469296 996623209 328499604 869335002 991395075 965216320 689438846 151690758 832698240 211911841 876550788 123578640 623620806 901427411 907319052 886569749 997705243 989673557 659476986 738802345 937138461 768969118 650097376 126878107 105655334 524753176 929144974 811153180 401610477 667273336 940221301 527830766 733332079 542548314 623930013 791388496 892118426 897994305 875443233 712479710 714566687 6334924 247546791 928307650 344463189 505995267 187360656 443175849 412563579 959902707 749534656 101487002 212675336 523372875 658135736 664255610 805162768 959569142 283187182 399350483 831844695 737410178 746145166 16019120 151481682 649409296 871177081 631553475 868007362 336953750 875447570 134512057 468788543 971777165 703665385 907760409 823874080 295870032 941544457 766369824 730880583 271932943 718691910 535501500 685828862 300305249 916091866 469513171 847076754 727161922 98429350 562597221 856723314 898024619 679917240 212226972 701312239 704075758 989898703 821031751 892286004 950215482 739506339 932940032 729708241 75877310 226193603 353575447 996264393 15652543 350163055 885837440 267904623 500958405 815858515 308737143 842642792 307434437 397662402 837106710 885333031 858373217 63742200 573911211 661389836 611894712 659045398 788100376 2114703 448567874 971389059 963711544 577718943 358700962 559033229 811690836 24949791 844846134 794310135 782578207 263599350 675386285 808718780 773127179 822452307 694292876 519717712 795978341 664142721 297125753 670989236 821494243 529042887 692876221 430025313 776850802 378973499 533669153 280834362 640178790 964181787 807602581 734174164 996525818 131694812 332242654 657897692 227776243 774567075 741656379 881702863 183102261 901514022 122456165 775970554 349829188 947347641 670989236 894804257 144920085 694799724 777133369 719061945 11691114 898043789 863673564 531324274 790773685 952367135 796869258 919253024 399781579 869809594 711401127 881557570 394447690 812328834 682164258 32743789 566262745 985523024 93544092 617842678 735874418 880858792 598689745 596265391 997656629 831865530 852542349 408228406 741285574 483743370 790041074 788335334 864959237 14752091 814552568 758352610 829020535 990429413 925460468 824466993 385343297 937336379 817555671 196874330 752264250 23105749 543686164 55478597 236202775 677808437 939565234 125293968 109800974 901395841 154429390 694760696 839639444 388666610 592594035 684782069 56264559 672361825 975211660 670989236 392254955 539213080 911797339 978939340 992695772 211619231 836914655 972629095 1874894 806405988 827412593 671441769 304429297 593277720 498655475 729615517 814052500 750318203 144053110 219041074 979066229 736539662 601377758 777161271 137405077 679265193 458165995 602408421 246685638 913192295 749796984 109742461 168612278 867946262 859731152 701089055 808289588 825082900 791523803 891971796 515810810 372472996 315558238 900125704 957982002 973991540 670989236 430716220 585262662 257433302 493368041 610667691 796204173 676743677 677406555 899129060 578660940 36853467 677168645 670989236 939062967 916387763 999652342 673496956 444214046 859421226 360554698 147519745 350234461 589152995 268795134 396927803 862814335 993816736 318165829 44186670 551565587 548950098 152871135 482982649 458518338 971178284 37651512 849890317 821608003 919454990 286715409 844308814 434603153 491247154 708292920 681547371 604256849 50815391 597254211 707741856 935208065 430678908 812714703 259274034 314870986 925885074 758253039 306637206 35163263 787904974 992359436 501176016 475433710 764759366 698492439 293412113 860563228 418070558 215787588 957236051 873624205 671849724 950465863 569048891 926401916 8706572 48946592 723385753 762236450 671537377 887109722 491206708 836055954 212497445 449484710 599662643 210409568 295804166 588900029 488872886 743815162 114846214 538815643 891178585 866785581 571793775 428503344 954204899 144217786 618298388 727756476 959227739 771362309 999838345 87107751 284136737 856485376 814816145 484861115 582346715 689621583 365265422 416512133 670989236 417463785 909850715 539757245 832146002 921729190 492567545 682023472 107714611 237714334 977609852 673953516 670989236 872280710 359352075 99392474 521668287 915713293 803367956 229801014 239963953 114802162 742815905 690174760 291167227 924192034 19579900 715157835 719535378 733974880 301110426 188365332 290084683 626836070 561759726 195299916 224555061 240569482 932288012 670989236 197122424 200848180 826332322 913170357 143749020 839016523 966351425 953155080 909316137 723852410 484699799 663240047 787003990 940148693 349312028 982945294 710379930 229152267 662729866 422388503 978280789 981841058 882534229 709651346 823189514 906756718 257362220 871489873 354259600 124693338 883145611 190456711 898069339 760682203 219221874 894136674 382703063 959475831 779462504 134927784 69964412 814618838 952267357 736433698 501786781 690187127 871305733 872279726 925171236 716528349 616783234 301477085 441298553 872846067 244238241 680091686 885805039 918744569 978942285 495951860 498055665 913355825 448019793 25041252 782402824 962657531 356002977 948980013 362719560 934992569 973799446 502574644 73098882 885647112 502195520 653067676 591203656 438565373 482914792 980747902 676676438 941633262 818577722 239216481 26003677 202680649 146560318 888559667 85061675 18134465 253352764 809159980 303965253 89853094 571507230 547347096 727105013 587632427 36123659 885980905 865385726 436974988 220184895 717790813 707101398 188217937 880985185 850368534 714008185 818684442 371242230 921994362 827972196 607702490 992225968 980858346 670989236 482197122 858557188 767659277 742716027 942126464 422243577 788631504 928831598 541455785 614686042 677517088 824693278 310837266 428322646 441070304 345959948 999688400 837678219 206175889 67260304 391363415 326146611 261307868 811143628 16669244 743934819 979889631 670989236 15780518 162260874 984728739 105184415 953099719 917346883 917944627 790948156 965530868 968280334 677237940 758922663 429227 170203728 104287159 65521077 454006649 600867626 3408187 932734889 430683369 841952974 343147726 92257451 258632372 373581512 218004275 683745761 733203761 647964462 168366795 917903180 647228250 670989236 183808087 948268248 679370075 375974435 619772607 814975208 315085302 582024531 514929185 250414460 322175174 952041970 10000415 131805615 9029919 295809573 394314779 872006533 913000377 492114118 796020659 637303614 824695804 914701570 680670525 164730975 962157301 96521849 879879148 399974819 883139448 943151806 862829063 823701470 416289729 297397353 417210370 818488658 760139581 641859595 523528817 557155901 344037651 84946461 99854445 975008260 246751676 343927795 631449007 216396918 786013936 532504852 935360746 789592282 94867038 963135381 760654268 88965680 486409269 802767666 823451241 197958317 876924025 881511863 715101372 642073782 679947782 874884562 806281801 274111479 989228511 173268666 803683286 24366236 592111477 729780151 832912914 81964916 54270744 960202429 991709874 684687768 856468289 838614766 674052432 716920929 851322927 535543118 484444647 318181831 61201522 969880674 701000580 667010895 746737017 676904722 768869255 149490026 989336196 427226682 916420145 662214250 852494069 45602792 966166571 841239428 671715719 885260704 396317486 77344919 391224076 790338522 715753364 954258279 719413453 997398173 484589488 949355389 795252754 460935717 686128661 279510971 796512439 833796897 101411637 814275633 61725967 154300299 467660139 310607954 555802229 613268830 837319801 609655859 713515760 447613531 967986694 122202881 373708636 743357092 917218170 726952001 627609882 687483696 977408795 60437595 701218340 693696949 715859968 168290022 953996572 872302003 984310577 16423253 138018755 194894231 166827757 846615682 855928023 55543168 687452100 490549182 758296282 823742505 765879204 400826265 999780915 253925913 785724287 626705156 677472655 972397828 725440309 93168803 767748669 619198423 558678202 339508306 462573202 429163767 375896807 679503692 200367204 829638505 837948535 111114225 879998244 88537622 725392625 501313975 701962668 299421465 434647062 749189957 884915152 875435255 981646190 476123567 427942686 939609933 219754899 237395193 772861648 687048980 414253713 779718935 974001265 341736659 821518690 365791218 800042950 94661299 87050171 758404666 766077171 770428938 979603486 255177502 262181972 263383572 313660659 940907494 380958539 998093679 991064559 551435013 344067953 973384450 845043941 833182497 482697417 997818350 531209827 654223967 895205373 424806315 560369189 257351758 391058472 664097111 910129077 640447718 918414593 262197754 650165227 104112363 986895086 955990226 722989028 691219451 387437985 478991185 504769865 890277486 814096862 597182874 929541220 710158443 816099215 862817840 670989236 895376921 21190467 892861883 961646668 443576059 741875866 920458501 749216397 412644723 142615727 718264802 946500801 879484293 826257651 13670881 807993039 428229928 368250610 886027713 956421165 132688054 763127138 107857075 424704653 257152426 406246114 767489619 186672314 508164727 749409375 520006195 61751995 988241974 686690859 99995275 841422365 443175985 24365986 722999841 581496318 267510366 864586879 885875200 720223125 835503029 513627152 159820816 837339108 773828589 913955460 26372770 617528917 688677141 791350095 147718510 868793715 623067194 592016673 667124725 908767751 751252427 961841406 586667628 785789682 432966542 379855029 930700595 891670888 975768545 938195318 660515281 842059237 865607604 635418513 59295557 411370723 739989759 326736559 63157122 996913708 391390156 994351055 617944311 739335745 719837203 555641033 420971940 791995213 981907726 345783848 18144392 592650355 193784371 38126816 127164283 310708114 893207339 906593031 20411127 670989236 503808079 866368322 834291260 425351662 909541544 983365184 264687195 733801943 825026277 400632730 444735327 222217116 69587144 323172596 684498383 992390941 918997049 916775691 598840005 83417423 884199949 725315544 407896490 918095577 581609632 118757847 763707783 18527620 675704447 638043995 990790223 871631892 109012331 79745034 335268896 39423737 638963537 310627864 426089180 399707951 731540701 485372102 889271561 197368684 548631711 205195275 587635018 791310096 138426224 514959969 783779555 351392442 73831105 616327581 318178480 670989236 814428965 534362672 189160228 694514817 97154329 954259169 752201753 5818670 956719143 989037444 493347087 867468539 719467493 941006370 849535787 201226991 152403830 903415313 935281453 804199695 684725639 535082359 852773532 586071385 640433852 805994599 997100758 365946395 148956953 873662956 687465589 917507568 684808217 670989236 409912062 771396866 899277927 730394203 37214982 481366080 636134161 216639364 23490209 961766340 985585123 894218562 67730351 903014787 370313131 754854222 704788043 767529183 814785720 317592088 782443606 996243115 503491170 529124525 152904434 600475275 745792863 402172729 709176328 860583234 193166668 282658905 885719949 629998340 308492257 735004102 114572587 849267799 729606990 702881954 14779730 840918113 201715762 796460939 24140978 259922090 539070970 670989236 866551330 584129727 593191727 594697795 704805833 249690801 536430508 20277540 554543537 479853366 910539229 414714704 571655244 707360648 874926425 725321545 362972896 939653995 709738001 927013325 456884208 16032954 645367121 515123933 22558742 494623485 381078043 871340986 693102045 391130055 266752101 803643543 755153481 909016905 821330470 802461075 734502923 777585373 522420593 826023352 883706877 706773757 426747438 530187668 78513741 427414039 935010164 924850745 316375686 670989236 788230888 298196126 721069834 944022436 404582117 880487267 925258635 157116823 845095587 275876325 270372140 261969127 225113593 794399461 772897965 310582648 708335425 175106989 992977418 827982191 89060499 277548884 809299478 581833018 617534802 999652680 76727537 694930733 258118857 281526206 925771846 947863 676482741 673730050 58518187 76076364 139414767 787562453 591229478 864143703 840376393 871113835 550303666 561274222 417687357 955427435 86777978 684240463 217131905 948904851 253023435 973334476 328726989 251753791 431562235 787020819 800608647 710478029 829775604 78284375 56611123 285252170 995537851 183253982 671209934 708341630 121854483 752749321 461276177 119956651 260911258 141351340 547518704 148565354 812487034 825349203 934547731 755593251 335866511 153838996 288897031 475079075 994314503 796123026 987281658 375605935 401367352 760257889 670989236 842705879 943878229 670989236 753360219 884598658 160130251 875498045 562596611 747918966 800946816 506752278 20449205 780684331 522784790 168769147 930936446 868618418 788664978 693911353 485459217 942200319 844452550 121418814 539877104 349003131 508681276 333025971 675120333 61845287 932545733 333066055 611744949 897455595 640861344 316032508 577072753 616436979 280584941 166335969 760415318 367994737 218089377 248249251 378278655 464464355 766377482 31718997 771783963 869834040 775264856 764423191 670989236 534002589 208294845 72627192 776032153 304014206 813387116 231595508 566187681 594069163 647623548 764420549 564127992 772739660 794645844 657701425 853932242 25230203 527643106 788842098 941787460 976345939 933011531 507537919 596829439 133759293 754053280 882022164 381334188 521720750 847090657 204524081 958459058 913700250 925683064 306123782 338072348 621945808 494045702 704266787 861839625 844093224 952525563 900875784 622132100 504865341 485489602 108465384 455928680 239465403 962604865 735964795 356825519 712895245 878325989 906358518 734305326 593405056 761246803 918312410 252201418 839324638 839806263 958505607 960888341 909884428 870071340 622883710 330734454 50322315 379687622 400236495 52189093 257345888 854831549 418364984 850514993 4531090 124767370 653278674 746035430 656410689 466244074 782971891 122349583 115398403 132897260 684907329 966189782 986562780 975414006 63453119 979106178 115469804 538602659 896121449 42980971 678220349 434911502 796563607 886365922 526156224 301898393 635488776 914883493 747849339 237938104 865666633 596770655 907418691 948285901 909265911 978406927 333468499 106486752 54973745 463442414 463458780 924568045 720534161 942458040 959360559 568457992 211133213 678835791 833854312 938458746 549949263 918329179 340837097 716975539 182396206 666065439 796094187 912254159 126463566 386402291 400772174 444849995 975667529 827176072 728167060 802077704 721302035 842409391 792291910 34813922 619553061 695822130 722352624 787345343 753924048 341897811 377206249 661761770 870942341 226127249 778593791 511162912 930933757 322183027 421838964 137703530 885182107 721765822 40783351 423181432 698423938 868188441 635409633 211781490 481927405 631430230 527206660 281735945 25288175 917252019 548213333 773276219 20165743 653789997 472502270 104072355 676827903 377518966 902993361 492055676 398546854 84048395 120857592 433807649 143768021 712888245 859626379 813142420 818052309 207985467 936809511 956261967 794025847 192992273 975203922 785114975 756482026 170577027 817460414 846768277 608222032 944609466 727134558 139082353 354826339 6106275 677798072 688526920 198539195 466231398 933732455 339414988 281390674 673364711 875160634 694280639 146418447 341919199 886823206 983597188 593973843 174848407 892209018 886489190 699595482 727465674 859369732 5443791 670989236 802111348 826205498 138572220 707097870 611788819 849845770 580809471 231747461 943690711 326798234 123825563 490749301 674478687 449288479 954735401 685111019 48700859 743756877 945135355 317204544 202636588 930004788 476074393 31828776 73333621 873775518 728092983 606462724 56375065 720913940 172727219 200408303 178658815 940329182 386918417 831803504 435775491 838549141 642922909 813072028 906795873 938296855 670989236 898164248 913356687 222893373 20057888 283265688 793850718 968210950 248399448 892018402 945360705 278869190 347098885 649987079 649269257 803925408 795679395 876186010 934349562 950784248 131913721 796138279 919099019 250226086 975804610 782087881 372714122 378579997 658606867 295229234 456378000 229216452 675959659 171077753 873759454 332822655 999647299 722500986 893882842 868180262 835561404 303963043 133297292 916959182 121771471 225237138 829519872 546839111 946218777 950311206 600561277 876390469 154851388 947906748 871866126 670989236 264278723 370536120 357712407 12356854 797825132 918873307 212293002 914132534 955768622 234462262 94996379 500512938 946326363 114903648 655911296 991646966 969208847 832986548 864318960 730436439 839882877 233403298 587573432 7951264 906931112 746470265 532611890 824868971 36234566 904888232 722486519 945844333 974790571 670989236 694022873 564171701 828907958 601275056 436592466 743384773 927669616 190477245 95086772 652034361 770830199 957301868 860224610 321659173 99065151 978444747 999965092 218377168 861634136 252759877 748906176 793678008 397329918 116187141 875679358 784946907 173665098 295156016 51045161 659172037 238573691 820305731 916392525 921928873 908435221 949750103 63521659 898584894 990092440 825378671 355634140 59438695 62457808 516869098 544559150 902511036 315198272 704715912 32894585 19567211 667509108 4110222 452089065 842773142 42064885 45785305 307325950 853045685 964447159 863114375 113263211 997662453 857009260 348473362 428023897 768843001 932234689 972803374 927453329 183511309 383261965 725536053 754461138 732008405 894766933 904362646 318498192 447182374 30206250 824054192 989950677 799154998 572579941 148758177 731897102 840806487 738316378 685752338 803521009 698464243 890297781 717473464 308138059 125518180 238023094 664099977 738519808 766859377 48222390 671472116 447513718 676199525 485858952 782479945 461126789 483107532 310640579 778133567 867640662 443770738 902670575 813224707 555380019 904738598 614230889 685226793 789574246 829529698 753186272 942706673 996365053 507680630 631485855 972098503 757122618 719059194 572586251 190954626 572521365 636938193 560997783 645364540 567288441 317262583 223223416 119918965 622750571 249873872 378981605 880847581 293592199 710305762 115952079 804575420 147529186 368456408 832743871 25863278 905925543 829575780 78719584 363645905 888420272 885223421 989097802 640457795 467875943 649474268 680566429 798238536 892037431 919107175 142396117 955822765 142560222 804693586 319643801 361830667 696216024 492808472 324444204 965911244 708722815 152945659 606066242 994616628 832423976 198130744 813137464 942414972 787691375 599503729 732471162 178468620 585079551 433159764 709048768 135783916 544539378 388768294 512728586 493236637 789652871 753166241 795292427 830828337 628272925 879130490 911029111 720962379 367483387 796431440 825476886 691291017 690406521 352949090 901580698 275016639 645693637 78491148 71870355 718710272 822491856 123158852 918461733 932366169 970593010 146697671 670989236 858433077 227014552 733438100 985767672 910720927 403585710 775881469 201931046 787664347 837710352 812312636 525425086 208975355 683151965 56856967 846874461 789133944 674656663 699058275 967061541 2282808 678689737 559475762 39010508 829629777 763197675 676302141 158539916 221030398 482016340 434409617 746090022 214691128 963778137 8706323 535506337 673300828 894360678 757942426 407378584 368118649 124950621 967055865 4855456 926163640 572568906 375815614 796678697 645525850 909466045 633260442 686840970 169350561 847232853 732292661 955725143 68498540 166970300 40267699 710097613 670989236 967008050 810767286 951875494 154189870 799282704 198599810 960207272 482099203 640694911 428473298 638997674 7975406 999677550 990732140 759897998 814458053 794093823 262102626 553115963 762479470 601515093 144562464 296986853 960368408 994742778 289299453 175305004 794792715 311448798 112168415 873375430 667778748 998735587 222358949 660625863 516691091 455909498 706413415 808176101 593039694 289810346 987529949 762834035 145417696 314631205 609770064 174696687 924994535 419570507 1973864 98219719 767391737 474296469 280276149 850328776 101333343 513700440 826814793 775769812 754806795 421168837 993503096 794926205 175862104 320904353 467216848 421767775 705064434 827022564 847860157 774892779 428764904 989390994 174600297 874647420 230985663 940663987 881843533 884451276 876633713 611867995 695260061 977809721 115798234 160653852 849175970 727936622 991378604 838701688 405718304 281422151 942591928 750356406 801550211 907594606 881990337 981833741 311463392 523483551 723388512 185988378 705328214 857019937 945034632 11446573 340477280 240148352 778539243 441194406 318432882 18008286 875373012 812831062 700990611 947257743 237613269 627166528 286847853 477265172 302904410 334144430 436094016 986659624 964686995 855087903 272631058 567780593 838012428 208996022 793384924 695712089 726894252 559930814 45974278 190961703 498600235 670989236 342473833 870445767 710513650 606809977 170239576 208158612 809032668 591396909 816522584 955920971 736200766 84906728 906385272 66579498 275510985 757973692 898696239 237950986 798074942 177268511 792109521 327590440 209849021 882481679 693326561 854322598 976745484 67329050 738045233 218334894 906361387 187559348 923197580 828732626 645213556 671434226 140710290 473136420 445260996 59236728 58452522 563922329 128077624 793077067 688408600 947351587 129131300 238081565 120370141 103043671 878981221 88694735 2156846 728489749 225324803 718561269 907473756 931751780 825376084 724349993 786239626 692336992 159678281 223204279 931562101 75146880 35015645 519919149 138141039 709815644 869328795 40530302 186529579 977185953 526843952 362855463 660260489 363933996 467538946 264375112 511216796 835678062 478381975 300805929 972885320 380996478 966207966 786442611 942930681 331047254 954533286 3642965 94338547 669248095 597245145 370057868 78796625 906785924 419222878 161067543 810319310 936220540 990507415 178377535 618167031 45345841 53901566 709489734 859589410 875980348 675272382 801078041 310996369 627287626 47906757 697436002 747135577 891539112 388927129 347084598 841887707 522654920 853515976 712214737 689452641 618067231 623858789 712928571 82070312 943078791 278425487 353493066 863981562 2940255 855917271 957679139 890083205 683721099 62143517 372889978 641596566 934543420 797544631 429355094 516312843 918409230 734850314 837514452 878515240 213187211 707742995 446130835 372276041 873113434 289215190 819470846 9287144 791417232 969462290 47467722 962674217 692942966 912147818 846877989 576702993 897158864 540720350 943229353 777661418 363569041 228329679 952058386 425742368 970289750 246469408 880179402 921313457 209658140 451634360 602958785 779217642 210254253 692642838 34196323 793751069 34238754 696076868 874473310 221006670 140247503 820457824 750373814 442451637 769148570 987585551 29847769 32986223 898276764 738451740 218308100 679175595 283607506 702545303 716757720 578273348 855306601 996467996 955053578 69920419 974819926 929029817 755651777 991242798 260621977 594919603 691294653 416861947 116445880 91703161 531468219 934034042 840759547 725067030 800553390 922295116 873118535 731668579 323060148 944233172 67696015 364236648 702785540 334733854 817911093 322631755 435606257 897505758 68997554 177317367 111478176 118605308 734013975 795732291 964396933 716363511 645435188 657338157 970773524 380533028 278860195 78047502 732434234 791230979 684906670 910987417 906567717 365398795 298076766 996257736 995648216 177034339 329903839 905773967 793170002 831833258 897280948 726413566 287971703 685415455 881444448 876244895 635739792 772825224 681642205 933119803 193267134 80569805 788961975 606231367 332393852 917123144 384453073 931331417 331708163 184791851 101299549 14052338 862723936 660229805 999137822 721772013 942210769 891367725 827810865 452798355 455886627 108206695 182924151 836693568 670989236 438404843 917383595 877829059 18225210 732902939 881691169 429640327 829138043 823314708 68801519 830874591 974388322 888893926 426577870 10447619 141692518 453363890 981552434 679914827 115713048 309284466 858900460 364196729 909171384 624051807 807914045 885882206 104837267 919481978 610461868 306814598 695566986 753401201 317122270 515171918 796506380 208982745 838013816 897709032 385082379 113178772 327909451 297133037 49444170 984979955 204716869 224065345 277775670 580180349 889899470 455564828 976692745 496647211 445795595 213357962 921642118 828259050 489488876 46544685 775650938 852229745 45178681 94743769 637103555 587548035 838375255 716546896 21943495 840239431 828608226 327349590 789333219 120386963 481407013 680136566 670989236 659147420 489699125 446102103 283958783 144823504 82211561 531162018 817210161 221349766 244944274 997431215 500223125 601438287 495630540 259273355 907586730 95371805 857991534 716651515 911379475 263982527 187201169 765505811 685222769 948695684 931671204 256677202 794682676 784063777 218773342 16423172 728792440 670989236 45042703 347701351 584266531 858036483 715084695 881048834 407198535 976266254 493590003 673452624 859245233 838820804 563842872 838383770 753032705 265624569 483937576 670989236 123441586 879475607 171357352 108791056 937649605 670989236 854093182 875249076 454163969 843193666 676626762 772808328 441517802 385298390 866700492 246943662 267424649 274583340 671541930 434654385 732379320 878976663 963514745 718387633 883329994 312302170 775528198 242628172 926804924 758447775 629613286 823022373 741903948 279187934 244630857 229890669 620380402 801291809 280341183 896512663 342270019 804495404 710146890 261405517 410280190 828742530 152796353 731764929 770555645 544622957 425916202 745891540 471177770 187336787 655672803 321783314 983281197 79007018 273500181 743980794 465207635 657617950 437274826 920774036 943241768 738553640 670989236 424142343 846684489 677154082 695237971 777270400 618187530 497479004 663489646 250639192 475099928 708199739 433143920 807238719 534655134 811404533 610405214 562653995 915180683 945661011 445129930 919496322 995694848 848352807 558148160 794114187 251234427 431005337 101587869 736134184 947737309 453707114 838937654 806339367 650894669 277443425 143127332 363078616 689876967 757126879 414368466 764844274 947763606 670989236 533570989 46742834 776245605 555862115 331256676 859969832 728936042 768947764 577079143 762395258 551930186 769341330 538410767 995176826 743826464 722599176 702357197 757640905 139583657 29805526 510298480 934783106 978438650 678110102 361540154 967194325 267941988 754664577 994819438 984559503 240023928 201056351 715411862 892964267 227403822 855464336 827232365 157734231 918275807 18724686 641993838 3634301 597978310 798892123 857147043 324190510 709230749 124550280 307423682 495458041 122680185 29391526 546099834 348692470 14499674 967160124 864785978 104888120 460280929 427999560 64269817 607374814 962857553 737651619 703899878 460046390 693897304 41972580 699748565 467456658 670989236 726118891 997583086 401066460 339353118 897183731 853501615 380321347 24141026 706291983 130876048 238498769 910741032 754463179 880426998 749656132 694861674 933772638 85660935 754328605 815228955 1793841 63512849 227041961 406785190 402875282 77310662 142448147 855010432 229269831 384874902 970146368 645195784 899580571 269182337 788880418 111388628 95796219 155171472 298667086 710871096 728200821 804051043 14474905 825581347 118418300 859199425 258132217 902577872 938247520 867824106 469906780 459583141 561755740 745055707 758688220 352434664 752858740 901260557 703467742 711213874 88928665 616140635 269920621 965252639 759989656 350565695 69799617 274020801 881404521 991433504 898353339 754935736 531914672 45581312 88291623 216491972 253557929 962390753 202226020 850950110 350999117 644342454 556724639 936054920 119996918 389529905 665113781 395894458 323663362 697184467 845777842 834756834 820369330 678755585 601580373 756693643 387473250 791601798 891166596 85838341 691179697 939931891 299862156 699477771 345815313 639233838 720181494 777740042 274097055 276234772 422584312 340764235 679733635 691219938 670989236 135355446 926657833 798096682 634963582 184403393 884137314 256387291 929174415 651038508 887578648 402453609 439224206 149210620 717932313 807495588 585294302 830227025 741294814 662369124 792955831 244732546 761368648 826162950 474494057 600250024 790301388 950660479 242643667 962784249 701970201 872325975 825073334 86981573 724141168 480208507 449511221 720399201 871698248 976972711 381665075 482719698 718411466 815406596 463411394 879378175 777799447 818592004 161953394 256255742 775720488 611131327 73079519 867436459 436195117 260318152 612165089 826321011 129304192 674420307 764246622 386611258 641903641 117686686 541175148 78251533 141932117 494326264 399939657 952526982 402171883 968607567 170405599 192841801 220579351 737703162 546271327 41765843 936155161 189628137 456946380 711711680 339891257 904485112 905992138 147155528 249617604 871240132 570301462 698629676 827957810 896702551 505519697 545818458 383538714 743266636 834679078 607685387 817699536 220491828 740751925 406371989 792373317 828824696 335761606 81115668 976321206 34014730 954341722 513771416 704635925 290959477 557247640 819146850 840912276 573754119 397146794 850510846 875033485 653916768 943935208 123651664 772923755 967690788 286801659 670989236 285837853 87054261 694554178 910039987 946889267 816107001 302019540 317893036 500038501 462098813 674512778 934668054 12340379 507164742 981689158 904200851 689803899 819641649 479505899 485384881 651900092 641577765 993834875 400015407 506124894 841969662 131463685 786333392 863701214 331037696 164063182 228194235 530128153 867121881 867165587 493779466 781128168 180168572 485826908 531736412 872596579 703044041 424819370 945192788 635385554 968900631 311628771 973795896 759930725 913506643 706447628 145913105 941387158 894898165 652598576 983711479 755434022 366989955 468662383 780047981 418009339 799601366 553887468 772917525 908215326 565354248 207970963 173621444 828916571 650773042 945205102 416672475 150061911 661499387 963658249 934386827 149213938 899312417 782813061 157087650 906605852 290065045 63495189 898589024 927875266 2438095 314364618 208966871 723933463 818477760 745077698 163840255 757199897 900467986 689235646 953696322 874368137 856615001 567050484 676494137 677042708 388416555 888293596 221860812 692829197 781132682 549839272 118262168 53898062 861065585 585761391 805097742 590637377 532499103 909526095 959008539 691775823 981774212 993048601 124339451 586090195 152120371 971778167 937447592 774835833 699516572 750850487 334375564 116594849 865529553 799224867 537341948 466019243 384647589 528479690 374244070 948427129 639578818 833783894 848679113 899197507 719421174 722164260 635487559 196241521 596830121 693325211 158530170 442264491 231258804 955046995 13885737 814971821 940057545 335314660 292280146 769926850 835204288 695324973 164681688 515653877 118883710 753002859 995897238 655132947 7386702 812807696 661386124 199630272 957348706 787263543 305755870 97845534 583581913 279196650 199331059 983379966 341875549 788842124 779146670 689210717 286665318 351210562 543755349 920671020 947018471 922195510 943841080 752580284 122946065 652421681 900392918 844559068 940423221 516062670 853702204 254623115 806029329 304259453 603907861 898564565 723268337 430687144 857985722 687150116 976001856 201967775 870935629 284385365 845503183 156041758 217751449 785060910 290916481 631581931 215984777 373755556 981669270 568173050 1306625 722832345 863466527 452893227 307322758 177036399 751423741 751443124 961191912 338883030 557253980 670989236 577377976 361798800 83579175 984469597 388022428 771982270 734215224 903201854 687145750 525867078 729645199 330545492 716565754 144293949 862949353 779508437 93709187 790167014 833339636 674080833 786254191 16930447 814074934 788322217 826246904 543884560 729098625 964209816 722605038 875107342 994668428 64549239 76634807 850381966 787459652 954212650 634272106 856816402 913824796 809947414 701836582 102654880 198266960 852582813 347214739 120884114 177137500 121034015 536021435 858337290 879960395 781783704 668044899 383707615 914668065 902911538 928475642 622656301 376844710 969515672 71475351 259506790 82552409 722003390 741848530 942104362 928242011 844353069 545021990 185940735 494234856 244428939 711413035 767652184 739912334 922994355 447237189 743968108 315856985 98770124 669750691 230620769 923778520 163727131 930820848 706874933 918121021 523742847 398835449 163192953 807786737 57095523 146259958 28408093 892324008 230109495 317366653 262371933 696766797 21519749 83517289 160631607 679400466 708321061 371198974 767132491 951599134 968452018 570881379 342805092 748171520 866434440 707545061 517991867 451023875 654013187 752040989 777327495 380691788 752961742 172466192 753330500 156725355 712263290 34819126 342547637 521104592 842706586 713665959 552422636 6710860 76632726 992844857 258175773 35148248 775965283 782950427 156716391 556125975 698637566 281982815 729987759 883929812 109848067 281477667 930740774 286137204 502866866 728409245 435641212 63690122 326393611 210350140 190598548 842570448 134288018 926138675 758663182 144822781 734732948 576948993 818376090 558652647 277640819 307069347 738614398 747586603 441783774 898081414 3077469 672089635 659146137 824804707 766167027 249626819 651554128 236309185 908910405 991276156 871006958 940927325 834915557 887270087 807924134 925776376 686061519 797270632 993395390 734946097 106657861 129313356 914889823 723228477 938713663 897209842 929904520 279617017 716929986 185020039 933051699 260711098 171317812 414075801 696725526 454317875 931521791 829460747 531172234 941264084 527155223 900444946 518226035 727081649 819353473 859358705 775129411 714291381 895057035 470755979 196452902 993953411 557281073 784545955 617133181 718376395 693732749 669534137 954565813 852109618 757912095 111942071 940860596 617274637 928797815 978760158 400974454 348554308 9678153 817721477 909659552 53667892 168346622 375427689 670989236 932233347 680319427 730906633 199657157 881642719 262303823 942383537 494910035 769507075 204959249 525415790 790929105 349247502 917217376 24342190 775080720 976009137 114538054 429350338 860349372 107330093 423503042 770524767 914740131 291960017 489359131 603085435 639477886 923319190 78483425 944861645 87648911 202599677 544859392 851060665 551482710 562970927 48034643 2214791 85708999 376798608 762551534 889128239 317206542 543783536 748279755 670989236 115342510 483789029 903511989 419779132 247170378 827053564 98732852 359376145 413585233 988051585 739487451 632580231 874267416 882369208 973352761 285882681 186803199 706600077 887407861 789336032 917865419 860461636 473518175 128056805 749744943 880711268 742378146 778313147 467664715 435162046 920559494 779989962 894886872 170451468 855868677 837983779 604782802 554758340 266057643 287313659 443780540 782938644 96233315 983387956 561955843 837137394 819654977 731347715 950336992 483179955 285944061 99608711 44620628 835289526 417360541 832548843 783373568 508098541 342363167 617298047 940746663 133318686 389802328 608792252 642370096 215351146 691991514 284049126 213277938 213959560 436780834 880019996 349928225 258343238 722629507 338201525 17084169 900392383 864883651 658385791 111690567 741878677 350596709 890468767 232878393 920802250 995454636 861563822 923506190 758583223 506018395 947293777 938425921 700037137 366625346 727111026 787441374 881027119 825346849 953562756 88285195 119491684 754320814 892634156 965885948 800620932 930045462 300997301 549792632 713404803 713678210 390458389 798638646 176579190 763416010 610480477 324131031 652898533 219379951 956988797 152034961 971182300 830330104 306014473 874513199 932214541 876822844 994462449 943299823 991927205 776937923 919232784 715669196 42873361 912060074 934258918 652371798 853807325 111859522 840612261 869249241 918894666 756343622 496448385 759923529 559436442 437868489 79891793 269203747 296141461 958132185 576518707 945205410 124019803 955535795 26898372 289471627 15872574 274556997 998779669 697230131 790966792 761416789 746187953 604958308 412156996 312933417 821097988 20261290 801945156 739896774 103753902 417918463 124293651 288488415 60628756 801734369 893072874 699459820 971774957 98443006 616398144 673474660 428040515 81928578 205014245 456107814 249684423 716680864 943276979 804140216 660261301 264759601 208089346 969703857 35878238 905017554 252298418 542346620 221140322 301026127 686284706 781160061 384706742 128252993 764811656 393064988 358649883 590005279 970048532 541154769 832261851 683136227 583008343 504927237 133483025 751152869 713163262 643367297 45615436 691706606 571304252 896143998 888449850 837682681 878768746 961114572 636454867 851587935 957613424 39107225 499937719 879418339 322390857 670989236 947281688 782550807 769511070 454102709 234912387 442418536 518951997 284566792 898910829 154834853 493933599 251678107 750116659 457391655 337011552 670989236 816168201 829736190 149645538 874775806 414040967 251687000 594771570 727716634 458950294 554244466 692154514 675555468 904129874 909521964 294199135 620026996 244046088 667020196 624263265 203571074 948092945 320532944 477484069 686621285 793090441 627515758 692737884 199014356 214285278 135689154 792759940 129604115 765153425 685460972 677831726 885262433 489084010 879751738 305341206 830497034 873005383 930040499 795062684 236386549 841663136 965784171 627195450 724251656 915799282 791884735 985691970 762213260 325619961 88692682 349028292 588232279 219311858 232177869 738811807 716564396 255278032 679664157 480195196 318178194 210524183 927209790 825025411 55963636 713046390 894007237 875750468 778115889 784180831 409946246 415606598 993912201 968276823 822007105 305455870 746933953 271022350 932094525 851465496 874740396 522089885 323058186 504125722 179190504 935186932 180966406 412063743 879385192 135153587 791467278 952209407 974393530 844765770 415643085 642814345 682313289 296371528 714187919 311298784 523172410 74267465 264987829 773068872 75643013 709663847 835733597 712626863 858108069 686969710 111301269 873192070 56060174 593811272 204781831 585889596 623576605 45681145 235585496 692829366 866549593 54651440 862418152 670989236 2675439 923825525 707966910 283100213 956505234 909298764 912983231 375357643 433504616 646168847 990401834 701837902 187929081 816785985 453181174 104800078 709206995 321666732 905511668 556166953 695652387 29755754 149120935 585925188 883525885 284515261 360530494 801217101 311949343 311054114 193804383 909159145 856119361 894389418 375337601 754672765 562323221 383427257 906696783 691517358 457831382 629032971 486260292 280483658 292850625 377713816 508057521 492180071 963157170 100618423 248912827 820323508 731049232 713410287 705741029 721304091 884972109 327631402 599905247 101239539 670989236 72096322 788044595 9382762 969558463 277201213 82250036 349723273 450420842 599902727 798519815 947302335 712344329 248716970 817637901 178481256 954165352 337768728 108677387 926668341 683765192 714754543 163275574 467192538 449095518 804629153 201939196 470186733 897264235 442058205 783997413 634718543 602565855 130935481 812685180 925386229 710563311 199050342 238099929 865332642 477079501 898246801 758310197 693071249 114903502 715464862 556706865 898134180 299886294 171310491 449349561 212316635 812440919 286504777 121720879 873457844 733561418 721537991 392351686 954894065 107541225 700195453 190787657 575464965 767875237 924432532 636931705 856746104 763335509 316273440 801461699 82278463 604326533 393314047 758743180 754785855 9376726 876906798 96817877 488344316 390460657 228304014 962882379 724423068 852780445 394414142 757254205 693499499 227660394 592143503 457555220 989184529 90865095 667887563 432209788 93061007 416129566 568603490 684604269 991599454 953283023 176599957 915743441 258235672 867316999 987309558 77692992 802140870 353066535 968165296 24188403 37463649 146316442 754163756 453831407 293951500 774903538 787146267 744174227 299236490 670989236 627208960 328473761 960383097 726651721 412228071 891458665 787247285 417852510 399065405 647496353 617098963 583294029 204193374 199368346 13782979 748640776 377770439 630796484 697649197 24414728 298666799 438396369 772198774 262904824 350856345 715153247 917723005 989896607 946764296 664226713 844117218 952940336 262459876 603827552 459073625 844791811 302990949 804296582 792692827 234499980 966867076 985283570 408096394 807097771 649131534 399662897 996831396 543879074 808254626 602126405 318361149 430638784 268256397 698324409 198266251 175050766 845429912 678510651 116306705 808617456 871914419 129201292 692276211 439011866 59889970 504347361 314501450 821473763 692741999 272523090 750744927 673190133 171020745 226875661 786694534 748984122 976451118 977094537 46264136 967678429 306137176 179010330 978574913 758455073 290872797 792054946 731925652 983659993 8166941 796034860 381527023 792135624 910881392 105483299 187534949 208155093 886720627 45278890 742788534 863700152 916997538 468524737 623826627 917758974 351732441 824169233 776156766 838366129 608240961 508546316 689359648 929455853 800515688 16482128 356250194 27617578 849268360 927283048 658368392 62265730 387666770 803359742 685643912 199656241 960640941 881295355 611670642 562476030 602780224 758513141 776445538 349895314 104276460 979295347 932407093 873554185 383413921 599606607 675147289 681469453 708694172 151819596 570243153 703686544 371598469 835292366 404673842 697418027 310348072 942450479 708329579 40880690 891353505 298820240 487935715 467796177 174466399 137244209 945931501 868273612 476315054 858236673 691699637 907453938 756086867 845177637 535667302 750037644 146350265 830724782 875819355 422249549 966429701 960546222 846735439 761539240 882345796 694206495 797207344 203200063 372963476 169660505 882501270 444371122 973308671 546705345 953602461 947341795 138597842 902030719 779444372 645271643 901901503 959788455 882968897 918531320 840697371 32834420 116061390 291699798 216568871 677466508 744672300 728573720 787802101 716729607 979453168 903281126 383595776 829684954 948615568 939619797 847169058 520530902 79151628 259823442 992063629 846393703 852280088 772723200 272741172 716665181 109231340 605167357 229967907 613532108 784191670 37054596 935519745 815041333 803551396 91556990 160084211 455921000 911658382 880339759 937917019 851559529 28737266 865165953 941430259 539321876 322870808 921664352 837009506 284455036 490385357 915898276 804769638 761213797 524521045 202645445 711725436 90097539 727361210 269963206 705670446 420395179 616590281 95473392 637932421 232623286 634188470 937558352 323845497 58465726 210061518 936011884 855312438 598571047 571346116 504740625 887713821 290426127 865028039 639709045 559520224 129324708 574042866 933448816 447391745 236373822 99442822 608533276 701223460 392146138 794530455 46859487 894089189 254788837 953879316 704917864 566322341 730557312 814329289 901442118 580129984 652328910 794631279 905200930 978201253 901474147 670989236 48638132 404431529 765441067 992634440 619239533 72219287 267633716 741088870 11336225 609205652 183530917 327897629 210170744 523130267 756636317 676589124 536180606 122290409 555850048 674788796 675561631 397105395 980847962 10099946 131194321 170008931 94097025 618739938 998331581 407498754 194707071 741343356 77799895 345909404 710735621 793801481 273567864 501487507 251588957 905833550 922696952 670989236 787776723 92244490 119845285 882882557 262692247 750950790 561338439 894357802 454565464 919354906 693057797 549281062 981899130 750578456 176345349 988282535 663541538 24401943 723553235 643655992 800114756 462119691 998392971 974357524 403419600 799184902 522832891 633766151 710644360 440027339 214405263 328478258 395557894 317892481 960183386 67686513 631895023 729960333 946869827 465042261 80933033 632641081 214520037 222730028 788206472 784262803 247460073 925150063 207661589 699327800 347023212 845755863 789934475 784405596 736461869 32809080 919642319 279195162 13914597 236877197 863103984 589244619 879699743 301524486 671722822 749154545 670989236 625271203 19178227 519908849 671303409 253970923 406763789 884901433 42880531 491789188 161061690 744198761 565115992 410967574 576288438 933678243 664699001 52004141 901000261 502421998 833953764 947336085 479265433 95187866 866349742 968876202 765766532 695445008 657214187 763337661 738151131 684525798 763602351 110938496 614292139 900444872 472051564 813427474 685793490 864295238 711567655 959577611 784860523 972248552 659959759 437121527 711673386 899153296 824905631 32132102 105783824 1042706 815551314 20271845 259886036 545494365 262064692 998875191 959958342 770081278 811864478 158262028 982418273 897851187 574085670 636862488 785133857 870846056 402257156 945025149 260678760 722157192 66818682 380898061 97470328 601867251 409123344 353077636 264277594 681589941 428070195 402162766 864088151 911283722 717755012 873414326 251646109 192376861 275833021 30563416 733511603 925127299 411519215 737034418 140961098 822616076 332783741 223968624 687793512 618086567 580250006 889305267 884648657 693588854 919718697 911123544 948424688 733852227 450488448 670989236 356460318 458535297 882872061 202813701 862463555 668259631 762614551 146618947 385755424 325149938 527628179 596997477 775871996 886448722 64987194 685509502 16999375 23546729 838937229 674104561 103640382 344845381 979935032 356856291 106016612 670989236 732504240 90905860 257316265 674532594 201404575 242714209 723748063 165071384 767453918 605243757 771860055 819250177 902192756 372134290 964653079 971891332 94128543 757689551 857061333 901928182 968309598 803423364 840917863 845879565 217208763 638085266 589918585 117277632 196869636 389992447 462225982 195907053 781381142 520764626 836738420 265775148 955316575 694874687 89474418 724557430 865419116 352916138 911331664 716528975 268051552 194555354 931364197 311034106 737818509 76759360 716342835 6677547 999275990 450044708 792887329 64403396 898009884 615164033 900828576 685672084 764502550 585643753 739472373 428118741 578261378 7239018 409904175 860564689 783316746 329676050 965382963 839576292 909954006 170663327 758408250 718757131 777341542 40394692 986088107 803021630 742253044 663643214 753355954 289809356 838916929 498002074 789398298 215176108 868256504 881209474 515331688 889051451 659017734 747679706 895999107 998953077 726956567 949391753 692292853 931605618 120614255 765284168 115527725 499915914 504760095 708972168 687681709 355732516 154365112 905085059 458597870 187250638 620612256 68976859 862784421 150562478 968280185 676870730 726688063 923639216 697577350 8155530 698992967 821904952 609600828 986333354 941660096 413760257 746232232 840813367 731815005 671598559 743436947 232671476 974663588 849734198 863581012 99372857 983453442 751846199 501902188 420652602 563757713 747766395 50109932 943195650 949307078 958950293 716404496 18145135 788057388 868953714 435525499 479252146 958929033 173390412 986550651 513464977 46802814 3741941 993630677 107535919 259253586 994189065 777676804 370637929 547495285 685441371 75567077 807813579 129307249 500487568 555870747 794131427 221242979 56586177 114352209 394874188 268365351 579972332 579847283 670989236 900716592 42533811 594933643 191352761 894698538 587875570 479799542 670989236 733292117 19457856 68651184 880097157 889138629 348307633 308959618 332638964 989139303 248009830 840004298 916536069 666100427 742799182 815596837 653243824 323253279 919323847 877806182 878044705 954594553 31477610 93236248 827610408 62131257 53957624 159956227 168443883 931478928 372694533 657922500 922388380 180189973 67667625 30052437 276481555 821854681 621074235 44312930 981660995 735755921 815000370 223570734 612214125 809612867 953355119 907083547 370329416 797440844 865940455 830285165 763793903 985978333 165185975 78863564 517427903 478355424 323826700 797860401 766147406 660454273 852034409 893638271 971504758 519716124 925141766 682744456 826725322 450941225 846108952 635591672 934283816 191546490 80281679 971459916 6867450 215943592 391600728 213450694 893147427 286602548 632350461 862311055 676893596 943089434 120810642 378820195 514693382 966932029 295773058 941518804 719447629 397525723 678147056 603972715 199774760 857003139 594296876 500379878 21649587 750867321 88186602 844140767 98695687 959216784 764432809 334622102 320285321 690993215 993607083 875170442 31974261 928677940 163361899 690842429 288988294 225824872 853474759 658354974 534316751 778703223 123314566 485284047 891659448 950655462 946654347 838053333 368928848 242029809 958001649 686835803 425939662 996929007 264034639 273254914 619573208 61109381 814984112 834890405 629902213 355203177 373259795 528682278 898008230 944155898 779456800 214773824 837026289 676691089 932976048 801285332 651788152 446873807 45479833 975860295 613509793 635374430 511140504 609831610 344297794 767075570 353174377 707665230 498209011 922295972 711721122 599520859 725933301 244669159 804786633 119268906 204850801 755580838 829754949 267045781 375111420 74708707 904718400 771513070 970877079 258912412 341014931 11078961 378141759 924208499 750639711 957993970 667250980 978525287 683569432 575324063 79751223 639662898 293752604 865713302 147660671 997850876 206503164 91218977 730380972 962905309 753795700 670989236 360329623 671216199 296789021 253654420 685098196 754134474 946657651 305965960 250386734 102907048 437032480 919193095 309953982 471186027 789007993 707230838 774581627 643822547 746638154 890812817 335062072 568297087 218895491 421223170 85879400 791645678 713670512 911068514 38658940 857527797 708366366 803829544 591181014 607213654 38843765 288789200 261005935 592766718 173617128 670989236 437728211 812102368 429557239 599090201 293377010 589816795 130353063 946171153 48519781 822313787 893274088 407683202 179633950 170774129 936523463 24169155 897178339 6998516 297514593 273150621 968201677 30734167 670989236 737630864 452970491 945274540 692144310 36669258 649472220 90169648 793488402 696474214 865980659 958132512 826298014 727428017 585785528 719756028 75842805 654211385 607966335 431133906 711510256 92990320 152260631 970007636 890082615 153822299 766993719 120306700 313656584 471001707 561771199 868782213 84708051 524431060 123016937 971396221 715191361 705621005 702648281 554497662 200415204 914620079 576562926 662005275 705231966 779369065 91516289 233513939 670989236 631552017 724916345 947689760 431253247 822289299 943075886 358097585 264702429 781027906 182471294 948985097 214581846 785445066 743356255 158069393 967567759 220828335 799934145 125624272 361181446 923387618 711075535 990506779 92961116 742720904 770804040 406891051 759486541 378080133 774201607 734202593 670989236 780790553 986508559 899200418 414592647 274444137 61016226 69042111 966903119 605765073 612753719 295147098 169386072 677443966 170794448 906223835 672115183 679727676 370034121 446679350 880763927 264264665 796876303 784438208 784154980 386488746 309713311 750018050 277554416 386217893 685032540 247557383 359347487 704688933 678513162 951917717 89605887 977016542 812926792 965863676 956225673 982587702 950991058 445571477 709269736 16041275 856682755 14229358 831009005 954839241 294836440 487097013 772874584 50615949 460843987 852527521 768212718 49682117 848051382 890307054 822965896 366354386 672068842 736643438 439543867 289045712 628958433 601839128 253974877 882834928 781545272 529718304 433100308 829078571 115811998 329029402 721138239 763812634 710395826 658009591 322603721 770807896 639260214 268819557 6226530 610762661 69819442 962458613 688083390 248056737 765163407 510198783 840294607 845316275 750130135 854721461 923741244 998115006 765211115 669932362 189813246 154447850 955580135 637541232 80133727 518912032 689165442 867038657 480236720 115191912 189889088 45572997 505703799 269034840 744506011 828401251 270424235 920088971 528546983 638904203 559846074 156325436 763909154 670989236 107048562 14789304 42074282 698509510 467181345 486620149 561102919 223644093 806242721 477657413 821722938 174584691 907801796 805757544 140363316 799038636 373854455 116758916 969890267 193771265 625380947 602075034 832788095 330297955 683034462 877350471 925657690 389728653 717642634 724811778 175688494 97778316 604436374 967431158 608385037 155701584 337825225 915063079 300221123 65266614 556552150 982037892 92813882 248657869 905238193 710698734 917946868 246996933 866156180 374075250 744083017 920995842 907169632 962544409 249435724 770908457 447573599 340755020 164887540 241643492 745375804 865830563 767011390 983024743 616454393 155374613 193156229 406326931 564097794 261196855 927966548 83410499 816171576 819517268 771865418 562117392 258996515 202712330 482217739 922749947 812900654 574728658 975101774 361101431 892971351 955345065 233540607 389126148 173838212 547681755 900312119 570068795 642805751 205077182 867653912 746315543 510889254 899005304 648151561 445025368 264703501 581073300 290551548 838139819 144707813 919285702 96628923 712284471 635693634 820167018 24733502 433251651 483723266 414822236 779963082 940062304 465362987 643906821 53829422 213083803 827626427 950524680 863485093 899491653 986722876 670989236 387728334 363700095 250334351 176387943 435121002 830005958 386543666 526258340 865601137 529313102 878761391 39559014 120095158 275289691 670989236 887376272 530230186 740623478 335387148 666175341 387721209 822555973 162106716 66978441 911651644 844374352 720860800 923881851 717820700 673528969 266018740 969611102 608379803 73695783 57466603 911341635 507752656 161525043 154357505 667081176 486804616 404260732 4972008 10188899 761523485 842170707 568038114 507993011 900719721 479895559 808429059 762010652 906067721 732455148 770828243 713991948 682087561 649035796 324985955 10982481 868631542 893907211 832761413 262754048 219362776 816520389 885404856 720056519 689583987 481047340 101275106 810316893 14796541 320887702 123236680 38767306 670989236 954318809 968487623 312775305 207579772 362921679 759865593 925657682 899975998 943411588 201889267 521932227 636597109 938337587 979659837 71121379 617621294 418605437 857890806 792685469 289751781 895289845 763938528 795071107 327990701 193419603 43486686 38678893 989980246 156128134 946225822 926077571 671833159 564262319 602210211 637428440 615742339 862270569 843282424 162500367 666305463 679368950 555481639 607134558 837371416 918089755 976675203 762379422 85406438 883835561 642038110 566144523 85595481 511015992 408147962 989884538 504914107 705743248 904582780 717288298 877608939 624820584 934965326 398440417 988967528 964656341 558973707 855558606 687811814 905385123 709451130 936437404 888563977 322279360 43268668 849835128 43804781 440494832 77970026 907517749 421224991 739415441 706592568 806885886 295092980 249231048 457929762 145696959 489115314 256636383 277351707 990429803 923547166 807199710 341376671 69662768 629122528 702664862 928215280 779090088 297970407 865603254 159984104 635222120 762755380 816067446 218402592 847778873 363546275 568723488 503356321 148342384 746394900 342678296 332563703 855524070 748906614 710577951 285630307 764046612 774417660 352581397 577850022 939706370 95468285 812844626 771808529 40628802 850539601 751338022 795193248 816147579 877984914 478894125 720129123 827982205 964954155 950586201 679977856 772313721 415668698 888204054 576604112 881180352 984913544 939395236 647862216 951716247 688682140 326266783 632748198 664911871 774090529 821740444 97437773 948221705 256545403 485865178 921663305 560048630 225414979 874107465 154333431 656187511 856664642 82306292 344674864 830528052 113862544 859811871 733126108 277790872 543572786 284089207 221748124 683951374 8731071 17976795 480714210 125569623 908553202 940522290 839195694 376439354 940526526 419375863 809391512 213725120 961417911 37595064 989784753 616070924 952667058 275043011 676224116 953663683 709750571 759183283 736002173 565711345 979597273 62554009 500737352 874425983 338040840 163341672 213308875 351894041 352700133 571979540 455149050 447549820 512660086 465956286 962568528 744772752 916837506 467553523 625461943 796182937 693190823 935178017 390440162 682387393 879131461 209078283 277909100 640868726 183817869 18424718 923266214 254242087 732068385 899893136 972449183 894107602 571636089 167342098 842740164 79154258 388644534 898399630 134808031 368222890 738293500 210630286 563564271 851686221 695987112 656707221 278976984 858290205 757742112 803674220 402480797 582725794 513099638 942093202 738706225 542404764 133915647 74724351 490523405 847025684 419853188 492508047 675381402 920145194 708430907 786287076 78536240 697383781 680871011 916579993 965090813 870201804 698038456 826541976 817581493 246606081 816497435 63509351 962917037 893345912 138148815 325407909 216547628 640792428 860460037 323283165 785160314 884195073 881275091 27429404 928825127 322631604 992640835 874473642 787459865 547710070 130704402 273860160 239863506 818137869 833275875 786691029 798184497 865981549 670989236 424470092 550998683 455612311 969929249 476863919 283275965 67582595 82577376 491555098 684448338 194644581 707168574 116118528 336201060 23943416 673348590 873587712 158035790 261628326 773973046 550155058 988451985 148181059 872373767 965503065 798452013 847985996 320931334 619241626 641385240 936295404 284933515 790014914 176593028 979423443 952274053 826920889 806873900 842054045 615565530 720046812 295366195 671421191 786364724 384519490 885647979 109800741 152814549 860782831 990058176 670989236 578635591 680132557 639465151 163868268 580643014 183083925 87706437 622612642 930895953 100630531 462230081 917468618 962138996 950039741 696468634 208473051 735803191 727388002 790807405 469241369 197788132 129038199 13739201 881630057 838480726 540811368 406331044 790466611 784991556 74085962 896774068 798328166 699673222 704610183 643255952 70626275 685975545 256933137 700013610 895854956 736219185 238952386 139349230 285835894 532972008 572401170 845837227 716872385 781368399 142994476 552095831 759741490 861552080 968176135 950999938 119891222 37066720 608719614 806308088 991883957 927207133 756743510 215943801 489720713 45480382 497815076 913839327 216328090 119455016 780773628 917297384 305351969 818538129 742837981 972413247 331444373 799971195 569815219 886175434 246933902 653320638 839459495 927684159 101487888 948702943 303888441 162483165 867858788 667128222 537551181 912182395 492400905 878329835 618702572 804310708 477663555 455484613 920930519 145635112 777254124 25588360 948469050 767877116 387827041 861997503 337604325 267837384 288488246 353073605 877525974 579301815 158944827 337504636 504869717 338429573 893643649 947354103 839398518 359811025 486584263 374263037 810542104 671954168 573683606 919144466 870530310 176918771 105851105 70523520 621318003 722370413 382986071 462362152 765877609 185795736 830292068 26255349 702868179 928465067 976400318 461357474 697985304 744733123 542514606 958606014 947231450 364541646 890077604 914431267 997169233 879611151 737078310 684263883 154239229 34768322 301397223 450802862 248218389 764742380 389426844 861555450 934020863 733142954 974082775 958437767 244750222 160438503 766072655 923963150 420706609 878183651 76253076 917766858 815752885 783784393 530867830 694350113 877904554 983925032 984736216 988434055 147614524 683652095 354918817 918315693 683786734 176200175 987401546 315078644 78232153 910286242 802550511 487069133 905538045 805989725 238018861 810915553 314193570 836715895 303328886 717916164 89590776 13999474 899692143 401453019 514468606 993820513 677540002 281202415 550890914 987939718 969182422 782611702 272262915 919181811 701614451 549894554 511835684 926592931 901215132 822798341 607956567 767639129 546041977 961609888 594269478 913390406 479043543 848448587 666232797 504393022 132984018 946085311 162435730 848211361 844144300 9845379 817491303 75616030 612116812 986937941 748043871 938378095 359429470 598693852 939542802 991976835 244344551 680776069 344055789 512408394 936545034 195248335 847085154 199776409 678586751 863382827 496404875 515688705 241272657 786670738 536059011 296659932 888189915 516247480 337694990 432979201 456409454 300612137 662400768 416521653 910806819 520825472 832210519 616069945 43175234 908019197 421777028 800311000 383171497 678744290 690007103 606385669 368152594 822293077 938029528 139930730 878002045 97899843 56350370 293420713 401362943 788764441 203271812 20729697 715002321 905030090 408116919 605843825 105687495 314935561 714230249 868999070 690711641 354991571 563903391 973937018 417824432 854153014 72612166 57791555 653693662 533251594 693306459 143645202 582778037 837792397 437133896 835379208 196250499 847933807 381583090 208062341 648718868 611720226 821079381 390527894 470414284 991810394 261985689 714571438 366420643 782912104 78736548 95944930 335189113 558922988 50177972 673044294 248426556 755804511 931630513 805802884 258251808 309696458 653889741 6328230 766346436 33826657 42951770 927840869 845317458 9150571 896188640 849414223 143804385 995807031 12684726 486752081 930073885 914628254 993598103 313888159 666699251 167286363 443502242 488705211 77753229 4993240 971652591 608049535 962915308 126195015 200428110 712692045 958156281 191211564 788697082 96679408 289314088 884936756 632314144 594103249 351298201 498488132 681561009 951860107 961506482 881404981 923020135 858269880 865428584 592755345 151478280 41828411 106679291 837450318 596035852 17257745 780132299 829110512 124386287 540222125 945495764 939323722 737008506 95201531 337833678 742923453 82139309 662067488 143856326 390697065 594997820 692240674 722034365 935269402 977857636 973358823 862123302 591570319 242848399 933767807 831220740 600428040 842860750 703977361 123952111 715972263 687076966 178206122 907682405 729719706 512563275 733599104 75989462 719424905 534843758 994312347 640709085 265003769 847335718 883609424 783007672 887546294 984627236 549692715 391252184 459167400 543902776 76685493 312531049 734774015 248655494 74636117 271806148 670989236 573554833 791052688 978438021 692825730 779336783 121405818 922085197 678318094 735857686 416588250 317447630 944010140 595993779 355820926 861977292 608466903 805798583 906744881 93323290 873079871 412427073 106798129 145487004 433531047 30558410 448354503 49326419 186425573 489485258 939381073 985699113 656920092 848932419 961002228 953265258 189348227 851917722 787888166 198502105 878224264 376289432 886179444 333452228 428578935 798987721 869776462 648141460 274903922 178260513 600632231 121116849 977603196 864169378 896112256 492808659 746869290 848710319 953903084 34357739 691151122 662773263 932979608 809493273 558162333 711219911 76322850 99058567 684345415 933640969 498556755 686187383 855743712 386126593 413034092 810094509 263862949 779197232 570764754 9233876 140154363 522862839 665946971 5253333 773577188 910144190 691654857 968137714 705339888 884062909 705050904 593262372 688035219 419694477 488132412 673645327 611378220 892099909 925512858 197847698 958437147 792582674 577662065 756284244 670989236 407897426 886886077 126476561 95521051 327665740 654025020 718417760 739899477 780512482 828508989 724724104 868928286 857723377 845986379 453966830 381941409 961848712 991285643 145693421 65988777 984892931 568005187 834759157 798417685 893179403 780201164 332809696 145372329 560526442 805743003 500629119 345092943 877717297 838695326 677711584 649184061 93971039 818976038 404217799 295626558 51851614 378459263 664888642 915722051 798251662 267434542 930802329 570375416 882397395 600566931 946649125 634523550 80874794 955463854 187603877 667012453 545754054 760074506 263824990 818221076 193332021 605865906 697256845 83827996 680645468 755526628 888919341 856823136 993570283 789999296 984856442 715559732 806649434 344651053 754384471 698750501 628073784 229799711 306770125 709341967 691834129 588480395 99789316 670989236 983970124 944332631 169208865 736909110 724035767 845077579 808113140 426569370 888715482 837820933 291701340 800655794 73400019 102304942 37321771 908372256 782086910 835107851 182544295 370685047 538647539 116923516 863307810 788213220 516809663 445892 386785983 43693914 767029566 991578762 545567319 498260552 217734038 275600914 936433001 670989236 824525755 834011874 670989236 613098287 206867336 54070869 225487508 484659620 661164820 840520787 166667679 838037619 870146436 901168782 751557142 876426096 746928606 996102228 723355737 953292491 708826954 920970985 234525723 635913557 332781210 962090805 367036621 601479501 813486673 763637578 269900712 24070296 590431178 379107321 670989236 433110711 874834711 749483986 866909524 58837958 283488704 670989236 94023432 807252171 27794956 863048755 198276458 660509869 736823303 360383949 673031045 700638474 222922944 739657759 465486629 886020409 943541152 827595809 468528239 690323594 264857790 746071078 121672265 394470201 564895994 308657941 882772609 196976491 712560371 862180563 426283247 794696635 233128618 52679407 669788428 888573008 778857813 641298503 646403008 270170750 866902320 159670179 600342639 240289309 938191737 649167734 546594723 99164647 436122101 831420647 63006596 198579469 745516118 738686609 986089112 749103730 727233732 58510554 212223071 956137931 113610272 667393320 889025410 158728049 790827380 902965272 124615301 819038059 219424354 742482444 254248081 433778968 690579722 695811848 695641158 692578783 670989236 745748246 889860781 700365788 835448557 895782245 913239737 642763087 788481305 749809521 670989236 596032844 753425550 46901639 34586498 142587288 751390494 129717986 846163703 984561175 450212571 769618774 143382433 516071157 235430015 745129266 806729710 306444878 204643944 996672832 598760752 921815227 712050453 89368770 138260795 677045344 262032881 753416369 949214810 275844691 174513981 440509834 108639942 680686183 887606258 670989236 430052664 646892800 512864591 962649976 816810182 858056375 715461874 942840471 898778926 873638648 603543566 897377897 877664069 62158393 891796900 475151564 772977868 786632422 121002166 768232461 921354487 930245615 244128168 912061139 81391696 993093634 681237352 726294073 403397176 106935317 528922627 432192790 695818293 832751285 563064935 631584803 69830966 585332397 489865003 603463265 974050132 694664496 468619210 876623304 69055898 652123558 809150575 190246640 917771343 902845558 810553405 940054277 173165840 958047576 235110553 213685867 940312083 375242963 373266840 679751546 54100129 841977691 719366431 932389443 723209610 968572844 489894132 920250838 985839568 852668646 329906828 714858738 760831434 772432605 937623175 772454823 604438426 823594207 40377112 587149218 828325126 949640055 864565174 270525295 139547580 991425500 978106900 53079966 365998591 923354818 548104474 679735572 5550994 742203459 162261818 898625492 670989236 904519153 930271687 672753332 869441072 431351790 147588947 880904851 836516770 340956867 831164664 322734132 57801792 679433475 951866743 234101736 658757896 320496910 421888543 393571630 25861229 135738468 166861028 910814840 785935449 457484042 970212246 725034351 391909323 888402074 770889571 803207812 774253137 493354688 995492049 923333937 919503499 305481609 205224510 145057801 867468845 211527470 209741271 896193377 846765199 792521173 262674719 605040213 891567121 532906790 695432863 454060098 842896689 280361437 640155116 796872479 692229305 447006944 26605107 620298725 450655467 892483993 912852555 928992199 349987617 961354352 211259506 808480492 670989236 561249153 779757915 200692014 847888867 997776021 668936640 91308692 309522875 419979155 930431297 831771550 561804155 195204879 851233829 310702720 178402824 208889760 235677342 825366012 693076574 790419583 332306519 670989236 978979233 199878650 367475318 915968072 462456719 786664446 806590429 35865513 966288283 883302309 672916887 180617923 533966273 725531586 395105156 333973809 20153260 407650667 410864199 140994514 876271965 987063479 573883641 204954411 709190812 176589631 376168701 985439389 779976924 673503623 70669 507775107 392954646 900021089 976356935 865741559 804459063 107385242 678745399 908568905 958006566 284722154 990787007 62732054 776829428 376117622 821053768 791239850 813204669 963705156 234175481 637548602 469010679 756856283 928381152 757110661 831762291 847851459 949072592 748900301 884625724 287435341 775542212 735547268 571746649 174281510 55839319 269593988 973761863 858308858 436413440 659618592 392511100 904455156 331495475 379801638 791821581 829522640 763835103 885512172 553941754 969816516 158640392 428951819 843466161 901742875 631282537 487726078 898130965 455840611 408505306 995652407 85451028 594813484 19395745 700065804 762486537 86480092 621850495 107637372 706507181 329182485 759227024 808180927 762706425 311867199 449976772 151125966 182021943 740740158 950308498 881753091 502874478 972356810 955171453 856177533 229051894 693406419 863332362 979490248 996868440 98457760 289785249 191626278 728493124 297762478 190798425 702654519 670441504 607083801 410019800 247690147 227038021 586633766 36371582 306727598 175564286 523590692 985678875 252964940 927049993 907648824 469268069 588150857 811847389 382287527 680843247 79582138 797059239 865668238 907544977 735949693 879248895 719137465 372098337 523370182 670989236 725158552 252621407 651491807 142531941 918269636 685424509 972819297 362274040 972247569 843774710 960668838 231871105 194958334 521223984 568413946 380103161 535350511 805244667 745123327 778691953 564569963 329247310 981138945 419087042 798819644 314070030 725867970 465591710 182130938 48272323 482099783 452244596 945471830 782619051 275383395 176883529 902909070 744691206 679216048 70322136 938125708 802988701 685605181 949292984 945054648 549389422 849206148 261090599 926197070 853115635 927564840 726001890 680045919 11995668 978862694 978677179 138739334 698568756 936590153 511707126 399534009 881818730 876382967 189543953 793147023 829294586 976308608 662078836 423651598 690356419 445067972 827372951 833594375 678265247 965437811 296821973 940701437 560266043 890714694 757701022 939814063 103969002 295374507 620203584 723688298 785086991 392500151 989813835 946815381 692789326 769124269 486774178 984879239 806542015 890733803 569108561 497339910 973950448 930528373 694627200 786269115 540523423 420555318 382677296 860039745 174384702 860435492 659951753 107503280 808249297 588018308 787424401 709299849 314054342 983352033 876010811 920938228 762651793 64464201 700960123 979692140 251544004 850220957 349950757 529014349 670989236 751057477 161729960 501591103 52093156 990447678 279880536 875523952 456241011 778471118 881308004 868662449 906753511 692018446 870900801 268229664 738839243 711183241 638683033 608536722 141468086 743925550 295949249 354335214 770468661 68748975 744286232 541079046 31599938 567743005 29152071 979755170 179716706 855931357 11254631 877763209 54705399 950731025 813030845 483751194 959156031 657334806 822023617 259593689 810219994 243587576 704237146 595198728 524092772 753728044 806006890 241962054 292446145 898906645 181643642 439021958 997995811 964850900 722721067 602259177 502030037 234776503 653365370 712191199 702455462 803721462 121637755 923879584 969723646 294084793 812318739 776975935 711361103 953350622 543225700 404438400 250612269 865852194 862497648 864818830 359139706 807844515 890642637 438169785 906622831 996009581 312401027 958989656 833617125 285382454 703466607 942892524 200678126 343772581 3874861 570847117 158122655 239427241 808297022 755577704 554516511 757196191 503456798 383169184 70158733 833947448 924860188 70868723 226400655 527046362 880046306 489162225 710747483 839385660 950141181 469125105 895000757 743029133 386954711 769610621 830024960 671560286 56009483 738557890 833640883 235032561 210333130 67627920 933505997 918614329 499727543 646552737 263416960 503491549 970545626 986299690 612250340 694196476 953852658 655431658 896078048 37723769 887998250 346978010 851391899 856977666 959786642 506380127 910462473 939578021 766104431 230194968 523076222 40546972 729116296 627497215 740454834 830547125 681594143 699711999 75213463 679824750 708028451 968021581 910212021 882856808 823199126 577596812 683798239 711333050 795137608 857036525 670572020 725816176 875801880 675822280 945460374 214747832 731194351 195776756 690955218 159861946 491226477 32077837 289984553 480901836 900998224 795884290 607488769 489159276 572871469 676443187 784423179 263338345 770268763 901196280 428516588 923101599 491107537 845450571 863455003 758767391 151010492 379248672 980585767 24571002 986039497 8313309 824145511 411573574 149506424 146278002 223883534 832785491 295627415 774971696 713950917 209766441 779020660 959969287 815300093 185329735 528579418 134535252 363249883 713588048 729215557 230335144 733208790 87828133 730025726 881228415 828277835 472597519 210150957 511789498 260382158 395612272 20685833 925904564 891999207 174699003 742232331 142217153 352612907 877722552 550652985 275886028 472428096 232445127 543105729 804401418 835007345 772245608 218565266 684628812 62721619 280702224 803063266 572052608 611547841 836076579 502390967 813730096 113839152 27182483 498973550 876767174 732601347 256759389 636732681 789500731 999472754 897018983 980660475 288763228 433893478 845713699 150118293 725272108 682175390 880422692 855289141 467582924 936910895 766629135 2124289 564362232 526731121 845416212 197911452 719564348 704709868 496942909 990818357 276594210 402503483 970916669 964794711 264939301 836069462 919749711 414297676 793916082 508092566 746139497 815518632 180239872 225807989 749403556 290335778 628882009 808022901 256820940 843043305 594827123 24472756 534366222 361572644 124668735 22531362 469245927 20146562 811799156 989926205 841769134 628747793 854832004 857607637 20692730 393220444 295102231 670989236 610961228 682519558 415881321 834261044 835614912 721298812 636282394 289427680 339541397 993695764 622043866 185285282 802863697 903791095 422272910 760320444 312719935 819768847 134777486 310833565 941219897 252907323 885689911 948640220 965174693 163067942 970662107 337506175 968251750 332620861 932499975 967974178 395546392 94954218 846895650 529134474 685557177 658949399 632875608 616237549 698132028 858231139 203993973 814709763 976825957 122589649 910982324 879363450 580831236 320541276 928603302 439603340 687695780 612900449 773504422 939625160 736673200 823320878 999549525 568073800 863196976 878353115 953545124 97420842 527219885 536123772 444501002 979806413 771926817 996931873 261254367 873045776 745759700 959620928 973871420 921070777 992478293 332490460 886205822 830635678 694030801 753596763 511335859 125477606 857782166 554056818 395906198 152245491 596556928 273576429 995490565 374352731 978155337 299328219 927911827 196079725 635370071 670989236 820860223 747870690 823864281 224238386 908329645 657606217 709133947 320337051 448403770 700677230 502060717 865489765 410726515 444027389 183781444 621524656 646655659 423712821 134743740 662666437 920820291 529812698 517782731 721640583 290039033 712811788 339180242 815096973 586429231 394973228 855825191 857330684 906728766 372514749 801526941 291946156 706685080 531051390 846127088 365431482 15754397 866632767 612139241 235185472 76916694 524902059 44589483 894816627 715072366 903074687 981035563 300252771 864934203 743934051 680573593 166623390 705834495 904633589 812325098 814137925 719408398 313421894 912655730 113659004 884316107 660917898 99272129 812011682 868243770 954250475 12327278 728580458 755184487 967929767 895595840 442036128 310908447 969221485 31351864 670989236 780779472 730588426 794477218 709805614 977566320 188510847 128052562 24706258 917448292 272108700 738824148 760903198 841339408 441146924 96634863 827201396 962048772 129476830 720574598 249484114 959814039 483485941 741927517 413335082 715977089 203953101 947200899 356296071 598930626 164333048 959792652 558568437 929089752 670989236 24476109 119422373 696410209 837722244 78778450 844979674 815234020 427933546 706880677 898524154 132785619 991865520 289825867 30480211 872884813 770542800 650177317 693954362 485788180 805680581 605820013 850059621 539681000 875356221 727764788 95308554 959707582 948343364 838143300 998331170 901035387 905993094 663522149 901379131 426137736 814024156 739613508 770861244 779415876 349870205 894034037 759568153 946293329 649199544 940125726 940353881 732488022 359410915 817798632 475700483 165305897 884320718 192814213 748683143 792027316 293640284 977850317 786908227 380818539 449981830 679423864 670989236 994139883 870550505 906972059 924537467 245442120 821679811 874225319 893532888 66966666 542080668 260612475 696191879 686337112 346809088 225416318 637001572 135555592 83619477 298655249 721335096 24030849 839070449 995681495 848908982 283046265 197069 908642495 57083164 83936048 17937534 106750012 714253761 548531912 696191394 657418489 566490689 710863190 659363548 518925344 180356919 895972614 539926563 331984789 717509767 813932958 551432623 652838345 805002834 689600692 815420558 258945108 699193260 757413147 466154577 783102904 486566095 379503275 752267098 853801221 996291464 863659560 690433658 548393892 475810946 680406051 968511646 294765055 647808685 221412557 532208746 884074661 927430395 669188050 354721231 499460803 9646496 750405892 984194876 670989236 519317474 119923215 679571009 852526632 848727319 67286085 871967581 146547155 494093688 740997776 398072188 783677035 201888519 327077758 180962864 83832987 898667912 82181556 718027462 533787575 838182698 144145072 126761036 569267157 934136012 520150387 850998541 376910577 963437617 883299966 192986186 7357043 467785330 822796640 839052984 735096543 948541174 821868030 128500535 344535331 33632695 635214394 764869487 196629286 620704111 878526526 961433297 456664276 956912318 508033683 708947312 678615442 583852992 489410310 557758127 543674143 127270875 761981818 897175227 825832809 831426192 838664338 86693906 167570266 232253405 488009848 565094518 133589643 618927483 906334481 300918587 46258567 912322925 699209412 985771839 507685290 882572118 409191806 988821170 34903018 544584050 695741524 741355065 304785754 930010695 704340777 993541913 670989236 796060691 905650903 704363523 483358193 681124306 536736330 990656037 128366273 843812835 968047874 557503731 483721198 574813644 990449217 20429897 3130921 321636463 492385355 845977534 898052833 682508716 254251814 820523300 900788107 146088995 456972069 728067705 666218384 739932366 325547929 498370029 426666051 245830923 951554826 686667017 815233715 444060467 676038501 867306931 434511994 989951295 772072943 987133337 98696098 335062805 173421213 862150916 741613041 140757183 783839064 914709536 680864069 606780916 851914450 375348494 497592806 691045008 373480703 116331780 929497141 675567561 946590100 776350244 255096149 721346448 980874720 886869167 233163758 583622389 375628243 364309871 472919199 826841752 523051959 642418022 845113506 16356042 796863845 759469916 876993583 712767744 744803828 906358629 744324323 371123758 990291564 161388713 514775928 591387328 833856641 89530401 913408301 127743189 532647457 768104176 230615706 921088016 770068158 472492409 685720086 391573617 880003300 256534021 485403739 803586778 83472670 392123166 392271300 810978261 165070169 823069153 61401693 926919966 769834024 937860766 217978359 598146842 912582533 733212369 82335464 285923756 184357700 209602909 69198486 244832598 340772439 463401137 970563932 343164012 856836988 289802933 943941246 785216631 957955835 150392245 806877476 85271448 557319351 787906399 250263631 641819676 260665758 778749198 310090756 816668853 142796121 495974377 769425505 961399826 826457672 248679018 782858444 45954135 670989236 703400356 14259580 717797071 343496960 8430260 707420847 505590862 780419403 386267843 425910138 310048414 932886935 910109605 852900526 660096392 726943174 855379726 828788445 35345421 912776360 445444586 868428699 443540873 805322696 760808814 727998275 930771231 731708460 719720901 285392138 964408940 388364633 911765564 913887082 972661670 702231671 114699011 631862158 715946981 291246091 728477341 466039873 872364306 314841415 801655076 108768551 705959529 554781981 326924413 654664589 971831085 812052063 691777179 596846318 708104038 877951736 676956379 976884705 580008012 706379402 189350101 993940942 705430048 217432021 806294206 869496431 710753021 562147211 754205994 591030430 545204232 981224428 161929862 504576517 748041040 931107331 990917643 189777277 794731837 937530057 904294648 730613636 727072154 203817721 635441055 688122603 248620649 879740805 690879059 45431464 953129819 723031282 926871208 738548740 967184133 851538727 579569772 822096796 639453390 592296794 389106212 895852303 875905176 159003453 117665103 760829353 993159784 645998728 170829082 517120062 297476674 642367002 188500040 694413462 880658992 701708520 283379857 952098901 234141257 791704423 406144560 702047191 845258904 845159910 824524425 567259395 728906654 275346152 837558848 254038323 890401387 709738036 874484873 745134327 939884603 111300986 695905235 918519644 901317684 203825905 906222262 790157321 408828905 992242659 219387012 230431839 539911240 852212346 714109094 424978306 704972569 410229603 963444268 564052200 127713959 424208619 196966864 441727056 556201145 74366600 428098757 830529923 670989236 934302377 934161190 498430774 475112230 86504745 651961593 920173436 422449730 696713320 140042667 667530944 242978974 413869446 166609643 670989236 521946471 546932042 254501994 29899079 576247127 564916410 88591528 648638364 590244005 132267821 996531475 670989236 335618769 324524683 429079237 702413393 686217714 745500164 751576229 930196511 299239194 228120132 673979746 968762811 727138094 570128672 921572506 825505157 732936697 240113527 744798836 898245644 439243314 115458075 418471476 601415790 822805966 797880957 79029365 353678764 874890072 684542132 725934145 939857040 511247608 505791859 746410098 531509270 779848013 254718738 131133426 664860475 773433324 534324353 244431514 612618274 44392487 19849965 727467090 674864943 744407667 56593690 51006016 531917381 899233299 269876317 110499823 672160136 796898182 968633365 411349884 968735691 786793233 643265191 340254350 134312176 933739619 178560366 918498645 801403898 25014490 545819877 786891769 477912894 381876476 19449445 253482692 815193957 418073694 155514163 375293930 801524286 192647811 927723464 87773796 731346305 517795299 654219065 72192808 870646641 939195090 736282391 678398842 996024350 670989236 585503181 976215474 849003259 981343331 33053738 937879563 923627827 578017566 723706000 714875841 459876276 746977675 834377251 832126392 489943058 962350007 688952192 251857443 738091934 951041918 767050936 443399694 782937243 526163136 758923653 33143424 762398165 689692804 376937607 573629395 781209772 195394602 689756407 673837272 675860351 596480883 174326309 221685976 998443550 883693447 849859303 145881163 772141710 42799915 994181537 96316273 402360022 1732711 805694802 652339985 805981074 232240508 790864031 753826199 565672069 521601347 310049253 186461485 271387806 477391777 198405072 614626248 873634081 312080086 897042919 226516011 892359386 288592870 988313287 230471475 536310826 975411537 808684364 685430685 222925533 882833611 823049939 230354209 938080522 212348062 497746803 699993065 150623148 631869753 703539156 767431728 906852049 784169819 236269101 984419348 878333474 351604145 352014395 605102917 110225481 180902908 495346652 769724122 867517226 847124011 891405079 986353008 806256439 250607980 856714805 306854550 993490873 45979779 141680649 877643450 944600526 305927793 850733201 159590051 404055134 585128016 670989236 562851030 670989236 416541126 664348751 151633624 958627027 597577558 564569023 281570787 528417424 736114658 60162243 506996696 65995097 813055042 958933275 647800951 563535951 105811642 684452407 753748915 756079537 33385405 932744028 962393609 598284996 986177390 671631093 187657590 966902699 743710239 329973607 730232662 49157414 819731101 893534130 722130004 545611592 795892439 937838457 715367674 230730152 971736584 361562675 694834052 314859432 980981207 268279011 877375264 954186003 885219235 726848630 385883417 150124311 218566297 397844737 890629790 994886253 194874064 176405602 869854394 783764235 358536127 368266174 606945421 410005365 926643503 805019469 264946663 703794100 498684874 702700266 712891966 314619228 826849030 956765639 689889916 813375905 404048153 388104531 767963677 670989236 659332795 210230690 260224249 816450657 828013984 301363229 798465799 150822987 805397679 836452709 441720270 956067576 421826916 908916250 720517999 982396802 243038465 699851875 592443812 234260448 911464988 206970732 340783880 828690971 420432554 267461405 564820622 558179365 890525970 707905489 916881115 16275682 880861008 52065331 763927366 939780059 564237067 152359073 771417188 853824403 563965517 699310978 945093818 947195469 892448910 886325970 801196433 301770781 136761199 61914893 948373038 839475844 773233689 45315420 239573274 926683175 422835034 721211224 930628424 962628699 969589902 714942414 531383870 761486184 318882027 768861930 908391750 731897495 991481605 630727294 130658327 777339233 670989236 412894703 689257178 881820601 88249822 940275769 729736622 62078969 742366164 347678586 190321356 148135193 678497273 976858576 493120679 931501016 121562557 249300090 376764134 864637182 786564101 64873892 673052569 700019957 39279967 343531320 567316007 797479800 769638620 567519949 28380120 612222624 633891186 670989236 208576171 160726062 742787881 220383408 936900428 787124654 231464236 845491715 925473861 276319982 46214370 294301149 78315961 200059003 598992139 674690671 840736727 37429561 575231219 731277044 337611388 881430419 884963498 672152061 88994053 337740255 859524543 925452523 812033818 497108809 166863128 819148475 113683941 152439674 670989236 819948274 979343079 828737785 755884174 936971 878650857 985507349 819763345 144251703 495780576 256170812 408738468 760237405 687016566 673059325 926393393 728548411 910758949 720374089 732486523 109408776 909821883 868176672 680914676 415150207 797688073 190962144 724726958 108397885 751931555 68244785 87005842 324388949 516167523 874783834 274214762 474532451 628410818 823917333 101129084 435559352 925844971 317272312 37839532 340739157 287665644 909786793 707450236 983863867 5403673 703337691 730375818 864748847 852411850 676740882 198041556 427755801 384506873 296547593 914231719 701920728 198721134 205295847 670989236 741050649 865576613 9120692 403764959 408049821 458000313 121407117 811680594 487564615 908492708 940232694 305113265 611335813 645383398 759590214 657824002 377799238 731888191 517914872 883704252 813687794 704692317 634278953 800944013 694931401 938968029 814330203 766956686 747318998 847687434 812069410 75354064 14704593 255060967 913115751 293693995 265282522 189916779 937656024 13103521 593546722 771308627 726078331 914107480 694544061 115171960 746543028 854838996 282813580 76429719 631797456 940590817 787551794 4449273 689368351 576297486 701625012 267875031 232585474 971801916 599624090 844255385 720502373 505674021 974263690 129419955 546141389 705243668 337247416 604898003 531309029 733602305 537924430 899320988 942945061 841848583 450217767 534588789 899375221 841204785 711246339 855131157 191524768 362108202 648081986 74536751 768610246 803966924 117661412 712359649 289361058 779822699 286468792 763055432 525885500 674434870 827658506 675693496 85483154 617564350 958746729 682941360 928104324 643597098 623161957 992825635 894485293 778031129 199377082 691359359 716074846 761805733 865945452 672901192 761682182 915962782 831746045 956144178 705373591 972399546 899005851 251883293 490626150 700620683 653850859 191976409 935543232 852653957 380581651 194341587 675327098 193940223 29456275 945428537 157026680 8166697 881127924 937549844 260281506 551245202 388170120 52773688 909313812 739194791 980669354 10206912 914778052 673240300 323168614 376141673 670989236 769658615 882156354 587512137 780577702 475937691 761528132 848275133 950092714 737722511 728985325 318157320 863456186 464196259 414108490 703314446 730497164 896850805 173117284 922601287 994135421 73065102 158274333 782124582 646637551 136753070 166675155 690985772 624670763 665087691 16991311 26999422 670989236 491546546 972419891 879257865 937112191 918192518 272361653 821708666 120836841 939663411 582397838 159484135 174537265 945867317 751973527 603506989 734265474 893922170 321219827 122924784 744790610 947296801 812635892 369314904 953907481 532612352 451440498 432890119 796482986 879309319 59317977 424619663 57122938 930121239 982990752 628711272 548080684 675739060 80409279 108877371 755813929 144033028 325282391 863510659 237734822 401534083 866159786 821443965 233360145 956818539 924518316 563826877 942761257 826413922 655109091 707129040 986511519 520948259 18589932 736810614 109817702 830549142 633267258 634675053 713978833 415697941 806450483 571660407 207109351 193602876 965065595 152697050 522798784 821219387 845492138 967497721 174996612 427538706 619108961 799699843 945436374 448487960 789155310 708076239 450254293 449336113 884834865 881463016 587530801 26497259 867113467 452383413 739739572 811514956 943249730 455213419 447131894 670989236 721589592 542009584 205583458 750322882 792066046 804443478 33442637 76660418 300402909 238039372 821136882 576627097 990782031 738500061 667427083 881890151 241253653 782014164 57140457 365300554 672890957 292885447 869265932 811738393 704020674 585668508 787685144 207638100 332139160 561081477 668748751 432999553 475470321 288265501 595709606 550934625 609361536 441835140 41429264 230801090 315741768 176115410 462153152 534309616 874170953 120392196 17262258 830484442 861583019 692935333 776210769 634716967 58794576 405477372 740668620 725633140 801871654 762073483 623841617 991773749 604668305 983385851 74307205 834781796 272374893 716563818 206687309 924191133 728828516 711215394 530288460 431262800 828524899 429230623 675252105 725122889 994243989 137069321 990328966 138854203 852490512 543758655 674011434 179104622 291013757 947055996 67217089 939828921 983083828 433018812 728072267 409389080 977458284 721383262 214718686 187228414 29092055 806136575 707090025 935773020 764829960 864650540 749310703 54498359 719202918 365094901 738795802 96074640 857627358 346721876 817738096 443389781 78694955 663191897 870995020 962749597 49115612 824954582 114387894 980468973 759649265 565938067 8624706 204570252 647002945 404709263 899021406 681841458 244389197 670989236 485392887 944553772 985797056 61591881 670989236 755096338 553952587 166617908 480976568 792570907 955520412 588042686 523966920 495367909 463419434 913726271 87950995 893869653 997888127 581920461 263544178 50242599 856266600 745017132 423408876 307579118 805130230 978472808 242679985 382201852 660838782 876691408 893699388 682421389 778777005 991075894 627530157 532556362 113024615 78193351 968642142 812433983 865947141 670989236 587934433 698824665 580649431 647936741 19716144 494610749 864003707 843928591 802310699 816092698 710710456 53332320 903143315 954866791 885105634 857204008 672145940 784240314 257830186 155197011 914376999 745415934 804872337 923423397 914399079 451161556 104125219 165469316 844854399 758364844 423874711 787416806 754481198 686783075 469919527 71466024 815917544 821204032 84621956 716412187 378789954 780861652 925823414 967092554 111779052 948210340 790550487 915076497 228309817 122083202 876946578 700628661 338437690 229434843 295366124 269261256 821431365 548372232 627583818 664646069 529127684 921428359 677837947 950217442 869739674 924891187 898768507 500697507 78795153 734895138 983178405 133986071 732080366 718796065 454333848 843325118 823476968 765302928 441292353 577708357 773196541 71550768 644988732 870115477 451644422 660390759 503632006 535342573 286963629 701573234 803406693 73193097 436651187 907031776 782172768 468708213 630506764 814696040 818660970 933499514 887051667 824347096 777460967 771052651 640703682 508245562 125489805 746766571 795865563 861951223 499971686 641184048 374363010 739256686 801636302 961662507 726618121 803275418 416433366 864597511 187069480 55468085 714075148 755181740 859044697 956533815 32616426 877077171 945905343 305772435 679362369 928129077 23696782 60231519 986939073 910518855 845443302 591475980 996323380 636283888 934496521 190372735 787838391 688599547 856554411 509025532 946294691 979502696 548208521 255775816 982701280 584392363 836519219 856821443 104769384 759085794 705024133 855372358 385823287 100195368 145168755 965337605 573649123 74158813 650935022 438046339 761310160 957001910 602914656 748797545 271308276 531516145 926776657 29925120 733737730 345355414 808818020 994492883 950939953 37431401 592189504 687840970 416071036 742562398 485301612 828640371 172871235 813795764 866343475 370494197 789420993 321857649 622180018 946391602 835235762 472613744 899843512 72774897 274927326 411058833 867182452 858936907 332677810 858760523 838905764 677427012 36559193 872919836 289144910 397960028 769303383 845883308 112370337 971350170 941645927 841957186 760994322 890568867 833816551 927628276 947283391 9266762 378770491 776251710 975042517 736985974 406442757 702674422 911558890 877761391 897897384 119905474 925237309 677482413 469498113 886072278 978101177 397290587 91775831 389145058 726652187 796428388 900436278 554520601 798408786 374849109 771012899 853846811 164661424 670989236 310306938 305752515 975812921 768107555 903337201 149145516 910460858 971411874 85085826 805164126 863370119 729602202 530265434 722688341 468066377 447406004 982426398 881757261 922674946 939134556 364383574 994004250 320028670 982069934 277484604 754029277 841690586 232109673 755866222 529463341 679243625 827569955 713173663 962634130 216873284 488528337 794774778 786668092 950290997 887687738 618762122 370440516 376707693 196403772 21230085 67490842 987302623 896442378 925622250 599408931 334634686 682416941 877409809 367002743 704070904 793030265 903691281 16071589 53736235 490456405 670989236 393963971 814898569 266565652 891014454 591831554 727852357 740015067 199524033 676683009 632211881 972947539 75395070 205955917 824626151 759212149 741591995 670989236 947856417 60907862 789151266 482762204 217730266 476410823 916425518 989855681 964479903 78720462 901043749 176221678 263702078 952007815 124192848 973764097 791705225 671592924 444752885 978154454 851945800 796981132 158220229 316871634 305496248 755973438 689919847 512699619 638943524 97842276 824998818 360690892 414273541 141526617 810583916 497828834 886176932 315908660 521589359 336369731 377042051 560690545 960527114 801155007 825997695 401320534 259440655 352426480 860685028 812995275 248337950 351162886 683646043 792953520 268267406 363845508 951604679 848641231 532182877 692127154 855020854 18593384 584087218 295712460 791125965 297558270 920186190 467562293 812228122 988640828 585209412 277824635 21042398 758001018 304097840 226968642 942531607 130766886 623591636 964301283 282981054 371400847 384650491 702007768 545366700 729469228 258158350 711000978 111525454 823162084 118646656 812235454 755594045 301110250 762170600 516561268 935359782 873679949 352832885 318809072 894287986 66986973 792274469 100828002 830792254 334363930 881044020 873750644 898705657 793690049 512771447 750289103 916066249 276850098 931110442 907090085 300521525 16443038 788726092 88719907 984008186 643028677 831466720 929459694 440257204 928642662 479442496 594222251 654001454 730883392 911204290 34875706 786027006 507509455 163992785 728120236 753760614 831028606 652813893 951090759 392854550 131134341 963331944 844856679 89073986 306492103 670989236 860435139 311406515 461145398 769495059 894051698 762264058 993548875 179632420 886569844 339509757 578804232 141795932 724980462 915943610 953872068 877671196 687867764 138071358 905172468 945260111 306833087 10083157 468796464 36446342 598291806 703337731 699485463 181065823 800993536 392606138 93482538 988646269 515712502 3471929 800215565 110459597 811367720 960045622 783473782 757048688 674322647 739383822 62027116 755277377 111898534 165700893 955166301 849496437 845684340 384109445 432720361 30955950 605647423 900170586 869703420 773647013 936146429 913248599 977724257 177791296 836747664 434526163 846255335 701577060 622428442 20278373 67599107 384263434 931678932 201090178 173705543 110467084 522058933 167964739 726304220 670989236 300207 786755127 3396417 661680007 853088470 278607019 869685955 723304523 685325324 501844501 72277667 239056656 289865804 368820435 841699176 983253849 611401141 239199485 69980216 825674841 72862678 683897284 514871406 341423206 900037288 492053272 868274027 950901394 615259241 973179809 964399250 897207066 622530934 428007513 991418211 808232660 519635556 679841481 920481831 745552967 333292973 697659311 702147093 318889123 699861319 916137039 927445044 590039790 846276206 891756737 122409248 266921600 965709945 73328206 191311431 761647316 113163030 344847996 758248181 285441522 902558416 322919987 808045613 287622187 331045041 797513225 897917507 803987694 135220258 670989236 256482801 897520006 22864488 466166460 198723225 932967350 322367951 670989236 249954645 665442680 657058053 425439061 185314876 703546424 989122222 749961271 325644428 679806323 337463375 850736177 724945607 294812902 783151608 56053855 535864596 233609531 842446336 576734828 52271732 968464855 880011076 670989236 670989236 893523192 341915512 908816902 760837123 242160561 945177182 852853638 233479672 394137439 507606160 425194771 482384677 140411483 73125182 476764219 422116423 50366807 228394999 175824926 889935680 679499247 472481379 927844123 678083559 941445437 690009269 540214762 51076233 657971122 672445017 366324019 441770112 583153961 412155184 937855696 835853259 318966171 330110340 899234238 656961472 61576957 737130395 44147560 394936893 297647259 814415841 978051384 976729516 292648234 710933179 76533379 901196514 788478224 23811251 721046632 717906992 852056405 835030109 862184576 960248420 654618114 968432331 273224578 670989236 585284262 480114975 352367338 285524123 889657724 801528471 994580379 70276543 611196209 216235492 405942932 746949938 284935576 978056803 172707671 555689175 861382876 66566756 983584270 145251700 294250608 484552753 590415358 939205683 992612962 980013711 717346324 322691340 138422222 746203167 34939569 115498158 936975987 876171023 750483578 870814657 543066915 941235658 168095523 410251822 95528214 738194310 771401145 975675987 28439370 875983384 898825726 179336697 530560959 101976323 105003238 602845762 866812809 743405618 229690784 846731322 603685602 463906694 882558854 693980486 873354441 963147426 808131593 490106319 527771391 721412536 153078691 752661025 957781891 210486796 838682365 149194176 238444760 948165835 656184013 151070068 735984947 742171977 738995791 957219937 728840444 980280123 999416387 361985392 670989236 796246853 747607709 793032567 908832209 569676858 739774106 391625924 832695633 939653951 308226117 702389148 445797236 233389977 341383162 102411628 27659309 723045812 209413826 954656875 696641242 425949113 695889198 220923548 677501580 615966248 402385367 709515412 720005511 690768363 700449213 283010537 394583973 977168938 782886309 135138419 482783288 733168085 376429458 455935220 824283016 25870770 751318443 371272761 663263794 144156230 167210372 184974502 952793599 751756729 158428023 242454587 897289675 646244770 795641571 729652796 637084607 979543504 166253867 876440455 576075556 676290808 96883764 872249315 700759287 999275255 510073111 891418026 779202535 935637728 692925442 752059008 332440389 681094024 187053595 752484508 841769512 339495005 274412929 691628969 629980023 744833671 995456823 341582418 823457134 407568296 782559583 717148430 908571495 821309844 313764218 280054552 456603541 906418623 110601173 358145142 182960044 841445682 947143163 837256067 239232986 782174032 835104785 81749577 29524210 797650559 384444634 84491132 469665209 703379996 72649400 978811929 678339523 694340499 872604611 589557393 770229175 959993797 888913892 179902673 700251110 102031438 557434268 306917734 47515333 659385507 301972414 882785744 459507917 434833995 456422202 831980921 292672410 670989236 795506944 564592902 455721778 60027078 942433444 269175696 670989236 811470480 880512125 881739050 995378064 96073372 635783305 743611033 751582076 651826839 737999499 547993195 443691254 208992447 708771100 712254802 769646968 824850594 695712920 844175820 715800280 678003927 780102786 300995643 837041418 866140629 280869127 441742029 641001823 791173708 732879858 670989236 747008653 269745570 900390744 824918175 988285635 812256360 950674092 844271202 670737630 643842579 827681173 597505292 968032944 830758991 869160557 968971397 615054216 677211021 899435312 735646053 22904669 882573210 848445338 544143615 698453582 272965433 209551682 752449403 736193662 123817266 787113836 828059395 698883198 990287332 5754329 158614825 414785970 599348835 621900845 967666632 322436731 970285146 716990661 719053431 763073072 684487762 133665817 552090754 91333972 547205031 346405164 122729458 753520002 33626036 808072498 846661102 171028313 129080048 680761242 166713482 746761494 881084094 241622980 818544888 669017496 700443320 757202098 123657334 897975068 126813734 956763002 981319560 631638762 263015326 684605763 314250943 398625270 914103370 793584871 395352949 839679901 260018942 987358079 961845953 403266599 901966935 829091303 246814960 126961535 371155868 582931734 728845382 919894484 923558532 641241787 395702078 241487895 232303533 19126101 571202373 921534748 777559350 572584479 254839341 114783078 1403878 594444086 569090856 374919994 966728330 357423701 460546441 706960696 849573145 826361526 136359610 996795507 760593161 661343929 654125887 100443974 851393429 431831978 131750715 784352827 893715371 865618782 589766291 845078803 161110245 630724188 522770170 875891087 115930185 685267032 975676062 755238174 994122756 455210371 80033995 712531020 377621984 535018559 945802597 298058443 459144311 44286572 155767537 833952770 723843882 308114862 798305769 736686213 439400275 501626473 500347311 748167532 235591417 771937879 921783097 627741100 742561179 606797933 96131509 912108012 712143326 128674175 384331925 240573899 91138518 720541205 256759742 907833254 61164013 726958629 491872183 730603158 92037531 567860445 316620114 828738340 966313075 963999530 517008382 698073145 774134287 521588820 683523593 418758678 617143586 612675022 393622370 313964331 141438407 822855216 928200296 46388513 718041970 755209395 670989236 578661979 446876232 370162745 735370303 895147665 396015132 125381796 306074675 402790316 855653475 283608726 896294391 990794784 978265291 301602603 494605129 226118310 670989236 907924646 866071858 696007541 565348586 872361882 861481034 829921226 266347585 875899599 892561782 187521313 935983025 220820760 511321960 195017495 788539798 90537758 68654381 102747228 240852523 226350770 884289478 950607779 216678480 927520924 984882738 695818674 747608239 334807626 997265400 515510089 516237094 424051927 970889673 812401615 663294212 798484136 797011491 633919334 768922786 671651363 809691751 601562035 971472844 922872217 763094529 814309272 365983978 691295208 898807304 745642805 540938231 218966384 401928854 722307291 548009941 119690391 416587439 810666433 936481337 351688504 630186762 13161061 813605786 806013263 165134501 192347300 328737456 359534485 836992805 153806496 828070539 518343853 125229624 2404491 445585136 461653124 316514769 716994106 333890602 499231612 96374140 780578683 544568481 576572908 751822249 619289355 627398803 887292449 758620133 29967262 610102998 87531532 736256849 369853335 982243116 971208297 26298784 680733177 726825744 433201984 132033358 327881864 644838833 682469429 696987273 989362063 210007146 138515979 586122822 882206055 668556366 378664066 898179641 860104203 954693259 891205599 986698602 975059300 367917045 758135047 230118197 726648714 784752152 717120571 720289207 361905425 689221272 158436509 782093831 721430537 831463494 503457596 302229666 642932392 813600782 330455536 509058900 33210238 997121501 199333501 240833462 838349856 737838584 793991191 889101595 605661853 435283323 813997646 983475226 703970848 685337704 688562018 726432675 330370429 828081682 833702843 100090808 803759784 906828632 852431720 659192937 896031516 521646747 349492490 112220207 831480892 266464180 981039670 335353791 813073224 853777789 412328599 715928897 763726126 425338033 739270875 744824027 370909081 443134070 517422342 594335183 132658060 876785293 759395208 356265762 757971752 593263476 597408877 809612714 670989236 888863698 902160911 272212712 467229565 756777161 32514253 291718095 519216099 797704378 606522492 558852070 651538454 833062825 886770061 686179620 770344121 879742820 124966220 915047022 671422303 802046699 867375001 734449562 669564484 958305720 225719845 31718971 938302562 713230442 874601545 688084040 169934317 670989236 489120112 328816600 841884807 177490502 660169141 713122895 892756736 428767038 398413090 138004274 167934648 672219587 88237423 532833568 104040934 475629583 876051863 562231095 571506914 674626297 290413019 436447417 944089428 890201345 868518533 514906459 753235770 762847206 283321340 944010496 839146498 159727786 619700927 939501074 804125769 446898495 812013054 957558543 967065961 836470639 745040126 509439386 315802654 687174162 758000505 762731422 433800085 68685195 795295593 691775881 923149607 830731644 197888134 958151628 708319575 858889583 326597215 649925977 909668984 977252625 105484822 110268055 712275673 799253267 714544079 747427579 976129014 931938397 968753334 410996084 931029070 195155292 579448912 261826001 71987116 582108689 57641276 612735050 702489573 816571788 370926377 703200734 76267579 924748388 409605634 997857182 475620541 788998355 250925956 552590006 748850550 683907695 694090693 824398112 859616588 984714667 155494576 405061084 451239357 708816100 605939301 36817683 210240380 143285448 189499473 579230408 723347908 301679352 758248203 494770225 548993876 938741345 363806940 843781970 920888307 229453781 868617859 264237910 711480988 742731629 547979398 958869127 15289936 350499593 2050506 256179090 202227154 732054970 75299095 853382854 633837240 951930142 999367467 69779316 830411194 862390012 611700375 887547700 970820137 733433049 974758064 585405855 294555668 970151098 52832984 486119531 552608385 881286935 772682673 869847164 455391538 603550041 350417792 920588529 727978958 717021229 225716943 562515139 10653580 522403925 743310348 987596916 221727021 941401893 259210990 375661574 855173839 570447382 851449167 724951061 655955515 75082640 780001618 822484851 489895898 625193949 692424907 891877007 660665598 593116513 839650762 264153815 986675898 729141150 793168663 894169047 616242703 548875337 528076527 976889546 328938159 307174407 669658104 986696137 786356740 924769293 884532822 423235605 731487407 733880265 171227032 949568647 638591275 872692134 544018076 89728781 918566962 218694878 409931530 326064560 561461432 664610629 650047738 160104330 761545688 154056454 42171433 731950168 375138780 598563291 255873969 353136584 354991157 804603299 690280994 924294642 230142941 284893640 834554013 201554017 24582510 673483922 337682319 11288901 962743732 755845128 276131745 467162929 403832661 687964143 799974114 768834873 391423931 948523546 7149468 433758078 445524344 970618241 582389695 982513393 875454128 879975848 815181185 162826207 848522349 904659878 642333951 463469740 85981043 42885372 45695410 835084183 160787664 736342694 833814157 643138385 790971841 709704025 407705897 874751824 101811081 139951959 596148439 908232327 524561261 808459524 967538381 670989236 670989236 794574396 496360979 99357603 309736190 137804893 805512673 317082266 938308320 523957839 335375138 984044884 932160508 822170656 713960073 682087424 179753923 236503652 670989236 845303540 980697109 608029324 813392259 670989236 816459191 314527684 855501063 645480301 903672533 919793505 818079237 992744896 901685208 535417989 804485547 918613906 619968871 672798909 725356934 435465866 72311837 936465934 590775000 446326674 841716834 866432220 261008146 444121410 564399670 510641938 229937413 162813242 670989236 822246320 379999772 829040401 109212737 724499243 329977498 548189309 280952756 362847807 800472026 453136056 79897311 677179146 873381646 626602510 250173980 847596151 965339363 732705574 978531318 774647961 861122217 868446141 876078782 646784732 550102044 810420760 400093269 326674178 787853258 16144783 759512112 914317275 771206991 363014803 323480749 746529901 518014879 692501245 514153184 367831024 216895045 692828122 45171634 597673 694736387 681747320 515197628 827510503 737472701 974771238 954836150 233806761 267392399 260453403 968860691 13513553 421228139 335344138 422264258 789407551 389199779 72801584 403510248 65938154 851090712 983393051 294525594 943030289 961111172 260418102 75565120 943934690 670989236 946659883 834252501 981025374 78839614 772632098 626157414 131443954 668720465 222316967 556231179 670989236 671940549 296310483 301138762 467807643 386430683 848181051 111580634 918517222 786178856 453647380 247466516 38932448 759811586 756040275 814690692 107054479 835429361 718906421 229030531 393433539 407371969 598868777 861810547 896350443 199676780 694353272 378047769 522530889 979501176 367948983 455158574 733518358 966848386 364041640 876393339 79961318 897408834 678053409 83076244 956409707 670989236 974534206 831867388 719243231 17831238 877606869 757588173 413239206 184800764 878317730 167454224 863831369 833902840 821115816 849956922 983384316 890052370 14194353 761381517 735569636 946374322 84994112 857667923 479905305 588901742 4572645 157738438 568924441 904420281 379325311 318458111 82938060 674976256 162186624 191815501 59522693 910309468 203520980 848190344 415083943 607239224 381322209 658277995 320652130 684897146 26187852 430792726 878902 317839446 854217462 720377022 554331478 720152549 955432256 846585426 468162835 553637221 388198662 567690147 580563560 885898591 776137488 765686822 831910348 857052447 630990487 387688186 512778880 338843959 711388870 438114412 377175580 725207751 702105002 228221136 891410726 889516541 905933327 916324850 331264977 642068895 851546899 548020521 782851508 462224733 405161518 208850972 789864896 887558952 257743889 697034147 529488591 843391880 949831404 917027252 278145057 715346133 778925744 278889567 391115836 869822967 845925826 451390033 186258774 967480336 261034636 763913714 824425268 408537678 727293281 885897609 855695685 949720877 793894567 244868908 833089849 872208823 852629309 899329319 173105843 625835148 155384871 804707467 781398421 260865090 963807864 194351061 844899979 83314270 64800440 458681565 821797919 679717693 534202255 151508055 804919315 790269051 970388497 230315520 765778159 641329881 259440998 345798007 17350239 739237073 866785886 326982534 802940404 790086396 473479736 112625594 415135617 909999261 16455441 109137982 884634408 349640416 514202948 475782300 812386307 121891045 610686048 997196223 804426001 690786328 297651769 274144871 971221983 928927558 291557236 712205683 707104296 715581915 462793231 370204751 169709834 822465659 410087239 930626460 815944242 213410249 58771921 929033538 950168718 140437080 214587603 918664341 884190852 43602381 252953682 571476489 345915060 828297199 26289840 917321649 672994431 978986690 47895933 233702109 973008513 386536166 918181607 998022044 275142212 847914270 656831585 556363819 737604485 721187285 570807409 49087263 908424084 889629249 801863138 670989236 408003491 876535547 802771852 358557324 956754896 48875824 670989236 938807808 939454974 946830367 501562030 18232917 990264241 743794662 113645989 944485121 627092887 915048560 987100645 701046033 853957822 612411532 889989634 549859136 902994190 289873832 355221765 114301629 948721990 856523366 337584622 518323920 284910654 843579805 12867894 549032978 443986954 703693492 775909569 117133387 852045480 820735021 632612584 350496329 630807278 732228523 541912681 754544772 633338922 722584235 731432565 681514155 666582217 92931670 517028032 844439497 730366659 670989236 300741139 743832858 720036127 440618841 952458248 79030670 417493430 704144943 23606881 670989236 854736047 945078587 685913811 691373384 893647532 990464277 787482915 458725634 826267172 947276748 536410543 970680788 407788782 86830866 749362188 160283041 937686670 737873751 893525856 586016022 336956660 742384748 802222224 403668334 24384132 311450513 955635643 668111134 236345959 834677281 424208136 714236918 851192039 871461727 930968308 897096007 639803597 828345679 948883326 613154881 499711896 130282156 340835735 43701590 895405172 519866873 211119754 692921182 971212937 636150170 35861636 943490147 672692560 749689203 884879349 163322116 751780701 891114751 788244505 518152280 514428309 785040596 626977787 797386112 45254919 441220309 45787811 682611009 959107646 689071040 742763421 994144812 692244603 853192398 771929251 572449635 980534662 570124272 748838751 889061462 201953214 984681328 986141459 825370219 762344974 856217058 359914655 843531450 634338683 980365257 955479028 193897573 938690867 962782186 790987960 271570710 18437726 715105398 725636005 715299374 919590554 39981053 598432332 656038113 105647721 684120645 892780936 717240161 497726615 737855287 746899113 910505726 720248499 881416233 410362115 24375189 560936726 913689078 996319125 792550749 678763091 729906419 522962815 164386956 615919565 754175326 764007902 27391766 522382915 153914476 913734851 951477927 736461327 760635962 397755458 808860294 818006758 694527091 172930184 931950849 267535759 503507428 179489983 10229431 420472371 735117166 578148323 871265683 511407269 169497704 315796899 118168731 922129148 700636283 821931394 758798426 514946418 158777374 203055447 132387526 418788699 936353386 795030570 343788148 545734572 322142066 928954186 245111386 515624839 678215373 376593610 914648103 790556113 84473043 850684089 891726029 992411635 647561643 679919998 818665705 867753428 189988248 966111895 934717942 243044689 979155337 528458570 437467006 737671114 708387310 903967811 691461232 320201747 339718345 242908035 448515966 729549805 509758380 835013286 270578440 449798418 691171426 996672145 466479154 790477940 706919470 940404469 205855129 917042574 666075106 59203981 872752985 980968819 846033379 858534766 797599422 610371960 247814253 216122105 216440580 845763832 810216403 787942416 731908037 946963247 916805514 432391983 722449173 276186232 879514234 151692810 789086465 603501999 931548113 373950328 539063741 759494772 756033255 886462696 11542870 326701221 282542674 55757380 848641013 148510420 828739673 868627714 848748115 807720998 812663108 890848989 144710501 111658454 669620904 604675712 497857159 824930302 309926405 660058224 469491417 759809250 743321234 22207638 954464319 702874582 469225640 44727855 752438179 931788902 733443538 456775344 964108011 712968876 607282787 824100222 370322543 897288175 382570398 695124305 301082977 393956671 445861094 746491251 599690825 146209960 933686029 832924780 227865611 401469482 79737080 505163638 890697625 863351350 800763246 771721473 960268569 622414243 713736077 758767414 997391488 715085202 891903935 204334048 781966734 162378813 915220464 912632856 868079875 480213175 117827057 612020142 753206773 96176626 654571706 238525849 718395693 586991519 816698163 267744858 628973471 821436671 490532407 187621357 286079701 941884016 346535228 434669851 36994083 751916173 747874999 34860417 804499436 186267873 762378317 979587195 822556809 588559470 59936443 285924891 6058363 682485272 804053443 984772655 114702918 813935536 283409424 630027312 347321677 65672364 191393461 454384134 943058392 851516388 519168544 651079986 817359513 388229652 631814273 928976270 968507450 197801140 431058495 850110584 813544752 203638402 808205812 371416738 887415519 372621441 940891020 731515783 867480177 253139705 29644367 66025657 316424272 634875895 852091005 938563610 82074928 277252381 901638984 135666573 169309486 536599902 801829105 466377097 377500687 978173345 906498759 8431285 24599252 830930837 586533061 474239048 929301872 922528929 664287752 854980877 935231350 498593856 946177603 249927722 714478506 371110341 794075178 966689879 366845421 299024274 887555601 204902750 346932561 419337655 226387312 182766724 213068604 885159892 414986130 361414377 392020220 483837877 497341765 684584481 497810849 822685362 783419829 803529390 125109763 271732796 195835612 910916789 828035907 781433721 823901780 655060356 94211674 143891588 994586701 700029242 750368832 24145504 874764801 854133494 543327925 960129706 414972595 941621147 627487383 422149700 78119452 702899511 506917516 678937776 950730324 635638371 200831622 93186416 670989236 607188044 410138563 315762840 547632732 982492556 442782860 703569612 811301241 652367800 769649769 945128405 666616801 416939509 916211787 181914183 566497744 835563001 47295784 159739486 836395157 869248193 681997333 582043412 76154025 230251776 789517697 435769686 711887850 1609199 903344593 804265954 708330566 857392103 775372422 986865238 38769317 650593903 514325005 751556940 974997711 573236825 287817157 653043571 836701028 939301644 63359813 570653132 189145709 932004250 117929788 745389253 675670780 841936100 238455913 675508103 688670019 687563283 143475133 403103177 827376108 574717685 968854802 901403425 168791204 230746823 896829249 346383840 498967763 432253188 197332518 670989236 779458371 828923134 933520812 694738205 842882 740673547 605786021 794648785 659552811 817544434 861933104 862295501 709706529 78779218 143014497 373369854 716460118 207988473 853652887 82671310 670989236 189625828 651517937 787859760 486335235 968820516 927416246 726191501 38967839 960308704 820617987 185848925 138500265 766896409 549217083 791298322 122973909 960886873 882603439 451784913 934580435 983672625 863728376 516144323 673825359 2712074 878720374 756778155 824885184 138340785 834450926 715023776 216258733 663589055 815597311 814682855 517113783 6858273 469034155 519586492 514206276 218945141 170280949 684396996 499285799 892475130 844995454 767734022 891630953 695181953 670843684 616667187 408202450 906354807 866888823 261050918 361469646 776868061 793434315 670989236 675744662 983644057 247879891 422386411 402093434 958500400 503707787 48233671 993002983 69617065 218341017 2043107 726312267 823016856 968730340 829077354 764720774 670989236 980898411 216637236 199567017 330433738 775597288 164762518 586712538 459809765 731013899 957639976 249860552 943726962 810358854 339766866 924069706 533419418 728564178 690027202 778410725 881267660 723423573 28323728 546913734 882424854 534475282 985472912 451738697 381432163 961299633 527800247 90860135 677309049 95823261 964798736 103971955 786486236 774816978 847905866 785699851 725593710 595242316 930416562 25661271 116532824 437199993 609123735 332377086 753534530 799406465 320567557 454684689 926294712 955992295 834271206 904854736 707715291 846758073 547954864 707170589 618042463 27868884 12140040 390021772 606666362 726972161 532171910 431438200 985831997 725798742 536550343 418170955 99289429 898230591 240733747 215572480 670989236 670989236 807581290 748744007 526870032 725305645 76786355 46601403 692378393 423365144 793316140 757624401 868441562 196066015 836911555 317974464 978355354 853641465 996993567 829174579 923394307 635162503 191434090 133709237 506154646 931472924 715679307 38695356 367921123 135211087 972218980 539013669 346970323 649886263 548239463 840844778 661924471 852905876 250963598 559403108 927249130 46129598 140288394 645515358 188108475 228069130 562159676 894642007 730443255 867518619 269909236 141720363 892495121 313752579 707740275 828664328 25040903 444756840 190383533 373640877 909994077 62864629 828764375 270779513 433439771 684534181 868738602 779533969 496725935 62335412 254819282 741176722 892967024 334589340 972289793 538249569 276509122 157545534 813443535 958600822 957039379 31314724 963308616 962739890 798732672 726079520 608992377 221450060 188591300 985973135 966773937 516242267 357251815 416551301 837776404 812014012 8811083 714248856 893775049 655686425 963332914 595546650 698612949 601449397 728039607 447866804 987714203 965261221 940173524 137288779 396635252 140293409 748090926 360419574 133709392 134926356 624032761 425309780 543741456 506437641 884134903 428935581 123637582 142300654 113967902 833121782 900351712 716985585 556135219 135925266 908799324 994297888 992316191 119431469 181938478 394991166 266689587 964439204 268667086 935124377 537502513 636016454 798310149 751427115 89047682 835824819 121300633 689020424 929180210 366419404 670989236 937321194 746944218 472777074 175911115 363233919 249646673 702105988 824494128 159666765 802609700 792596669 917680547 745827103 459426897 502821710 954134995 809185330 597502578 902049972 991707168 926700739 921686044 126498603 749240778 500787910 886127251 910446806 850378992 628952761 129762783 438905854 703848102 876171095 397357343 899137900 30838207 178076593 982661236 842918149 242633199 358195943 851186851 812081714 932850832 706804168 934671517 168458548 926348810 767456521 873172040 755477061 772127816 720845104 699564139 732758122 449262130 650596339 744431490 77369313 443220825 843898437 389375737 850383785 927794494 760046202 963982529 717492470 964756508 503799540 173053152 208674967 968785372 93005941 991886787 152617958 581109891 601755851 744287128 67539603 281589453 925131196 536058944 670989236 723156204 880334308 529229526 829660015 875413423 959618305 854862374 741935642 514316358 652820187 700464058 216244725 832273191 475464088 229320627 511615958 926962091 943923492 82432376 544503368 229613839 734651004 277096147 171900876 794998752 711876938 580648351 115536162 859630347 823332494 675422134 845301811 611373860 787922527 766463414 791616517 670989236 641482568 794937685 985141409 375838862 301000683 749213704 393115423 501452554 613771645 573167791 103526095 245928359 879046092 607737515 938666072 230979442 128822463 796469117 927072819 720057450 369137021 925320612 471100207 752588382 617079196 819522885 796384626 376915126 279999473 704948375 927830986 670989236 935165657 690464604 859316757 56547952 143022031 802659083 723477376 780206357 819866202 435887872 787210524 383787944 546861331 555644334 115591978 93252631 548447644 953811117 265354739 8244793 685809187 206669292 3542060 186642565 117942582 436452670 286906273 851299010 898167001 842924995 676995374 686943905 799889209 898880591 160751883 769345304 239966264 527252345 691420534 994698240 81019881 757694172 212809340 207312028 192956662 328345454 899791131 243006328 671485810 177513700 359212978 458325581 865651253 827979025 616680808 992251087 820587285 67011151 216422799 22133623 753862981 937951546 113054147 720344495 453663829 954280819 371293050 358512989 665363907 920710883 835980145 208276290 231435136 192548623 984246826 853511405 905767617 241952783 915626257 575227560 204227952 780753047 863531015 370778453 726700270 532288340 640822684 870672488 750142949 808177948 221117380 955115612 487848582 362748976 712727421 92400715 815883844 104673849 726261135 216146171 660809474 400330409 565808917 989890979 965374940 453157651 927860660 911026000 83182336 761614041 169950967 605128740 89577193 867333601 148635675 500751780 679701861 680402310 402859028 809329697 978553689 727553383 394221673 663689103 55863463 351493760 434762613 814959616 976560271 758629985 566224252 475999158 477235717 845836840 640490575 457264880 984184577 391291612 635744022 544749025 686216634 670989236 888832511 824031386 816357960 489157079 201088350 988157717 757150118 708192857 783689352 804396062 892012089 61621495 779313043 99597888 697973155 119309819 774360185 665700569 939350172 189277547 819034624 846241962 379918687 858424620 878546618 418019154 882160381 500026010 435418337 850242382 635117071 670989236 6827965 378489426 924796153 946155022 172123775 771684064 90944735 910585345 702834090 523256235 655377771 222295640 510592422 301439542 498658911 972679047 807622184 1514584 789933681 726653876 878836456 53985109 893046508 935729755 823808702 560200646 444389150 287675633 628026668 4810311 383293927 855111466 709388903 44629923 393764247 532332725 800349098 335962815 870990831 791586484 69201377 322611180 416544697 226818017 942605778 870224181 670989236 832841889 390750954 752408371 721785046 641139116 607998621 894160777 447577203 642457633 771004862 741668580 670989236 973683650 74302413 784278982 486737250 760197670 45849185 886453683 998339702 712813672 934170399 745368769 76695991 818962198 350278049 858401971 573588857 948446011 141786066 473956693 956688098 858787180 860188617 867844836 931952163 303825930 561956632 438309298 442390616 697027282 86676672 640966307 356078167 379319100 945612099 679141647 613089083 921754890 586796298 142374770 675986700 176293425 860757392 358150113 728509697 392601480 369109319 763872033 635273384 854890480 972439368 149315546 784412285 191779457 674352856 906603475 97351900 876983636 943888876 461077583 854816699 796914512 896436040 934495318 562874555 852377861 749270826 895035802 303032953 968630092 700848298 515906484 392202116 903845674 811760983 596818083 709475708 756993535 897981589 737919338 304445354 873736583 754387962 773734190 744763646 441627402 212405626 999410587 662894999 385095885 801096712 435840700 925971984 710422448 696213616 797278992 269475848 609956867 649840007 279570904 776954680 313880844 177241293 140224387 924788661 994409081 116838969 970576785 86998573 937074562 406372922 774848509 311171408 812684631 646077853 570047098 813021472 742568225 587219760 920090386 712478428 306829500 844583363 943528596 845653966 601962785 692103507 781168218 297429444 694010323 946290545 567607827 883871313 150490471 145106850 75535373 840156633 829110214 723717109 18640316 819017472 910631015 723359825 836281000 631826202 5829629 280965444 748305275 681665480 887798870 993143892 964236680 660441662 261250038 547154882 792822430 354117265 516706134 788823591 793093683 449248671 957860420 678914485 908444175 452995761 506084954 850164646 948950652 839119383 360892045 823390275 659356683 392549711 73502935 16349404 928233373 554762702 708607380 270249415 711601379 670989236 761403899 706282674 594659404 983547403 617111757 525373164 154743054 396440201 796714962 656716661 607618158 929836717 420810791 88230459 80671776 989173926 125186374 959309155 388708420 526968742 847454217 897193994 776311169 201244126 119589925 886755075 673068897 407786974 183394879 281376558 891190591 101944160 801532024 819104537 342102585 894486896 478621670 129474288 76909957 761827745 363146730 891695318 174248917 415055588 201942828 10368766 661588400 708464320 42813089 795969065 190482341 642115209 855203745 856730574 955398377 769567685 818179701 892799694 789564944 846756283 707159410 532482365 809072240 676672337 91837010 217685151 652311926 112156145 905662994 969517169 718824486 138028865 807007965 281202135 674178990 948574346 48417428 956138182 195730806 191716562 944532058 888470489 670989236 863553347 616180283 894169256 468904250 398744175 832919870 983956391 824314417 343798659 745202730 707068663 962246874 909125710 342622640 759295417 360345263 60347834 743559704 450717958 934108925 99172183 213288701 493263141 395781440 867049624 932159060 758820542 437704745 197433417 398218716 640424616 642216953 176660559 900932689 630815872 998956859 678510649 802390904 31813971 884272251 329390814 863033304 814763843 763319199 40776280 925996691 777790497 341730884 727722002 944721647 324967898 972414002 372906998 845878898 136711227 663603795 200973933 960754770 979103436 910790574 857142793 993755756 925181868 693029330 881468272 718268418 301678338 928732467 860796354 296731136 944274527 671910557 971796638 114202149 661542977 992256291 791025816 88415925 874753036 846939675 447869752 789470760 895828174 100229573 420868349 790749339 26968639 539265394 329820089 108094781 621810876 120003139 622943002 777834252 951652794 91144553 833319506 849152611 786102415 45512696 924037744 923980734 651297433 936410789 670989236 977293670 495270100 822574796 628357713 793000896 10312435 439781572 223817785 684083464 610952753 174441668 379305852 332788886 654154403 672777835 66802877 267074832 918423150 941901035 251703767 841124761 884023581 682981095 720365478 742302114 35662844 995045144 58824990 550986032 599889207 892856953 854517908 948511786 882151885 134978916 507956822 901890045 625032797 835470804 712720174 150255659 839169904 943073136 920796473 810041311 189621090 948252785 727423690 948835008 805927375 325784053 948591058 895477887 60252861 459841569 806255893 720212053 189254426 530344220 691995901 787632990 171269695 744925985 480450903 939600028 657792925 286993155 996855026 735407910 606196011 277709092 821121940 150989665 529444403 71664044 682788264 369644955 896698584 418689182 498781234 66523893 271455574 194422376 936237121 787499552 397045058 793607456 734961961 164367369 276268151 316715885 400883849 310611316 365595899 742942557 922517658 738396180 833035733 859411873 216947242 628076718 818268571 348652508 950551401 848040025 999581295 749755895 897870240 406028472 552064818 626199431 153862816 213739639 305118012 461224807 821317927 417045278 749541474 791814755 671802354 800261361 561015877 382598118 933303069 545819170 225913748 191844396 122269263 674362485 796582298 986432833 977535286 963736709 670989236 56084528 988164640 410903728 221249586 556439163 575069969 847436199 47795778 349874938 440387833 381250947 981054853 932980243 819125288 893499576 747291882 225802107 895745972 204722090 274897221 779011336 376297911 235012693 801089152 76468698 887514442 563544533 897546835 682325480 272011597 873817171 810666738 524916678 942116885 38776137 218078322 233527519 4827904 795094016 962904710 775804681 289865158 966038637 945687675 815987075 972339077 423421966 98893647 844890977 964841524 160500218 665969354 33231661 883229187 927277866 731820562 591021930 935323364 311332050 854036885 89812846 373970055 178446589 278957259 140070318 689751030 179230065 558103667 970684696 841626959 768196696 999509653 316850798 720645904 310766898 622511500 750841695 899301852 703691182 847465709 549303844 882572943 677221362 196910916 786322315 813274825 841863525 897121976 760000567 601935241 903681733 872539417 312676233 579269172 788329486 657094383 487475511 561841016 533098837 186902665 970086605 871302953 26449339 581942335 870000453 658050643 852338392 94569630 925422080 716057610 90569196 373668147 943260353 315988405 801155814 482365078 623944357 621120407 397237900 973081694 860175793 815791069 810408331 734880002 630551864 241781295 781461973 719663969 849812137 144141607 249902732 533527662 840268091 983120371 841234115 99216537 233019775 878669085 450528354 390409116 684229223 992107680 670989236 987426593 645389081 667210112 630878772 329260285 683480155 791656950 619004430 213856622 52983908 869498359 688779773 954867085 985596724 781221845 343543470 321926361 400136810 371642030 910385778 991944382 821339448 556867633 493390149 913013657 508154425 517225414 101938511 955576196 52669086 919309826 205006758 610955340 264413782 123374021 225903428 675395931 511061560 921301094 175095534 55284856 272933243 755024802 256341049 733529674 713727658 719700016 150227516 856331717 494256517 696938572 962688596 696302350 967808846 82769906 117383837 606552906 442787177 833875701 983754774 717779160 936899258 912430710 61642748 930909603 723125242 587772509 695138224 705350172 900581217 91005472 891616045 54186932 806015819 972848873 803321346 799059216 903504234 127125099 905529506 302467009 346741665 657017679 898586375 93998168 893471501 308040787 520319449 543502354 856201553 313747856 65762037 54420184 946601890 854142895 670989236 910563001 399241810 617650676 996985285 670989236 726763964 850450581 927560365 653597073 278485376 806161440 500869981 739494583 911736351 71230235 874585696 968205266 367450665 463763455 391097625 440121445 958209897 695965258 252696610 9468844 942214511 606336113 659071263 628997986 302586897 474969817 905624486 472750934 141767010 222924309 789265971 965620974 684292554 948844143 518392538 596743703 908273907 677712208 705339484 860845683 679302065 811153512 760557438 857923583 797076817 347605115 273601785 847249920 353713670 146667886 837695660 132249104 580934611 59671157 230281719 795010170 360631999 318442954 733887099 738412757 835275376 324497905 693827832 623489232 243436585 818306158 874316870 727784152 938343982 982121270 232206050 880713432 570042797 954429713 524700702 814696018 897332491 287195593 91488717 373144012 439833604 780343258 90588715 410172508 703761197 505933740 873339169 553701592 445106080 942073301 598979493 314151854 27104723 986551037 727056581 968328778 826183228 386444138 895791864 391691829 493599846 741225314 964034255 760028066 648316238 332394332 864530294 244497612 811946171 22790049 422671323 254644938 464735354 124211501 904156706 685698761 926360887 783513608 893696289 718177985 852078205 906922622 715089971 843553914 895528768 258730111 271004024 5649965 368243984 932996629 741207786 809834629 703180913 476393977 2237337 798368458 88183902 837333127 762874513 472736229 534460089 607276863 341606089 155405024 647278958 739823093 818686227 445907661 494659742 795652185 959388406 131179773 218600152 912898883 297472518 656154476 612135637 929106910 523746144 414974266 801468734 696103944 456334446 537364397 759140841 293572697 723962657 773739879 853720175 773072515 915161988 217648968 486056650 490638455 960686327 866157545 558924271 976330341 513615277 781602293 462105231 377956205 626592950 430787436 545036898 783029566 924232614 877881895 760173282 375639890 923679348 866456116 343545747 695189840 406313693 953200789 884327992 610418014 995342127 286758922 983800775 366908238 774600410 931667280 405396781 947738964 901825918 633461087 855046842 327719448 68251873 941245953 615630943 218425728 83713441 984262776 49615847 824807899 617358255 307646920 804504935 730687649 700082734 839775200 394476011 828520886 344104280 255170232 505141690 32834017 810301002 830595877 859307184 313192621 758610843 759785295 64739312 969142468 433665652 874232722 153956305 4939079 774408413 737830146 748514637 536103447 313249691 858558892 851548164 449350659 238187478 690592700 699124283 989281836 721672992 881739409 672710386 972373832 212047319 709423058 889756688 713301777 724866321 571607986 923981492 776422441 494121070 710588670 652947608 93363573 583851565 670989236 319726582 864758720 874300139 96256325 374886200 945032598 170849366 14648484 995679414 799275802 54719420 40905819 887602319 88859410 641656629 767781254 110541200 103879847 858809558 811757885 166182961 548961683 670989236 85118432 678072214 531602585 740648483 846910946 835150349 325584428 791909340 803384115 838890265 710622781 865881224 954376703 933813938 834927513 722371761 119230579 835869399 841708417 410638851 177161358 576184246 892054056 984726500 437226559 983708303 944706397 777502429 809036466 509436454 962772723 263129760 979329397 652511445 724101676 726097123 479140469 290379615 714361410 897410209 663666801 158764890 258861001 74449194 214030455 337837657 886892600 824055548 848288048 528055416 56908531 488239854 829805491 365437293 876315992 805571355 405908332 722608959 434940125 129743080 687695214 398328386 838141616 799222634 127466077 184014634 276391197 827205488 199388246 892553314 346335090 367974520 872587061 338656876 751873969 385848265 495899828 823585539 626531940 674964606 533455648 435267675 17368984 956626459 272261955 297805349 513548623 542692611 315863083 864595510 983098807 935322456 856173127 726533704 46023579 436054973 392324570 756938857 490164637 996417574 529711168 344627560 206219994 877710485 449453772 240303687 378218436 257448230 821024032 532820611 677491339 281587032 857593832 12299638 298496804 70484234 711408909 813079615 715430287 922736140 798815777 384576027 205337907 458742290 377659618 571987229 758485556 71736120 334666950 544830882 670989236 769652042 515596397 393960376 390068336 956255174 375086571 884416279 881883648 496546934 458662027 208945496 845086583 523694188 908280724 952648185 925042645 178833967 325133487 977126732 670989236 375529721 615943191 730544629 319499730 362321147 327215066 990910358 833263113 410038181 105648531 17559138 563273075 699536877 306576263 735613439 451224424 135348050 898992827 132297345 564358374 927214825 602724320 809972118 434711999 50642005 901216418 160733917 620411993 447937234 626241666 699447819 268213387 967562216 256669695 376441221 992308954 928859834 725624047 16167943 779762955 762227733 621253934 815200496 962107455 775615561 117858541 630466555 816777973 789367446 287122512 461957715 110242686 35091413 951918614 670989236 729872447 846419127 19575894 785048083 804259853 671228778 151757817 895420119 134107498 853585230 937360581 141626801 844015618 648387893 389234780 680918461 695523397 38895736 274421971 149290647 909676501 667260681 823293557 722630743 761131875 765875962 242351118 954912973 572825699 900918670 887176597 421248434 231024579 823558517 377507682 994345022 345238254 80649569 961095586 543802686 700843167 33094217 72449685 933426893 260788118 738686447 876020643 989109753 839427217 429108067 877194014 356189284 868829681 786858361 692043010 528830277 285769256 152847331 750655139 31429502 800983626 784572463 790138724 154908584 42422421 589264888 869778416 76985837 2504423 761246787 239269882 325583509 88822023 931433293 820648163 797714244 401573928 394319253 923846610 854118472 984393430 690151819 185361638 479374056 32702395 773672345 807252926 161719623 917700383 26408127 941366531 144291076 781487163 156699892 526092928 670989236 290574647 736397142 137742864 893359017 88110340 724832563 998139770 904370408 696209924 738181292 575160005 815724311 717904954 672978332 156828823 359045546 898727468 967010402 738577943 112751439 56734456 614798418 387183369 816944902 355239786 883658041 646185914 929836123 932440686 870077263 541775908 157050218 32068687 324232550 218612986 518507342 866631101 622279163 698319208 860850583 913160903 892362772 160762185 116763633 673769656 110791806 490626701 86675343 670989236 804444586 456618213 753390964 772395489 416936364 814242532 990736687 898797210 903163830 897858782 702220788 409921370 698463576 961101623 748902608 528397862 748362536 946792109 716875587 720311592 979852219 710663814 135900454 940859784 893249541 787136267 330747900 832029623 773025334 983190233 618254460 959714756 959350122 646452989 362603619 836089085 817989324 778724797 731461466 787400822 246378597 694307043 416593777 590344077 194438182 686783354 975919238 216563740 504730403 322867978 242601662 81734045 552871878 768679982 94314379 783923528 686031247 208338690 191231107 971508670 935262969 854556121 222955290 108238232 815752067 674559605 904715137 874085298 856954774 154055299 275960196 215181354 954132520 518750353 781863187 950439848 808744164 894938915 872282001 921662394 534591444 966470115 49055966 498190919 71203628 850294123 190984094 736455766 377791165 428458350 241881855 495462284 638336065 727791687 857231712 591508958 669741870 716255550 543379500 912791543 274858098 750533573 936960350 827194459 353668909 438482159 742646783 215019914 67509778 427542770 252546356 503348444 364288405 740898350 539635030 924148653 941157870 803019241 438773733 142285396 102991473 997272825 805098680 540478996 987969920 35097806 248975510 638838583 716189239 591935938 213410369 956779163 675419924 799667954 875565769 926988167 278688172 479657095 759503915 956960971 657605289 823601323 670989236 754149828 546681182 277134397 809494274 912448459 606921767 217710649 309919833 779948676 409249649 162830914 485329011 987629866 920210460 229825533 363108305 743605118 619655210 61826914 717197569 945162084 711479831 384996060 977019419 584830295 828881359 373841637 51054467 562737647 885421435 958779972 536763259 812580935 610317234 777050696 831436524 761569956 705143255 941860622 825113753 536471879 945059736 739779921 752675410 36044437 925790202 710552921 766434625 859236933 976016452 557165468 325819671 526147901 902837849 750592776 81230736 749597458 384343178 451714279 871837253 36347978 733211019 931379587 858056122 398455411 101432122 662067564 791068430 395407418 945651579 864872542 883209327 91267798 876374423 784534907 130375368 66962242 906507220 563192844 942561947 318224939 702853629 642776153 142648530 327456547 605937855 92618823 519681407 323732371 743275716 960912832 213727502 714174411 160798932 665995146 939974928 250289956 822500389 682476331 812480829 523125396 972855942 851899356 603788734 33300999 671695085 685329022 733251238 839536816 953589036 316820498 861202685 941826337 810450569 904090268 657860266 342621521 16342825 105391852 353106994 786240399 337312380 978891228 616821095 681133914 875122085 213754608 693736788 662294490 96100860 625821282 979755698 124063755 776108949 999819833 838186267 47702968 841059684 988497142 843188011 928428461 596039763 897132122 975669913 634843169 803959844 416300858 403808312 660286985 252208656 872765675 79180810 846702886 869023965 258143963 448528627 757056006 830376983 165965946 696679513 996463101 584280791 864898029 702400342 91895541 670989236 702847634 725094055 597519412 923662900 648947524 570166221 851616379 724644018 789802469 789830172 133924941 132500624 932402813 716856578 543327060 656272861 653264366 40627614 703684322 169134888 293338485 927344480 439031876 839700402 580073016 262190760 495212177 229214925 287947416 412292485 381634110 664142954 470062092 15773228 376048326 803293700 968960884 564813772 415841387 315251631 973725551 925117835 122750568 88869306 666722065 762209607 635928399 475585471 742273467 324101136 909400709 465929123 371189192 766577700 638937015 260641757 744932266 298036805 325791859 557968852 644621049 475005376 602184796 802629315 586141481 784616036 351803736 242162313 510944154 959805151 839680648 877518233 945091465 670989236 968003351 670989236 766930933 45798335 258149824 856773746 289221293 705120512 934960038 712691809 959964492 869969327 874609095 836375754 582875549 522507866 501398471 467797565 204093604 787448653 930510054 831224588 922883261 568063178 626839887 757694528 718790676 934530821 301560939 407476398 798061340 886810726 542245287 993486324 575995771 28408430 919781341 988717845 718857926 775022557 946929860 670989236 664979726 24905160 428099436 541361001 422397263 588914902 941540629 87608743 908239510 711144159 555659796 764016847 833663236 400192369 766994378 318239225 770217684 537679580 207005153 24028926 545055150 962969533 674576516 523221825 33956026 967279825 232068992 923214938 676698961 618831357 71005664 805828785 13463813 571583442 229676113 711082190 213953745 145231042 977257350 440591230 846389507 901483897 246529707 418697271 581896494 625292077 811039196 364680085 138693009 828066982 154735533 949114269 32850884 830435734 731657638 89606488 364771021 623438628 867250867 551208172 872146554 330359140 985990634 848737509 368052553 958824155 709308415 971697450 854093458 546522236 519226186 759135575 284666704 885503513 873001122 332143661 281979094 831576643 809465989 704551971 971046874 790337377 953596407 268389433 874306984 588056438 787264459 290337184 204221466 800755677 884689958 874271634 716774369 764768883 911673375 974340787 16590444 906204902 329427870 580962393 295785477 636088458 827920801 707500675 819188731 8692349 570830505 279863920 866452379 805956460 324119747 874036310 792135088 806036895 652329064 931630836 627324058 409419879 131955932 551611508 770178765 320598746 988220839 253671146 659355784 500671029 978992640 99725660 558696680 661174663 366938470 808780080 129585991 788447503 819958972 788686530 348789731 813039318 769884333 971534108 283112978 747704167 483313715 558001860 671786655 578069295 535770661 854950429 447419048 484849914 501937418 785370786 727692356 2754606 261025135 219177237 878776321 595739601 589288068 150739446 343432850 860438876 670989236 441088038 547620336 739798953 980929683 333816180 34043532 623408922 693922751 853910325 713686653 756304991 143932202 520010039 142997195 885511405 631679522 791624406 950211965 13754644 109857659 42696526 5867702 892942776 581846229 971025005 644918168 82287584 580435047 95739622 569501557 869602993 693124176 983662520 835981437 788048770 927775200 719828656 26678662 670989236 826704439 66464591 809818535 588875037 901831298 720334661 911672841 743714666 647447662 752010985 416746036 944940263 682468276 342449335 174999853 182887851 192213117 598565941 789594658 758607933 779959670 872667348 958355981 835956143 715059115 958675700 866618148 674146461 831750098 933100687 350079050 836350595 26493540 924421097 596584698 950078464 395459551 148354336 842420457 670989236 424684796 759287423 380728427 739924493 184038838 813092896 961109748 828962135 861556604 456903538 336197300 931305853 681661322 706511230 186794246 451231919 945121417 301823684 156922020 825252741 94332481 925394210 994027126 807188644 185043717 999035002 126325829 518789959 647627743 865104068 864736864 624425511 670989236 729862345 436038298 992910673 979822423 964391853 601479848 979503884 478659677 44431848 700568900 721663995 936833566 281084413 890574361 821939955 866845362 236518303 772789538 670989236 313252907 583446940 764609063 483043783 266051525 966375529 380936757 511688874 947576450 826409640 715368631 366899233 38877058 759894374 965592390 938319500 801316606 744609695 941588242 324344530 731546361 971115422 716079589 70014736 718363814 553706996 569706053 419829611 525326920 228900603 890559720 839921619 883402256 787606606 710730828 857684187 766841453 639205103 6985065 275299722 670989236 622506276 871205428 655000811 698407800 728757657 923118133 553461083 771062041 397773502 53730482 635229338 786330681 737504414 610746463 829216411 251350890 293083051 972149290 670989236 10307875 822279660 526255295 56178995 775874944 552149565 152922708 82463528 693861662 163886256 967557416 750284784 979182971 700099959 864277417 772596202 357576485 909434519 181607850 26890024 245981700 692091485 650700192 932800957 840931310 960373475 260372295 614583632 161184587 983634573 670989236 900855457 496910581 134790836 895128044 320324725 810103899 515583960 95702481 302175187 22517475 838436952 955709445 825436267 364031125 781178933 855928447 831732764 795288540 980485206 466420967 954832987 449743714 773364056 815519077 685330907 889299366 865139361 859549529 720853116 845048834 888554741 59446747 868805890 169950403 307748216 135882551 958382332 443621585 875109744 717484131 808548631 784196814 389400344 123458568 801211764 529649290 166186275 784504826 743482488 266530075 914542522 612537159 688905343 529060342 648742873 441229978 988491306 141468373 559159957 736720075 545020740 377493990 860038534 544318742 335461309 761394320 797065818 990134135 269181757 962989114 719595417 111274237 798785010 672553231 697353710 105692720 46414587 1988381 634359865 730447863 212745518 552727523 287629391 691690978 250431951 817784080 322599581 750809880 525421361 852008492 872007180 922491246 388967814 689098529 921874365 777341384 987682831 953479835 562849057 670989236 221240152 804047440 918286293 579171169 826702528 67750826 826891645 806670692 544770717 728760900 871919113 95868642 896607896 900408626 724600506 869497004 879756941 362064813 27803870 723939927 128004936 741803321 973847894 440255702 685741954 780385560 108450416 50334518 718231633 579432610 608760923 847344771 782986967 351365999 967464834 757633433 389488371 190040236 229117334 896079942 275987076 636738645 630428438 536657020 862823606 486430869 855165766 137818244 222088014 890999149 758707759 838263020 377911763 780362845 171952500 524068797 27295816 472751391 637081230 839439729 855712354 808618161 999669264 476823833 484283034 897786847 938957059 805453735 343255341 910568842 915900674 279364337 449592521 418716544 809170463 758803748 607170317 735108269 930355167 328140929 655540432 674921769 110859614 819449518 735683077 344903665 924538389 86127969 314947663 641900433 211865923 679107106 782263490 980850290 578539315 945457429 939849200 738405648 733307917 972387197 520748230 974403494 791846521 237551647 271218812 766169161 441857567 28169993 72146828 441459720 854132662 837840981 146053821 831428581 851786470 937780947 950839965 791847400 544816996 548454954 824647636 964453231 439398976 901787532 234181128 745739032 768704399 654712962 519623007 719909223 670989236 902984691 867766877 219317985 591125025 440930627 91980773 917121962 418048658 749419169 818595163 993201330 547934072 288749095 841147406 527852304 647636684 700504775 491229124 319596321 75592968 558067979 739724777 951824037 386219312 703916921 418425164 698727487 35254995 790532718 971849296 942910462 901087145 927119745 927435210 401065485 78295471 528192987 857016605 20289220 743771559 476045925 29238133 938046756 777501133 2595109 841683337 390018645 980157456 63945848 273267016 119880584 684259555 164239867 414275340 569870824 65289877 446314032 847502258 477683394 215462912 240671781 658761892 643239460 837452562 845048790 453795252 705192455 803553452 450041908 133672357 879432623 812434523 658705246 254269718 220685937 208589937 473874403 927376655 32676722 107693312 556019570 35727967 328873828 714090845 686352432 809809995 659726022 408896267 449075285 941528104 317160849 532874366 979350745 602102920 758705238 690018826 739090231 984283326 858920547 954193266 769292966 196014992 47513354 837033661 869293381 848872067 232749317 224503914 869108585 909259395 964743530 948286654 991978436 138613899 891380277 674921959 406710076 8432927 213831682 804706107 525568383 304359707 795463101 75747520 708989272 272407822 401833885 448825136 485395569 842769107 650126007 166938771 135925331 737617367 385423813 537708441 519812488 678849782 63797531 991467359 42785065 979527176 793570661 415541491 878825286 688664886 823606482 284186364 879308120 687876846 866525845 165474167 248462957 762011595 770431900 969469993 611589009 856982703 801710230 367770157 965208064 64013654 890186549 982047221 598325721 579673573 826267523 110906852 895643840 703699620 236370206 644681904 109385905 223029385 894744932 554268585 559666288 817789704 881004641 56271182 872666957 213403688 919689681 752430327 718063138 575058936 165739832 774308009 65366366 401892356 67222308 325292373 617184157 149775595 737456740 245262597 720767761 588780783 254262553 274765967 693965258 936586329 885044863 426614517 494475040 809130656 210060086 81269005 820039002 721417136 650635384 57008672 111083396 10584866 906780014 543958324 426911904 504342521 593685628 719372029 731234268 453624516 217911502 873356805 647823071 498360074 840238956 846027027 770315155 450219611 865474449 995481597 136984904 895236150 758827456 463928894 495909215 390136702 960523256 212628502 471912509 398864392 9944288 13887401 306745039 82086244 557467375 929223050 404548996 226650783 410426911 625256851 402799335 717039868 162424123 861054468 700543145 364490040 495165752 861834192 757970349 691143662 745694397 873511377 105361990 771588155 282415409 379413977 864673705 656061386 555141053 264098129 717044793 741774853 747311287 29712839 744297460 503228587 926784345 848274455 236540146 769865989 144966191 841909922 687057369 478387631 849409476 93421832 818517224 498119540 982373064 669724679 864212329 14007080 843220221 49010153 421313651 934221245 513622311 800095043 793553365 977154918 318805641 64799862 324755858 496911189 605976336 152411860 450383638 167852689 789371305 690975652 852188134 153443462 312556414 639522787 973562563 873621231 600470775 696910629 699197434 346626408 530153044 202950271 610427610 473124222 942722295 207809948 894372176 907484034 512244309 729424419 33794375 19001687 958495668 98749202 800091626 780055508 933251402 42627568 526871904 946776534 821838340 190536261 702486672 79150582 330929642 27772976 32249011 755188902 130169195 960723635 937282870 225975331 953558114 855489298 742144396 90180844 11945828 660748274 663614403 294884942 806061816 727804999 850248090 679159058 696913250 649092814 699874417 279677709 852156489 543986404 703942686 678315714 952888551 144973520 463222154 120313591 699695607 872550050 415460475 124505489 873253481 694859585 108166964 819736211 948408202 582629760 950465117 949015405 377014239 553400602 456945545 429067398 997921825 797208038 913804994 553557292 793820242 707160698 876870026 288720688 335114278 163298599 394301597 789957089 906087942 834733633 686222694 788425227 640783512 34718160 302166489 477764916 225391215 956655002 11738035 800330742 930892957 851645209 866853395 809052171 147723245 999722550 209143205 371377228 688530783 3342967 501229572 738247310 836752585 773136944 889272042 691831560 391029517 548613941 621143040 900899336 814892767 600458582 805355487 908924777 32939833 821101456 149693724 815723931 319143046 825052330 764295039 887020565 303633503 411766115 696767389 225834947 890121458 12983379 503448550 408763397 796648001 451000265 577042127 839106328 703983032 210437018 956182090 990147870 742990848 76420604 829018014 752941780 670989236 618958479 875643157 781758342 172153023 973144269 53008269 468981653 643860456 992663906 802416129 703258900 616394406 971611121 573041994 364666636 697453490 303699112 449416473 509319601 735927367 365061211 385101818 675500315 555617709 983118837 754993993 284010679 790629930 817834337 873675369 280447287 541756116 341376254 743729586 880567325 636931453 187352100 939110299 186512376 890278254 598381065 570447026 845750678 437704164 300536384 967491524 501825627 338848502 41571731 804321268 707570600 896266288 691381901 778051385 341674886 986209429 936262604 953229852 678313612 949132907 989774237 624404542 854591669 222337404 944281871 125067933 562556572 788582939 423567376 296085633 49438891 685937944 61519155 500784887 754766993 772952468 108188270 175773133 54808358 818668755 713054842 751898611 905272729 686095610 42555703 433896152 939078805 929481671 635405770 677679524 823033904 323769302 904300977 713275536 931142045 712619459 882407842 799660322 553516658 694881942 681278937 23166930 694762949 295909367 971210468 745462003 586917959 46704738 742553192 770742700 397631616 817784031 125473575 517413915 791823151 384562066 224288094 941157225 408300265 710681268 214080887 448565726 130848464 766924009 382614564 620277539 29681739 472840455 873730292 908108938 830181327 140565517 963110152 335974399 824945380 732093590 110937713 850443711 817346403 897696418 461049069 836739988 775913481 931687981 934382454 985126354 732771696 721549240 954916593 923872997 35337107 458981284 336371111 946266621 378876384 407095016 773972596 470627287 72549065 794115061 525083586 714877740 853131203 255687793 346871050 997828422 325617508 920650627 987079004 338241091 900477577 924034347 880836593 959306024 140628163 681621595 754511768 574083045 501285318 378251873 759004573 748481015 333348250 751712868 817682007 670989236 444921372 682546329 790784115 258395755 846118087 298009921 341713828 230566296 747521190 872889558 42983306 249967522 931131260 718287815 920208892 827102485 517515645 980678674 60876985 762048468 920655279 53399074 553093101 984518691 986478985 672709766 112062602 439289737 816706489 834599448 440643900 294736266 922631753 347693834 19490005 474140270 763200977 187703844 886095941 670989236 983522393 224968073 724823304 568716081 970338107 690035003 763453977 293096451 403934198 914156230 152508870 995715218 404866610 465355757 813230869 965804775 813328287 599933193 143713677 59764463 926687902 370820821 906801665 491787858 701187790 791844676 753646274 937529240 157651802 813079203 852556043 957789592 672264848 566014028 74317231 778123909 729158075 977505164 512792619 921769676 206469897 681864165 917324912 30565939 823020240 878352310 448158416 792922297 767182636 509510092 457333331 864654513 684853293 784736129 725415834 741080321 937620838 691153699 627906572 250174849 974584233 60058163 465772969 894417578 159510455 498825265 357534688 201892737 942924467 677348829 389292651 700813386 179044571 966728217 944038380 132882358 866550929 131758521 726271719 763698350 604715940 662240257 291019990 865390157 463465508 645362822 948792535 247857125 324183257 295148286 722525743 986725041 755372927 976046479 777656322 130877503 951358974 996472731 737591665 539488230 190359381 825907958 872758704 690912543 153530604 897645685 441096341 956419623 725210542 475349387 537537322 801808074 730251418 994106621 931708225 900100316 971638479 665318418 186417951 602480259 157721005 419455269 841458337 716392045 538203694 764535897 836755549 951276846 595271755 540205749 923000940 274686034 420068178 460259541 594779398 660805567 887357114 498891528 91649788 783860285 790278639 738927143 383191174 641934691 807804021 612671091 297190618 396576128 670989236 732530611 868313738 775664933 134124729 328134222 537805506 167832028 941831437 725133536 29727903 5539178 686936401 408345963 298965449 44036996 976210440 748068614 902755137 338195444 517712257 721265082 313300284 956285828 972293211 952864795 814158238 676725707 907972688 958132522 855590289 799333415 701114690 884163879 974489484 863592654 994856271 161918617 883450149 15908543 414780610 672477679 795802410 997093307 844974221 976674467 682122099 719177458 20431535 743086195 902866502 542394103 971715070 97254476 448790642 611181916 614458358 795446618 290980726 857434376 461313625 209531772 545981470 906477054 73419745 808770742 813291386 346253752 202636739 800554458 691236418 72997085 461839867 951048886 677273832 843601776 541537983 242422944 883867372 571618637 500402411 134897438 32890027 64173505 943963554 347585275 430606003 829685584 9732873 205847304 413310568 700120503 446954650 984754705 152069643 380649572 272107926 670989236 780430116 361607112 830059698 880810037 628658879 714328526 949088012 805374279 290678704 986302419 911108819 231270515 617250094 448284250 762299946 858817870 834124816 901872715 867830782 994087508 6703711 686221858 186314737 981249750 439966211 768149643 133672360 177104754 329102908 589106050 815923515 172526585 517121454 712866358 815833534 239989807 251543162 159859793 989876073 607347361 379234151 449080306 558937005 697352757 95995462 785953396 850175936 14359837 566868260 884521874 566816463 931475028 102374860 376460373 997020128 424502826 188806170 614296972 692646576 961449120 802455285 968400667 721034042 252478573 589376250 561031844 250777004 200917237 692022237 943857738 266039369 727703633 859726794 978102870 989487134 942919427 815931606 583471138 925787923 517759385 711852599 37389576 73375920 200530829 896411143 196276282 311006575 139583286 266489841 72468195 888912523 606366891 418598128 997566725 697339303 45685175 877457971 714196719 995476253 984702714 449022575 862410049 466169018 65910948 59976689 215584695 118725306 26349346 431324970 246738683 368329788 778588821 895758864 737219812 289472240 522117746 877975114 267073310 877929334 721619968 627311948 40692661 746015967 666051861 670989236 943392232 48258600 258630131 965706797 273804893 673181383 574698382 818219766 647260096 208058009 738550750 991183565 728989522 73363040 622123885 994114258 936792986 919180695 348350266 757912042 957038413 594440882 215116947 423554851 690438090 234585332 451169045 436455785 656205683 672886538 195381228 885050337 147207584 648933836 726790627 100657630 734334163 996237818 810176709 288836035 140266356 426637364 902182621 360406768 115745816 933140375 83931873 411613987 871439986 84304203 636341853 633125558 769794393 688606221 678950140 873661347 782803005 531909770 993992670 993037744 689569728 952679474 736396296 976616360 165058532 826074234 666947201 911933903 769413409 39844405 339723336 799101311 847715338 858083220 896748433 608272347 719648837 640781311 580528033 913023122 660572140 285876034 670989236 859131999 279876664 835897294 233094959 648324104 717195074 686878730 686946656 319414248 72020685 600077949 686607023 997724770 225014484 317118544 865038928 403823471 215993471 497233683 98262068 869720095 967788804 657375081 677466997 738199041 557140941 688293582 889995519 462045450 110244023 764997327 90998727 660476836 319078601 110112890 794925281 912736618 670989236 669508311 854766303 119264874 941586916 981008394 969737363 753057997 684478027 909882991 952373139 985343928 700828982 222388124 103147231 51064195 262369075 888580463 736738731 894839097 796074148 243478983 995265528 988361207 265056524 992329561 809417971 806597713 678891847 727272153 149815330 869826854 486357134 829719654 77600212 777170483 835090407 826215146 566504930 872040025 426012847 330298812 745043135 694569697 217087910 930805516 774023266 582792514 980380697 407764764 722083309 670989236 257315687 330980932 722581412 328053309 197890481 754533647 282975453 303345977 991711374 303692905 878009832 23726904 175754176 497228841 591048470 734064005 922777050 210939192 222846291 685986003 110599448 428082479 758495224 491078429 364832583 372547595 796238763 53708563 68170816 212653353 754381755 148366489 815062225 975831238 951484916 973067918 715214021 958236030 983111008 341165796 537722941 706516604 968599044 704093965 412680046 927511549 663907693 52971841 536968983 580198281 887358169 57090299 312246791 340856779 706948767 799799661 396169928 455795054 784106441 50406717 920081806 527934950 738715310 553527096 687663513 907057789 23918295 190455798 62488678 555784215 823723608 778950813 917799935 836913829 257445591 545981074 670989236 241924366 89574979 750277296 301610730 962067289 534463910 140362773 872226418 696066206 387965902 661897313 255657335 241892485 169742029 695667785 890559654 839621307 236237563 138720702 68911464 86815676 500019957 161174981 709463483 624384602 591180432 759746988 320253525 878965663 539699642 327954585 765861416 72100823 170934081 728879247 952694853 211289555 680356241 961099231 854275245 762105890 605708811 578013644 706005083 408488529 261199704 5502918 547091358 938964435 426539955 801022532 437041817 811874238 728330406 446424957 27555553 687955568 201025116 827759696 451037551 905206852 350380662 507150839 848171623 650910972 380587568 467260669 486423735 84925726 244999970 648289438 523797120 795463171 921544987 103553014 915808536 856763579 184266414 880174725 155594525 205130543 430470966 407142549 442729165 933152214 736014087 53863800 429146348 272339128 456975389 595059645 61714256 863318969 561415005 501463516 813557645 732987691 771142485 947150574 895094025 178131297 684814606 224489375 29365360 792253923 452952577 228471640 614445025 821551620 699832760 863076294 307568891 925972261 521206199 928609588 936833950 277939662 755616781 360116473 678846738 887766051 575971367 92655918 731774678 422531277 276153828 441103371 199232872 131593893 43965232 764786848 677936865 287165852 242959257 950183085 844349130 758361956 391532137 770215913 761641242 423097012 990081753 908290442 885141266 14913134 362405699 68556349 784038824 668730641 613306687 69277248 819812504 540213504 672819138 266715830 695073300 917137448 670989236 937409910 453983899 928835483 663309356 315363192 707142222 703548140 169612828 94543383 925315498 438318173 210566824 948423919 499480643 681773435 385824939 983055228 702448371 963671959 130877578 784524835 260535370 461642793 388257515 657404307 305590869 983845067 778102779 996832462 435606253 953564410 419165607 693979856 753179672 864391090 398530246 226503099 865189830 848245140 918913878 333680259 226416319 925468819 654350471 299479484 868817785 371130393 853417964 149893923 75570723 222546859 950652447 896401589 799295566 534091139 25659542 730392207 100612688 454079963 439955155 959584887 537973652 156227071 448332549 862391863 493966312 512758263 964949025 963498646 84296085 978791703 770360430 36116541 939858144 289372889 816892157 842445574 998930860 666434453 851599173 729490301 568622483 536847797 994930950 715479219 278196905 174121339 930025172 881236998 81752216 617010234 992720222 898077059 929302172 997579325 955627297 287136822 133323740 764374396 145396207 667841738 794769434 761827208 481370098 792574350 737673264 897044886 706426512 886393605 783285556 223953790 899223384 76824276 985250084 3418103 951672691 824137120 925066811 949081822 674435775 415393902 650656337 370250579 99606052 400851356 57601806 759613309 481003708 371855988 784874892 527021127 797328291 726769047 308431776 922077557 3803520 778038639 761373166 149122725 399662842 783133581 110174554 907830549 303238179 443999221 246463299 928597172 292759152 386997465 161375825 877870153 697875682 707122659 312013787 704318678 463677228 260274069 769170206 831243643 838921009 843730928 575013047 736245338 157207312 827110795 426277041 987463775 670989236 745328122 759613852 864884063 670989236 77833422 709814349 596187464 728321862 721868931 271029372 936635178 748323955 374447864 824757228 193206511 554343994 162209882 776999761 795052424 445271549 361103229 100260852 747721028 982233137 931200005 793234886 821195781 990626576 56182235 849692567 29488043 933992895 387036058 944810210 780113023 584219967 80538738 101223706 213236984 71606640 605064298 482341152 133647076 873790009 247872208 314800643 275544013 31181777 805527634 900682487 904410953 543266923 285769791 222607372 918680455 839771241 771342570 475912909 974208498 474246192 806833214 29924825 439151609 962245357 899342799 819939846 995714910 816305780 958380433 994473376 8805931 762143204 252577449 761577240 121610959 217561255 672516467 765133963 852925217 565457051 786230548 288591599 120196482 815862608 143395168 628715781 487874666 538758864 26043827 951900638 351652793 279873873 865457750 363171129 147336461 404144105 681390742 527398473 675288582 175875808 925724966 13685836 777957629 676654131 711909952 31069915 397453016 539442438 380555990 837261002 927682511 629603614 153910123 911218609 317670965 832865568 4556192 812998285 681017904 94607408 807734180 922991432 249410652 588563646 688279493 879804715 966881651 819311239 733603395 761338638 411278229 257314158 663204801 561160625 777418716 972102200 879836098 540681690 538489922 160268713 440853214 233488602 747050094 990558922 339973952 983240781 670989236 933428613 867943446 822002335 901692245 172679118 143229058 414910069 111294873 724898848 875191443 121766554 650285110 685353230 857581416 358223786 760351733 41532826 604579439 893869266 980224089 696364500 454120222 752398841 763222328 200758211 692995871 911001785 710884272 798317156 697929437 966808328 978241386 334233584 285318029 988249820 697230912 289950614 77425125 181889998 112277785 227060434 240844063 580390850 963272413 805885334 52283590 936436717 906694966 902001413 229449758 97531892 638500839 36805035 784430999 565341095 911856808 725533013 821532226 762372911 538180035 353664903 621167042 401938988 916280512 610982770 934985975 692866996 679896386 406963745 734299050 749112492 112302566 296915010 482418558 693419882 833450156 55093324 896019525 556145041 450619118 914440921 160528094 45033314 784521140 34660570 95513747 750110085 835824171 879919450 210319188 769491393 874534433 539417834 371045870 896372132 536838345 947874560 706510976 937133878 304929324 296743992 98132659 854727903 394436123 909338527 689309114 424008203 994634209 988926194 891866095 73049159 940424899 632494622 914816780 348351343 884861466 340395971 782029564 289462245 227257488 953161090 971659313 994710602 779952222 349262104 342417952 391975096 957661424 466566338 881002619 343829163 675122733 799798059 899918494 148243519 18093231 954573516 828206863 247590245 161768711 40868490 910716175 900674257 565893151 859906359 591660071 563096475 755445291 762059897 64676340 501642777 946041241 425066643 408300736 982683021 12534285 702797000 749632989 817942663 711407664 930655213 68647286 244570305 295138807 836182916 996605779 456650502 805847658 670702992 179284140 747598193 670989236 997758970 503122391 937537769 691402686 355648145 622315480 480268812 424449124 795397608 854789160 493518570 287596833 601888372 527658174 942522577 509061507 11687546 778232114 194794410 773298369 198374526 684523019 940415798 949030541 88647029 483187559 751976291 624329035 573869201 369117532 882883241 283849952 79616371 783502533 174675432 790727654 41149234 880339958 155013799 916452035 105770391 936304381 683239383 567113689 838780273 692889463 299476245 584303003 741041162 49865192 574333592 480946300 900161576 413524161 648559019 469374272 519889672 766939851 872337423 255110258 172731105 337148600 484324787 689631689 831632865 721731089 125703227 630122294 956244491 495577663 891243351 670989236 949971087 946625305 88277152 15989530 674561617 729304582 881062332 472290690 417531460 464240974 625058111 788985463 805294408 10465357 546587525 907747345 932186751 904491187 344624463 711232326 753844254 4926608 838393970 480715911 795600151 652138621 670989236 903014174 352684144 385535135 371120860 878882778 696807239 803608395 36538502 898240787 54336822 212308804 578423196 29811251 315496476 91394117 766216184 809817104 566346919 699593966 502790559 715019723 643103489 875580609 891304726 684815338 485937163 647160930 211580277 580874903 234143647 659546143 841971223 695423869 278208441 713687251 615431626 78061147 771533592 945497822 153213134 336453919 702624129 618466487 604574552 226792493 766231161 817290061 728627863 610394132 223883990 193487412 151134339 872925907 484498775 935568831 710609740 918265083 930017086 724817282 901350631 928227725 902538827 726155184 16845229 707729646 857817171 10418330 56923805 730482906 670989236 963927736 634619873 226538077 303196500 832666374 959064562 742071140 996981696 630099425 211376977 636368797 981961677 264070491 851269063 710482250 748783103 854011307 599226543 676079049 287118236 618243998 439875462 578081233 954686730 91821827 833899241 920604966 710150763 767457707 897465041 572966524 507237908 328734962 812564557 618707862 125603924 797331892 845240701 128494755 266294268 274061512 875473560 507002106 253971033 7911576 163351349 222381245 778564616 260565826 726148863 697243128 928956568 821750270 49330422 36891137 341282628 895021196 269888315 518040537 836194274 865834128 616327264 218526688 438033775 929647047 578291562 883618430 394050844 315263962 982902904 770659153 967871332 320721108 845460059 802028389 278703593 231628022 780220596 878826613 554383728 921462028 802752838 878331645 161399997 793408885 854733751 999480161 796358194 401622508 361532422 462973513 791185311 957361814 742080214 995867048 453333537 769723642 823561220 710531164 228919980 942078650 760142952 68548130 347036717 826023435 344736842 708184717 763809534 700735644 368477724 862797752 863221702 27819156 632868388 995765211 677013078 528124739 570268304 951402689 938980718 217411336 860178835 253611830 709559407 760338223 988878116 860005578 324864771 949698783 574241538 33918274 387997900 953190946 426208379 788123791 577599258 917426613 187859578 706214208 286543802 890038193 31224853 628044646 693079735 506020605 778924470 14923314 823747398 561736384 670989236 30721618 841810459 882698195 986033881 678040385 781895474 569915751 800553819 521853971 393660074 864904037 706460781 788947763 329838629 340683948 867702916 882821852 856781986 838634225 77871617 763971687 357123429 554554732 659925376 77245694 368911682 247973374 37972128 833255720 983326019 758888427 967670618 370044965 546433503 820845401 268855195 991534624 992517926 428795751 908165369 968864956 258746642 484707889 464976846 272758356 876368189 798640032 692990495 674984829 438407580 464171354 491038431 776443833 365950882 944184900 861114270 861575754 788297840 672572966 670989236 235034811 385538133 733798727 101452410 924294089 603937522 871510207 842182322 626349845 572976328 554783793 615645500 300386670 952113062 718764068 793805285 474509818 296835355 751276908 760241375 99043579 860480224 241696834 689146381 89994884 913680882 636301899 527984648 43448279 890106541 712020345 502369506 360247626 74845843 697887735 913681397 16221271 690412572 692122012 54296001 773834912 985766346 826593773 832205773 242600178 89778961 272109660 133272157 356765688 981764535 197422657 834189545 238855823 603668015 226162210 453173771 560251320 762138987 799491416 453011 199448494 611542538 348014892 297411194 952148261 349728426 218925307 772505842 994429774 624989737 179501458 23946042 974892675 856150980 784434819 621925942 552465564 670989236 735133687 773755391 582158808 875144936 871226223 670989236 818186237 62854291 151141463 964493917 873854460 44215428 220929437 129608601 973240446 678724051 477360281 366119230 963670213 885194828 994990962 230690296 690581123 892711747 264148058 932212867 524308989 932801629 968314438 559301086 778831308 47158053 244807024 258076133 743293719 864396893 336623274 769248499 823913551 622800541 325911072 308090069 567826336 694106994 544790032 956209792 357927868 114698247 398660062 892886440 711251487 753427561 779210876 324623614 562943224 744738272 750238138 520498031 455794238 474865182 17677040 372718830 15352499 179965935 942875867 696675923 515116044 757057795 906706150 795970403 674000004 135975924 580315420 316532220 676102136 932350477 740464110 510734795 943555177 52444069 314359305 510831421 953377774 961562067 851393401 924675986 383189904 468023210 741853344 234245453 770600713 452549877 777765599 176182738 670989236 751441814 701330631 671528735 810979028 867930750 670989236 670989236 473291898 764231897 689693091 768929484 931792620 846972150 550817504 576803356 317992860 233692670 934109477 190444764 692814200 728937974 386886100 572872294 714863598 630227972 118429735 74168271 721727561 522386318 491788496 409969566 279969663 515786390 651611385 9182999 883396782 598497280 740962358 683986547 697063781 670989236 944682253 106431743 677599195 330479549 283253127 172622633 746407778 606458888 325228082 307752707 847686738 762711271 740315233 865550704 493042263 403046187 70902358 674942454 940331195 610280965 806242845 488857268 369226283 527988100 852389065 114757078 719211170 557099473 616754068 532390595 30578901 585553372 389778895 766381155 590607760 670989236 978963315 586541402 946091289 876375436 925433870 717897205 643672772 338817761 377074606 880307627 243369565 459322705 764158447 994626074 869933099 670989236 838879549 702782112 231481089 979119563 681665490 794407101 384947349 995778812 911539296 82169147 663003396 416904222 670989236 7009567 408142306 182325642 812042618 391447099 978789085 882944148 744304458 732072769 83512605 774875095 2691213 840714805 620139756 956353039 928318939 363636671 472494497 516784388 141976964 360415342 584605073 859935184 618204654 744917313 670626811 640770317 352191606 832308506 375996738 717798142 209474761 239481852 930463886 671268609 572940175 7472884 716832194 647026521 770274441 110614280 945907254 796335859 907034498 823654037 56128695 983258688 367898797 380303886 903700317 855490412 897465244 466632880 948159107 593314304 864996409 593499076 162625138 502006284 901041815 819679513 32970727 47800750 800588374 681954451 713864562 577943450 922909868 583274451 950534145 771934526 802995935 229005887 865490344 864693344 221128850 162406305 936133770 811295012 875217160 585933964 603669372 111473973 565818575 471500193 792132061 471861268 633064778 312133310 259176628 487589237 828476329 394836885 670989236 778497313 292191888 767337657 417907170 248767229 123583809 764220528 645076781 594778686 152789898 983348466 171475178 723958534 884126943 837900604 931149268 46936324 746764574 631764022 708024066 736216016 867710456 983173630 601617841 273003347 708462233 398140341 711744735 314184359 618488600 286198303 675729788 165128626 335894325 302657486 236216798 166746735 948311169 87060639 694789516 841149609 470343131 964993887 670989236 983594160 909787561 859264254 803879155 483735344 301312177 892979089 738526638 672148525 981692139 884943033 984292281 889789606 656489192 107510515 967120648 670989236 531218410 69852261 711610247 451322906 695900629 912886916 12558700 801320476 923946518 708868666 699648519 54530138 750933811 395542947 463716949 795124683 344809446 105191431 657257049 986411271 538981721 452426197 802521996 594861702 768981293 601376894 104284030 18325168 935920341 327556868 381378767 487378645 965874019 974777472 540751921 4980307 377956477 812562502 821038185 675076852 354563439 692069202 988759416 770699611 486018078 521635981 130350981 766856406 964460915 872724169 607839361 157607366 803247195 893650913 95457159 933233444 600457674 184275895 266655743 829601196 233397522 533149021 640328363 34767420 762322556 78660589 824149082 329989646 83773054 106394399 43856280 487512506 225983253 847235354 293682973 770334930 940401726 752184153 981247359 96510442 331249154 167822307 644887134 910994816 698075633 3525279 60356864 720100787 705479671 242595714 735325086 998467368 921015800 423262929 862228063 671100125 760405020 243719547 136730394 804810514 918982256 26642792 346791729 926005274 904086274 282197907 536383662 89036543 218134375 585324521 103556482 486006924 670989236 729899905 158654450 383304988 234433723 207794139 985636193 313780962 394355355 15094048 723332350 813798516 926373537 726117899 94641156 687282644 90645657 683254352 426388149 799845168 699068908 457641255 48836592 692320176 950023390 741428972 225929408 814123513 817472484 944484145 220633458 445893852 65867759 787686597 599119403 953720286 777429700 522081802 876130978 93007838 970660305 872685308 798073289 238768145 704856127 403006159 314480069 600276745 473292279 899153682 521742896 282306944 792962942 901305306 96244419 963452061 904262917 726823052 904797288 978323463 148392921 21223552 795165047 843556688 966984170 127470206 671777363 998234878 298847168 523192828 903927223 533009883 991144679 27653724 810783580 693269490 164285445 649763394 745643070 220394123 122364306 809861570 176547649 670989236 782889000 824644323 920862685 981748139 961557191 511288124 860432342 77354283 890324130 455647552 240239476 590733802 945787667 692287359 873300685 620292024 600091881 658869847 620429892 27477243 244393384 809352117 728840065 903737312 920985749 868283084 780557439 877866543 702045457 758249745 666299741 450632553 72264942 509351964 386939460 880382957 711664766 187352296 742301619 869818512 940003270 119437038 152110978 74941845 307212715 24935187 895499091 900797639 488857350 143401526 802095707 650223086 844945478 836606719 348711874 469239994 189405562 691390580 68292086 875302019 809484205 921194780 189896993 117802277 148037224 784525479 985376224 960525012 489996475 833024531 218483562 968881264 521644509 844069599 605527281 683020689 286819221 210430027 31136074 943302470 954599605 186004533 679464290 137624456 674793333 130116949 287363802 971571718 369875943 788955359 586192143 318630273 187478930 824248295 69568728 908354923 422496823 277399052 208333495 208350834 912235362 868607916 900176149 521634696 417199368 263267299 683182340 721215695 697326996 886163215 705700008 4435349 821213478 316130516 570744303 73135543 22907272 63905867 843327997 424378822 822790767 935934861 981634562 378941473 78378795 814148627 320766988 360814893 894254699 506237701 841026029 684506119 501613663 814694644 917475665 716321497 800530221 765120549 23380301 348353998 692756614 583732437 48191489 412488414 728561407 776847231 126700103 326173911 481747175 258132078 811726660 970570162 916226097 924745881 172610216 741292431 499036583 195602896 966704198 440351236 837871594 890155359 603109215 227937518 947241310 692577595 878137991 418668320 963883649 224642890 774043668 979139504 709725055 728838207 840165885 599255318 984999502 382578207 20416187 16693891 28997403 428645101 752144990 955742172 886931820 208452178 425000416 218846019 811211093 745097350 921392981 564409945 670989236 568521188 377594684 849372539 909461902 499775262 91201223 451132129 317593095 781340342 80082416 125257911 484286606 820337302 213548279 832706953 181224154 391065941 706154345 258109175 746757375 998576762 767104949 876507933 749624122 940135098 464713358 945395148 926089394 53643693 742757536 380748495 344934852 140318226 158133726 779697953 72104607 842389073 823267182 324906022 952898490 583724017 594867003 833095552 818633738 663949837 62134324 29007893 127800411 377174841 229312594 290278450 720852005 179042700 877802347 822142886 815181774 561579929 52245769 206075857 902543787 729843491 380925178 10094549 254409447 805851866 973976451 794565928 430656746 196269877 223702590 923436993 922528685 409339557 14163751 80115253 155114513 378328633 8184923 923661165 725275923 792681172 754432294 954572529 956697930 269764479 884719780 426204354 934655092 202396262 927045124 483499843 951508657 257158324 378295578 179581394 725472016 994830562 39675841 920412021 705337688 858412412 593150638 986038005 344349663 868155621 675051550 446478505 534970638 826587960 419034453 922085785 429187456 77575741 368583107 187689044 113467772 220661748 945173778 518434788 439429743 910099307 666609846 688453672 754998662 283625665 183224872 421094286 897705239 979489169 746454015 585762203 340334187 219101943 781498044 80615627 769846012 717982443 284692243 683476720 871816416 494587601 210092887 578055262 382240644 158329534 159865303 857312822 691351586 772947247 807038641 769017510 972417143 234468637 724792964 75191955 927626301 602729910 742522023 266802885 675783080 204922057 664776893 971943857 59040252 991456225 146645203 536169220 895173374 192678617 802302145 588489501 927369153 508399009 186404334 463589638 883782640 387021088 157124751 12502424 300670110 368884255 644452759 906559872 782220617 702374439 319453928 221157255 72122257 933623206 105078583 420417553 493351099 649506061 937750862 959150243 219384049 158306339 785359713 793678401 564315716 908599015 868301182 944800398 469059474 761438031 301301923 792958401 475476099 688214232 639986550 734331631 927731438 836018098 824485669 727926854 249808981 615993123 229050884 217244143 767757017 451767720 783800645 784286175 974723556 69443530 723214889 794929624 872064014 408070665 486619782 47883980 846480190 98003201 773081669 305899010 679612515 670989236 645203078 112788137 621660598 201471822 823287796 528207425 958907736 991251225 994283141 712209104 402706209 173173948 496332766 848005292 796370705 858656446 564721397 841681473 175389367 867391201 362538551 979586744 243281868 908206289 550810970 222017951 229135777 121116430 835770430 882695437 528416560 704419032 771782603 886771280 811251818 895996805 762646596 417196493 810932483 442482434 728385635 745574118 833916706 884371759 822805108 732660043 867000563 733765411 699920250 873659250 859765069 717465378 690436167 547340377 764079067 274689204 927977319 126301708 313859705 747221891 670989236 308753164 922237153 479037981 170386531 182468440 148720530 616253285 805599366 727632418 832030262 313220887 143340763 47324984 23661942 410818532 880879662 562884238 580796717 970130346 670989236 81835933 491146513 12890069 586216843 989060848 848292321 496764274 815413172 691431707 228589952 677515256 540092220 664406683 246476500 38612153 755281399 329069049 239689992 97043664 647641069 139874954 722795307 600623239 730527702 498152987 990982021 813405900 938699632 406282875 511614264 882492505 703700745 400015438 930799169 670989236 271797224 946922527 997182570 377248632 287076216 719169291 636152477 957778731 640444774 105483599 466168070 52815113 906683926 820418858 821748261 936863999 465172785 215375121 274333894 644046347 724524530 976360397 32292019 957123341 783797118 855969152 34453280 732817486 614707310 254289130 891633233 162728298 996589793 543824759 715041749 849405647 313818321 596587379 82642807 950079925 423911877 899624943 890671317 738306906 147300256 27728921 898184614 770624850 375630310 673872658 406329598 716021466 945110921 835061765 236605984 294066006 977943032 446412933 416519416 474511266 937394229 779114940 678400624 813511358 825436059 294048397 413217564 795905279 467952769 755619490 670989236 562002571 56050248 444849386 508722941 842144792 670989236 241281396 626466366 92454936 652380641 507984479 616229199 852540621 11543832 177228716 811553860 901658562 298633552 966188741 12994214 270425116 68403311 305931218 635513384 918894729 955216052 78417405 356832197 734141119 847500529 499044579 43257983 580277720 697061438 831281891 846142680 626787570 693458872 251106252 985142817 551985326 634397727 131769109 932896300 6944089 880372844 90099803 543347141 884891551 820433479 182554473 643771113 950250572 606574036 964347788 718316157 653629891 848798539 658982814 852330665 252669264 878775181 737499170 738665284 247317154 730734800 148775618 707582937 611029066 942975825 854086488 881736551 827436759 329617547 802970105 103071047 683458755 118920754 48920152 754154499 548919258 410663181 987730484 457232107 429526010 718711180 911121811 949200562 933190477 950655060 901816241 724134892 943541421 203095824 770959057 282481802 297081532 895122382 786599259 876579187 11687590 676189389 739288597 66600797 726227819 160534714 427695042 77982006 375899674 782622145 10193847 71529355 806038578 993406626 962069450 598406426 101796432 283658019 903604313 378988467 294454812 638950281 702442133 940460566 143573093 900981772 283633203 720489651 650481707 625002677 940434593 393647902 954286349 502805302 845534835 708940228 147233124 584058678 834578794 865007934 468682155 529302984 838728234 885628973 365741596 977587578 733014225 191837169 265580071 781655758 225663930 609955698 925126474 322920618 930447587 566360613 124719394 836453965 684044500 756094725 755325171 496227090 459865071 127165269 238576218 556050154 177597500 558591463 938698948 384199447 35059800 519377761 759484978 48597334 365683650 96961257 985600606 945718372 963859314 706620037 528732996 878546203 580468777 939308428 322629133 851245141 7427033 761815657 987779377 743093314 688012809 743093258 620321420 187499485 166163031 15099328 631483204 307029106 83736932 644895941 994966076 423343311 163020155 780679010 989694794 394077859 657290492 499367414 983531052 372150076 229793488 993145430 224349572 203549329 382601445 172328093 992344716 999955581 753739464 567945337 225611760 110414540 877562717 936776907 159711498 621387809 67160489 915318601 98275983 830140522 866073042 764437177 622046086 517839531 341136564 123068300 431136054 898907145 372428616 23620764 836391110 597880430 773535837 906243160 300802870 855617365 910804844 924138642 785208358 10391964 670989236 327079530 680604432 685079910 431354358 839138562 776408709 820289101 668610816 13617160 947977090 787706446 758218624 910415142 963052710 811272037 78392394 340179695 171915873 350063993 916034839 910872540 629147652 566309153 792749672 643294769 75396060 272095914 648597608 968272166 401436522 670989236 670989236 539984333 593183428 977893762 832072590 152529424 569441784 819855011 777460689 297412791 678107780 670989236 234205904 804899984 825117595 447700283 92560899 383309024 89741221 61447748 942573871 821177824 781109087 758678948 670989236 959793469 865381888 105539768 72867844 204138843 748345482 431570178 609105444 262066851 991191756 946763050 198959226 900576113 260899541 988247848 163363468 547046477 730402270 678984862 977820757 800721942 541518071 185979150 716091014 931717595 248600410 760300183 195145247 308117734 636108276 787969699 779591137 680191452 538224070 29294491 658741586 200674881 797232905 906428278 956456035 373959266 223189353 466812317 679278160 495045395 821313446 894496848 820941263 336607569 407759162 19089397 709733772 221642901 278172934 607521769 974708866 567022420 679102104 773327093 181632779 928105587 995801677 857142864 512338677 605603796 791215421 930412206 999724388 900233362 663176540 596694622 81843451 806486176 292970600 884613062 717564536 237298541 830208993 575947758 958298622 621472775 95202473 733140477 992337082 677453295 864500629 960280918 316231977 652188528 825905401 879155955 845056546 752595914 429980467 412185616 150852438 846477717 997239801 604263132 758689299 886327449 232495383 696089987 813226781 167897014 654821256 122950673 210758793 656220301 670989236 985038712 839286908 475571073 704948247 835781830 237044196 645671610 940063944 790162725 832586528 834604027 32054285 480382698 381264564 509621286 698719955 676885799 973471039 554161023 959484745 512992355 839478049 529192530 957450632 880911833 358902655 919496131 420856744 743614126 294420562 670989236 567619171 246642973 802044664 864611862 742278424 788234776 670989236 119100898 876285449 984672815 723631498 784540095 597178952 449811145 172450032 987089870 878532286 975371627 573365902 889775946 997608145 904335598 959057138 699548389 683125757 964845788 630222423 872613613 254771535 82804065 851649418 948096068 590668511 532899592 697067969 138029870 771352533 230459076 344734749 402451675 785057317 40405807 371095279 714209970 670989236 508861065 884509462 934984984 136104787 854901776 340139552 908811077 685673632 253185123 249274350 89897702 812684724 521592047 951545283 742343755 625377349 172960632 57607500 573454981 670989236 983426849 893946389 873986050 895319045 755247064 258390518 930849534 753798647 971221369 551373043 994587977 68922912 121005492 800719796 245098897 500557155 983308179 781602485 655921124 644878302 611696954 755876303 937242203 906128681 796338460 410761291 552595994 108084909 186394273 277677221 210842160 939277879 411266016 829443485 831211612 973227775 912380691 419869300 159766422 210603187 845939813 670989236 717118169 165577272 851719818 910791646 232345630 670989236 421865453 764249211 976328201 564596990 18561707 855861590 727620817 140782272 119357915 524352455 167189023 71988517 908270948 839428248 111204749 779635237 825424983 92128848 780175715 735451159 715514846 944597086 385810058 791535404 420248515 124269142 837181563 61566187 215703203 651778822 730940313 863953493 741387178 60853054 821970546 916489493 538674032 961182032 808603493 255159210 903592633 311830740 518686575 342455327 276852743 889384107 137769747 33495081 935392849 725052284 400554955 417668872 831223530 655367659 795275874 223224614 951763069 787207884 789060349 960297860 652461664 894645559 908702080 746962852 873431359 268054544 735546683 617597900 224870478 252800197 722095911 830781431 660536768 596134133 544574918 478459219 944981887 53642814 137875208 630090306 647635414 289945552 756530830 372928359 616345859 102928337 467157886 395230415 899112638 325746715 340300373 98360187 992946911 857005410 447898599 436746942 487036572 793596841 440289151 34279049 172014544 34170628 754138893 799190093 472916413 430708251 419343797 214369441 843496171 845438721 902630729 955376926 853569154 765984196 655536526 338926994 759672298 998752530 774097202 617352160 361435766 541657723 13156827 446908496 731129421 379494761 769387998 577730191 821122270 40879423 356527129 62008126 717262685 807134758 542119803 428224720 466967467 519421142 571985190 881131965 632841390 175342260 95392954 964833608 670989236 740105473 708355479 44320571 733397894 194944519 420796917 24639266 491643614 777475922 303923873 704234123 678402413 850957440 218089653 927561274 975253281 594886217 759447472 196542703 643950365 295108177 898844039 966058835 235363648 676770176 813127769 948387393 664108291 695503705 415175739 988487109 726466489 133129663 477143390 457358373 717984989 91866013 337885790 370188411 661469896 675128344 915764416 809666940 791664925 399221719 45357766 875940628 733714884 260312501 950533913 983917846 681648031 550977547 925437981 670989236 52920139 907298546 374350015 772133118 995328295 907861652 946271498 397649733 585438956 561227630 816473738 152123237 869164162 552610118 339490767 725332145 641002362 590559810 752652024 722340391 850545056 194877044 670989236 516571406 896953038 279055414 754884117 242225443 281014822 877232933 971147484 575378588 294149665 232839504 107695275 542939149 323461244 525359849 954147543 944466821 578250717 581325836 452589792 850744267 461960523 895741692 548341445 847017980 975792232 847320387 748397766 331860767 697213462 643208982 926767139 730752598 8047989 145604785 450487186 70057114 98876630 720860613 670989236 802519705 107473785 487714615 382836201 896724867 411899479 83387269 265741319 770825393 949746187 982936445 699652456 541771845 173997848 940293015 387176649 201838504 370803944 890428754 990820942 335682365 522474824 161446200 602988618 913100987 980071331 954331194 151061983 370912868 724227051 917837587 902182579 448961505 888736166 909211501 754547679 243504702 452490756 73098634 923859735 586235242 773675819 322103826 258194714 849557632 780219327 455401135 745406148 431422475 522329575 797412649 413739735 257794964 178706976 471902420 1096573 711110060 586805234 624247415 190060299 815066089 762375726 945675420 27227431 160234090 401373500 299848170 998056531 713724284 153948535 436048695 935459606 670989236 728147583 673135554 863444667 295163633 222037766 727280501 188751536 66634086 889554374 7491698 146497146 256356860 10037828 962822707 163090756 396957271 870063055 554181444 925774067 930109042 846715130 697297514 864253086 985350942 203480998 753701309 670335088 78971683 557410578 805908582 841498229 742140084 41900992 760068400 811372075 768475546 986628100 105927727 789088569 874914204 318444892 684630833 506329164 921577689 218750146 801259816 879342373 235636400 933990383 375256692 455085604 848068448 453110083 661737179 940221215 954882419 874424924 947815015 944391463 152802191 555672439 977013317 90759841 545417323 777514825 838253737 139990854 724223815 572099046 890938219 921423732 349587631 474227748 446914045 45849520 7817471 467676292 800886396 473553887 216085705 714168595 858102425 983666131 346115550 380310721 994516450 824023258 865057542 759962330 672483727 150098112 625184158 664624428 783026391 941801670 565080159 56609984 432000835 737595380 939327859 682037448 476182546 135491523 732769766 604384918 521571462 370234021 567944830 630963663 655934090 124513375 396687127 994615903 510370591 485086386 781273242 934734467 879806624 868203969 543113186 760916071 987545080 37671210 82617807 638333377 881372011 294648663 30533593 805398630 128249826 806074337 783577905 214879223 769092420 858205754 901736565 462948480 316044915 453622656 941588660 976931981 987093689 735544133 702103433 622710386 789863005 691195456 916472271 887848813 71518728 839524024 670989236 812589891 226642804 989847947 432554231 785615651 654279517 319616711 929216264 273304582 212072711 319815031 920397000 932631981 107583105 520952006 687393595 828417132 451712111 110858116 173532898 409286527 832769281 80922592 421948689 361400010 240953886 422390111 779466195 13946018 967502680 972307760 959776448 512361577 766930591 781794380 760316909 981695754 178116836 133508692 992457243 762608183 443159354 689454610 125793074 866809268 377042041 280428253 102453775 43213792 120492009 739217906 967530217 256377764 482125280 449995833 709479747 50181788 98509822 221429439 720968584 892452433 258588445 583135700 429571173 894013641 831459699 570467559 964618662 215647378 684036280 645015779 112883496 930407122 997251900 999764429 670989236 682808879 620614160 721044976 85571630 65501509 753524581 781355051 787324697 886156770 595404256 477807916 28532601 672037291 918416532 69912280 719329297 965215738 170908387 710327045 537911425 799113841 823470145 472363474 886703271 91382329 186090578 976098913 237415664 692321109 16971336 561930383 279515916 372570813 889684300 510110049 588083495 32251865 670989236 947668704 670989236 933105445 209444790 689193844 912440149 424093907 664962412 804597970 650181256 795619926 307820425 681663708 826347115 841502460 78740915 938133310 89999772 831730748 754737352 588408436 400758442 798257460 964290625 789962990 695539111 525945453 207508465 60533751 676618518 703355429 684036778 380003587 52528783 627893369 625957400 777570512 75662212 681979171 233773324 257616172 648579917 924382594 681497280 992099280 125252766 870315966 287950646 993450181 619860 697422693 668284325 864574541 740645608 680868950 694487888 524261231 870371649 436643904 818387086 940362645 701316897 155833964 718780054 962405939 531129181 805535691 567907955 751561130 789846029 850257443 415702912 154786259 499803086 591857638 57448014 248001294 749325339 839684472 566576125 67534632 237074638 100036528 720146517 464732560 4851015 535196251 143314614 759355629 147718807 604873348 418666612 70342369 712637633 938594328 779510597 730398591 571439366 518270184 987891526 680996438 976817788 949961930 985824530 754530793 344066246 344078679 373143096 767082951 547585894 96477291 351777025 870155428 970212107 785671564 730093617 164797244 132542803 583363218 909700302 737172819 523358221 66685796 556843168 866068094 392746909 988589160 959253751 162418878 745857705 731097287 14819151 973927839 179906770 774017612 870722434 753455757 975268692 951263727 789270818 813771817 832057866 982566827 929869502 493022744 463753157 299394762 670989236 699166524 715440174 731665929 167335493 943102592 432653232 898909964 856167084 699156809 517441514 835501347 315605640 600543205 18942855 864699618 64829511 880565402 10364659 688763012 507106278 703073532 908481365 940097239 780204946 748761584 344677042 886647786 18757557 405986644 927681757 29522687 10540985 588984274 8390503 727928242 670989236 806618010 281608881 410643930 834878459 407057404 125595793 960685969 340456125 147271470 179344285 113267234 920948456 739489658 411285890 933659942 909290002 538657746 989461508 675415250 233664927 640300189 643920119 855861957 670989236 837298324 157635425 847518956 569903290 400819177 944346298 71031388 775950109 180272101 847838554 476996982 342812033 474467822 54198691 212624328 496866024 706905097 670989236 756880746 712719736 91423251 356134665 904587014 743261907 55023735 950930912 927646599 521445474 786923503 738814144 954057022 803924200 101162269 832613038 398159680 892805735 535506084 992455467 385847714 993585600 859169619 358784683 77163426 560897959 875807918 712436824 115881651 342562589 673640293 499579544 521066462 713195377 839883747 995372511 906308892 940162586 48255592 869132240 853665978 2827816 605681072 469065832 877923539 987086878 798286783 670989236 29673133 470401618 990866506 670989236 818383116 546675273 683787534 970247177 603453224 169983295 523294958 389280062 966364695 961248124 700140578 781823380 955849301 834684953 916673106 58596831 30025949 341483825 882327330 884817402 160158623 901231681 755229493 912290515 290530116 716006668 311195717 333577897 249938986 165343692 166933740 471047915 679210225 525531097 893520139 968191744 925582226 939726411 50912094 239413190 804462975 935434492 724377305 31289764 639894880 761534848 58015521 908314174 136397803 966186583 986910433 229618807 713747248 826724579 49779286 870640765 774288207 581627442 367018888 224138507 351440391 717944183 255312573 940520855 646999060 953390716 873318573 706540563 740847536 129850979 809475670 811224782 870497410 862376181 664705812 483908710 924528680 341425150 670989236 650722146 594370222 166808979 955752256 878003417 856144373 1604680 230341735 442147064 817867276 300436808 266755803 772325375 853580819 490770637 927493514 194529367 461232096 49187084 768484204 999957927 725635356 707923781 283081284 70255032 988498681 978520070 103120310 842400871 371496005 156299228 596151301 916077633 688647248 285069327 690775373 698025747 362922197 765524745 969984207 852679326 391733894 974628187 707158579 606676731 880336389 761740016 891940201 966119840 699578157 521716591 497865919 593826363 273419164 752220722 202053379 963299390 626445263 100322336 528034465 843283494 66882280 958900640 999602817 315620110 910206506 158098365 328836055 996758173 726041086 848832702 768356591 262638397 891052527 992937002 410211899 515352623 216958833 27643512 95083910 282299569 586968468 893405559 866271069 23782281 773830833 856330657 483816721 570783146 854249845 465557682 15961141 583889283 191694073 808282135 2740722 785627038 282775002 856928090 828152538 219974272 752035255 368731468 632791123 527573324 860180437 699739148 917116748 78377178 568923807 930051218 211276558 964035867 818693965 834676840 603963297 547028919 354034206 994357842 931900123 172254350 294545872 949359856 772484632 541235497 519784221 734714841 569457157 479484038 239199306 691365649 801788412 958859338 762997248 446050753 766363439 375187516 654614323 882721643 261370411 778366732 949110919 922502904 670989236 758492331 712351574 765527466 972919799 913253 285021982 884868943 296558030 517390009 787446123 210086025 939407179 32920344 817447369 379832896 880312946 874685851 60822229 497205434 502462677 787108660 212586001 614769204 845214873 844643092 960185253 567760285 225374326 170722807 947819328 612296098 651784537 670565491 782575004 488893604 476255658 573269198 95882134 235250681 972463728 784381487 542006168 269696626 688531170 855999649 53844958 931066309 838924504 199342740 599357607 957214002 806043824 843591390 949614952 366228372 869316550 206892252 694828551 727424714 835546648 198802838 453152947 848213965 907803756 488264718 835482195 618441315 665321108 710783786 999545745 993861951 972356338 825389240 737032431 704247741 831846041 777086769 36870490 300707304 120761094 309948906 284814080 78463951 997041154 745147109 700987337 423305983 103148319 225686117 775050531 786116182 115075553 975101913 919569586 446828229 387989704 274584484 91772895 255890007 56240291 906491324 640324917 317483569 45674497 685570986 968429995 476812985 475373847 647937639 818385262 209161814 855157361 215530115 210189500 175641724 350342299 658561884 877747816 865563834 670989236 987559170 19613354 564589356 864074564 625459989 943291107 833469704 842818531 811326781 612876453 974251688 885348518 807667268 733607733 294497096 779817925 124574951 730504356 667969967 715474862 819075923 777015157 94121027 531696018 879180669 684826347 766860090 256682234 590558498 593436175 763329504 758024967 375238728 891879811 875900901 731389162 699602617 784138119 844803901 985711282 198474454 904941043 460576367 424958997 958786917 752515894 757502887 782098235 505605189 884040716 715729290 829330424 181078037 6091846 883242805 505669430 970441840 720647163 208918203 999628832 760205293 379817218 886575835 12860304 46968257 329040373 507801059 197330578 831752584 997030723 744126756 791680873 221719160 719323927 609115051 583965855 442024036 628881080 999285208 53315775 670989236 520752487 666897411 652154636 978537772 60232229 477127425 902633754 188213482 585745734 469500245 114499851 119750160 164049588 103785172 949706149 184355101 829193793 847661813 105582205 746043869 379812672 688396312 104384140 362624555 986801232 605658926 670989236 517805525 670989236 962483143 279658475 484098402 442899168 718873776 286697792 475743812 89935384 700502052 825126566 31827458 222824497 903610583 30412196 916783080 545467707 950539545 984067495 771632021 692088477 953927107 558685216 245402027 327994554 994458838 784243670 43661790 833282894 340977756 551050606 563501666 76284819 417991570 50519221 926359671 106718998 170486593 895360917 211281129 906999120 506764029 289643917 699824210 727062774 245657328 670989236 735611416 264009753 521987768 686065931 785553096 678096247 196510011 903633513 892914278 44679093 869248036 880275203 712065738 369999238 406617875 65475287 59229046 862794614 300149582 534431806 588355772 224555170 705417088 810344770 878391601 779788046 847276632 508666885 993526328 570916766 73113928 831661269 830991678 578527338 557021885 934829403 58535030 885958270 904392559 993712235 702272175 878362043 37236742 395286207 25945149 861738884 721434061 567872331 101576845 470913015 152479144 192208783 64342959 179086135 730709798 930289725 641992566 153187726 949256460 43828501 474639255 704059200 614273796 486155458 571747080 92872988 277005212 375518958 434360194 57078138 950219449 956512915 144127742 951477351 496432934 926387505 113008301 588159010 930138514 430885875 24417447 146061332 892523257 951087509 471100749 547924078 752673396 841917381 861245508 832043281 871863740 673264585 470874327 204432429 504147961 809092573 963769249 922465359 656606065 675881285 971621955 620549309 474357120 900740204 833528703 911016072 817357282 614656623 808791011 359400626 601568293 894608928 437330129 438909091 529828602 910196544 947426959 984060023 969702956 702380153 784406457 380772246 901887898 193185681 759295988 649017505 167843966 164299591 132298767 318211444 174077343 596308529 782866586 926614574 997110002 50443591 710266933 823081564 528777569 686850826 698048475 516310481 264667738 857626017 678140868 676462811 921870462 729522430 854944273 186438010 959060111 847157052 906123128 892935609 930996908 873079086 189265526 959508634 945534937 747627169 933425111 120561226 753639881 698927451 678507590 328884638 554383558 379633940 845105652 233243834 638846936 924096349 944751946 521292423 36323870 856268521 693497876 788811179 860145075 631466409 731410811 691518930 797810626 909999727 164940045 850768261 991236457 612673352 698678523 571459769 750279867 983647090 904614407 407954814 57808516 833617584 179977001 369846247 255649954 853907531 30430820 965591146 803243304 473270221 908130493 384345284 690191288 806916854 219183074 262096257 338023357 958839219 543286704 252980906 629273495 663756732 126775221 795947391 608834931 834773566 703352609 808953982 803608620 247762474 311032117 973128396 642553976 628984112 730155484 706183855 937926628 663160740 718541558 913860785 196475008 537182809 687519627 670989236 266320408 173501770 739939837 237074355 689740917 417565385 998729134 53047931 679615159 680298013 733290050 855298755 979876353 100862066 429386259 895233175 927437354 671891481 780914167 625746700 263037400 864011135 904803668 254242634 675962960 14721657 965120013 173304250 449355431 48417229 854123560 916224866 748270862 772208834 935974407 851879208 165704928 3846953 57764483 632679246 241395332 682712885 458677256 937114725 681955942 509378083 735599320 756442746 193894522 973138007 867696701 309702295 843072748 112371101 698358982 750264448 889505134 743019894 133812101 848941321 62127044 37426239 726029596 21337717 343961083 706546077 801935543 689858775 659734608 659242274 205716813 853998531 51382728 775883447 860511866 413336670 464606229 842518644 572411521 132188772 316236747 994604794 573099265 692174349 849518442 716528361 864294349 800962791 971709378 939290207 724926195 763820219 554028555 195289491 119573009 385889960 702506864 959258809 313470688 321687017 533185728 819814914 508667151 816387984 538924104 922601297 626427850 838782090 979559793 550420797 834674625 670989236 585722178 666464838 574091017 668364225 62022345 903124963 706815 139886303 34482028 892697372 777250113 751555729 206733130 867613097 920920154 585737337 617575968 736659881 782162827 24715109 939517117 675303822 572154642 745312009 959306484 175017767 486342587 321073450 700740212 990252190 972524737 392932966 197239463 674200932 839633338 993768705 884692982 109926793 811998621 861503027 603766321 38899588 410117327 746240289 959303211 370065577 560887835 789965764 285563791 251022512 735654612 883580961 831265422 347238827 740287248 707219093 796947432 760122297 340707000 297280 190686783 46690237 538658058 795740345 900187957 347181866 514084358 910275746 872442455 328013870 719596651 693438134 494651145 42788338 322224365 112430992 996171345 343341797 106376110 992635273 804389705 781763320 206437407 342290312 949464247 802917836 660667098 695212536 558742055 682141910 446167901 746939778 935062042 692675329 454752101 823776583 453499901 867935529 73585315 98153337 537827254 683044461 691869595 999297355 420871987 901999085 310938257 636793596 57302843 222833563 335482315 794227001 151021428 975272655 554054487 685493299 300970697 860077423 529912250 375399778 368889612 322497850 793010929 388962800 733364905 843644325 948070159 754921642 970897840 754225558 133546744 954947674 630472538 710709502 989419113 383064258 242373115 725227254 805087877 679856164 643049581 15719099 825605116 978674614 834155194 492493646 353491686 227813006 746822723 702246835 704587822 213370093 167505295 228745151 302660430 743146174 757825940 611280461 99607916 37770432 234743893 780028538 208543585 886360060 56165851 670955297 827674357 167921931 822677118 891964155 420507910 677051138 886647179 683188089 258942002 829253366 788625928 628535228 371198111 230360136 47365767 884324320 921825968 911978257 808844038 809845362 834413539 750849339 799534140 46648822 237404584 455389227 248397227 15709544 202562226 439644430 890564047 346752779 634116785 451675555 896192681 242243978 755709736 653797236 825362258 97648389 35886373 92797334 204889332 460537213 670989236 229776108 692193044 951656565 384147775 781608223 436363940 501472899 523859876 706302525 998521646 262103908 372927566 169375639 836011092 744583299 214692368 441785770 296504061 601665553 956647576 974767798 701045174 769023594 986771299 713019437 936954234 240748398 736571392 273512123 877412555 225274400 972347105 724300496 575562257 485961495 87243450 826736501 471517139 553136426 785570593 902673583 159920056 11194768 999138855 196187979 16512668 776423939 273095469 22300103 843980897 452974979 120469840 899728580 698288071 739605646 536382270 266615043 826926525 277004540 768762699 904118064 923943447 15445552 643186893 187316893 665780786 874613879 981959530 746717619 870645793 634166609 255651492 101337518 408536296 611425649 897246727 509438476 945832246 149043931 982646842 981421943 728794793 846229791 786612568 937687545 841374555 286061135 927918570 338158726 789528875 995650014 643242894 259516928 993507714 422345064 402582599 738290200 854288586 833323309 748311264 685762346 26035308 951221985 535271096 576794169 710964403 818315671 244422360 645529015 899471658 95958103 843110495 640997124 421328107 93088372 988835668 941401829 431442081 869336750 890980687 809632886 953690742 878631751 232625550 872807496 718620055 529353422 887699488 268605735 921038232 929002709 336035539 766546403 795686360 653378774 273368372 367997221 835242741 992279116 991942018 846597537 31937510 884321381 228021492 147147260 582067913 330681993 325865160 400209327 915273758 229759359 143811624 386368405 298684274 641545971 989625797 5362651 989390244 682163137 265830485 977338536 780156852 402041654 554779839 834080476 802794552 181211950 670989236 42767544 705583087 683432529 398672972 955270115 614748516 973369044 951493222 819357912 873128666 956298983 561953575 762874609 7164180 926084699 273184882 596042215 767283384 147616054 312343901 996899663 175310283 865789449 131644693 839601052 155778896 915356056 474897474 838910760 710619542 987340069 148480410 239152602 669308151 928170404 86374231 628009944 420095390 797331895 96223141 602167700 811585792 450546473 481682214 496897060 706858760 734222112 267067132 892147581 716101158 873690047 744304861 343895494 822713381 941528008 677464923 753598962 762916163 388185158 105650892 159979135 825687130 831650787 713418719 820263974 435863523 877077327 861127644 977064063 773243164 76557129 734885265 939921913 346679873 908029060 269189937 491440296 21744127 966019860 429863704 413249845 932302269 730494231 568960081 388128765 830678629 727014863 215313601 770868764 746444514 448676997 658566961 121756361 779379418 239538909 930026016 746568960 231727833 221685099 758428324 762512399 822191951 388965942 291391620 778775635 517425651 843256321 138151449 241359600 817961937 707974018 887404555 885336626 168744481 994172610 241492162 264011416 914978085 708979666 909249317 492991454 676752445 205168180 452779180 843459336 677375418 973738817 581304752 842591496 326512787 312018382 891556025 699286608 952104297 935990293 764913688 756186323 452253147 898666789 899266289 957565678 848031990 733023990 793707297 794784437 988991022 792033279 539313170 917400084 678265148 806112992 332681221 476303157 780133083 929638468 423878457 393518551 825505802 970026050 615930080 937239131 21297837 597127345 332833650 820784399 313544954 153343212 293254239 549065529 421436516 685561947 763734113 942033665 315191013 934335544 928575311 670989236 884779972 795553111 711112822 852687802 569062596 929607949 110066984 112047604 845282144 938087346 993637310 90472680 383643648 852252295 918947989 957318608 277517760 860705063 713498931 316646417 346221168 32034594 113031695 909868890 528128702 926635142 13958698 753796401 296593020 940036734 841176630 820282619 978862096 486264302 848725778 728804178 692929258 129515659 38501680 748344496 881340304 876767655 670989236 51753327 827166172 788853032 574481204 123820770 959251501 966823703 501364432 825229652 670989236 693004953 249198593 838932915 297999930 206898709 145709902 707691568 750110340 800204190 819482825 843150836 865800645 195627667 569859801 248860459 178875616 248648722 338432797 930638948 809542251 301204344 434273957 941268687 816415109 901131358 641764993 641050412 529625100 276989942 714068571 414262859 599962112 786187289 698159126 931685402 777701355 826166846 789016030 989861389 516211694 968014654 797040570 452776365 328366893 616607525 95662739 283073225 343938238 943485929 952291634 479851894 684603397 628140283 640257748 748375228 994290763 773860622 87177680 373155804 85714625 170291923 274913131 412605610 278581609 331200718 144189906 933308532 491887744 754855137 588102578 994363459 386268060 551763348 335443803 290339746 498098164 563639405 33585553 685824770 573852891 871397157 790068850 566061363 424564903 485564519 670989236 731673005 54583609 38852778 405311367 771238005 852254640 845086208 677003197 688129418 491493 138976724 844255856 666706657 515433483 537046794 233626766 444570215 866252075 983018934 755770500 934796620 666777576 290186091 74646802 194190346 785707955 670989236 961639706 680349290 917588154 791136413 832498130 246044653 841178793 609974296 234069270 641030643 120415759 136861489 693571844 41296352 249683799 994782135 411804809 470808474 676356635 647682511 804362503 728319524 540322489 921013513 990529132 918523682 744420812 111418123 748797039 502191346 937033505 202545127 308476416 594731415 892565517 995671646 772958206 52149692 760705700 464668775 12876526 712882124 131948831 938901748 134611710 176053705 561597676 765852223 235390767 819816807 124055298 65730198 948071040 15230898 373921426 597411573 195569808 945893945 507340863 383504130 945438382 329929077 601857505 759457197 513671773 288645128 901009636 276034770 538216943 602860840 596703201 38238516 431542932 107628336 842691767 100716422 224734688 866967726 979988862 730031503 606603440 139347908 663209665 735063341 429116697 978849820 156718160 654608520 686107732 539808747 688414340 585940747 48200923 354791426 216193384 376137575 581782814 700869199 60098757 473183031 313185213 382131108 955412164 473992271 193743552 839175980 46905631 837187949 55039872 736482121 721024368 596518649 230567893 178477795 126011694 225348344 299146574 591910860 968984463 974760578 969218890 759229632 565086976 978783288 90546231 559183536 210494940 895846883 149027050 759414090 5201820 772070950 165138166 191179389 779890909 318127227 480316299 33139715 855467263 248052154 731628635 904467877 837365814 34299306 951253005 150286145 851395609 187395603 824921020 497552648 727459039 970710796 830895281 825920779 963774201 166549691 216732703 987078535 105842638 162704158 992962899 85597207 894152497 408528435 812122338 705622403 765870031 198562135 813498848 329623794 788327088 844579410 886463716 887401278 52652509 794018911 771666716 855934155 724757028 300051760 700190711 311738329 872015882 911425390 387041961 830568074 966151795 247234995 720127469 700344022 2698418 805093236 797241867 846405512 665597682 102175516 650019358 949429118 418336712 15953803 858445527 765899012 976893803 670989236 834726053 819121473 246419055 763950022 898363697 847308493 944276376 952051523 54443212 839754388 129283596 129229776 861363550 521192943 531518137 596349687 387156742 266150955 2427861 315011914 771596035 986392317 197337166 435578237 729745641 870620235 670270971 102086420 551837226 870393042 813001111 844030843 720466823 862608757 289391914 183687706 741755429 386798770 838355334 991934631 798758778 904161216 250172152 678379129 131369768 566993625 502354010 258451156 515215094 734262739 582074575 109223479 567758387 983242373 228322571 750566183 767453009 148743140 459400999 862961416 912888352 929435675 284848182 214567618 686807161 558231566 103234776 670989236 952936734 370097323 339570367 721437387 788118829 950457802 833859482 716680255 755014791 714466881 880936965 981741989 465941496 874625224 641477472 609758952 75716510 940891205 912608540 745025528 716638360 903808016 928303485 276254639 887210159 84788312 919097750 365523485 306679793 110793442 884889320 862151950 749052255 3369520 754576833 811050069 689553756 831205183 159719383 673039853 790705208 313997843 930113174 709401419 79732935 723931422 130023099 818113937 855423779 487997881 833325636 151256233 875008213 40403871 392648612 51032539 768650008 685927025 873534765 321565536 443481551 715706433 719563003 523343519 858233049 661545207 78957466 194545529 217869012 187873286 220990491 171015456 185744813 901980980 99788634 572345313 686027625 472856013 931951419 960774640 32119549 955773760 146525437 920233699 257157185 997214930 60906990 668094580 756754148 959927414 750635 425364430 672659553 712141832 595358732 860682385 785266945 157672407 341729687 988270473 425037100 767703440 582077945 470494700 475668620 827254798 412854048 768748369 915756155 272559024 140147935 732829354 980798208 242571481 562952794 869649452 558751618 778245114 697537 876923315 288977931 727463653 801913992 299883554 527234080 755864756 678609812 752324352 970533186 710763529 965133779 716502091 960722068 749625904 708334384 738934070 212101691 754964215 874174653 606435211 800053993 305323803 685101568 847634216 988081394 963907878 594167452 584661775 870906818 533040385 982448159 929857616 610954286 368802124 399933788 897089259 705304876 641363570 860896775 939552581 7030154 287699446 735707319 888410301 729692411 670989236 756714812 904158183 817762338 931720632 415068520 958740890 29905275 836439832 82796225 611064438 642159698 377791397 954219778 905542827 626376349 531319839 778118934 851552904 83578215 579936441 464998117 931804717 841581571 291689983 845822452 908461220 361729254 218730888 433920469 670989236 419472216 575768749 284077820 946135635 678304540 192591165 887675484 934053372 197685319 873130265 21060356 658547672 512308468 713054858 232866396 759744147 716192825 437028280 742612892 60965635 959536475 778056901 816738477 660676639 174144707 632208714 693421199 976048053 388078213 841375858 393692509 734729377 689316986 851366144 246821537 609124542 740716943 638782742 705724253 628977227 815371195 800656365 737135630 879682545 741555185 676738706 468681421 641229875 912303024 326260847 857608875 589122203 786168035 21929203 767994784 265050867 343050625 984593505 971792691 477438402 781465195 534669089 500018917 791331824 43689876 292874984 960004783 95141059 5980839 487559394 787863942 258193643 626981547 515075292 136799906 971531670 781863768 938023675 933413072 920237255 180995314 83119701 250200256 641607605 920166773 743180505 800969713 536237619 840406996 407234582 837270153 271086665 530163559 943510168 959192222 362093385 835942318 780699749 936795623 740817767 800575550 360362546 433435369 250289196 288388857 846254266 122774383 318050759 746231057 763946041 173428812 670989236 869202840 976495424 876970651 949130794 933897987 170039981 999552677 456567324 274305024 466118414 96908195 964390023 682680959 791464263 559114491 870795306 640966483 73633318 851460431 960710390 955832058 702799002 991559907 995837033 34608017 725120075 739084492 841375449 108667732 32591130 952798183 852914571 670989236 561571127 422522915 897296406 601709254 704858112 882373390 996146331 955866503 898416343 249828634 860703539 601644077 15416317 103985487 470449493 572491326 789751672 650613657 959041993 841237936 911978957 710467650 955557701 999419749 796594461 718839763 683915594 922915195 680958691 773375968 214291705 479730919 799803174 613540593 43315358 758996003 304175939 221818304 768157240 94071468 855628592 896596872 207138440 542027298 634328112 579449602 906423531 983089183 26098919 874741320 955761698 201663368 396063999 728202888 680988331 210805244 491273341 569939036 164075512 632597020 781139091 579496703 715012695 116062075 725903719 78494621 307375630 143829749 374885436 900319462 729501144 21758823 334182879 863119213 713951945 925181015 428935781 961411136 806312975 602606300 406563502 699655243 760189485 48707750 748024063 672829591 64116117 196008462 166343018 103070914 358451083 843261490 516803466 828777378 244587501 211336154 72183899 35236332 542105030 39290230 252221180 585873058 326392057 919370250 70630709 739431156 293927153 88426101 753761995 854961258 186054726 108803684 129994636 169252852 775100295 217124659 786893114 27579236 92984255 725007304 350226905 385556069 661437780 74504391 784938660 848009843 92705291 714858753 272166570 941261176 263805267 781599159 195899390 543307051 780404432 838634866 489419894 714965597 841642883 561779425 970831843 652297286 592591833 745555639 816545532 587590382 670989236 428706310 193404272 967489015 988201474 129886827 18220048 212896551 342823458 681141484 75633767 376855422 689325335 468923115 217359345 838115150 851352252 616775934 581241490 137098034 994829715 48337548 522804892 240059627 712093921 773959669 586563412 711856128 726967278 527609454 899496643 531370040 863309009 942515775 689151854 956377355 418276515 896929261 52909711 403443176 716467654 114215799 243674603 497321371 372644920 948959486 416706216 461694549 483273219 896048428 532281598 689706396 637405850 899662445 769437265 725566123 81541239 776143913 977756882 461014993 925326728 172184369 726354737 981165458 818603932 915956882 690459398 322441198 740338449 522225145 741673290 325459537 531103929 916954961 839794367 401717168 839176127 906596167 873460372 585274754 528364163 682519381 797096636 724511841 107609849 469696709 463126200 912842585 7522353 684848973 950811856 965081470 831380134 957695071 869311116 943122583 564198625 203893257 735228177 354832406 505496341 4894152 796807445 161214853 179773007 765403651 751197337 24867365 952742651 909942050 682653400 920319385 188078844 184912135 829612881 869062151 957882978 232434901 64601744 740459534 385371082 477514821 548857966 349701804 785353562 997875955 890373338 555344493 901972849 456444563 41682000 852608728 70246733 108619621 786456996 554172187 632390728 13938975 205825501 302702326 825909602 113088554 89066308 382169986 809983088 858752759 271374150 899568898 998695520 466879040 439228294 82352712 532415797 698065572 258590763 865243139 505286322 920859891 849872337 53465549 804646101 413967249 277488902 328183932 118222067 110797833 599610571 213421566 592035138 87596916 711042022 564025974 919386043 175949778 841809252 212720000 375553278 340738893 529419420 689477012 707902171 724916535 234961247 696309961 950282380 900710712 333438454 13807881 972864232 564160304 861028276 589827883 960252726 426793844 192328214 585870447 587742820 142907204 487744977 886590080 355949995 761178729 931453978 713265743 377209780 569343031 845810957 459254533 864080376 173437299 66690457 170453224 687745161 220827177 803019431 586836688 608990602 969790767 805158281 853865713 517253747 889282175 647677273 35597411 409573740 931757817 441791438 664220948 835419564 686356583 743199521 884966415 282098899 763677569 100057373 615212190 655197274 817341360 959442388 944649233 209046920 955632683 799368907 381394172 154085060 691304132 815338692 532972733 576125093 932042930 670989236 490185316 973898318 670989236 781021572 775751641 486189313 798221171 920292113 845366099 414738781 97576905 429996605 832270383 840239255 520325242 702209713 866314818 951129540 537753314 276584244 768715088 900495763 325978478 860371163 505284971 670989236 545444426 995489348 839744308 847079851 34297972 688791492 413399466 126176158 775448220 445396149 890283814 598545387 757992541 760968111 291327307 566552027 776569477 170789194 828200162 584269425 916374826 307057868 259536247 601436711 70035303 256132087 926965212 950129251 835947820 597874644 841233038 374289642 825287708 34402715 19115621 67803480 104515836 979648789 790743646 124026679 330224807 201193775 185126424 984013791 947855484 816805341 495646171 837379502 671506458 387628029 808023208 677885699 607802222 860465124 587364000 312082400 934488344 144316807 454757989 495393206 443197707 701451484 752460468 427491581 78183952 359241159 387919012 670989236 260082702 440610191 643656822 730924578 815078208 220460448 331391386 448177853 125439811 313733954 773872589 235166269 2398703 199063172 876423906 853055415 803895203 446908589 890748181 145701087 491496746 848972329 247135690 290483447 23483376 683043152 36398773 292973608 760172147 125506751 495983139 789838908 296627567 858299138 883243699 762578144 158113180 809342671 697395774 697158144 159728098 142833859 946454015 915693145 721569309 315343642 497259826 760527504 845028803 28477457 942060922 311809852 687817974 312766194 2847587 773957871 875876188 823508396 232772219 266156842 402800351 295395835 731248743 750303192 967497063 174594079 757463577 761594053 685862601 908563880 906803594 375706506 731815535 762203374 59922672 796166403 818868266 406460984 826612671 250320454 854647497 454204008 907937506 868201421 673997921 360844736 747230163 670989236 502527207 240157005 898505972 757312435 732049026 987105383 395133434 951462517 140075449 785776518 191410500 361782138 917655853 955760607 198546990 762740923 547760926 463792603 874778798 581170487 960932715 383707261 992228473 680025118 187165108 760256031 996256095 165773668 868421648 202631487 391019406 270465659 847004447 888885560 380646485 844473271 225979850 420835757 991282662 281707458 160848318 212775764 436453505 984022628 97297399 959415846 8375525 865916986 674033312 372332664 644397227 78401821 865942105 546899480 175240204 557023714 807469755 758164824 985702643 920271182 454258053 888544838 935034277 917441235 689773249 918033671 850371623 865373814 834182112 458365705 789398332 714151148 904025543 259024026 20393146 761592188 883613535 175232797 757606355 715538935 698376356 404405343 953931023 730741790 885397525 86729932 913469008 933240188 165804711 842663184 392489959 420431023 531552038 244725709 573043553 478682724 775008731 778544715 138474772 751064662 783568549 773862556 610229383 274709541 495028247 595258045 812237498 844395283 837232307 911346925 681451022 708283351 708439648 584184110 888704699 701593243 861201161 766994247 668535015 119634484 62805007 109219119 704744246 418920391 932178753 247757097 763830179 816088131 296241188 912395119 249374473 930600030 300211929 462335662 819760747 878344300 719782438 795925942 488668492 702036745 213116571 931723242 867559621 920993077 228078878 669832948 784472130 883524095 801818049 884195176 643550293 140320162 846190362 775230057 956509719 180732081 809808585 411990954 439607454 818893892 213778522 416853459 355818682 686503837 642373170 40586060 369185424 84253922 950088249 756728092 496313836 341234619 811111643 378218884 245610082 529143889 978214865 56947825 735758648 897986889 809274057 554686476 762478225 475349672 377827979 786123610 720318182 786922968 448727581 747309073 573601442 600491004 95895381 930591699 26092516 865850462 609846374 696690588 731449855 608259183 922854245 523920760 30282501 553725069 835484034 578451366 192118484 53790585 865267843 840415810 422204109 755266393 605149650 567392368 417818246 102530808 700797890 662556712 891557607 211375258 670989236 861305188 766936627 771278017 857568116 518066536 166439960 237114645 260019212 481367159 191993479 855973938 729200475 82988677 978761976 764297983 167950171 764473435 395855261 899961938 547065721 926571332 458125891 986786494 525956909 702913954 910235529 256557947 931465001 575621481 688168131 818807060 971111987 439565879 856433751 945362199 987846243 145284225 952593225 488491496 857093668 798854515 673579713 905925517 156114739 352199163 476641129 836371730 806085440 43522546 209947133 486221575 269832388 793993676 672148204 385932804 765730394 868880377 933963594 561155903 852751032 620209442 172013362 79555441 457422403 442347066 808719620 976333224 655287964 639630439 796089082 144682460 767548720 110504422 226795268 708906564 637207030 162164857 398253648 188304153 752028605 930861769 691224949 692573051 832464998 619943964 936966377 171781378 535196739 890641333 856389981 86733387 326666742 608843358 615634428 166647858 290826157 945324113 448485847 311552638 230998261 934855874 374588448 919282766 60410556 722087567 90540569 594161798 5645453 359084379 823834175 9900162 924186788 603741063 419158777 758824440 817340573 622609 944206852 850544393 313707977 990456798 299172997 230104267 317379145 660380289 606644865 884317137 702227393 278922539 923286568 885357350 931338924 41807602 939654689 33310124 28156850 659303825 713673402 830264303 818080964 956607947 87417418 830348097 178074315 115478941 72122384 622764842 733040096 767605045 34489225 599989404 787806028 782242160 452868532 820683546 872451859 988824822 832301773 716980936 647309929 796401027 407866840 999376059 70287640 992312327 248919703 151651640 905162195 828138555 114574722 421949992 890616392 894292592 897538291 670989236 868518101 714721642 196809894 801871372 496063675 759758630 396967870 645628368 962686623 429721239 29005335 729828195 174536501 553927284 826103606 978734996 902819454 681357251 374621157 883904213 740361293 292942487 378089927 505181106 797395365 960787756 834904226 822055310 321788818 972136109 670989236 842148720 940496228 879679913 661450311 687789466 498148887 2499212 926851866 807114077 150165866 892867965 517553140 576664225 21844729 282456055 569479222 814991563 909345997 323019575 291505209 976837240 275958303 915685508 135655057 768062174 525930194 795649754 801162761 713212684 685707760 493883846 10070424 844077686 895630345 277557223 812186008 367665422 510034257 931115538 838384954 198135330 162766872 298611954 742786012 725440397 869461495 936493723 264821388 958725699 870762541 783889117 689413835 968965230 323898605 796988864 696335761 333680481 789186684 932123774 412517883 686738927 760539354 689167613 806625378 365899654 79630481 430849018 126854536 670989236 796857855 355172068 231366997 611637633 129785576 566190274 687600738 773622168 989981340 731051023 675036114 364587356 562063576 484587697 998856867 928445125 632867866 285488852 934680043 897134822 658903199 954511592 753514137 339504484 670989236 176813917 58036592 457351560 37314079 116876887 768994354 686629678 619051961 886657070 73331775 223086506 403804850 201474662 682981478 844561379 616495350 570676914 481777516 924508175 858202403 727279081 26741472 973303826 876236159 224419016 726139760 4346318 401095711 753347831 750755871 936829006 14351 444138349 989810076 817231930 188438016 834905453 671366342 585349109 966496706 917355060 516130066 603724232 779956139 687412048 845339927 264595225 172771398 235799539 776833011 85209941 270311109 947577594 859545756 197396517 748199499 708845533 596811043 451577416 112297100 248044684 718306089 430253989 723141139 371382271 377660328 158610723 568188717 996800689 902237314 698463980 5232013 604170215 794694406 966936994 710704862 877291657 775925352 136140185 726647758 996673885 872991524 704417236 335806117 147486498 793421821 359472996 435647848 865509616 82226020 22651161 654528881 880752938 660938466 136403474 529204996 226479082 665796456 32117498 84626289 816502520 332266556 880752953 812204966 96392951 839120643 670989236 837266609 800117357 185157041 199642524 512776852 142811437 832436176 728671712 201021894 917592134 853743825 971502320 460733940 243477736 445642098 129578543 472263057 739930110 535177 272328006 320490337 904709680 234452605 292489037 734939578 782543128 846728972 586358838 776366047 592216464 944810626 114467924 853326973 799091882 195976870 670719125 672584254 130777860 896075922 873892926 670989236 39906818 788651124 760810507 999708965 407106209 843152009 753170636 305082778 692886523 847765079 259685306 764956447 628481510 698935094 790478082 91912658 940413721 983949199 876532562 836106809 45120401 438451959 863669372 699600071 561442907 552487008 709236091 778882030 467132240 990278963 622045623 490667644 326287927 423926286 972582905 627672993 124340774 994424927 988622372 844716261 665045230 912265497 738949077 877907750 471207320 467504617 181388625 120783806 393463103 663504063 179556295 663690888 312490877 675473502 497222693 341296553 106039269 3571594 503268739 696838927 857528329 911536323 326266832 872870403 80305322 750803714 279629574 950353419 784735142 726577259 575685780 573677836 925591411 988586992 889775162 224584693 497921764 151621727 129257668 883811454 565499433 969939317 678171499 772239191 849884282 70789956 326712770 29023491 259464508 200561863 490296904 197202554 565905652 998080798 893869163 36093331 128720645 830493536 930867809 403783348 153397178 737748275 359662536 510139311 593388938 970476700 673828713 654634748 794066080 793672359 960331829 857032705 746052520 806714215 872297273 774939211 928828516 933942706 494327237 908614662 851616045 585014532 822413920 325585845 869170365 911668212 741408617 588173373 257187365 146603083 652957966 465531141 548951408 269668845 869669575 628228979 973552545 655207929 202456016 806518793 670989236 219807672 9074647 176304217 877293801 985030708 800261694 986078527 996696158 742111542 347806634 291580673 960173800 734884186 163275146 21750786 881122329 705482399 797328987 986335510 618095744 702562415 805265190 222295100 801350917 362394613 132982757 423814989 832909180 671193885 932680213 738144544 458865173 827046123 978596937 268370276 607829094 763013001 241233661 89423480 48448798 370760124 64327661 358976234 797542411 2142724 135005111 795356138 85184078 908458016 58177559 796148559 1609888 813255251 974862836 773673530 497409283 647730971 138410929 643693712 116291197 969283466 794093158 525973947 764013610 203546304 168037218 918471340 468895939 522302469 707536447 883592596 624655204 64913022 715487104 837667737 980309261 975984499 947683162 937335887 729192882 775365898 762547152 112381928 970430861 513337417 632841239 550320158 537833566 175764627 891686902 61119035 918003243 906666260 797957879 990721038 672171420 1183912 229419031 670989236 901391309 999825304 165793196 664916382 921673513 763378839 919048840 932125947 735533738 869944149 839737842 607172885 804180817 327018466 842356054 991029790 691712248 902629928 556225313 116733513 939798233 505074856 257542250 400024982 337768703 837997191 268222613 902712825 701475034 949175725 388483172 914255342 980478117 88894043 997011658 477728327 802952519 443560776 891251224 915870726 680092709 702015260 574817897 454443079 992460106 991436678 888369882 192372890 61997398 779431575 114393259 931940130 830971149 204542833 784567108 705611982 455328321 693267790 375464578 672718295 953686023 677113125 670989236 957321700 763819538 351955295 277578495 727979950 670989236 866158273 825202419 923735407 706993105 445065492 774203511 660279631 981188317 832960038 817593393 5190068 944250745 95416329 441315365 845312892 815439107 855786460 234120650 592180129 636284842 344963756 231162314 241571321 152539431 686124621 985073075 541196881 179089672 730296329 288169010 950793827 768988024 324467462 392987870 1625891 971876173 696258002 880703907 894141790 517047843 830396541 416622355 769431889 986904132 213287391 358372150 999114034 570237620 790750672 802925470 675578875 700255041 966658424 983078838 582283341 716623370 631127589 374640703 377768790 545001836 867887862 22756314 631774283 57693693 183915288 993044363 190047257 889139207 775988281 714041936 264356256 78757131 443911826 710030869 172200281 720273987 681624184 452922817 916271467 874177242 750681278 398689372 246322418 384186026 86618317 751161053 885664747 769419299 520842005 667471234 720343780 467342687 800984682 755174362 775801111 387477126 895289167 477449478 401212226 859027379 504074158 291536673 897134507 727195776 28732851 6942501 600060410 151024089 284949625 347578549 828656384 237764389 645037990 191954624 688430093 733965285 149157646 745463193 687450985 905392774 854913474 677363840 356418644 119681342 323716635 713206194 710810340 367310259 578106303 428513891 759922361 757551326 210018099 620718513 937532586 82948195 319103343 118037109 532593984 675102675 926105730 909897876 953188225 911427921 998952965 108312755 352571308 864027657 701020607 913690071 360473485 168852201 161329858 853241795 596451742 833448309 896762674 771252768 923993201 543268855 953602889 731683591 964412457 324768624 736094764 228575871 773621665 10559763 447606689 83784977 715395259 582685306 367570050 359382366 670989236 879962430 624264065 670989236 697374743 849833362 716109689 220021431 972062045 347606914 132878281 468628626 722841483 892317979 689804317 357802862 657281158 172205630 830280617 993215695 837716526 369674593 810145693 320693186 750663554 227092335 647989707 760823837 967414946 288568545 982784132 741669221 323339414 799960699 155264484 855728657 400730589 53999375 896683959 857610571 902040011 818402281 411131691 271258380 514167350 894543894 498594135 103795020 83047323 898293533 19718090 776319934 855222516 111092151 195761328 53117588 260664405 984071410 675852957 347226636 421731509 770116257 930091570 835581730 544354553 997406307 410524131 712308279 801089297 825974119 957713818 559361334 713835829 706002140 398693843 357213884 693050199 947963483 682145833 937548349 648784437 397124933 246702329 305939940 986213427 939398341 215972143 533805019 859707346 743580032 890882643 680370560 728464596 442678891 755449586 898232044 92967900 323026696 639456309 832585743 587125375 827729788 969354197 910506259 718356601 853389743 995653897 926859988 751493183 351144507 991955042 28994588 931576996 296161626 802857973 678078143 918808314 436299728 814755903 84340100 625079041 771853664 945389040 600530576 4818971 924732215 975090698 955514215 393659257 712682899 880287594 950373493 467300102 997234780 856891878 855689558 823573679 838308289 745237288 366320064 730076280 330413261 135431910 298497194 679176918 687588905 362087156 595534606 985849717 866922860 106307468 422186375 707662005 615823524 466091000 608768024 913802167 82796980 272344299 49723351 829787787 719064074 914883457 121428292 670989236 220962124 620211493 312616629 990598982 569421661 566293317 4029784 812667479 803516595 858654096 727475458 262994584 941731337 154917096 222146862 819039107 75324262 97853342 741190634 721356838 670989236 851903049 405000176 484714168 372220616 931905430 126712822 460836500 963823210 949631692 256861328 866494980 363911149 367124924 733955485 926101979 839364233 929385316 109936966 861839229 847264768 797303220 883887008 986848783 642557954 516493346 913137069 672346396 92248308 225697780 256561239 26018104 748912584 79253211 252872315 429503276 843700607 902545989 78259703 378174213 923862998 980465278 553524229 961491620 459753611 738176059 133860337 66180663 789432205 902316989 947404253 445805810 773976975 150435704 2800772 171052416 773999711 861970330 723476647 821533789 195517293 890772109 243052617 796431501 547900816 452743487 726979643 817317738 794676798 563586458 349009488 661075967 891306386 985685320 726420547 949036736 568867268 284294039 872245933 628197440 793059218 145505006 981654665 843666719 107950992 730461314 345968640 418224236 531288024 112095121 670989236 766769760 912511392 120218551 989639694 856797433 816896696 840694153 31118172 866996552 156118381 296357368 978334097 94960560 718814060 906826397 938896875 623119221 947002231 457328117 559352705 687721360 2875786 816172226 381498342 490932532 656057272 549804431 828883776 624472368 825664554 422953758 835830553 277659906 686315575 19257970 972277282 736517183 212162361 379479517 206335112 795350646 715638289 927669391 106223538 866726907 569076163 774428504 240945521 78581191 153384656 983061881 872321856 686716737 102633633 274931342 393652166 823563095 596958376 932593589 207387657 336644253 84775562 502108802 702405879 386561400 725843965 515730623 287287972 842089534 733735370 532407760 246121025 384574352 677473511 907271400 923375634 993572687 352712963 262613672 721126299 64387554 769213748 346500085 731534491 573610686 772764723 823486653 648639675 952704803 702476435 554158692 554133240 327947101 843473590 227779799 164962709 208296542 990834281 417888860 418058490 770474220 982927383 940778851 723959501 285838880 141061693 450709697 483041082 56183547 282456016 516371000 739906507 830230466 472970891 760163572 928003177 803683616 962454653 313400734 151237015 695729588 597520251 927234229 264528219 696001625 158836491 806799140 490717605 143221990 332344312 681079077 177874468 812459107 871739185 951138501 34539240 619664512 993245242 628319994 899708056 934905443 504531459 351053852 493885594 736168287 104514874 727141847 647737401 185374990 336176397 624370240 790554543 670989236 708928693 875654610 405559762 692913369 864282927 388055155 889737720 842745159 928753876 723565349 823905320 794356730 834468958 946295622 915754494 963728143 813140900 84600495 268078076 446160636 943948626 942365786 710728781 745063162 771617965 409580374 962997490 360418943 770189815 559061775 343950223 813499687 392227620 566141144 106057504 386390621 379144537 161682946 673567035 680160628 922921860 799565601 831036687 65716333 665670031 92608221 229423444 661055195 167527108 987240193 72411829 84619239 625713515 937869580 320225778 657206075 530018561 972498315 982815456 254997336 802225105 972739269 868213257 986912828 851783282 349476087 65671828 752112124 474789634 838854248 292477767 837468950 601449359 977051933 693744025 535575799 434531664 325680036 692906392 745027309 723786253 213067861 356261071 907486033 47349462 716651558 933384284 183344708 996318128 720926902 78919634 868732418 688200454 633329144 890828739 469352322 784312713 417900507 957577938 962776144 217572199 801210374 758816127 742912899 395976510 814080263 813832775 933796644 925204210 928139882 871799305 898086116 926204825 976875692 903044197 962365198 790407604 731477353 814068139 705442110 489239122 184632323 401795478 23230461 825848066 448221521 152947930 724221954 724263138 388770028 734919673 353905548 835344375 780628796 639907989 677825753 837682474 409221964 114386395 926990560 434796982 912852390 126536841 811756839 445001037 821656124 670771412 927595300 428461252 524646084 220889564 793581120 511536528 875576891 31620855 565471141 792317530 328165735 405663614 25240864 674796162 575659832 846235398 688615572 565281191 223067039 727828059 433725078 371422050 430070948 944337430 529054890 450435007 274428909 406885324 695150666 914848529 594285224 883950727 105958073 939856719 995205822 814869218 156949126 522245298 830509475 770900032 150193628 174185535 856374163 769190326 125110521 502439452 141003829 471411952 922943749 986182133 923373270 673151003 105627126 393066816 805041129 709305307 454821543 574689931 532615269 388298839 172406572 928828166 148653622 304120889 743785665 704969355 420565884 676551093 720282168 304232080 656194736 756144936 894522674 877652720 887441337 430006645 67848800 959655429 248899538 640873160 589199558 583298765 235208936 175118515 715907325 220915344 744241850 261396858 749954127 544798799 816336479 763787446 442338121 658474214 25658282 479447987 670989236 878032132 860533545 237741611 797892541 839915999 165536108 935511738 45953411 639351667 852381725 612539864 97360418 62714649 331825181 895020150 688499588 993855546 360402829 184642515 770739724 421806362 932467719 37367703 684198977 837553305 808995835 767487899 237092219 712316286 896968351 843630179 957456685 914291205 963657336 731412325 956144764 377528613 941668838 399600787 407619210 546323791 57361092 670989236 991366618 943237330 403730034 833635324 674326396 151151207 322665844 260865074 468619375 525828096 19692848 850801458 778128845 439196162 949212378 919826896 151693689 195132184 541312495 882915797 675556584 442508234 682980119 349832620 106661951 491269051 870992165 692617877 851078455 873824514 73516084 350414803 710489867 999335298 674416219 590811949 204410385 663681683 316183301 644600496 739410311 172990127 694064067 606644387 680728942 93255157 563064138 791875306 534764268 922539795 271460851 846715115 852064205 743961500 639165147 983511938 931121833 728676527 77631749 89853856 670989236 944643653 983564239 747874409 23155446 317041871 603279306 942241514 392676891 942661070 813958684 434276131 421287052 728790948 533673316 922278904 929474288 596736828 123677647 913042315 943711055 790428579 977874061 842610144 469505890 304824077 689059133 884673514 785761816 945945508 774617557 736435451 992887529 695650673 788366197 542049059 717408745 943265751 775311011 468115393 726976782 377404598 765324387 877117943 124314875 526820037 714522008 875617001 737734474 254268021 505969805 199614668 843609172 913323714 941531875 763303713 753513711 900699882 548214864 873223482 464727940 685864228 256208943 679523737 315773150 848245566 914172382 97726858 949170998 771231192 325356852 568970544 371917900 934197291 936705874 212768877 843246298 836603697 848833726 268764132 675435688 280815549 704720423 670989236 360350445 198440389 190621712 293548579 797666458 874226253 695174591 66787972 462439197 474721919 552302893 412743454 49090289 620426818 777872569 764948764 656204643 761880221 932820006 694669738 78701806 272123342 63173720 605624438 88655357 770827598 524147565 781544464 901385908 702523643 806831547 170294471 68768359 837816281 986049421 616573541 964779346 767195361 384790299 751710358 962359013 466557499 450692495 585887056 712516763 272349427 802747003 799079602 45596866 603761020 750595743 908815551 712063184 813790974 844990512 740924873 888679077 756529869 213959860 366552621 621990277 476693959 471608961 986749621 657703142 701187369 772469203 965880625 215120818 556316364 941664801 676906474 461822675 767950322 536462533 475548619 39104119 879714417 260863685 965697426 896750074 691832517 536280805 238797430 349078200 821520132 682197355 615463068 37416430 924707602 871891175 3227797 719353792 209109829 522548546 820108939 332040094 783092930 289686921 380640631 623298672 484421723 965644394 29158097 736443174 86400992 75154339 430302166 844001464 289276384 630466571 572410139 778767602 606856290 738075787 460646368 589176636 327960969 779117948 372175395 726932875 987050762 803022920 950800630 322697279 882472895 699470817 884924552 528943891 400815712 901726649 733000947 935150181 528448120 412630860 736311829 573629125 439374885 832671352 990841972 799425542 959808194 910175169 298992592 869415663 443653265 104180328 803506381 773630796 35165070 125554047 308087588 695377736 886763502 28012808 435222035 107954790 217412872 792348659 748068304 815180006 553833222 388921737 392084711 987987901 13434498 459336488 691654048 95085718 379145298 283698129 60854705 714899380 519792502 992502922 790467760 320593942 19782315 153648040 867616949 855302479 908420263 894675395 887842770 782903319 497525298 607836488 848450563 852130290 81982241 955729141 966811758 453522472 277548406 657479996 811231940 988705963 805176608 607322987 370053638 853532648 252446282 749599693 403508786 120185115 455912105 211478658 737492730 953225266 686023320 217391866 106526594 694753779 607290594 490036823 684968488 931782218 756485315 875382995 119110318 244158353 46525727 900811017 817974680 826474082 618124460 959946105 187977851 930060528 802461623 842249420 148662965 752240586 259678074 417970416 654229479 735703229 936062660 202374837 177515513 54485869 941697575 263052405 101727483 994600356 357876764 888259730 864620738 568276408 942877081 980785790 682724070 942147703 929935722 478274368 758984739 12993758 7179108 361566434 896435633 862933065 11952931 859377266 344611120 368649180 184766153 275964309 79710107 466062062 738023328 604982761 82060112 426214293 546898850 866340774 934701821 960373965 835158919 330188978 867421136 185608372 909589881 745763528 726721952 322334083 890224805 240850849 936907214 451323201 699665338 419406471 515541637 365123481 695294237 725217018 686836066 966773823 771279691 111769224 886257464 870540499 153545679 505321715 239302969 754786087 747796068 703967672 820303574 784816882 276177789 542779377 224387394 23652307 673017176 323756021 864508556 147465299 376098054 796452248 645733593 868057424 586331416 912188455 825375348 3459607 96992809 528976343 986047710 985803333 468963286 828710498 655056272 880438313 745355881 517398161 936851667 805994248 866295134 333956282 854568706 943384929 780009920 930266061 436091856 829154192 59558437 74746359 929126531 988277873 970682809 538033347 788998995 274041221 972862644 693331285 661728838 770999507 63761017 746007371 898159778 112481259 952980708 931505036 765906987 18574814 89347447 863101299 547421721 911562773 784185316 889997076 173565472 456678488 348900393 216120556 916176494 873948247 997069724 906489059 980315458 808875335 809777448 817374900 528921548 71804776 798532495 708188337 859467798 602649597 238356880 779219642 222448819 985494189 973968547 636429240 586613080 802474034 183238614 756067541 879344402 652847296 139324795 992613696 778274179 880416369 759258182 882406344 950708758 438773395 950778424 45210491 505578016 885547738 796569002 685849478 678213459 128300544 725662870 727030256 330684943 412528909 760215427 871863001 249823771 687976633 273322311 809480736 993272399 614919595 66036009 394153377 451123100 942354754 918586420 960320462 443614100 577938450 768007095 795580276 342314397 754014321 561779808 940342836 789201183 255686346 733034862 178615011 652488090 849232472 781312100 770543997 781752971 960650486 729347093 270693045 238272010 707491592 772386607 208845281 485435410 170583925 890098844 594611602 392229420 761144946 527558070 418708157 828178256 139221568 62736089 153895952 804339531 290593054 920513832 958016507 995051416 231238548 670989236 682526517 360695779 963967185 709475551 989147932 971508861 135525762 749773437 417954278 566101839 985543402 67014067 467743402 856272798 397826308 698177750 930029471 818660598 141210993 822263246 965430326 804857919 845331572 341323228 754411011 149973246 754499765 16908303 391083970 978137895 715241274 497026154 71200387 354335378 449572943 946110991 794443396 685949343 539507451 233405279 180254808 65578579 11681327 898668483 721231684 654900146 679782376 500293825 689800350 989841298 462874592 104836740 898375014 900010844 925482629 543124444 266119571 729266698 742298027 83839956 25608620 930914946 858099147 639181764 501208057 267182514 385391956 676987157 942259674 731518930 824483062 959165292 673409160 921855297 46906486 542226856 17110010 375501939 71846222 264253778 919120764 739922381 443885613 587713365 706024793 904231653 977720592 935291701 919590239 998894215 696063048 255069400 48874219 221383860 803203581 217549537 759916017 202603160 586946264 465995312 770342294 514801216 209146338 950061133 670989236 870898804 754525114 912160919 221097256 681148924 55170671 733359374 781607446 749590098 744530031 521283187 724123703 758082101 859774582 754723616 818119625 576372657 82804954 764946526 694327409 670989236 983397262 585767068 396899907 899463269 523003395 437843241 951480539 3458972 157959569 375576122 130905089 283759758 156904703 603614786 974863351 837417775 973917120 903387069 89591144 932721563 917939584 149465209 482814341 622741774 949401135 432067553 380286266 717782562 814294140 686823458 975731975 942390364 582035540 65201085 824113174 713342119 301951277 765127770 194415638 762755436 976237182 473151712 272980702 844306531 549050873 802763553 731394484 17184898 474394549 14093608 573801134 158040168 782552530 925752487 794152028 652800 691007782 275474566 938677152 394752839 718787574 327822871 141196765 624275468 706492801 616668028 454050791 957233826 784901533 858031174 856833672 304937233 560883494 455041123 347844317 711679048 805436993 813923209 172986449 971502869 41454739 912216705 204539173 862407299 714405157 371084777 149452710 307321802 894199832 692122460 793961911 675629225 910194211 985104027 821262439 553951387 824391082 924408236 826448329 74538834 796516644 867046061 858621511 844405894 986437374 710642637 726085974 570424683 460857504 273013303 246774512 182716961 323181796 778686482 170694511 408521431 827559503 367709323 338971148 755640561 522820347 459870365 285335998 756063638 792107292 902451732 226759291 807796548 737857909 692612139 189839082 736779740 451095421 513571389 718817485 81192563 358179008 923025488 96660376 571044413 148987727 34313678 585154324 264995260 876303880 627304308 372398961 821025800 684928001 377301781 670989236 748522615 730795614 861474516 623933228 914923907 109129770 931400860 495182009 790294304 905062851 474340895 113922745 421230786 948528903 94295126 171337627 931520196 796156075 727583285 500499185 699317242 96607603 979951892 296526078 696558737 610962940 304379182 712626778 585032118 224798113 742828057 815919740 815268292 672683086 11988284 947178258 706427075 984653677 54478915 212751643 720757694 401135267 216327954 973373148 900836898 788608452 834723023 630597450 873122880 91463530 977514117 370417486 742837900 836891988 748744357 454620867 807883271 999266807 869139975 930813287 396724318 114362921 890404504 807350926 308611176 717623595 474406281 723054978 36319135 765014853 755169726 314408179 826531698 547080343 787131773 910470121 887423215 888546254 761105650 342749727 895740497 789283124 868339601 963762781 906246750 781855829 778844757 37645690 960720951 515290137 797193042 929048178 124582009 771530591 189059404 638401374 912800255 929437357 641294991 780611003 726213508 40925968 780762306 957442182 576360502 597025063 32041950 222257127 733406370 846366873 994672561 50570763 927361069 220959295 95153762 835905433 988394879 954854024 991075210 450361599 90430934 845127398 786104057 859315858 683596670 330366270 743738608 861945816 644648855 875789760 129969293 384232699 184309941 876947876 685181085 875434197 700316917 646169005 718663331 215738866 67007148 536072681 399343220 931358333 731378593 138210522 152310642 508668650 956236612 452717673 879625335 135984664 729634864 999944854 258927452 90855232 494818976 598275663 886375617 959788534 34022727 719709195 878185459 656526392 861606368 308039254 76029605 508369180 705966832 763470797 504222832 203161654 276540677 979380216 187033979 510691611 885812784 719686848 427535306 465878431 834991706 819669667 820671565 905566687 132739787 641825716 737519376 741943098 77944418 959687799 359898009 91031786 933351614 83673288 116594642 403863384 863139591 991721275 899815775 71489591 733875598 930874449 988064409 468698223 158328721 921971529 694818607 87055952 170830983 740714133 726447302 297140332 707526472 476195769 547053844 33737932 534262461 380937329 174587377 946006953 324628846 148574996 140131887 940786299 805774901 184588920 270106926 56641669 591936545 534687834 140879762 866350714 776494528 494759562 382902976 713129671 771089613 229874856 888911633 650362807 193529324 46592529 597740438 229415611 629372499 586263375 265305123 352317727 1404818 261863652 537226336 909605837 405617872 58179103 923092533 588763155 798497663 27092311 761880618 967861006 531884546 872734784 585923805 247612654 843548206 566747115 661157810 245094078 399068890 974674104 977215151 982537101 748655024 445091758 387232821 296172951 970983195 771856754 604145806 889535784 187726442 590371417 425249186 22667182 649507159 350520733 871919560 694001088 575195935 271804514 900316669 800824916 164508498 169036116 200489433 726992014 757060401 810525299 732512018 909167889 808549935 988243062 568108235 517143299 831486470 516295674 100117693 770566923 663497020 895432206 684324107 847728925 779845282 742243660 452740390 116391184 609272775 859075956 854880737 818857349 623643063 949651668 856139371 388647990 46155664 826709794 844473123 966402060 154978615 776328991 285731276 398839974 401906677 794866468 513023714 297398140 619730624 70200049 829537880 768082059 821872449 418016209 725512653 474880423 701045361 233591604 911603608 194629290 748316191 808227369 808037352 49645049 12960197 138122751 217052627 844227491 781869249 972602268 957355282 316912813 954888094 47604023 444955168 331172477 755008926 305282501 993831531 43407063 890544122 827979334 728691541 932558399 849411565 472666904 968777492 29638764 887250658 624171973 926235280 931231031 161763576 284558529 577284485 849884253 566908591 982964729 802865120 748020059 684806391 700925436 944001462 326180179 878161116 741676963 782636279 13430710 516099689 80861296 176340094 297838459 20073787 605509933 7358408 847230712 953318517 868013017 881443707 902710449 652035723 698141596 845550574 842940294 896286835 797311065 638455410 295430455 737982249 681555306 467138335 698981231 857664962 781042277 996203979 191911616 14012175 558697669 423725629 796409153 916590710 214758296 729248228 37368978 712142906 258641477 613462641 893299416 426513919 726088842 904000276 193314179 861960448 680128712 652411462 107979316 755398354 972546435 608503870 837454046 99719285 826587068 254764299 750323313 486732144 676834329 803340781 152164215 733522821 727633870 434679102 443961367 875992880 566408994 6862955 919464730 524165828 892640067 659284562 705081494 783519422 358572828 399398930 670989236 772857525 891892376 852190384 121801004 174843726 758574632 854516063 393658239 676080748 364558882 887517114 898971942 917101732 717830066 705530901 167363193 250443953 763585834 380330130 271283817 852920372 926715563 717772349 851754367 739569852 138477804 116671212 917681944 586680094 825541033 283344237 838234086 97817690 63223089 354594061 97142548 971324299 120846829 509010446 723913584 729649589 303068978 776811678 989806894 559929806 790682282 818090899 5203313 948056967 687715419 989548730 285527438 857864623 88151065 165607616 857686984 931987236 794077564 307235000 72451542 726141616 814725519 935684754 957220156 956477843 884659960 512360817 982769447 75808475 129698708 920881019 221846883 715001155 828957541 689170593 551223971 188954040 763495243 779139878 583992202 831684842 816868561 567724992 408789182 109573695 778481112 108767342 807916966 569805905 277450071 562901054 464232778 513826009 901734797 666884552 865516828 280030117 558327923 832518287 774382790 857361570 750835353 396292925 738749034 995678031 11360189 929704643 867512270 494191455 350919299 883121285 858162884 902859361 756826555 839321565 368074384 350136158 628573107 850778409 409516690 90271456 625865751 925714470 288745595 949395347 568189647 962113532 53000046 861781651 836319475 703413561 401348899 670989236 855737189 994399246 423532835 466534315 302114071 257177269 706243372 798579727 735927247 255826589 347030388 154252570 380743661 906484958 182003048 323805498 842579535 659489828 348681415 993674197 476721460 851180779 266843153 406908776 741883441 459988910 824398083 822545449 831786000 270487602 455042307 656739886 695945928 212632142 936495907 549287471 276578681 204148605 999858078 20043412 597178720 957037493 821505487 576513991 832807402 436719745 836027621 995499414 580323976 885707881 173218522 134287638 779585786 960538195 725186906 652107255 671925079 709096783 848464170 781183735 452162655 224417042 952587309 196527758 891214361 379529305 904194667 273382632 351892726 652087336 245225836 964373456 907026382 942067071 841871736 360141785 648566433 787825352 954997039 137731510 996711219 802748052 928892487 840416578 387273024 858444759 532841544 183586810 897800100 351186482 980153994 242584051 14739477 839513112 260579411 99038899 960430618 749697173 990280301 788509429 152298965 972155406 385296821 898451792 139018856 794662654 219021540 77574118 76453906 962181473 609632132 21111176 820952036 953604475 155483277 69022014 730617449 829247876 834814033 417478548 781624202 325944834 193326911 654467042 288943662 515216243 127413115 238386484 915287368 381403434 533167951 653832351 801129557 688230682 876889024 755878119 553942493 968343883 559365688 433087546 848053428 675802531 732588548 807774159 729526230 229092999 734230555 859666743 593441949 484209456 239883834 715166436 101280304 889851722 816940665 678052300 36644709 800549234 988258731 910236413 994933073 288367653 332463247 911782889 580734992 663975102 173955058 670989236 14118466 712769225 991252802 832502236 425632533 389959332 257902942 322661089 819966470 553579786 575313874 858998669 423040641 683363317 809668709 956060287 358097370 785373240 811075443 227276543 683025644 925489179 11937588 398692492 154242208 598614995 731390634 419454867 61901117 523079206 807398304 94214187 933277080 527962683 693297909 697497865 814533429 838061738 543672758 456177594 807778114 982940671 873948248 651206066 267523624 38056404 120243262 620679032 92792949 292255473 713736399 774387292 526954730 668272934 816976210 698063426 257156888 252116381 150572327 857206856 564039466 135657263 333247219 930152204 168586756 441493042 84129544 345780721 382384803 592916571 220890612 292666188 723160043 777107197 812081430 673527248 762999868 557383735 996516116 863167588 917056871 750286447 640999911 986404584 818299517 78182626 765540674 473435912 504299843 870985660 677993623 687218633 846240076 332097990 983389577 323653472 13875383 769549125 724414574 120076616 754246988 667463216 448803616 780980748 569796534 284021338 9586823 244696719 710088271 952817936 898859893 290748513 104212629 782776851 767480885 714048761 904138721 764616528 864897892 730203904 700926776 303933291 787410837 963096351 505750581 836949605 927000304 738958719 713104062 775040362 588845657 870377783 395494618 506005487 699786812 219300463 21185993 620812165 219007070 502578068 345709029 841510411 245789373 875060616 995899261 399745357 801723203 634353569 952022411 507685073 646348127 469199526 849935444 708917532 937292980 349595529 206880849 996798767 697499776 992951517 307611249 155112747 676831599 684740589 888049191 986877602 660793806 722458306 605783049 990048840 934714634 693655171 677248184 235755556 484630928 434563367 746416494 670989236 148424875 105127675 768910231 888389016 434226144 856124216 973745505 484068911 326197348 935341796 671268032 725094481 574610367 636186955 817997792 34770529 568618980 182253784 988803862 262254010 950749906 863187892 335110362 427233666 398367036 720570166 30933498 91198170 796190627 238758237 352793834 766659464 299920890 673329925 801866717 179233440 766374289 39988584 946295756 770195398 355461969 865556052 72152601 200535261 126253685 699066811 782752006 720152313 385780865 708860989 276735216 117918301 818786275 57184367 359543608 643285238 752446051 683871849 135478801 396770838 808321096 107914 943077861 895714556 607464170 920460962 908012242 635612820 876812470 691884885 176508883 695436465 357468489 149965756 705617024 465479999 924942181 700188056 303703234 670989236 699716452 828324051 546068099 742932645 186026880 129600036 884617245 759612875 56661606 842647430 902801003 161919189 761094473 386805223 770548493 338624019 840373036 92380340 684246459 947821457 384869213 210942400 812577763 975748995 458465763 194611295 800518938 724017588 391829712 691135264 158085353 655476676 427273409 735450687 154810116 803260105 901395291 511137738 874439749 978585808 119636544 659802812 860228145 711883176 192925039 422812790 882750261 329261609 287400002 725296142 223026431 372270451 907495831 870166947 957174072 69267055 235100562 699654217 312668375 401102011 413007389 260756333 46717634 753956385 454335005 165593697 548019656 584468586 915268587 707011236 978635175 629094684 680415320 539140595 370774874 997830518 682008653 377435085 834172463 830614782 949563712 852413834 313933750 811996300 234876230 627632458 449795207 536929751 973043182 948200242 571325513 151519659 266070200 246289309 436998600 595869552 278824749 235036874 678486575 671039982 984815918 280015670 515054049 351172779 480100821 628099320 980655916 811155747 267725768 167822657 972005595 536244996 347009549 53217654 451619161 763527895 623884984 852863477 33067222 347147023 343397988 387798815 893967200 143445597 983199594 875033863 831861366 899879669 685109891 736634337 801626169 7688566 915892699 993775404 986547787 315109412 808269327 668354128 472519508 112789285 943526679 331725596 890965788 769058722 709408481 929307911 605420506 258782519 894321374 82754512 484651204 951599229 758067295 82841230 760813908 149858524 619580606 549385590 361551275 512316936 897131698 600976569 816164048 332231742 821800570 330269505 184927730 768185015 568948202 941489236 44980579 756379990 473271391 989296544 508156622 300873778 759174589 693767092 832714505 506031330 566057056 180062380 991235304 834264845 665509064 911228561 467966323 820003841 724170298 523691591 858469588 816329689 725719731 114237497 211832144 490392356 262180443 538257223 28411916 88784812 956627025 290142821 542937174 11004625 87162961 113023481 693616155 716861086 296375387 747095850 786448510 269452571 234926059 451610613 216032647 223102466 780589755 601980176 620672505 213386007 585800502 356202032 406677885 962272617 482422364 890344406 997821689 6102742 482599961 702582839 962444299 581597070 688528506 699988001 806120573 388808938 248140730 896902574 441529887 515247711 102666999 215377214 210901093 639879892 641254710 946086464 746448841 844042319 477240640 890088021 943269975 948575435 227430274 996764098 779873731 701353108 364675508 919500566 568112917 717842334 626144366 203004228 916895576 655701806 886461195 68180104 315052174 274169565 79637099 109558808 818487095 382000738 821542656 757706080 643950400 829605754 50813034 861900456 809200683 857117142 368056542 938388544 857772544 869999363 827003790 638616038 157695293 335507042 979726533 801655335 762160353 482381875 774805231 587389689 792562939 768231847 234081915 168885529 902706948 767884473 86821091 869225132 412428966 980465401 478499226 588164212 238324651 453243431 204806009 42020213 138308760 271826458 383283489 778589310 841460475 761103853 507729716 918970221 431685910 161687309 137279435 46120672 835722142 440053743 724062152 419555132 115422743 835771724 379107258 670989236 212019046 811358810 290818716 151121707 163876731 717451560 731815568 88934132 108432541 476152017 728904831 996366784 670989236 28972617 680188604 790634613 825814494 679575231 433747683 563431347 832187653 931987368 986002993 13657043 673284267 262266902 949447360 918583040 682807927 102192722 396121318 982619407 481453804 798127364 447086333 177337422 684721734 951209403 205982488 541569516 800060610 977877680 619624352 743404523 78874369 812968411 992766367 106848578 181420267 564146114 765915871 387217476 85723618 825666632 425356584 799452049 11139791 42686135 25882253 515892162 867289575 518873373 405313449 677492377 938960197 390022767 194842484 678370871 514490584 223005550 353490185 763294090 885975126 968075530 881039509 977008696 950868964 717210025 916492559 826527130 977957402 59704160 979693398 227609368 670989236 670989236 349485553 789452646 39040226 909286306 32042098 136040190 537823902 761222701 675589002 80671799 952338860 980373526 590663755 721506957 594725380 145440445 200452002 760493819 746091050 891335070 674827822 516759676 734095913 852280048 581742417 913603273 437018106 129474542 861430931 51612540 146252284 508043449 395766651 257053690 190745581 991731787 671545395 150030333 163703615 893597263 861187671 895928999 845417120 852025062 142296988 397063485 190846922 210086531 903562843 87449250 960425773 279262354 898820837 578018426 244858255 685121850 719472571 440784350 67358580 249065278 365615539 813075403 812659745 788160410 241895566 758097440 937832172 777393292 195187725 340444240 855012367 212458844 676370134 798212869 358821413 960627072 213810166 597520217 959392824 795059253 387407537 62061210 975277405 943069530 47471262 901929032 885148191 80053808 511684195 162104402 364505174 871152814 552544018 348052817 454231273 381426508 799906733 614935672 866542600 299534011 770932406 417517513 346086494 358949678 218068959 666885790 224138560 864995321 740836153 895336940 678875885 71961155 260891252 396354859 156367664 230606529 820596896 544946121 652760159 900772543 558184860 551778509 977646386 8080005 872304600 501876662 923355964 751036108 343143194 697919263 17923126 670989236 933851242 837237884 982638976 689469054 254355729 554818591 911700685 237886120 565224176 312774458 901407523 537957249 781808727 9847478 996069387 424589933 782720490 940113458 250117192 138278185 693584857 191965598 738552338 333434118 971849946 532217652 766033399 765911261 259456965 590163397 860656624 200268606 619524806 588556144 851174169 90274611 355158483 417867231 770186002 430633644 337040013 909265474 992852812 6908626 360175719 995323109 258480155 722624412 308296992 570989612 8803767 717438165 731578874 238591434 684142438 162778022 759075560 955646456 936341046 750400553 26955358 701857576 938223632 146399315 623247057 811704251 431486740 941868633 834660331 25947975 976261416 912215503 78362141 756916727 768442464 861010306 676354675 727424433 116763088 372061173 902799086 458636157 800502457 841584293 390361234 809702473 779408507 400738509 84448134 870925739 939736908 573127229 644405830 591672129 356907976 392055647 34015549 187892085 723462857 894256365 582350929 507250191 812942648 959944886 699994916 259181684 757096387 987846441 724479474 440638619 985386152 688746534 676710311 251803337 541306753 704400743 151242413 90227404 672752416 940451167 711939422 314247052 765741847 208031056 365626842 945135804 465601690 282226014 763676193 833073593 231710234 707136506 173429949 50139497 289611028 139222015 427998818 47164418 911935536 657448788 918772853 333473989 355222498 786917967 350281485 626123254 150283792 972455077 812054570 321448821 50591166 905839819 142599646 738998765 336949502 333312610 141985462 983163591 720685956 997348074 670989236 672835125 774520391 859030759 823455013 870040539 839840402 33240760 325250482 606763701 768469165 239432891 102537676 207726104 682974115 615548597 385544219 59278318 725222844 322642851 965837691 231229987 896976441 510449532 426352352 605064205 516332298 107454077 14686527 912835753 722248253 780121671 366483752 24799949 747010521 4421443 930664902 754803218 507355526 500134784 888855009 841998524 85801959 882594930 446152630 119254519 851210502 365542577 727914057 902473467 444203950 670989236 549270667 159925934 723055168 760630222 48314512 854195611 780496356 943508948 485919889 911472443 141678854 803379838 648777117 135947091 730348068 769188834 913246105 117345269 187292793 769553027 169583512 735734248 991909272 906368840 873929673 756532627 361033044 897908333 922512008 116476727 664900228 377023638 294938158 24702091 305801215 894635715 766952382 131784819 17671317 930312185 427049876 893002681 53573306 174041982 55417315 921811361 258782003 63873057 669113315 876637785 23293170 701711416 670989236 793837691 980962432 64428232 752901678 526456491 291935540 155648859 970045156 106925025 998431831 889298204 820912797 200148996 114127280 131372865 910333009 736953499 863926301 910551683 785891945 810409344 750138602 596324349 827814178 220237883 181630856 419463106 427408548 907632969 426439022 942892536 173737892 732707575 833501951 909703686 961703206 362632809 744282448 951091012 700567306 41575213 509614715 82554958 870851347 950659104 808919717 862435517 259913494 254559501 14731874 178761167 92418018 587425725 219873343 79056946 845803510 795557902 419699459 207554975 586126532 507592729 486433410 697163895 984706855 239105466 421878347 844065947 675690161 814194931 582777878 506506468 459236963 873557318 458749485 962880857 670989236 157392459 167292722 54928359 237036708 969667894 140830026 652073706 833075844 411609371 523243943 844282527 579148222 806901015 111124624 20119829 983416905 424991765 627897648 473721804 749266067 765805175 697620822 877570741 771404739 221065302 797173586 424318881 540894088 194890135 880156738 794146470 690109102 855479210 598687149 105759803 980324332 257912979 8869020 545255780 929574794 318527352 670989236 633569881 777769277 465978277 449842767 762878757 889034900 786728712 327434021 168386029 717242831 366224050 244669044 681852719 718197491 930750282 239623308 432013771 991784314 503246923 777528748 613483475 27425498 28262428 941947558 741794203 503289954 948281868 545217255 136961306 678526982 982937569 679576197 712399105 540901913 798799434 12767397 828516030 603373712 77070556 649641379 891844524 39608045 310834534 769788152 817029408 712770891 657128185 815927989 949311556 415935740 793831004 764567353 689273781 902762566 606233578 561109013 871585750 547065275 113929968 521717535 704335951 390300654 953567954 735143551 908898071 715411350 58242017 234619803 163111236 66861675 831337775 823359123 821005868 777531713 854281278 705970701 654075010 951577125 814199442 501716165 922266312 196673866 531930485 991324087 465933704 851712921 885630328 614237813 820092684 957179068 677736663 901599055 958971078 986208579 87451498 699490260 153868079 543995313 586207602 356081160 876700334 771490441 49812845 937605022 704535834 493379785 578951747 960850954 726863205 836289521 600540184 653331338 161020904 363432211 892107458 486444388 637122194 223551945 206257313 931297032 554749124 930434294 407654914 923641052 854132337 743598147 935248674 839652309 703536880 949316095 904753633 629217226 110132190 865747461 211971953 476782750 2002693 485223043 602705953 699910571 990894469 944341003 304873438 265765423 660032025 70461663 629814580 890811480 463537091 885632370 117552558 670989236 766626729 399280249 176562161 889057614 824807139 606282683 228376786 121812629 425481853 862386528 656671103 547447201 952871751 38521029 670989236 700168992 982454528 338381194 741408444 150627306 748354166 355467995 491121233 904044761 763015340 11435265 174537046 829229745 190095159 287812366 879145540 477108639 861054318 101002782 773544320 265195255 55921461 174634998 92262053 145131943 724879987 581637222 203443313 839613564 878592310 937138814 916189790 736568403 835711427 614214119 835863439 901191375 866853580 805546913 819882814 135607102 579413853 949815061 695540412 970089811 196314948 18295584 797727295 233524641 963783854 658870694 916557612 878981737 615628516 11252356 106882294 148419755 910646996 813052012 952691176 862564367 561713956 397634100 960715339 726544576 953066502 630716107 388779403 609073097 220221398 733551599 866631700 239074167 761215943 954799759 431643138 775552419 774190063 731314305 752451864 870641429 972104575 856007245 881830521 623944099 372549163 958752619 327515887 96468427 898404537 132203621 708960003 925723595 721389052 159998742 354602400 718637830 863936978 534311439 391482636 578117239 863119541 3485405 739091950 798905473 697881519 720883137 27453082 798774437 536468022 272507362 758929809 575419820 195531748 977343398 801396408 576132730 676477427 442385981 302409159 357082689 50226625 268801396 848695091 38579084 692549904 617632259 603194795 777551630 390825047 788980605 581076506 388128750 335409570 844243741 717905833 287580717 737145948 110935270 446506598 907321500 220279618 992604537 990898145 185149453 799618266 996674546 979513192 780320873 923066509 57477924 714981076 622797225 227509201 251180144 896320594 643120525 500953550 526475509 971118634 312896744 839337274 548212305 144843469 969631747 407070997 834849553 708568510 716545779 17929963 90494560 789989344 785630438 917490275 369927604 512046438 705009479 568880102 985202107 33786901 814725718 807747837 709112352 428925378 306554036 882516764 130217811 881756244 184488042 837309644 710925515 778926591 775608617 769589537 986555001 711971229 65847204 896344976 510497384 244752066 803473972 429729727 112581442 770352759 554117669 227575742 709408039 598295906 201251645 834113796 900892709 865344549 345584056 817254645 789692528 762055805 582631858 959752234 672708273 116077810 831077316 771456192 826456550 344656331 817489131 397732800 726139457 768444391 85254333 476752507 65175573 727680288 722575731 133544921 929507704 595285516 776456067 419397153 533514485 366679699 540544658 624680361 205891125 967219700 978008008 886764173 803205674 794202848 784801650 236212940 670989236 905653677 576367762 792020226 145050536 457100920 258265620 753905129 820546369 314250470 915561708 909784060 65858389 176146281 847621392 455336086 199816401 909515174 473800148 286787139 568256778 741190058 770680462 64721957 75717573 869285488 649299016 996486347 752653506 956217589 710411132 614165702 560538238 395315095 923279839 927660073 687044301 186957369 361527016 146259040 301100852 972192172 699891541 850161709 621273488 846874224 582048695 670989236 805837052 270989228 750157084 983523017 725392982 619083926 776384024 767062199 125100421 337729073 737608240 540664199 767633973 707059979 430703594 697765207 838917420 404121774 261806939 834530970 132387008 495635235 656623229 705781701 239664210 415203994 964562693 697404344 660255671 994037452 895600917 27960034 828265586 409691416 148515146 564213200 548097712 674319806 554352565 417731241 906145368 712171673 709298386 953372269 960540816 168207837 904887582 588066011 844074674 698395409 864982796 133443312 562521772 744476385 570899687 277821073 662419054 421748581 56743696 751353392 959024876 111706502 476605126 355488026 858578473 140976628 714428324 670989236 947958000 820359305 435256252 754646695 325060054 991721823 880708462 573392434 797550334 286824519 586175171 879926633 50585825 721721920 760838491 350357280 404095283 900428971 585838114 42550105 824289779 831127632 799978577 383688261 103753572 407665906 652242184 848329772 403615838 235607527 460220476 959388452 804449725 548275243 683591392 764853359 993892285 44748045 828653277 663121967 677332533 670989236 956466521 30928311 386698100 107064595 393067462 873445688 408519481 383637695 910815309 893034848 621963000 556493277 860428037 841555366 265657619 450724046 444051598 148167853 955403780 79907936 123690318 838256170 900891770 476793444 681238339 528557628 702900277 229349128 366892829 876081608 670989236 986917923 670989236 603608554 932253656 85106914 486377323 385012865 709420760 814396956 463221090 987086131 559994534 388192839 345535285 489421141 916029423 749189554 931395247 244148976 550673094 859604715 875628127 293287844 689854107 906660526 640760837 935137053 102559541 714744255 732578607 160283174 216459598 65488503 442554628 719933196 231829932 176007436 869272042 297361452 913827199 662993038 980085400 873326817 734876692 281770725 188867547 842877931 971666879 729283033 688254163 874009373 798521886 289498649 195529172 325023014 870578233 602207095 760305799 714713849 867348519 28580685 760257476 965293152 952388492 672836982 155524901 570840747 864985223 652113626 388462690 124621753 836138803 854249321 902796831 439435497 500516686 847199098 490664188 255380268 314733594 948160103 765148600 590185905 742711382 764973172 760204137 238102483 624932105 270630886 342394134 2798097 52437323 320121848 858620799 595670114 745838877 116680588 145513349 614007695 131286926 230366740 637233036 955150977 604453197 581128808 557740746 768867659 394846359 190730163 780030567 312946164 781407270 919988429 772310296 854299339 703936775 796301426 496378213 752145690 871319789 988807977 453113733 648840742 839800148 47501326 11002453 902845483 513540659 719897383 603432971 918656233 290596479 866913045 924706160 459398217 775263624 320954259 671199928 942837007 599711788 212659691 672855555 696004058 28806874 623308650 810712783 800128064 928693172 108231876 640181752 970659476 882744502 773910155 14612352 778177427 270577963 738278102 985686093 424152551 865904656 921583127 199907293 475100181 112072100 104700106 133482982 249577826 365089057 703406814 403412269 305563192 938555642 776541704 691883352 883694091 881176570 745895737 64749791 825060452 879970048 743154157 828409258 969512289 627311242 911162336 74482001 675265734 820300914 153878852 526257397 136492823 873247740 165226600 805780821 192673434 601738363 628715586 773010490 924459667 162368545 751838589 201890878 864252561 919653462 602906198 230344460 872336637 580969741 39869470 492785791 250040444 376808924 85371034 994598721 277299752 935354726 293812378 817099432 375166163 398912625 911991790 629541830 517899512 621648928 901370454 777960454 177377529 656650828 738713935 806781640 593146892 239446928 232687142 888772105 948710685 850514206 532112929 867835079 808003818 904633658 242995273 8078229 655426167 670989236 744381967 692215545 810856635 732421667 654984035 829049348 870650021 448540571 967909610 953896324 840772475 845272026 866685651 29635513 355003480 723504730 575431249 909395407 655118692 670913782 602244893 227263421 670989236 253849428 728934623 795574141 700380070 267489582 722835967 605203160 789883750 419069456 827470171 367128242 629687283 342226527 136370604 818656226 900824009 771340409 927897622 901746032 278853449 861292522 174129261 507479789 257368556 940289107 13957180 796811409 712599499 842133315 856187409 151703864 877244710 273454254 758721858 159290737 888853585 939617995 81864657 465572285 552190143 865609925 870329183 860770337 90979771 192792467 190143112 880225920 729690461 224540548 119717397 128862805 435890773 770697389 840140926 440035868 892736623 927004343 360324408 442425220 834846097 212938547 725401767 942213256 920878358 231770529 964371520 801767508 987781781 664084859 230511010 136606559 824086744 681868226 305008789 263105376 756498590 371116023 101743905 784530300 458420631 219961809 42279544 785243837 457008814 120704325 583824786 739066437 161739104 175614572 933400669 978704756 646929613 801679135 945679905 767370647 82772433 917306251 727454444 277960534 376038029 808025206 929411698 136718259 147627494 742771072 387396019 322305313 872908136 883968903 403994717 602774204 659352056 693154891 958371880 875568415 559098655 475168362 970151217 699560058 338848321 172269186 313713711 861614841 505290106 486213199 571158372 53124872 905740195 623274122 685127107 59248310 409140268 118399188 591372173 962911680 329391608 430370917 832280615 884551015 398688598 300265646 107066287 896751629 235670416 976209009 979057371 481618313 5802321 584110355 705586927 786036552 289785552 589829789 702607654 910522433 590217680 672592832 31926291 909822961 45069240 683861019 933009214 842482481 193481324 420771530 15381879 886150908 186687339 111483981 781704574 247607562 850405509 879429440 308948833 504772331 815308834 768803397 861254289 834150116 818050754 808103343 760566666 678376797 420170015 623029933 921750523 932554879 670989236 403200460 705686910 836112336 916154399 272829464 51438924 340756909 937333942 642121701 981621978 927179701 310340834 35446243 347322774 172867906 895417812 781365833 890667958 477323372 749093194 649904015 4488940 971136458 683899815 729702451 64983253 620450049 659613888 392709509 456974428 499860139 971781044 464993403 189428572 692928191 707173649 753893240 257855373 670989236 846692604 404997065 510204605 647059159 988921076 800384546 706091291 36611754 217099613 856492569 723087193 953614210 336092386 366242293 922692232 571286312 338404173 494231847 795468200 500776828 913076935 869330176 168436782 418364461 985503707 849530865 238743225 413740967 611728775 777190112 850091721 171084149 90997635 593362272 375101542 741835112 867821808 927725497 771566023 797640905 952431747 745922765 180848356 137317637 720984885 765837599 348177579 430654791 194310027 688015766 331377303 197500812 56675659 198619222 698615647 785569482 755977996 564581511 587725642 525355842 501948682 501113418 375281443 955425599 807109619 507119226 917043083 773609064 378495146 765759591 494044840 341634911 212057289 611199485 763506063 706141157 742485816 741709856 356879528 956327052 951719142 488329937 835825344 896717705 830884019 836563245 386557803 457232201 903207861 805283779 53246473 862362785 84609399 130559775 847935053 815950797 749514662 915248584 702623971 58634882 347570121 535867386 959172307 964661550 812154823 463289148 270247198 749656718 480020479 885348600 614873817 839054334 851596634 606749952 466383816 592106385 847920260 273974044 670989236 231334897 135130418 869726894 885337919 339124945 827951302 107394665 801276069 808270915 670989236 723156859 845223326 786121499 23407067 313057416 704141584 654156104 156643238 168308057 843512269 919232690 748522348 117588954 851925192 596448046 766483329 522924658 939726128 60919582 942881583 454483631 670989236 14786482 567838681 841653141 9628841 391368827 81698926 701519324 245615710 482385712 671566778 66716190 7430464 650483447 774328417 780458657 656066321 713512263 852645474 892663430 754911077 778078428 723402027 625641140 389986831 503025421 697368198 645336541 542049409 979334310 917638078 835653041 871608241 388704319 585905586 729850643 691317969 545815167 193143260 308137228 400340633 865459751 291696236 70864887 861607287 246547530 939091870 726340776 990700994 990521294 773053622 676216509 301108229 956959425 578825507 920008984 653857856 33583845 806662905 705881789 879045506 806780315 484581095 976008447 899813166 784703166 696179 755446054 705785893 755437220 489830322 556231675 998000361 704592118 286651866 299258244 216380186 959983299 45418040 849211013 730673966 712373804 670989236 457005268 623918327 434170510 695471513 417677454 503892126 950687602 717905702 504712800 554000447 384267927 698710277 207370018 740801904 713216195 630262831 871407711 298044337 692749824 464444724 704391915 698364893 743457715 533828760 120244146 228211352 893844709 401784193 153440087 979445438 739130196 342832792 32202092 791810931 367271560 593897728 782149353 988068131 967151731 948014372 292810274 920096787 313036947 501891492 199997632 295413185 596036751 353559874 528073646 900092158 780042396 72816061 848226467 78638700 862741681 734792312 406280802 211479009 388887839 714810837 463459482 365263181 715097182 995728515 759552748 261887107 847841439 895752723 933583182 559370213 935496439 587572403 680944248 606005756 714548716 118861111 817399270 829547366 41274211 492956103 824293701 692796974 674566097 772708446 848685205 736126991 992674559 653262335 586413691 431989656 811578739 979880114 265264136 164664797 325583868 135669801 72368676 529749784 895516814 808658345 491542086 369547136 358262891 148358415 775249696 64385607 789855310 929682177 92952481 911294778 933552968 678442024 907427411 710741729 971337149 670858964 904708076 236119394 651663652 850649270 519776962 487294606 475345789 10569256 209627696 283255306 630056942 653984266 801023846 358386445 442901031 406477974 442107754 138753252 379089696 791599604 979779817 741146332 429524187 246170301 572529521 37909820 982937838 466950210 916946555 169934395 1322909 800158004 884787249 447938373 807770477 939077153 937922851 317995928 922423194 371216493 372633218 825589586 886249490 227462031 60580099 973882829 292528040 713271334 848172864 246591416 470140119 125411881 664959396 758009110 386203016 732248954 461167895 801502272 759395314 14318237 799821828 695207787 97320262 109218015 126523594 177738753 726308416 792175273 727385413 695973754 487089653 56306970 972663613 526068361 634288380 219821279 683401866 764060047 345358686 129836346 469373257 318584599 985952211 890300981 872370936 212866051 101848437 850192903 757760674 723293800 839002763 7296393 932375551 183033351 224821563 723151504 256109495 825710210 740559317 673186165 468952726 657109513 935767389 673324556 560010323 882202209 293741570 782740710 8764910 673118428 709283233 124205079 319468376 282321879 573127160 314341265 810629749 922758336 96301089 386723360 153465339 877063025 76864476 594587795 241023126 928919183 405779023 935366902 486511139 300622267 768906938 767903146 814007633 566168073 594626644 812881897 514165374 789279800 106087237 815781943 635418293 564248957 567824761 762435462 986474182 598964404 76000707 709567645 679004959 990018397 526483068 323092775 689554888 791727071 526909115 905481979 693965363 883385056 459802995 904981584 734137772 973922493 901595088 364967365 985962381 405869123 976720787 540289299 319519373 352956605 975221399 536948529 239938424 301341731 372819656 741887253 603571557 588619664 906137409 840689450 670989236 385227485 543881707 675593888 866026315 623731485 799995561 961724877 563350153 919698796 732078815 628048248 585137441 932623406 873580073 185447985 491618524 874329745 521790545 671665697 999364121 54754816 996928220 674722861 444985621 98795461 722855556 302053298 924703312 109799852 984259101 998512051 675674758 279161359 895527605 983986277 587851887 377842869 914309833 781563684 954993812 334914564 88371188 438325284 963838093 200313507 999503888 355025634 12839644 284445009 139416402 424178379 518191618 569448223 959256112 359004505 276600046 819155509 964729216 868250733 778035448 59743667 681413908 679115712 467867009 908352910 212452387 632312636 582760544 696317003 96125783 389171861 290256734 225913006 829169641 935723818 235715506 13759104 999862577 694860787 812447922 958890437 417663722 930982729 454054063 688980632 761371298 538275798 795716416 815079016 546306094 162407185 112770033 212444808 894406259 741889607 496312371 705856692 191706005 182631710 714358803 769016660 63690377 926652248 837039489 718990350 865061073 688631371 535294574 748247221 722908643 923058360 220059773 575328983 337156729 737337086 789901016 745466819 424217293 483276489 123936793 553230308 739914200 670989236 601559618 931257041 832964331 677561875 163155006 750432394 575301526 325371900 766028025 110196456 764911907 997360990 492093461 863036577 627057298 279622533 773515259 293989623 880555643 990163335 881420261 859948540 883024847 716922350 597561584 289800804 288513048 850508547 720705821 373828103 449236437 30728464 741123586 134782918 747579796 339144088 815891095 726925694 846942068 803032368 526413253 494961526 324058681 897866643 960935014 852270588 814592721 847282227 334279671 654870810 340353584 80121598 437427793 924905035 781104442 737299066 949724966 732954489 921928035 788116458 280827819 714179470 814973652 760019428 131640163 473268271 880282750 920375168 46386092 869279248 918955271 343589605 963935995 736872371 944329196 725982502 72807000 814647998 869307120 915602295 698458817 768898303 734889272 862260356 715859484 670989236 686838445 181981821 607127331 804122610 326367943 217455780 796148993 964703394 192304860 115716203 413014571 542497734 268393323 867219163 281837211 514848913 157894755 907648223 307555742 252133220 770357191 929294874 338117028 131692975 772655172 240280369 757887355 848674727 464097733 539850671 586627804 194946870 331608324 63543288 134030376 846380883 996489759 627439513 274526707 766737879 927027924 158731315 231691856 494659968 331654956 634334213 667752504 281298790 639856505 881790993 963121001 552842466 824590789 624599794 775962501 879492763 321364369 846658155 247237622 130988448 732616952 358532058 868910607 674296540 690632645 741254317 592749065 256901157 462555510 229929070 997571657 830259688 178721990 674346520 959742832 267956016 408218612 718133713 540798254 33694715 913877962 761014851 133999129 339174782 213384015 477725013 799675780 506500741 683830956 164594943 341631343 280303629 614111024 835122797 689185459 352876154 686394553 946291572 241268052 721527300 456903692 848893941 9341035 380041226 511278611 350156817 343215975 563260343 967309265 909840561 495188088 707263579 702423881 878979420 750007778 899708373 275856928 717727905 20683753 53335643 354273214 415166939 632218822 724669364 835867278 854385657 857527907 367262089 856203398 859857225 578896901 495541967 705712484 991929878 401260522 130370489 319552573 406306634 406938515 457001059 687072975 890427361 886577908 775521733 726301169 702910847 46057077 684981242 919432747 750061326 671500924 638465037 770212599 674612022 676723903 483601900 596051532 191602004 624918616 336535099 965223435 493036416 967115688 684094980 279048975 130110870 694452657 840976088 902720455 738359613 896397263 752652922 725580320 442791244 396014604 739639833 251338871 695071241 440048832 849494208 111939534 939069409 873465400 352057522 894573157 942816380 53379432 822209492 200400675 986799008 871469749 912564997 274410250 128688721 856798582 403984371 252836690 556501539 925269023 437393566 755646030 100790341 946382212 743042694 670989236 670989236 982538284 814494965 895577779 734664646 689554280 694375403 346067559 791690219 220896812 691558696 776644133 829632803 828299744 978721371 828045098 976329764 195870958 266852596 327193531 670989236 767260367 901923774 376749868 965737407 425573412 313459029 249839364 717556209 690322738 335743737 238571270 803735471 670989236 747392334 300305006 738390788 885372294 720113407 168066995 424829239 86882291 479460316 904598710 240767094 692129313 380469195 781438329 347673926 585340620 918904420 96709420 979961444 903952186 269248896 756114606 384406667 949050056 302645841 126750220 800782706 502905132 948309153 930893984 559987618 207701841 969399296 538522710 907080455 986005087 938587440 231517593 662138537 254665849 687058449 206175641 571833741 445660432 834513307 137475584 767253230 992365289 685904077 869243713 6298072 108667108 144285670 73320484 248574513 692842353 323151992 393030991 913567300 69094895 200289701 947497597 646060214 341412349 812688881 986027337 151610915 592600327 758828838 757021397 588536466 636200764 884374006 846403288 30824276 956101910 927128212 707986134 626320580 907166315 620022434 544841632 871881159 175232044 27390929 883881428 499808703 809239788 451879597 983175678 664356983 962726082 965815670 73578587 450608507 532739388 994330957 861505207 987655664 942265865 709178183 163058716 436804009 550237942 869536288 35511145 907332615 940202352 562224238 733723330 564316808 606356062 891175011 974451135 999646471 574053186 49293997 219720710 736966339 625692302 844993120 704015690 432288191 321653188 988130765 751195544 434284980 134941811 807783232 13359581 674794528 713789052 639791781 968820146 456511809 491134352 42229681 701389353 410416409 172465420 713171475 387936776 694725039 614560385 764324606 16221889 792558175 49700355 989081827 928855932 224891574 941696607 669474411 920138157 536848734 397406344 633157145 626545877 941066134 174167841 919603265 858762082 781753516 390560918 802652089 988469150 768065688 914591121 289857585 746978811 858847148 23552099 777652857 147832596 386781167 41768168 939452352 694814185 991316678 990623352 987775673 971734968 853388287 322437638 690891195 84745035 816457734 734230965 230350400 824565254 26772267 813312757 664045451 887028900 544461300 421560076 50691207 104900057 185140069 792457835 747281909 530870463 925827712 982410862 659674814 748996883 692061214 695138333 715319773 389062070 243330624 546275107 676248895 52988213 130207497 902723971 164757485 772758454 683657125 910332026 87666207 304674026 210769715 758205024 866119440 925255532 697339165 683172020 956398109 256700050 146123527 35962795 874141208 674222125 757452208 474384916 11956665 430831336 292377073 811570127 662706335 933176124 805350477 995394841 252091427 857761474 55018449 40596958 506211091 505285860 980432194 680902574 610447637 749510590 163950163 802740762 657637278 549164180 820830099 225297966 729119933 817302135 702964601 592243504 868042334 31030514 77862523 701610972 775699922 546455543 222635408 474781476 313078179 925569228 123866840 56611009 982018373 319716248 287304869 653017912 800791947 296160115 79488764 597792264 397639298 509247039 842972052 745921822 385829440 956963735 79288066 853531159 743226431 899844214 759718785 822773655 114931611 836441559 267851462 708625081 948750271 442254504 847344314 423562277 882604275 692743844 806772854 981632755 798973870 988654491 345681022 434163123 850833225 492436771 45142047 967675079 61265849 535452407 168931077 311037053 320742325 713845285 166020751 121107521 900701447 17247746 162818752 805233076 953982913 729031138 898901977 146349812 640318817 984591897 539945931 599844212 599129775 906651850 943298494 667074515 683830903 479769276 670989236 881293725 602710153 996611249 731114153 932193846 534987794 277971831 459000385 884092296 988125396 720506751 503299645 340543151 95317321 304881864 773662927 252376000 967642146 869174291 882963571 708024516 183447753 788748405 799279751 598012122 244409674 729420544 927824364 938694620 627586982 965725893 236038543 877575897 710229604 658981875 402753320 974197752 735045711 670989236 806938456 177354049 701931033 987082339 981528550 681502388 680947321 101224724 416423005 803360664 778730776 874976214 871918972 752992597 784207569 834269778 382659042 952733118 169181933 809443015 729419656 833227995 193543283 504952011 664326931 559740619 873761051 585372005 171626533 805776109 749055551 670989236 941073589 163959529 824581247 520983827 421635839 852424818 885756734 815976023 778151596 15718082 33495064 280862813 576799761 978388824 759659483 406353583 676293943 866462829 671153130 828007884 928814217 119255905 552956891 986578079 428048435 219073243 875446271 333492633 311063824 884630637 948230990 873293665 737064385 320619783 372401493 298820963 815929888 773704269 760624329 567719336 549690584 754683308 981040523 193902872 688200139 800841315 690372434 575779292 190989585 102914143 791602258 834423580 763308340 723136639 97663988 70993836 110422329 876512219 889905708 633171171 869146376 211608362 499667352 126693009 945068304 800170851 806071627 761145805 549297293 856888201 160268131 805343041 786357610 272565011 638596441 721346974 191344510 720621250 861287353 984863302 125952839 949419226 872685598 22657600 908329152 211883687 856304345 289740921 744539857 716198521 61327666 941405176 913001373 225790039 190678061 643418867 606907944 216268135 670989236 950847209 368220479 656735973 707428739 805648274 826466081 839940590 350122302 794664459 768320890 941196866 724946989 214065769 886144160 899823404 814874294 689888432 688937130 854923714 770718438 383214167 782324488 1375097 582331171 261021533 745435489 854577929 746182341 425817396 576495367 872610185 217782958 308750637 611474122 876497500 396959136 670989236 971345117 150534280 698113011 670989236 113660168 170691749 936252501 700769032 870287746 605104914 792211322 797198038 921058677 687959358 619962878 130628518 184037304 757783745 89832451 164423834 275560799 606497906 71157139 17789165 81030285 695874502 932955560 219698819 399926307 834268298 752546270 887055941 868695116 960797111 859314791 811849746 484631379 835186724 184052722 401500543 295035800 947386159 343412430 43671005 807562674 736429786 164354744 398977862 332285133 750160552 57886069 210068342 529988912 795607732 883028955 818485322 338718713 110370009 747258558 713227625 167655821 592401078 687299062 825052947 999726582 778047638 357364486 48284663 874988750 734185815 23458382 197651647 169262448 623626021 424253067 918681791 462757003 336607287 22214795 670989236 909382087 793495339 839853302 812016486 908114583 912075515 790817202 286025369 991588036 412270996 181934876 458348657 993778611 962966483 681241259 339981166 381346348 803212076 2810471 737454146 683984504 799880433 450081994 296592316 694671954 620305010 975965387 921466230 829880144 31912262 30120931 812914047 899477992 521777968 755132994 811058885 149218004 283469314 585443624 769364908 884189787 810047014 632509324 517338595 585870279 901496518 879544371 618865669 694255416 838400719 882192955 880244389 270775440 716284671 689601972 298238398 533559707 881167903 194449421 204267107 980101261 416308195 961199210 719191036 670989236 909591907 712461910 992872547 70689964 96458526 956523673 891476230 376488435 7078712 842009264 802285767 141955524 358427500 320695747 893252950 642677725 705161912 574366469 735560444 582484050 936470550 829217274 797909833 255218464 991575461 857367342 534665977 592463802 675029080 829633803 885802232 88371739 174997805 757686683 915992014 886767355 997204204 593187671 151743610 784726626 313622668 288310837 567328143 652720738 440161285 595011135 114168316 479162996 785603120 936467139 155083375 978773550 134664057 527501994 192099035 546797855 930446700 759376977 219997721 981338919 875177483 18126743 670989236 565959699 460975810 906847432 843167882 628695285 356940413 615280257 173593170 263702387 886886894 446925511 24577818 897508373 714387111 295596082 784547926 585265437 740727203 79590399 825719410 136835741 357582088 273950101 718609311 158944376 874174264 952475387 837517530 968334052 890648540 57524515 468740680 934004291 960089952 826808527 703863831 860628565 930278881 906962971 859098516 404286808 219316429 974618502 796348921 523891881 520840704 86555461 726647518 800724752 466724954 378816240 747653747 263389441 421926949 676473644 309789200 924893645 783062245 432260148 583264199 134767694 55550941 129176390 733259057 789941585 741074426 339400422 878406926 457198641 788943551 853083095 541583552 294879856 561491191 540115811 314595753 292437247 95199435 782104478 969973134 98840556 307530318 500602063 776059695 745132691 531204690 926572509 989521647 477122514 782164690 480049508 268872453 819156295 20719764 552053050 549008488 402726617 18972295 695563224 863061445 971976912 212658934 338490660 734853351 811904802 942637281 774491723 636729898 310241214 858935714 870715414 740703457 864849522 335409400 893359882 686022946 56856388 15439579 476043807 722579017 735801596 922520819 899927021 842020346 804208737 454661349 576686043 260438332 670989236 815627345 966885305 801734890 147942648 674402850 408374439 760477952 555416560 682836052 32493539 900642510 702923063 690610915 275914639 653260529 653350889 852398377 227631475 398203707 579856664 340365185 854512420 858023622 804534674 670989236 926166636 916099217 11724165 344795850 92411818 183246729 856845114 454165091 599730660 587476272 994354621 277570066 814674090 402739589 321098335 747573924 672761303 640859416 970705683 680483122 821011975 58317089 284684215 673832185 858537185 865556484 65519584 871974294 196043675 706593443 238070663 912034706 755317772 884090027 543525216 175818286 219646529 838464617 553268423 905090945 631855828 982395712 45704348 269071855 507596019 44265374 947072265 764679562 999779999 838659143 287880640 749158076 964103734 877461375 808920667 846451911 634895728 921770979 84232102 629380334 13154241 101192209 347027875 554285818 965709687 391377227 14447685 17674700 977099263 466575286 67597922 133045056 767448325 989569503 771489980 264199709 788981590 583393935 765162678 885268143 983411562 856668854 287142844 818306191 6999938 244110386 939706663 867361879 205638876 634095001 698499906 721000452 157220479 305499537 727169247 489498696 307816392 370596094 723515490 10833503 522328232 368031234 274234749 775138136 844330635 937961062 155948493 91168901 835055706 836729434 335320350 114880274 836896760 994639209 801928483 185382899 641966478 31493444 920508543 727705342 82735963 650681513 806642529 92626361 801222290 985737050 974048268 812467990 671032960 614369215 542528302 95154469 938553654 780275028 783616241 19630548 756987651 700453593 774658025 830376832 512187559 308258284 57902392 790693294 764289461 693655005 858375452 821261165 511104049 991969126 765569597 309068008 463640938 294662652 316741369 995699125 923138144 436858064 670313379 950696066 829403820 212166068 670989236 276891642 269029906 946717810 551030654 67855907 709336231 77878096 772454658 958494994 160693459 711317650 742025471 509355373 641303986 674446293 957072942 902922105 473983645 670989236 534343371 943399836 954992735 779107156 427684294 162066800 126483552 458536336 931411367 709803660 165383747 617176941 78785675 910404672 936043831 803200017 919249393 658570412 835572922 652743731 423406761 177204448 438810765 787160422 957909555 794932674 912258739 850265646 842509078 544798860 580315997 189133167 711290351 309850385 795462945 792033605 171498158 293920515 344285142 870578410 118343457 395982325 900234024 498735129 823774910 972523132 956969861 316824146 211263780 109632025 993027470 712428948 988843175 715383803 189293954 348688261 565596216 471026223 575655301 334350818 225856237 41755682 489250640 972070367 102014065 588919173 679988992 744140879 241309310 34915098 934474313 24949534 842305220 963494466 458668683 898616520 353369275 867979524 891670839 56866891 881970983 113805216 868207076 329271897 944081195 980261229 720907083 961741840 138426474 675926062 854825822 280018531 213415272 397737712 26528948 808922365 44898525 403362505 570383883 619693375 689820913 414550551 31129693 739524142 917653388 273009392 713508345 455421092 217305159 883556483 780148544 525241173 979633834 873372063 761888279 793817830 329003855 927763230 741664097 671989981 62247974 884242549 974796403 775357523 989095766 381804756 800467513 197053451 526514025 838642357 746717278 232462141 206891664 575032811 713379791 58933441 968152082 736679911 343830248 274550037 495498314 786928572 891035818 763818520 897739657 615717278 485145312 432655034 814192287 637133439 756998543 61728580 170271944 860390227 320915762 266586785 173958040 649588280 214792633 226076402 763961 819222435 830288562 756336336 228653422 961013271 951203274 680719260 419210092 60571222 710001907 540162633 992722993 348499199 865389215 81525194 512743413 205702434 905064273 38954719 592262505 798645652 301064365 13047804 647111043 907414793 790450495 726945059 431453496 817826806 798074033 729789132 533033538 577814728 948441488 868158277 441279107 912600033 89511418 604297866 795901923 917005336 234503613 816019222 817503035 727844321 791778491 449480777 391357135 547808825 416830565 935608233 352935355 212706564 455490486 508312819 157714077 821024300 836959748 477016359 340380387 816069673 993614560 837961312 95745101 156469951 53692643 154854323 703467258 937510974 943771099 690625394 7280809 911629885 151842239 726431452 702058471 655548276 255419156 226682856 402128578 525176504 260148596 530771990 38912372 457591562 939433090 795986571 830888655 922494108 426108543 954030095 348246844 739132174 355567438 850583961 647566524 917343337 432799332 923833704 777959413 765556605 447870446 50593591 616801920 172570517 11913464 305941426 782356522 948560119 288356257 942381142 784640024 919490824 591099968 815010798 731586925 367923863 354660666 28844891 724893175 825594310 573778430 820932820 767683968 211953380 596509313 670989236 833684789 254651289 595400688 967306830 258088520 308224004 834309580 371120498 945984794 686820908 269169120 805952636 197808041 878368255 777138924 952269623 487038585 715184354 623199760 351431244 735289764 821209952 698263213 684983490 372260754 152107825 746229115 309160069 497901934 107345172 419050473 513035763 898894019 640063121 485285428 566685404 443367919 964694661 983424408 761247543 598036330 139036205 405102295 671536487 825577933 1879555 317821199 721284128 922681655 545590425 596924160 787492064 602888486 921330614 15490786 346535453 764733042 672035032 558261364 900091256 908926274 385899909 720245092 800111910 237160422 947801595 830341179 826682231 483484070 480749581 220166047 924114125 828813 665253711 782309473 24080269 254961803 962757283 778756998 837272842 587662993 868622775 209908257 566636439 43885835 952078140 936686558 786173068 130290574 821171654 912825439 216704292 952107088 982180528 781318266 47635364 772345999 678751517 981391070 434556024 755004995 321878376 939312684 372755601 185102417 133231285 32760026 670989236 993397359 73231467 747066076 16947044 582521850 590107148 993695615 687290815 838599438 3878268 777955041 95411467 602232246 695166687 908216033 638735149 294750085 107981881 586285041 868306046 384801118 931711920 981556166 893006132 300606358 394613825 487421802 828655967 384985579 364254090 822119927 681214564 848477782 429275613 872947267 738004199 456015099 145669095 728069930 950017868 819642131 870441860 839788365 906450876 856445823 713151061 791474074 534948852 882458151 702079243 90811855 133451952 458002963 131362174 537847031 969992229 415246563 73216845 821486171 409891954 837899762 981788127 893618984 543382309 688660531 166648385 823606160 935556535 526707018 786708640 556388483 247056273 865115663 691424795 327481899 384853927 900189911 770892110 536986327 70112562 138834872 695739999 223784315 203119801 127325251 718199504 826405275 765422404 359139956 880889585 73901692 872890248 683995215 946125180 778854338 820230484 319313450 410754304 708588831 810922670 910564138 990818781 131265086 57471041 1380888 711312756 790547502 246515986 110020447 87960762 837000306 887400631 680771231 904678800 463109559 597877518 821926790 891917250 926081923 898785923 111319788 847099135 683147089 47185285 445332648 808740947 175358193 587166422 846251352 689139685 763181996 77364864 795749286 840434442 999848853 983812393 761191321 993923233 932408709 740195404 548983644 442558146 73054975 79110707 486178572 286567201 986230450 126455060 786781370 696377213 930721592 25994649 400240481 201453331 366743119 291057983 89767727 463609889 502561871 959865636 291807448 784057364 69986144 60554555 772436162 488403431 564679684 646276371 195547508 150429064 34635685 270946878 897797443 854187723 412196485 663529986 241062966 939416998 847367680 685047819 935092963 50141326 794054381 770443412 438308229 145953863 869452141 975431860 425584260 610931337 369562474 517999340 732137632 723244500 163071518 262399645 22394235 111270211 764684797 876005409 584173998 618082012 687449179 693587000 928762806 255797181 366450280 223717662 58239199 725519641 103565402 712469885 11901078 730236493 750373347 157545307 977558504 765600687 626481613 723369098 119766407 552954952 760290346 861712238 272844852 31812341 191997709 909210116 196486014 914879535 190741941 263596533 32138612 44583789 962942480 791189564 767718577 146124498 670989236 199229846 386411658 843040861 819126982 245139810 657077636 375364950 894991912 978757486 148738924 999445621 670989236 859588302 746115394 827099835 809077159 749923752 781264389 225521013 239120759 144328223 756289974 206387483 357636598 379301192 317734969 991906450 115625335 438573986 712221845 794086354 675918345 705835134 218663786 782053299 808565731 759020283 701842656 128120355 902644308 782095486 990226883 536422092 970820246 70176905 78425432 656830451 771691426 921173296 861830979 879108288 891512373 680714963 349937234 852687459 372490579 817003223 930099237 51643868 404543553 873534596 293579972 690620239 96327116 755714591 716902386 297028284 140344379 890484527 670989236 500819223 263313283 809198641 468139197 898983184 711604035 530911727 886442079 944016502 800729195 822191099 150387440 738386794 970770653 140940818 830801330 800357730 540100532 72759975 192661963 954173339 756098645 19442823 879078077 835939587 699113065 661726588 943226470 776725459 827645288 324960889 108732323 786755505 379046744 145439966 703709416 246374729 728548484 193617300 562956032 718436921 224023567 383530976 896273042 878154782 322429272 996594576 799421487 419726996 243059204 918996082 885337471 933704407 796099120 448740786 178794986 283933088 711577361 453286716 741140379 295962040 414132778 204670887 825456788 529419697 987020963 436923216 151621925 800715612 57436544 430363011 180639891 877871565 784911802 794291859 827801103 991801850 708342638 767220769 766773127 793013182 843238181 987028554 591912728 384940965 394585041 768472685 18118490 328305131 814926480 64211179 582271118 176019357 646126905 443255158 291951279 131079398 552108807 909303340 919631441 764297206 547118911 394494553 819719675 798037481 626714120 811825799 927937362 256950716 868455948 755856633 61198863 32402258 487848644 246291776 911904697 515198267 652314678 93778774 415295316 84797789 673084123 572505366 520295301 737424109 526785411 724012392 788771821 882812357 207141040 570202364 876785433 835504838 607685722 137322713 990008620 828152930 663509924 500430876 935679087 709351673 442413238 697178882 900380473 199675841 94716870 567528424 789767171 791014661 396614383 631394351 9302809 846626436 754329577 744713371 933020970 811993640 978013912 714188405 670989236 958214522 748084385 78222451 651980281 967508558 631331199 90829287 826097984 829980085 712951123 987532621 40983808 823918101 710759861 263512362 198712455 959696982 266861550 97584994 656164970 568762692 826502481 638493428 473699079 783578151 497918470 184387430 906279252 208096409 974825889 445476496 950795065 493259819 695364071 324492381 798812491 953500178 670989236 921503876 729762015 924596761 556683708 293609115 170912233 835590701 464718863 682652288 899711902 760994350 322734836 704754807 926428784 845638981 258191467 546298881 906904484 762953829 917038419 248334881 806349623 926973052 873036960 823219086 566905569 671981774 30459613 81647606 652646774 152905352 157339767 477082660 690834827 688922236 690318852 334701111 366887960 851259735 103178461 7651134 592169816 789797216 90858390 608381747 731660890 938264912 468512269 759608340 987608071 908156470 870537994 746680753 183705888 707243683 869105620 450989381 947064470 794172144 315391360 877517630 792574673 93419255 250102355 869511894 593814877 391798064 919488748 65311552 815802182 893317642 765866793 764678915 478979567 749734290 705624664 871878226 745689461 632466031 793992179 765579916 867459732 670989236 935476950 142085604 832425076 757452897 910097792 87096478 750965414 626604295 161394874 865218506 450418994 648992284 856199602 979668000 381297889 775305926 38523409 267310403 636330988 252244034 13228668 140767094 952324905 944340147 95368685 849136943 735314273 633395072 926972789 832191126 987344857 690962603 820644381 299373841 862121626 361449093 686195232 182843571 19880319 774014333 364443934 801958541 925460977 454173716 500589739 801845797 6113561 812190799 751577137 212473796 815417091 259454112 910075073 376735200 963408936 420896837 331318064 974620244 157624773 867135850 753062901 719771240 893944994 961402912 668693508 280004863 854989597 915713557 670989236 810964222 5119329 748638756 425461431 625019151 708389967 57427304 731158014 817787750 776870033 288693079 252075189 755120106 623476413 407479892 952756633 22742422 734314260 555934871 347855871 962720316 493770914 225998232 409561424 789559774 28384068 670989236 703821083 356645153 252723169 435388963 128872390 748436566 736938073 75514099 42133570 672325499 498054559 690830689 925239859 752434571 805208085 929015920 426101920 615908059 880057931 620485943 436274675 60417434 926458592 687580933 907754026 819061596 180749676 961999526 481055196 700693012 432681310 457203483 793597971 743314873 799627249 418232692 919128340 346267396 500631077 983509830 861722241 710199460 772281135 406638117 942596648 495263297 927713426 872775379 784498724 686295574 454389696 343002582 597689027 612021085 759535603 712106370 277357285 81072919 196558138 956838340 933584851 230741516 396884265 774500939 856036486 864629664 290902794 491248049 779659441 243010195 430764978 381498607 917888784 958961369 871189081 858838939 887375538 350573235 28374470 873003467 633447227 408747385 812921403 530444570 609575547 259519672 942411722 740804066 695597733 55389471 222929265 842766324 850418104 338191326 38423550 838385969 848965701 412797474 793481665 928477865 751097579 773914388 30558231 183060536 847993277 902214236 826245944 742224363 857326517 670989236 21169298 826579946 473718644 470596388 891048510 165542035 572913427 775650567 352650999 702363795 393425888 218831671 849493829 322167486 866087938 687572936 47163840 27804037 796596993 556563932 771044053 148995155 865575490 519109209 778456771 474915634 220104642 921159696 941512186 115613624 555609907 706861110 182159743 418363839 363085443 266668072 733638384 372311369 719672693 744183596 77995597 509043990 756551001 563467517 815161135 450522969 788669949 419332661 746208109 425985243 941709753 418034795 925083776 330503420 904337722 976244320 796360735 993558809 611352455 672237071 824979236 98916542 698869946 241303 767913886 36896437 643938047 36675904 25081312 820881251 762833509 248946941 594945555 105763126 864726859 465819215 956652875 284930493 538379082 673228382 754502146 138031990 897693478 31526907 818384874 834051544 37193740 921418811 142268954 167902927 82069628 688371928 851484954 815456652 571380597 809904828 342460336 703625086 980717239 782183516 897548152 18583881 983786692 12488625 495004591 777216144 932645234 91887667 982533903 282316845 984540800 782976711 619193369 766339028 936398488 914738458 373662220 340703273 113736404 891946214 842411746 319819165 838234211 19119495 512146934 515750163 779403387 660091945 564307452 613474468 512405291 507416349 992469384 992222247 781113100 594295845 773757719 361133338 931979505 63399459 920780339 686994285 713250407 385022934 928246292 797727768 324994192 915438611 418773946 599215798 449725936 270441591 48307843 907413213 916578624 621809747 357591424 775517927 915993635 181211202 750361303 997657867 333704802 322524771 726884783 892393515 986255090 47718083 469018710 741105662 309369257 792865667 790953370 93877400 630006163 971975411 163334985 575778872 521324989 108270505 882219594 732987408 766681213 731236453 862532718 249128939 700809651 83727364 11128628 240881161 712888057 625734305 10366220 855999039 254088759 229572848 290475568 762947054 525044379 489999864 473338275 515380202 901094804 993715152 277940467 793683007 242148370 367268542 925657898 946695289 799959671 235964352 358283541 474492787 286893768 696941998 974558689 735079762 950194549 371941960 205447185 836839842 36253863 175138247 926801930 764271290 932283756 969980730 715405759 908765159 787366540 923498568 727152431 764484959 152216994 59505340 906030460 399283274 503384835 184231456 513502545 786666695 948001701 806773367 34214403 628020203 881457533 229658745 838447871 338496801 958398843 446099550 782323731 63818052 534715043 56881831 886136760 984365145 772260582 828708886 974837692 790157806 202545379 350573394 595884197 281855456 384663387 650142563 870420043 68525641 243194168 880285697 649240698 857128756 818571157 146127860 87084610 128997770 950802498 978118169 321397060 733022621 447860223 914292426 986377415 664801989 913669194 340845019 179269039 579116002 227078143 52441541 949782692 875340727 421597760 730296838 642384275 928031981 683925628 653777199 524829552 888998594 82706379 928892015 185776006 660120050 637789694 674778743 329931258 359421381 824684404 504361828 876055969 329255751 967528253 976081632 852647867 971565915 974217502 831810440 974738449 49811745 1515924 554457988 601683620 642315368 49020356 992346069 260885761 307461446 320872401 381568727 923631494 909440404 688036418 717297367 598402813 296885769 733229548 738266723 2614488 765545619 465053738 426647519 550488731 508079862 706887181 48056820 8157335 949257108 190029036 782485256 264637764 906328998 789345100 403113710 265629272 848366076 881988972 998034977 636783058 87767943 940792772 195351179 292199347 400483296 942892551 206240591 519391451 506483110 238786117 406371385 95717833 815643791 429124329 161450195 343345858 674548474 410749763 837307962 139483478 758569863 912015032 179982586 777165880 532896127 940380754 203461140 842652279 762132452 167595312 682341851 176484453 148708255 597509874 402572639 878471319 978478491 441833006 748734910 826985695 940452378 349556925 966437819 585551918 248847884 515867863 385308701 913794178 484227606 367540450 109045037 234708230 670989236 640110629 988488199 737407048 13288028 295840132 679264247 476500732 171300955 376813875 270646651 581537552 277874717 400029291 18314951 48014931 684260013 197645129 481650747 728290364 139247950 776789477 894368136 744617549 702119202 864183703 648092310 927990848 932194684 38932513 185740022 385639516 341908328 703913897 520571882 175385886 773329391 997331494 308020328 178899821 810406776 551919255 948529375 46262396 487513329 134857660 829547592 649866845 444912808 924589863 772826902 91065316 103077252 995352725 632638347 924095461 944246366 960477528 280223943 102132331 473736437 752367479 646457501 762949362 128593593 710279553 461420883 673973044 222124870 909150583 673825090 274856356 260878256 824118830 891764125 881051504 715600151 734814662 695611861 955524960 762751581 925523178 934045419 210708094 349713133 84716934 35070688 217982416 894160173 641952459 730018755 793399935 385633089 683998474 401385373 161118975 788053363 208082151 677922876 646627819 567316948 369905648 584655205 634348704 507096353 236547096 788037612 874260199 245472578 977934845 225443310 774182007 689018543 952393172 750338603 839853074 689901968 709166588 226385076 517898320 703082902 689275659 903424323 670989236 620996083 796083217 496086265 758122289 833203169 846319775 785015210 310224160 33428822 758484458 351112263 878030181 529477296 976719386 265155521 535304824 763827456 669417798 445786666 245995285 510622384 347058183 447168523 427184445 705324681 789793323 348305467 98751426 279016976 981347657 26902143 785306653 363030527 651562763 863006804 646081171 788369991 741895417 515892681 994294994 620912645 371428860 943463596 204633821 730008134 936128495 297437339 272382126 597700328 865363606 17662531 845370979 78570375 830628385 464865834 708197547 76214727 38521250 60343565 787332047 896020757 148813113 1578716 151035738 136864987 928080532 959841371 720234955 340772585 609888272 57533085 151282129 9634924 822646004 498425178 45559661 949389787 933639916 996402411 355760746 903798570 507109080 945922162 743340754 513029255 303294742 474201468 226093122 792116383 470827234 289537647 690650065 840474218 372861324 135767636 867106903 526911402 337072809 110116438 895599970 749097482 926215290 781438065 46649415 473572670 636249301 957785933 742488798 562914768 233914769 287532697 847062635 983714128 851755157 546951283 998067279 629497384 242318208 848678018 848686008 521679016 93277071 643931915 484352238 736306033 523433488 209837259 148842549 886633145 631186355 950181353 898681077 205780805 968790982 513048295 877910240 168403865 474131797 724617908 982165824 773188683 311765737 558954256 606133414 788302165 374304560 276269929 859667362 752181761 951363456 965569005 200637274 31890798 711553264 27243267 634240620 663376862 352772067 770640928 857009179 988592199 214272565 990776792 805909154 991930385 199591532 623526331 728360190 890876421 102501041 624446375 741369006 66330042 383769202 833301472 429804284 331895967 670989236 173702444 902927267 632931101 303802220 670989236 946866352 825958895 896653682 732010503 813793754 395102862 254622461 670989236 797138793 301626428 934541291 709269840 516021331 321742678 295252966 784461098 15262896 831180002 774986177 740478457 56654740 866206215 361830539 964658627 857509446 762002850 734601291 674969433 587908742 670989236 715349075 934122150 737720505 208504286 993387034 675077853 777272584 913968182 833674143 956942534 14002672 943150100 887919804 834718081 659594705 340792997 295634498 800956195 444526220 374465749 670989236 706225010 594404739 55881022 341131590 527217565 919097290 900268575 404153928 875057430 599908732 588942256 242424544 374276410 955261063 631253064 423475566 677097850 892280969 760004977 449674381 718992984 517311011 732063111 899811104 41076556 41909411 154663127 476086631 876627149 834923863 896491181 574352940 260633115 582867637 670989236 330493074 69592380 504144505 639160897 138719774 227171204 759667871 672307317 995700742 761010324 544687767 107859428 767700610 735385937 96606289 779141343 833452272 85644826 786330622 964227302 795689817 738585843 18107451 900578089 921540903 719261485 573935988 9070989 703382733 819858806 225924307 679297053 944624316 605257201 880585571 316160109 11919108 909262309 791157665 926856473 264813905 490671815 425129908 448454175 889622502 478939949 877592096 851704707 250997157 583298147 883804066 518557244 708246734 618611845 531282969 305995347 73918231 978607878 738932033 168986129 101894174 241324631 868713423 746854002 740472989 139773999 151033604 721431269 726674877 673759348 445246716 871508330 95924434 905133289 946448613 301850592 229523089 556352325 413777448 804290054 865112177 944875375 895776169 714657459 807448287 660844643 506529454 293853350 110911455 371850867 931195311 770409201 625513557 6337103 19660565 708504753 739451945 237517813 607924665 147025015 723937565 418976201 477480973 378150750 499739969 785193047 69716248 585004718 839755369 649752353 632502442 897398757 590954241 967414107 961880943 200732964 765717597 765938426 868282217 793021379 997720118 838499311 949620201 386748761 569366855 346247917 222382889 248994084 677800890 481134592 685465568 255983982 453082955 327765169 59302283 899786414 758377061 296814581 721989567 393023428 145669999 523070622 246734421 323227954 302268025 190275032 461337014 670989236 960298922 998741751 683183929 25761697 333661880 110675917 462016236 927281823 669844190 960874086 510178611 319879805 889929753 955309733 910105130 575547568 758449215 160553333 670989236 350510704 867338911 60737664 39062992 3216596 552984972 696951453 928735778 707466231 396565696 424208845 290567782 747498358 972288792 367569442 101541961 279525801 620553950 218676298 368087461 727813136 986447681 284515879 27401109 298060751 87035883 790687278 755112776 500981675 708213666 269093853 885209975 716503408 927364206 632655708 928956270 749540529 664926834 887340564 463317333 671650451 933959416 908644606 444953804 499720158 846693931 478257141 816638313 929617764 408640741 475440518 931074965 466054440 147709112 827375895 839537130 960952615 865785081 134916338 76321680 854555856 342651176 39725631 417461289 34700724 962948487 677970495 767587478 956082857 745804162 977691513 138218750 205002490 695145430 993939421 588638757 547088430 28463444 719153532 883045790 757284129 231954380 236834944 699624327 686879114 186278952 990018109 414520014 520684925 634428885 546774029 354909649 336420374 990824576 916881067 696491259 573906484 829248383 47516545 607972729 753970678 758343338 784272179 496067148 306097666 368335168 988664545 46226770 982161617 851555058 177501558 850221847 137226604 92586064 7544157 951095 450501094 855014160 720236244 531524437 657404863 745961000 771324846 398959662 562643709 796867582 248250335 444178424 42276284 764462364 786364713 850957466 134439282 924320817 886534634 69104242 786994972 90084974 720142337 463685774 715373616 201861647 492655745 970638187 828184352 35123816 678356954 714842945 797566065 911137474 2609515 429434654 651693234 515311277 868417179 738175372 967623400 306976409 472818285 709163833 459196845 401209335 816875656 804086253 4738459 713320619 274764509 371450004 11528779 587406542 185063257 826307227 838241634 880248840 776724068 127747963 694775772 219388559 922951935 622944745 185821672 88363721 970483306 857318021 639404340 903752118 690960236 776664697 810755541 657903030 405493519 108881407 892263713 240755195 803674994 721614423 227480383 474563236 719732417 552580127 859848778 397931126 380467106 670673045 207615011 349747290 407764510 12231103 670989236 905207710 402928129 766277369 171805405 683553770 765649567 748275270 819939036 671926348 658757634 879822080 467978190 395348252 730354774 468473803 859981160 850144722 583507760 261875439 164726808 408274241 684187867 110358064 965812575 707037324 246608283 62626000 403512923 798843677 544010793 769442541 926500317 793089742 715460748 235067167 218590468 156552872 836334567 89240786 155481432 999857565 28055656 321879655 750184688 68655563 603635445 413572448 680860505 16306528 706870407 676737231 772983836 785846976 604467420 873425374 143058659 683203902 670989236 738518978 747880770 208361914 822486196 764837810 976719251 961782071 681998720 49237414 989320330 38660144 111099603 670989236 982920437 724241038 817683381 698318990 782710042 117959130 855117576 90940319 720375324 30264769 836729475 815787302 435874491 948198802 554942288 970402592 835125548 373305379 560276832 871646039 560869398 195203307 278284818 750768678 187596426 813544345 977166041 66534854 683967238 120462948 406628355 130431546 800287285 940732021 944364037 884145114 838043747 98163115 734627940 418013749 571138472 358671186 147915482 716815749 89443995 838775650 126384252 977685223 38700637 28841011 978003517 537567120 660656725 846651470 898880573 928276794 396239555 876624825 583489889 476320850 805069492 504644496 46087902 587352205 764895856 424372147 282194193 616680091 76760618 508769407 929555387 754628328 331174332 447234338 164909853 714605786 454905621 533734500 675038330 835135660 200793877 776041877 91106323 820037887 518533672 670989236 524641589 658070988 469238944 743932141 746618554 826573699 766816672 362201675 790355942 298257394 788020505 659317748 763822554 973414076 762543853 576538903 924250768 516476605 782819289 744304328 782683049 546141215 788749915 196627459 73965456 783153337 561537203 127827727 612449517 841094492 897953447 486162046 995527656 353721179 180795235 731339771 76027238 686704788 844636102 629150193 824692568 571293139 601851676 774463313 919515612 794648490 663881018 545513663 454316516 984173291 511789750 911752731 287932434 198013017 912653485 422220285 586579070 758799353 909480875 38409909 653293484 773386768 878533753 272101681 359853736 628331249 455458380 759792287 793094918 962749909 957494451 670989236 10453762 809025051 977610801 150247839 910118562 594119738 659066025 697050505 342945049 781800354 938480199 480759135 944055403 14691039 706700077 801152946 697059178 899562920 15907635 874768167 585958656 474296115 502364761 713648428 750340739 64901407 334391001 649275880 822561237 698123885 115655804 128881446 728003683 415034487 916384718 203532291 809634800 887828841 747622460 947037013 139908187 969161551 363751376 860452559 708088399 979615381 742320648 670989236 868814030 749170735 670757293 899472035 173237137 567811825 362402885 7993832 525719810 223512346 822632222 704873451 827810400 839252009 34648564 224226934 253251580 780958878 603967760 949333871 359237032 628535369 477010787 252552965 417709028 688756844 818512352 745497670 717780978 897394331 14269599 847510069 181283574 850395450 776933598 988116609 625528191 988634001 901272564 721855596 49598416 65338826 609530763 988208168 756407325 924352844 935792223 832650632 762661016 548068051 800785359 81704020 145445193 764798547 116313362 750651039 923732797 705966715 997700327 687747825 922041885 491319336 998199233 583109002 744799609 826691789 638226435 813928623 761688708 986453443 705696829 84957156 858356523 256244638 930073104 372287666 772642727 411648134 62477363 954058222 439798810 481805653 278037867 355532783 993434366 605029491 356999472 590036254 546788000 731535203 260213189 681699161 854677433 188495584 702620557 156808582 964855246 183047688 825426537 628978503 210573576 696321374 553251980 447510080 189631894 540380486 895660106 935619084 985482117 974790637 935727119 587447142 207350978 536288576 788221865 919340896 696023039 689837523 806651286 284527278 899829351 595474519 745368163 861977503 69317487 175392664 327443411 350991073 712340352 956968780 233603078 60065702 741171851 174871240 813271827 837915494 260846753 820911622 890991428 878203435 753821935 711993581 842319123 136439969 851488562 119304076 84464085 596938755 49876355 539744916 670925099 752718466 35152134 11698771 230424758 174320565 110501588 85924530 750000767 830350874 845932401 305839070 333942156 859170335 929703114 399357507 707672500 80219001 700050686 443673395 279291194 915587445 917519264 936363224 93920000 971875068 807715226 995325487 764205031 627031603 71762509 379578107 859684082 938580833 169819298 899613695 730695028 758062394 346769785 261642908 627474127 341335648 866675782 888191671 670989236 210532032 210402141 685960940 670989236 91103466 210281208 795500777 80349204 551670557 139448528 531339878 836746648 895522163 371475145 273167236 490555082 826084398 333079605 919052770 917838288 979096704 29013951 919178744 221566429 840684006 621286982 510303691 225198210 526933191 797321173 692100735 819943675 1441682 761363744 479151841 971608286 478519161 76531171 539846684 981070140 189248939 217756193 512762191 675502381 692787177 183655463 32903350 659728444 226955225 199215432 695689855 148095667 602967234 577716395 220425161 419959237 883911965 391743445 918771625 523018741 325833521 294012798 684120759 695921142 475147077 336077587 7970587 861144966 667315858 961898814 806118020 983351182 884278617 335061059 700813112 584702118 27484445 689030380 790482627 730985553 213662796 450770143 575984492 825148719 462250307 685155233 805493797 842170901 526491974 921062499 726143172 575175265 362930534 910817999 864626321 749197011 226394721 268088090 924612614 466952596 305944168 713087221 187134610 256431235 850926898 731962808 210754097 763537209 486673289 863139210 979174244 710087217 543468853 818251346 304489203 763619216 159177551 853032792 39640845 149945015 131797173 709074526 381598701 999286876 645254373 552808801 645462598 774081734 545975710 186438528 147596585 955955144 418264580 311882183 262603882 899551437 398823778 710418961 670989236 616733141 687595352 293518614 958726487 142582828 943571620 878377286 915246242 384045053 456411324 890576831 783292683 458089516 688043572 392969916 928678076 990741237 203127108 257262887 816407759 122678460 268687648 812149881 695541533 385571499 199071661 624299978 267407056 620318923 992275515 600827042 874375502 702738392 619480163 459869281 371760553 959742329 43730434 829210083 940240812 710938969 391726423 319306156 105307210 360517620 235089449 1905505 111999226 721014553 962760798 943811642 90622577 917165873 874115183 887855144 893722270 254243202 721550483 493126760 679260687 423088316 584951034 957281456 481387337 343580013 835611025 772899735 615275129 224440742 833340815 916319578 476331102 804108129 650538148 755784252 540789220 844135131 456785841 53473087 10368555 821776529 709165969 834785176 713312425 780348891 449579801 862451482 261418360 580134718 737469581 983585259 223647312 581655602 764649043 197056753 596799395 392607107 41639993 567464978 544978002 333330868 806682160 986170335 725135451 733157108 874743919 482766781 676403654 299785821 689457628 299057357 701902633 557805066 642509535 709283391 720012136 811615160 233861316 890773044 647468041 801252048 383080538 6927525 872830572 522251790 834611029 452413290 341695564 313757996 617733653 875015805 878228038 790063888 899140924 329059952 888719423 471691240 891281175 907492933 398584431 526528431 820859640 964223735 116661428 790955218 848587452 586338722 670989236 670989236 878561328 668284847 584047704 916081386 894328072 668802657 603034763 477061165 380841213 720350310 624762917 70717784 626833873 871959310 545991924 132750038 683201328 948851319 664598604 191756881 111479994 993370955 793383242 714231514 875880168 914825626 665506546 936294379 193342795 923241854 239331750 174650154 210964651 958411322 779225099 119076022 932794493 960516561 829964924 824456598 99975825 446378035 244526950 169452118 381423680 156362628 830594224 105506479 296887686 263524674 658644237 138012465 890872542 181911483 122318632 699321832 913922872 478436847 150768233 950658535 985815573 849689246 943178644 878187987 646749256 967178241 775348283 708468865 583661083 802596980 352018506 863125445 982571273 420556160 770237028 913581377 778775558 168724050 864195148 207063384 718991055 865284368 520977107 678408838 117362307 18235219 751411779 992996403 94284408 864771770 792029155 995891225 995392540 786655743 814715525 901923855 183186004 105647192 638443150 929382152 192375022 454397379 553578660 986328257 566569141 195981072 432474352 730236941 998707822 700512105 742840362 378718446 761018947 748798364 699984982 757762710 339976502 945263515 450836852 975337383 726997557 688919178 44557907 850530357 886757042 864031157 720793855 563785756 942630008 743205871 901554773 287166452 144934678 352153563 862271092 339956249 128266200 670989236 546620727 886384719 550914438 737434038 696094612 878525127 632384680 855844659 450107377 912821418 998139228 741643740 3603387 799838268 125264466 916587306 698847185 785084955 897934772 958492413 913766377 936637312 587227004 748056628 887027604 903985839 42201629 682349763 755651297 444840511 150982384 266745837 753854575 744981236 639221517 207966082 203303971 481382267 533934806 906346328 961573806 71882149 695173830 403819390 244381669 337620089 368455401 508788695 753956748 992116613 173893619 644692566 845077023 879784881 583261644 158788615 623543387 366968218 922277416 958865102 294965926 382158310 585815894 427246771 583767423 537517093 441214773 947514850 812821602 977198861 839055603 953484867 785142744 837148925 653157241 390923203 760553747 288203165 881702938 594483807 936334195 489121975 849500063 710726525 959646285 312670431 183610735 810165278 406758968 808933244 912889000 802883886 994982836 311631799 739016366 200758752 683996006 400760015 873959932 390313987 920107175 161081309 275345812 706466233 526178518 339825891 907442985 66054642 134299849 804543657 906608804 647301660 514549311 884587108 682246498 748838237 674263390 681192475 944897818 103539981 979658717 147493167 346139385 863137437 305533694 314222873 900233104 249692728 322389836 690484896 607255445 976064387 67977831 967512686 762021091 412996084 18863754 715481500 958282895 581351343 871849418 706865347 684418198 377935256 983840430 233830575 25269218 586867440 525851521 930595429 829266597 769529971 814386765 21566563 815977992 830534406 480957816 157068055 682933779 822116270 259187580 613681245 670989236 652634303 414961681 670989236 91644857 670989236 521920575 206715489 789832005 950964257 235396157 417625736 991919279 965427019 41623999 951755531 892824686 868258177 828097747 293241434 444716861 26062615 512554969 848415209 913980727 680225205 703312001 642217519 553536968 840089205 859128089 422002000 807556889 305457894 919161786 929854681 696188962 125840260 677257669 164278560 753129606 775373821 790525265 680824236 510270251 802618064 451517558 527218183 996586227 50196453 296251939 397943730 959857284 858064060 971035198 356750022 483819108 501943032 421071551 513901982 742162778 120730267 704256673 670989236 904372596 751683162 877660786 875897014 311715009 790446381 106048793 191348911 675366462 747924351 970474409 211267085 838568116 913123183 941704808 1984876 843487688 885985610 802493392 939984596 412792283 571749861 3161673 787245966 773023414 956618690 616890883 148243197 977978529 672731859 364390908 813925072 582691889 558631043 897882852 763730187 345786613 551650946 709005496 604137653 841984918 82001192 706937888 20438931 804389086 675894289 312915445 699311451 675810702 728370163 878395249 766292372 305033076 242540269 380707589 871213690 581418525 92711587 822751453 554336585 670989236 913625678 307639085 767536825 792310527 899588859 247860842 988885434 612034908 729539401 134182826 678984697 992417244 749409074 852414169 897812636 811974809 589930801 82887327 465031887 661869927 42980254 501240094 80351034 501530822 591073541 659704381 32257302 818786624 902054503 790404822 197245387 44353014 46222295 231933623 711046743 809852345 958984451 866899127 870031100 223036847 279760685 186851407 112443090 272186551 308620120 1374600 608336376 953082680 561078566 819964695 100192288 421467852 997602477 816147485 960433781 618814650 401506709 63029052 702725600 423904781 668561537 562899651 910435463 29740407 819137293 586576689 255539906 676695394 787502555 529568695 219734408 433856057 716523393 298199282 979908516 758882988 863666006 808963884 802720149 258206410 31867355 514099360 984332978 908266309 518332487 509177581 704708932 296062568 392828400 683423000 18239541 140253449 684689360 506249407 850864752 793098918 749483651 611997881 694335117 263840555 716445909 808431828 166899727 887409803 904963492 777400944 100216069 209813408 847836267 468668934 929165287 791800125 343683823 46972262 95465958 918676519 790390057 996174316 791101297 205164437 975509243 405705052 598831291 400006033 590091422 913385128 974574308 585948870 276267590 22345832 155424123 767321184 494607617 183620216 190751212 34517049 914900693 585249163 518024971 762330923 574916676 954451883 601658224 179346453 877590921 881853364 709013582 400159820 916270899 31095558 401669019 239663271 862319379 767455648 856482361 430574469 976727762 688189514 436276878 555424534 913517043 883102700 193183746 27942927 249741484 979118997 772264533 161413065 31440909 484088753 98125674 460879384 670989236 390199657 297436391 122140775 423671544 440536790 283667635 10648821 737619940 543902989 718002496 121205441 870788512 43923109 177714290 738132636 725610865 905198242 816790475 964862011 845940622 341507511 950415552 669823618 417363721 199057244 466466667 942710510 870990040 401466219 841415576 186567814 906966739 633197399 969647832 236306335 715400602 819267945 382616611 202788489 694971857 984742200 938249970 513546804 858636099 842525215 800577517 710182257 296523134 415625046 221752892 825755755 349614538 747430263 349139078 866101388 907244567 912944283 305301314 645666157 974103112 605157322 207911614 29561474 670989236 835804929 936091863 25086851 788618325 998549386 905865513 163005590 860265116 756532664 942971846 522887812 456747730 889829023 997563519 706757043 366610641 661253599 403392753 990090414 983889694 672871540 312572071 412372267 761308072 140231293 15199166 497767535 540363162 99153152 379620599 822838782 353447718 897224308 521315847 676681941 571739444 803628728 158828852 143473421 279273593 921540415 823338033 335244186 382785997 828186962 55258502 980551353 399732549 83114731 777783606 740223447 581559702 395494838 597088797 986911705 920025269 689586324 15325030 716625250 431126575 526929302 626311500 700244019 675635709 498139459 352025371 670262556 376506415 798415599 962915553 963741427 774654813 168521210 699261472 821699165 976664539 997108619 111716715 958936624 357838702 664652497 578776 840708920 174139248 256018536 19697592 78831761 273809679 589236117 670989236 790004431 16340970 227659877 247521332 875246039 475190245 381923597 906498854 92510189 495294050 365117832 949208709 751672517 658727738 395930112 704449467 39682057 696527581 330449985 765732857 72286443 227265186 635530004 744865180 847917278 192047642 142799488 277862526 798303355 452567983 242732463 580203475 453893432 165584112 819050476 875012147 692167821 252745379 462880480 67901699 476362702 694065222 924270653 387321714 747958255 731032865 815467290 286436041 55584783 924189962 350637272 912908573 171911859 670989236 634771170 862906021 316642346 162793340 324641999 520134386 596011934 938683016 970123585 690120443 389050951 768118393 16294219 930335086 187911559 190693270 653592249 775812798 133894984 857867570 721367493 488118434 847584173 975300925 542773860 44322485 826763461 720306049 852412287 176986908 651537184 916358040 952101693 246036449 921880937 844461265 901717618 704320737 614371090 114255846 73167989 784427482 923944709 877798820 822690121 716514430 944242684 194084269 979465037 922746742 973572145 773941580 670989236 690041529 991106706 919616447 738122782 115408461 954313853 534829372 367628300 924963543 813688521 520381431 735937425 563001866 47713435 983867243 929230998 770554717 15577205 927115782 884985600 52679169 960234600 605189372 48620360 929532461 754863201 606541 267418066 163674618 474786280 75841277 910401328 905946508 607738063 899671088 1814868 904691609 611902508 995848487 194952101 766553470 100464474 838170807 771171283 785147199 411861963 928784060 299228954 316799138 994612281 956187880 65588347 730491638 679504268 179585384 596843873 231639056 855334785 272070629 994389416 774780486 498496590 103641041 280293532 565802569 534822776 698549779 600422668 811222560 772669494 946568310 998126731 263772540 721241010 881229158 870277432 424078296 809452780 2075328 623937391 781978905 416386345 69441577 427074530 342284173 299335573 607793236 869100914 958609560 228540034 622869021 40554057 952410800 921952350 732751982 738466427 107530111 121848450 862922403 400429099 926345695 555664281 435042798 921887964 363077449 767362556 900851101 223964669 8809902 167741683 338793031 26604097 861447994 971602750 599390078 137150179 20629212 972710652 754027347 254101972 932637950 410133253 420709760 810235272 126204784 860646745 767598330 904928489 291776966 711843402 198727872 20059423 11414171 721487739 975519017 302802065 882186473 603466301 911643049 839066533 182541880 123590470 774230804 886723444 299207182 123105755 163431585 127735476 841547350 905712818 138211944 820361276 797126469 733318855 665289677 119777204 686668195 403309343 835137863 864198465 827585788 716396811 299127354 863715885 912785517 210195989 905216176 816994699 117369973 291157656 30840355 916659034 294821687 614554386 141046822 290486014 412152141 99252439 895565065 439830478 694101182 275434414 841537369 644950897 179806045 700047981 890201257 629266911 657273838 691233266 617561461 903166768 742258001 826411303 291874390 357321451 925638079 846610803 503204159 595899931 760487758 787138421 128703476 157941322 10569472 652176934 889249675 718143456 427606424 751706892 670989236 965202028 440215107 869278556 406509751 732609468 873147425 820754613 775166627 687635498 112991550 528332972 322705057 704673165 915912585 419568292 176419388 103720248 938201122 799560411 687412166 974338274 828816773 385016295 670989236 840294673 693024231 201805058 881167380 775772242 295811005 704307657 961821444 981894194 839712875 403994299 863142188 991057783 203813165 715657986 818084361 958243040 785074885 372980168 832140765 780438665 881415623 753941833 835658992 990832878 198644287 574012160 838437656 319096143 72318761 749704617 725503779 162426992 275420727 831845546 955842703 429700161 877697661 606212985 122456376 458470876 759382497 551731368 292831033 804924327 788011337 269560923 947690865 676356943 926936163 787615425 620808155 314665747 777013654 835420578 636748825 441580615 669605807 99144037 277656352 957033360 805023047 704129257 765316171 649259781 813700957 824242805 600898532 670989236 237964116 771449126 740524522 42242630 720463567 497022979 513522404 189505235 865979703 827688238 566797140 496162355 875868689 853988762 264788109 783166045 883729015 853480267 990550810 338825790 177965276 317527369 824441234 567803426 982464043 982993258 782660831 913427606 885237565 67443137 880481125 795499156 770518779 150131139 41036136 912104494 819023673 20581322 995581638 201796837 642063485 291385344 820426151 582411869 900474139 722640308 836453026 419596265 240859460 1613445 967381383 322350373 675923285 915029806 751000601 967783940 859863619 68183010 285704331 697386978 405554771 633282744 921636559 219244735 951549585 956590514 74902331 721496124 884219564 65177090 330063185 782169281 513165601 497053084 629326209 47820180 158433094 138206257 210213346 97828843 557330182 426368263 371908029 338867252 938990488 419971256 410077916 950416286 807512183 790346490 900899252 753597918 459881842 49030451 423334811 994252261 167881570 589932310 50305789 412647406 15183197 113992958 567495412 997342696 690621368 133595929 191963300 835604258 849769027 692552651 670989236 798561825 636438591 954832367 569871428 33582957 887391480 789619819 996647326 114921442 309822288 891961485 938595321 853070422 141136174 134494881 774067804 843614873 795673687 927498204 804805362 713795763 386305650 937609526 654822228 287230400 270394806 700017101 532312594 245636231 813983547 13079130 938682185 263625135 230015125 587309089 670989236 166581902 651897134 177716039 298190744 980198628 816149390 839640009 434369466 861926865 250791202 931619622 670989236 242185158 902071164 937945363 973211077 842473686 991546775 925186553 892226559 783361782 793784848 920138554 246720908 721364706 433915007 848296448 689158054 402470133 139734452 46373721 794133437 775531746 790964759 916098608 189672780 133645728 709903240 392150022 458874103 108825673 750233512 616474848 637753088 997890591 106373315 96292731 580444395 982058855 934031290 643504685 287447784 605930591 289902158 789341873 828443126 200339595 60928478 430215819 764892075 407453972 947937623 571399290 672700438 855367925 68154428 787616896 985866516 855487613 274732557 58367972 962960083 878251182 673082471 30904709 192546652 972442170 181020373 957951087 995861533 302424472 800751762 671920360 863699201 958687841 505484006 769447868 194236251 4987448 942671718 833031295 761536163 547016434 254735175 418200228 188438003 814908641 278639442 226543593 861594131 746786781 824439194 418063117 913958914 700555694 916887468 681121764 855245608 476703707 130017887 958004734 717198039 108569931 361734535 320147204 823042382 694102744 111284956 879033203 664203517 492721286 328401066 982360305 875791120 898258471 813728714 156002403 39054124 208339056 528386050 778495508 553529596 813005049 987779933 796142700 78973941 572471222 519333722 713930480 980899980 17060529 679151782 696344391 264204016 214149897 769703267 868116532 951444545 751266596 299775459 981513326 396396177 728526606 377182448 839465091 147725738 735927375 613401401 762088978 885215717 721807069 767665136 931838719 504935256 865012651 962101986 944478568 187703990 563583740 489097746 843347154 785618468 772107340 863050844 434214254 916236728 883017388 986355823 946651411 200650194 401882530 873919070 241395738 784268128 642417383 790241837 784404792 91267945 692326429 852236119 258504965 613783060 454210231 175960804 775904092 675309463 262656271 442546659 916386999 348704633 546354576 178499425 493426726 917829821 403266116 201300139 399462078 819121839 889208048 595674532 972375181 800573229 992027593 637754726 658428036 382154099 981804622 743596202 308497623 659402029 765801202 610681925 638430272 348806053 938565380 192967056 992197119 982679962 394783868 343091192 66667517 472227877 796455449 242614856 634970354 764561910 313876251 906345079 842745414 174367072 499240746 62977674 837536818 631118070 549021222 880783900 697702557 148670627 409760224 856204645 49256563 858608620 672409715 886707818 468961363 493077789 227555886 283311557 332432529 387188591 313495884 254948890 689963701 812523493 176121426 878581440 488809974 527065253 755253525 513498399 884909042 786090164 205954291 729714893 479752151 658115411 884061546 875517275 603490834 613288963 294868858 574332952 751308591 710293476 27829192 285034767 760005919 702563067 922610313 602607157 594338967 429089167 536800945 971591735 591105447 97832376 365070684 387838596 984209526 347980202 484401738 16638620 670989236 739961140 911166148 194720465 806688842 245274947 251426052 737975853 559603210 938691520 824846428 929534579 653406549 352083656 694978702 352232452 192266171 988075672 560023477 94817265 784476348 997052396 106316895 551029569 742821340 744857732 803008071 758293843 167478653 356813011 991288464 911412181 897427296 55479849 927907055 911085078 922032641 466384285 553940883 383027487 429341811 968714918 268325228 893890255 990067017 951569977 727639627 152915745 426468790 40461146 747681021 840842304 868294265 278336401 800998204 744852128 104159864 732371596 830311031 264231484 272619864 481206208 446040447 301560755 134429580 723813508 147414211 738901638 217365671 997303544 990206789 616366968 110306687 919591214 118298491 348208235 117623276 807431046 270908262 300491877 854727897 446798279 901336874 699852601 153787216 928132397 803695508 525378003 748471306 812035429 819639498 875353682 244931211 696553190 55108129 964123688 827430431 961207917 409681325 943852379 40160269 832181519 95823206 300847361 489294797 973240878 59471077 8792743 882530429 31683188 295319815 849746321 729402660 702750082 339239958 401566212 754565891 347416582 40038335 836045532 646938063 482642048 180744374 479231599 281930971 297839569 865734992 517652608 952928324 59583711 698771664 680194764 645376216 922622947 760588473 613607066 279909529 681505858 441067991 903988170 867711998 140689412 153776671 965222538 940335663 535185616 889650129 709283944 670693441 800322472 473507719 833402752 686300145 997076061 937904543 772774974 553627370 521731438 858600147 568319915 336012025 838025923 945985170 979284708 48565726 474796383 946152747 506003532 696964298 821452217 92124669 522825847 369753752 30970313 554165569 727266139 854183915 694091343 32610551 720348654 743098064 974093644 388609599 717083638 763702156 538428224 831477157 681738218 435636750 887307772 670989236 348302565 407494261 904417126 73388473 339150958 470737965 863417662 833959609 27480814 696835642 821472160 846162846 799435599 235960820 765648494 965443867 83061120 820513099 197975094 819750311 276641422 947763985 979323105 432576072 628210469 668447101 66867740 474292368 496060356 676392248 290116595 351453391 670989236 670989236 688848004 681731346 772469842 284640392 650885955 891032421 129939700 444052145 722637298 315955155 751533323 326493992 716729708 955868460 816874827 674147417 402356682 754235351 766429736 422326352 867043120 86347544 816719977 764720620 863873837 340468705 959815411 889406018 959569216 697313861 340769674 844692433 108451204 381832913 693183478 806120319 578051368 944673445 778062615 260244781 1180481 906562313 257119077 331291783 772895599 686006254 967394064 506079195 885982529 917146246 657643507 733046353 843980175 602673637 295127141 761559713 565970545 570178519 670989236 482583078 606109141 68700499 986312579 136902284 364638704 880806969 91503730 948581342 814210372 565361309 17994547 101642239 899046116 11623761 724228180 794138604 288807130 883320896 670989236 698055426 574076975 317456907 781769943 727133618 216372686 772433388 714409651 818715434 898770234 869630902 942702355 941707531 849762529 746931054 769376592 753632375 171351199 826311403 223171643 643893507 858960187 6727089 742339033 670989236 749727713 534877143 92642036 766520178 914639543 191906593 779415206 196607843 118086254 821901972 790536839 73927833 562947454 620957926 539178679 933114755 382686525 345753310 324730689 840100819 790431462 830648266 971201972 70056335 346842687 92890939 719076655 371909638 763940126 319883552 450356602 899670081 698444482 680800762 871043952 807876337 760061842 776865371 231968897 881022751 964537587 863898236 292406025 844082769 441644869 105222655 920498539 858331354 544872505 874113371 449197632 440279728 926954554 151702134 742808437 748174586 508810731 763163236 663061000 887277445 77972518 858499065 772330499 898163623 782709904 503085353 887023075 968235223 796726931 189064198 160505736 978092778 853949915 44088490 838590843 112523653 827524903 729579675 248013226 340256542 679491534 283216256 514247538 344018275 813951959 773017459 924872182 982733858 920651912 284534083 915073742 754185662 675404796 672894654 187102802 572855354 851343941 882731823 265896497 627876000 589133466 958163224 957312026 911883342 946558697 551314663 914476466 165888560 217302257 577985556 565290205 678780187 99298816 129184075 737127325 907248478 523702087 339126014 267316227 418207683 789714902 809325580 248447797 877855404 842050366 176339865 926075637 843822607 451980646 358744371 937719455 157094936 887459610 599921936 406207706 533684602 894498714 426617416 222048100 670989236 649176190 234929044 903082879 623430407 541106525 930234551 712095063 907113677 171869836 748252008 204265235 755858268 37478753 3969088 737545539 700206149 677805690 670989236 300051259 534281244 438143795 642976417 833480022 140881713 982094222 512663386 496785816 794554856 348749869 813540378 543643831 631303552 718755737 792915748 782447245 914794824 443711657 818053436 130268690 975075100 632486323 711437483 86132546 891053047 717954803 948886247 246791663 833078854 56473887 499205665 362930477 638124809 989641172 693571244 493534898 807307386 492998570 476850563 530271251 978811858 712247356 914734682 292684851 426092178 196924212 923660192 523338098 128988157 609515757 538489744 845799373 471964954 830218599 716157504 599158901 902423280 584318076 986309602 32577529 170360362 858475074 969632884 866962270 251649247 388005677 866765158 877077972 928089168 189582976 324387966 181053901 152454572 131243637 269536412 812606795 739335104 926401287 865324864 270927662 649217452 756889873 597723743 106927379 718996023 765062939 827270931 266094213 796268537 797081620 635042282 819546659 707099798 701633424 688494269 506734477 597725913 172272812 864101902 771525922 284622610 51942223 477352474 825542697 273689427 842887066 155158752 919350621 947545319 905162377 789556716 828310042 876782778 1448315 348971262 980800882 843070591 320521214 563004308 539790122 259112791 58807335 541013092 224164636 489055149 985986322 506119723 166105538 775509161 768445313 900176746 148305967 902585589 828068147 721836914 993754295 435585790 250380639 967965257 952428836 741355206 783472529 741136791 51964721 322268502 328117665 689226347 11308898 703976566 192359995 768186796 494226133 906037634 788904369 827220907 816321437 478655708 943130798 92944531 302883180 711123672 822596148 731155937 729895722 897591479 39359873 732545460 801589484 22490546 810395469 338189653 969875664 645693967 838833378 837445019 824728494 827274805 432992602 211458826 695797928 908502602 261251825 780453778 565571681 551853162 880871066 920882854 272014719 815159676 862231550 914378312 568597564 662454969 161172837 880954055 627335438 736871819 353271266 281007807 432979814 288824098 3092824 564159542 342400128 307865190 768574066 818251531 880222913 201743376 283798781 260527420 594593847 102817885 343427086 7808366 687514612 919398841 50700112 681706998 321241466 836196057 700347765 845275273 473245849 435312385 88563232 425808246 376973196 871898819 780906891 955058420 852683320 740833331 717994961 989663671 287912004 781485142 491856746 507371167 948160185 182350845 891043014 835219613 750303781 624311938 996309753 745372448 978590629 597567407 847154067 750968050 601044478 147389685 560638226 196762038 710113590 847701156 970491884 856204522 630116062 530444505 255512852 695938327 951091305 77973723 817390707 651699997 579928020 24924296 865290723 216678252 611175077 330976445 386277126 454302253 398814718 778148493 64257785 705231349 428037847 322432391 740538279 621928537 698893812 935899769 3416103 370300956 606695099 833931346 731962365 631289091 743430125 325421587 867618600 902279271 468384689 787615688 676166075 899718338 469712297 856883830 597645335 436331114 792889733 686608988 879327946 732906974 784926211 270955311 912075711 29637967 673107404 717610564 448052097 677019428 217934081 253252078 119564872 871560450 495665737 738853750 442918174 371014009 879902641 315418487 862782938 938792861 567995583 272489135 420233076 730257164 923158588 718142059 558398471 420317832 848883770 162505729 254953556 714804619 791477873 407806239 58566810 903737058 672909488 128364049 931858258 453433202 469838307 913277201 207959491 717404277 870899265 869018461 982146185 441684069 346039588 392272016 733156631 701527260 228960569 790854035 861458981 173283346 693953417 316122684 734378107 870811147 494410756 92395813 616438986 596837493 703773469 922003957 210459220 35574585 780346668 955559555 925938842 720423451 808491010 697490644 782351586 828283495 971209253 581786550 672948568 213226535 840733636 486192477 785053379 186962613 463745727 152612377 749975744 400286425 498093652 589117216 627687480 52817310 919510387 834422134 490454907 869067813 591254282 783342536 762753567 874174691 667823422 739368707 630304541 790950520 656537321 825822576 187929738 785116233 79333843 828241377 520706613 673974837 798828850 953049783 717263184 959617602 864707292 434302230 878788318 288156998 966601580 907382974 864635385 600638066 920045458 167979075 573674824 44397926 671890230 42843439 363094272 543866150 978133248 971538052 285814880 46137158 953971932 731704659 845488187 896548230 708838496 580722534 972977010 693453065 630544440 114329554 316981447 135720715 913148602 39616418 975935502 800470154 281740658 689615648 513114336 813756742 723600958 248625608 722189066 450143900 722922884 886171590 696254231 841383895 967658915 947260131 883450899 840153930 324035739 176585266 348938912 670989236 345706438 615182259 843955311 990299042 696270434 404497315 924963041 662959129 4348266 991431466 603975523 156166758 212612455 40614295 390555423 735408813 511108938 361452675 706203013 489485309 296925935 141435616 615161631 163289494 845920192 755603032 950445594 565400858 593742472 569750611 884912862 670989236 597967624 996484740 292034773 702740145 105349201 139997282 842255955 946845874 525709328 475839194 258059281 225172474 916096965 486637188 726819639 942825091 836431400 583174782 445270870 142777514 625029585 286781096 445293582 490996743 348010285 674287953 309430523 295677809 52797389 560775410 923680232 591272426 123015927 211695698 116705368 241121243 615705740 681244920 808237559 969104686 114221064 31340949 360257568 778614422 791810382 112322828 856401110 851418270 686095529 835102577 686800146 887428139 474517889 876967466 872546699 765380728 416186674 146308173 392729354 108479642 549068787 868878567 973928986 397210730 768802020 749199912 410556595 967195572 555750373 214770287 527937711 273063938 934953920 197748011 860540643 349017026 795424140 707282728 455355482 176579402 788536067 987703589 97720840 51579454 242440428 682489272 155256273 796224490 947381061 255899258 117574252 849888011 503457139 70947456 435163665 318896123 448836537 998510839 845643295 199628985 126997071 146877480 152080494 309549934 982405015 786292774 291739757 668672589 996228878 972551877 563502980 78425084 803599080 269127022 413126295 922933840 283649140 79902872 815391300 540242861 720736520 779420624 949048928 14112624 513758428 966977891 457816196 705997619 722133914 663391524 29397696 479262118 560337367 897549852 37235659 923323070 951336804 987156453 800814212 920919570 22858535 922683457 697988500 967311248 815819198 837096855 998419164 192646881 781207112 50351872 677367199 837868309 170520058 696714093 620387600 300619898 332325493 947769521 830206270 596796452 754702104 842084396 841383109 981673724 825848962 228876199 86032870 687341638 772393722 976959743 472883649 926013454 226438054 63228047 689982159 226617290 286257122 982507263 414128521 758537156 995248531 573964801 228784395 289423868 737409205 741830338 277754383 133826312 741191923 670989236 88845669 309544290 718701798 776895102 720820674 940422866 841693396 561153317 499842221 542396189 876217605 881063722 903713788 991746947 938486479 319367375 334736121 546243233 463145997 603755902 328650093 549571994 812435126 183194940 511493168 387365854 798748389 648132512 319759502 9986226 193196824 830742668 593439617 510213280 342663307 517219712 999171246 669068234 59163633 246592862 249598051 615433183 999549496 257228504 928438499 776013302 917957364 513993014 850549568 521223419 883131505 325352952 222507170 192007449 714263351 808541401 782288931 692310927 345816208 841681509 453549011 671868856 422618827 672878766 7336280 968246209 963139894 786856112 670453277 363364255 132265085 673872777 780991600 311891928 375029748 156093045 354159297 644677014 704139365 760886505 720116527 976358513 598288 642610842 953316881 855623626 394825957 830635139 991670646 963810700 893642647 28893035 719854030 942145827 751082129 893247223 756010720 985720167 45239685 996141396 307133474 591534761 625135670 366531669 78177413 553933289 936662263 190066500 971936766 915739933 868710850 556901540 755936974 704864455 884643415 840158403 133004667 779654727 711364429 846216365 696833516 178481110 533835923 846276146 580959675 198800190 753178047 718668221 144985549 84774880 646145731 818947425 755634748 670989236 973910349 773464717 47337745 973301176 882134818 26090605 741798432 392819818 914894043 274214540 141983521 946370473 987376964 644352664 591631228 78375362 576512342 849803177 837772030 194340972 660971669 294739142 507520320 358544880 651490990 932823439 735814943 548390725 406770592 639569244 364761504 995767886 313767658 820500267 757067071 746399187 32718882 779804460 192752943 601661512 425067192 677828885 143806075 775482481 969692613 708196923 973300339 732107946 771032292 170071245 787378935 764740784 821281460 517294232 671780148 704663780 898343243 634424474 802826564 837973739 923935406 733499889 764871065 789548223 417742603 99893703 816623300 630471548 268568618 103602143 688429014 814393310 107863340 575739315 680999714 981503502 605973459 901468975 446703266 995042870 160704774 272348782 10172364 801977604 480601874 729912637 327373195 792893429 976260111 827852731 373205095 270892877 520663040 584133802 935309414 910270326 572916713 540882006 986384409 486035208 28004715 196817215 267950256 981597875 980977262 940586480 167668732 835007423 926320676 874964690 958355853 85395383 369668589 198600005 334921886 738459682 35899927 730972754 766718579 937073980 277408884 546755621 677331284 766412756 858069574 705685149 154609727 826675274 583971225 340946809 693938096 12679625 971020121 908330378 894590469 613524578 463840252 826576860 26224829 625161710 756605067 736522870 819267559 732988690 882038107 749719728 7740767 865469594 813472023 750635589 870608740 670989236 825081398 327226501 984940941 741967088 106624505 265304753 173868734 301824287 923558512 670989236 529033173 617172865 874318724 971811502 781328834 718001954 386188565 732026078 716424485 117157233 540003696 216136428 270385964 30657044 875778856 463709798 206708183 617038508 930924390 411799744 667215818 645234603 826036682 951798712 689807128 233022294 620939320 893906044 734943467 103970321 274494430 999667225 905837076 140411628 659602966 460948160 229622835 132717554 700003928 554431247 834628216 245736548 243509333 897133636 793924649 420202015 139018704 238325103 622693910 645402718 902885417 596940921 898576930 865258981 712358561 492216759 64763722 685198437 488305928 378367930 477361230 929722856 855236338 827870311 468334336 602680490 780696238 881690300 673877837 808924163 733766894 708111125 523120599 784854809 133067797 874906457 946744169 663233891 655916468 814118342 890887936 768230454 387562471 410942091 890164403 70354928 743776873 696605838 772495954 852942147 561785364 847125725 144766910 585422670 777164265 974976253 944948111 982542591 665438460 985985552 672264978 49408139 880092769 927704584 545377349 525025662 832954012 801459474 772712231 724593567 936816698 638980581 162210171 438727444 582179888 79762751 652478290 223503081 81745222 931566176 673462135 836327456 624650708 915224698 687687823 857873993 689692267 650156561 968908940 708686927 173753443 821286503 713942766 607234876 8052644 942307709 619579155 528991324 312297612 295778141 489639233 327692124 380606742 198590822 552951738 670989236 524104077 719957069 631279440 337176698 732252532 964421662 988859391 565203111 653947277 642381792 670989236 780355857 237871846 65797707 957061774 251683892 840965356 690923250 196302968 976815241 515882847 935999099 14236977 973631982 943773787 745241173 503662639 992583095 634820699 886958654 492153548 851211227 931511057 39735966 826762511 235602092 467250760 280738663 936934472 502471153 380711246 681669956 850875414 573213833 793266596 60804455 309650354 892006746 956929318 889881278 416068264 841800133 117228862 834399275 247295162 747322254 654120778 805404227 966280837 84921144 643007718 751551058 709212932 76346298 47176736 355212696 387984818 627009173 924682849 212430063 6636101 798946362 790188268 842510187 404612836 234996022 752231826 961467078 212826734 787974530 963317881 892517195 670989236 89846866 200856486 865658798 579936300 551014645 63369784 863759623 438145118 670989236 805302324 984302238 842829978 406892869 684606852 987009115 715226812 779814341 771111167 910760061 306359057 869962213 731565224 731809880 232635415 770692146 216323437 300744715 527895049 613097899 933323800 728264435 516351031 863612958 444055174 776761646 920519732 675493579 918264067 935512219 648476304 608090890 109323943 805947659 950880205 639817424 919911370 453093877 909599293 852400714 438118991 561083502 875497075 295962308 205343728 199544470 874104784 748905079 169500829 184002505 336561735 32143313 819920404 772780096 369000951 747149228 271084957 94108223 475239567 737738096 344004712 946305593 995421456 417141727 751320507 641535222 440336364 685779400 981699196 471210462 553133700 114400304 99785888 846901618 151821703 166687850 754486243 903450074 208164507 898071630 412770430 355153851 852818241 834934820 334691607 187979957 742015910 285352921 667120900 130787378 919722319 941024958 670989236 489331121 999930305 561966042 779432181 880431502 978411616 905750996 963007454 569794455 595569315 432863719 903677367 949760434 722797730 164323304 91490222 927163357 679856639 890450813 811433173 989260659 931920708 880072810 888404929 794139890 775786649 852144155 786435193 330164851 477838222 786095911 207431438 134585490 82947256 38582291 990146930 909052911 159387031 738201306 277112406 419213489 818598713 262205893 896390697 842185453 39380451 698420769 74409780 721382097 313530821 224425513 221718566 936147606 985493981 914007973 666460996 98561176 983053245 670989236 117247376 55829355 733916233 871086167 776546274 987138589 353568928 608636438 192390688 56178808 299054277 963189268 458529824 402143391 343599816 431158487 726222801 965286559 791618811 811918930 819848495 666465216 783422620 438997954 676201571 996055746 908097013 944016572 670989236 169458573 340402929 148602276 822195303 55251163 831288574 966542281 681323251 411117036 961712030 977563271 369064735 815826142 771262859 551149776 779316639 114604627 915238194 465407113 42686267 858657409 985183942 498051208 655625554 131494236 742200906 11378555 681985911 212564029 278377225 572602848 760655574 785981717 336628181 847487700 830626882 743399499 846014544 752092874 883391634 973057504 736435502 905060469 705036267 214560425 389432912 663761257 677017950 900817067 716277677 980469743 865574666 48308253 972844659 737069511 208666116 81544024 949390623 188502902 118644639 545306941 691160498 951845321 722289641 423815106 228718771 924206889 37687570 197960204 14766707 790363837 780512646 909688776 826695315 270409646 891280610 708827682 787744807 852620557 791244754 868746024 678077494 663505617 773343889 650654893 784050838 745990127 39078481 939364509 361561347 688592959 150162514 442107375 18536510 5967073 494221307 834224476 844207868 90093742 174050258 765972855 962497750 750488682 582615876 995942375 61073478 660518964 744515404 888259845 815449953 963453443 670989236 134877140 946791394 684603512 754221885 502974525 780517141 695029315 854617797 877776291 594918069 936777755 902570405 867031714 381475519 121774965 749514653 670989236 481483345 795707704 156519681 669167047 299110995 823163940 65413446 919599784 767963514 867989286 336315060 619417478 278892883 926019615 701899133 432466354 798606344 124379335 965715144 56059147 757096562 7176507 97703064 670989236 874320283 901591642 216489447 680414254 4938880 660989665 421229436 915174750 407631679 380035524 969756804 461680413 865409444 858541925 778416647 543567636 422769480 67164761 994728759 656586579 685176275 384371647 957000854 721952156 731155820 976477459 854536236 727906933 412053236 758708185 594030993 922385408 632607238 320606790 766323882 954648241 388405499 295823129 322044341 887064739 797421462 183442814 454870999 58335029 980769388 359479028 643916851 815005722 736586101 43117130 931676461 746222851 129293927 494248857 100640350 116901146 395933204 611418038 270667028 856082678 789758245 724023792 259400523 164467885 428241599 182788029 285845986 763823651 994394119 790989588 792443310 749109611 906274391 185436866 756110480 571718197 930767218 511339892 963937272 818800174 136142281 518978102 807133665 501565023 942422808 108589797 887995436 777688418 240579183 197335689 359823156 214394000 996767174 353761983 702048240 453781322 780484436 125204729 934391121 78373275 841933041 347406905 841765195 754879600 223794386 468595614 323437377 107909668 803112618 720347245 918427519 280317794 80452010 793580851 899032381 880094699 156857101 686289439 339292641 724106419 898767040 686429642 670989236 943299068 277785834 564205988 831771254 931612936 977288488 280281807 16030205 388864605 865341537 786101915 635065968 251312738 877710773 319023746 210900519 762345567 904383809 749337204 621681647 63074504 659659540 469535447 837534623 134544747 531152982 976623826 195671559 289020361 208253785 178948978 779649915 469288113 365101339 462688490 646552583 936407356 454022633 825460452 697712970 75076467 390855136 274004992 463788725 674806207 833305228 738839736 913073079 574155899 241102213 665133275 785559193 283193301 105909929 175522601 461600381 83715127 932222817 311875803 678667440 911499848 422741901 232413530 312360084 807875646 851713756 940147673 963999563 509742127 154149081 291786968 725348566 253933002 101836384 145787689 375106668 659374245 367121177 672130574 745344743 913266348 688054310 904998266 362067717 820676255 446245854 806052791 850745561 689941751 984509949 272420716 961201809 559670809 597806618 86796335 903301805 990383448 893625778 326313687 871472223 35727939 659370533 717862441 368663532 211974552 677569504 687789078 652490080 671915165 563092707 681768338 788019093 515568973 188165329 698172850 1669712 835484277 622058949 94183247 378889458 121164185 224042317 868831779 453497095 977631429 888606970 895267857 823617657 513683315 701720088 854603021 988963783 328024135 839357957 999407428 398305397 574672529 896761697 909719489 979836678 818100972 460102326 76506219 28663668 69148134 249673077 968399188 813453875 849525506 321373030 273137619 372820435 559169741 829543875 76859281 736805606 637410616 523759512 729721290 874828065 355616691 464852923 415754313 234847570 458023767 866388410 632050514 337481140 752504870 371800947 694520308 418388617 747455981 711926421 64714253 816757630 184906586 942486659 950646239 430241621 530074327 850622749 642877478 905833674 309661027 225946044 933953438 970522053 154089787 393018218 819144345 718274565 164828394 977709824 579887360 51687314 764864341 896965676 470264500 703672347 930512521 910172147 568136160 441674926 106384244 662165048 173881497 474794778 659316485 223856095 883007931 235983855 926294339 157885634 73692364 429751160 716090587 568910138 10247383 137309781 782762424 895963220 710751410 42693864 93502048 395835730 614829156 532976146 874525008 933898391 766094921 851212262 770440822 678789866 102718714 805620622 682106288 645868902 582329465 442216148 550977100 670989236 37922045 217543984 764840986 857320643 2064636 409669003 677080618 798314947 223735999 745947052 717586654 970361221 786201559 16265259 360666872 750719795 761830324 603561413 927010285 731188629 89321581 573792636 950862544 516824354 677888798 487847317 916733951 369426539 135385736 848166209 995731570 901050282 271700280 709050994 885175142 36738097 670989236 407505586 843261719 692679016 586455873 982016072 280415286 552076896 783012968 957111145 960839774 581903164 820618059 995583476 969389562 932906532 795602482 77494173 682014983 815559892 864250159 810587781 976875148 905605552 608462684 112940497 932563876 190542371 619682972 202100195 102471767 36493879 690683838 903766481 358223239 779794901 846043748 670989236 210135495 971279935 255007046 451736314 739301798 896981271 142599716 967825978 501487990 782199932 700113526 557919386 979396509 777452137 995421528 930599972 101947332 370135533 922444860 886069546 881487054 852753736 36992544 693548592 17361410 661344440 931033286 673048651 909566409 256722847 290527773 970901827 269747131 323594213 616769876 783766500 724812352 180798179 607839813 437306467 904050914 900471177 875998517 153194132 727271247 252947941 162215953 562226511 879586990 787949037 45735443 485342492 890280802 861716569 680260606 368594531 895557599 884277133 765739963 710114809 411222326 856300662 851729356 916485654 863049552 529277593 408958588 756495834 577446854 935312318 932225349 399515980 293584197 987544398 877611040 292065900 235091315 27458279 134562877 180940072 236727870 9371337 292899040 936486903 428466476 862626675 542433967 892818674 977478382 578191898 754183860 220423332 751299853 838491374 981918283 840058933 75312214 331968134 107103461 928872670 807521560 152452760 979100250 637552117 536321547 945593540 777148225 297114106 772523006 381104654 817715181 914601781 45213940 961626299 224159111 10106234 188656441 532663336 894745320 185849374 1964928 813187360 522880020 947470055 362458354 345313688 859034612 997008673 552625091 511625594 579705642 932886047 470072634 937871425 910173449 664268186 918178868 601964369 697947063 206804888 571309758 35644623 783381450 685634821 721995845 585546043 521854061 673943334 151265248 280588251 815121193 889001645 670989236 513605878 915030382 537508467 214916954 674627777 670989236 766695744 675956038 759942023 143988069 223053113 278724658 217772947 227187236 956097662 511562167 693522300 401821421 811435836 807004731 826474255 776477277 853373659 214719568 844404003 52249010 926230221 822564772 887950111 890521722 590595666 536453860 144258106 435078351 785235506 232001422 24947184 148169363 958931294 432258321 772363987 440685358 844217965 967486984 854194811 399173002 795926648 227092500 420299880 26236314 932511066 432153259 944744927 372202298 896550379 670989236 940947695 287584233 610896694 557646628 423810300 729490800 850282823 774628763 121798888 741335026 534489521 789710287 544060281 862875719 680079625 867144977 153721647 405280533 683530812 427527370 339634262 274875590 971233686 327571020 951304566 31313982 580416397 677451434 973942310 602212340 840321327 124797978 996162528 325125269 204840888 788399695 678694022 366250294 791081236 588228844 926344159 506349623 320413654 699131601 93167825 598799928 32915064 163613124 392149063 712571921 706515702 13364327 624488701 650218758 777852592 730415861 708216270 957801796 929615846 560632145 731438688 491070531 386914921 865491863 767887877 962626437 801193040 1608790 709840851 898885668 95967809 880502017 137586743 132398728 82792259 839663517 689523126 159322307 861590896 740944596 903656552 960602562 782713366 676732338 522144527 277552695 927928023 757799913 312537996 894172878 305286906 498229617 709688675 744326804 922806507 972607645 938938736 23045750 20981389 232714875 750199465 46391815 987492308 971603845 860732231 921606309 731423257 351909186 955066956 717540448 426955340 982409020 940170644 817766458 576506386 293496600 619470561 834572444 389169102 792315529 478805040 644367934 493866299 891406792 786915416 569082978 697146603 184342793 258016126 955723847 790786970 353444269 778809740 731152606 807644229 845747176 728278617 383646149 371650383 871257373 414783417 165631388 915907979 847031262 86405190 146269802 560252937 642162711 936583594 565342315 548428881 781005332 944090509 615969515 392322322 548050065 825103203 369599802 822078300 897753535 947887299 752825391 121539971 597098995 262837073 746859554 940683800 991184411 691262268 810811812 5092746 994242879 92303405 982081121 329504216 977295742 744075485 952938897 84564306 680657853 162322873 939113628 664357538 629076847 482035031 69089931 435748068 670989236 100080350 96178005 149125369 693767167 646768479 686846435 794060936 670989236 2152851 227662567 384071186 871461544 498977260 163335073 985447725 629158492 134622583 712158685 164259029 133212665 393741753 211890805 877590145 727598467 367854769 138031270 978377213 836301838 795769394 809770414 435771740 790889802 19987117 595783003 330024786 768331054 970425798 806120401 824947692 435602116 578266983 876039337 897217853 979845318 842518515 739803218 218553001 600406792 803052823 685286399 10963186 373756504 482127044 977846093 772403627 631343550 963092817 19705963 856889084 827882614 830087204 189345405 719347019 483160232 622701477 908938784 641484806 953325873 754759841 637184004 510437191 993817801 150179561 151014559 682819149 14067056 682305963 740916544 843557132 771481260 787034952 134233897 835737726 108785392 126682347 790339028 762838965 888971480 331239667 809932840 70754942 935369085 870907116 807969179 856159722 798017970 261825393 980202818 760976149 788414476 603661581 409118316 156150123 202928248 770211431 577677138 838961731 703266155 691322069 733820018 702793219 930349477 615255110 819405585 382138710 748181022 751718565 876147231 804530780 314055117 924754753 794684963 351695351 854638987 429332788 468680088 407168463 782539832 589602108 99022229 988066619 275513033 766332752 595196265 448404965 723386191 951505004 904862653 764393557 627405907 317094761 737084318 541680175 780867385 991265676 821169984 438682039 663187796 674992794 202236638 570370559 236114045 882745050 992636692 569168947 598973113 788752440 791873579 583981330 81116368 344196427 953540173 427493613 805791131 563446793 817527783 955658678 972110466 78311315 189520490 778320508 972914219 687928697 28011433 711438902 828335271 590596565 747152461 532986735 428922275 187919597 348230180 347188332 682087763 396299136 345364020 735110169 864125239 234929864 625552428 820033187 694550850 114052419 45436677 818466978 926852541 733225355 354090323 145226176 757017469 331997895 881042781 563024197 363497487 871376487 459229855 429887861 6736285 782329912 512308825 101258735 670989236 880729318 624515040 938072520 586644155 823134756 815209331 648826117 189025419 761314499 958118886 685019844 881403130 216891431 368104786 592875878 99808221 132539478 374045315 844527332 545125201 674793859 248328960 268825853 682340183 890520328 554508276 834950555 805130475 244172481 807016864 322467130 351476880 746037265 358329250 807543578 937163456 919550176 890636384 164314721 269970381 30408858 773053792 77728102 49936524 634745870 969244875 112348939 552156746 739823647 691726213 509196042 771254049 785601882 544338774 465876136 662047090 52151522 438339718 171816062 855813018 734517261 925241350 848828371 759805768 933500849 632188724 51660698 667942207 965301760 888586018 886453996 81277650 375752499 797820277 497079869 219435017 728433294 909800316 718251416 695969523 288093207 943949640 810565240 835981931 736444560 81069356 118984201 352512999 686603344 911933461 152678193 169354264 99568144 961190901 714731437 533305156 827024939 518736649 918961185 315068868 295091329 496297564 229375387 3239447 786875494 658154575 706146122 426597777 850352713 351764429 490702734 631570996 361250873 771117782 17962415 324963862 83123098 12253037 771550942 739996857 598850006 563343427 111901883 104849601 210793995 459835113 806992974 130316954 336945294 739308499 5742630 499929077 201134669 721908320 181645359 97034390 745890867 674704315 233514574 721532931 708521665 481030485 688733158 913317930 738446614 271959202 80177639 480056974 658699437 750433693 196522916 485384793 207887743 559504101 87057866 854949782 124213727 900518748 794298954 964597498 970238167 963955887 197649586 548011174 853928406 31658727 373950199 441967827 318688042 484198665 676430060 399070392 608567082 235171809 957812199 986338202 244833224 982431718 788027235 990565755 171226425 978141216 980249985 419319467 810328491 140439882 667372700 690351559 116687531 310913898 145407514 710301650 780661564 248870003 897265130 903646956 781029313 704706287 236486616 998063601 22104866 548039797 452007555 799907187 597656534 454112266 927569153 670989236 229589968 90385775 813999219 855237160 930437855 707428904 74699383 963098260 539789089 508668279 618226844 192754517 808444965 705984276 308342958 866030173 735822303 315453993 244455850 953125488 788865029 730746111 701510656 856787440 715204303 22613109 726403285 882890269 408424756 501945258 231854261 723896877 850147903 602185614 189004995 350667169 718635927 745972747 177083341 542343399 780474905 125221704 779871729 297770690 776225289 755669708 677651075 843124828 106194069 793111833 370867503 505096386 726001642 682984830 84296413 871046129 905651695 818462748 462615969 760527397 771378401 744944880 751283902 534679254 712116975 923348379 119175373 227741518 677795330 827639712 826134877 788043768 649038849 670989236 871656463 307869903 153381125 703464423 609109254 587473782 770448234 943417587 764484863 400840480 433903709 760564522 38583564 90649467 557495227 810440636 649319267 48957166 913055314 113959908 876145229 957567234 649386939 857787657 958474092 336649569 923967595 828516644 21264741 89242918 559788087 67572078 595166319 524390731 807488793 711853180 805275944 964505705 153633196 906912473 859238562 120271744 761521910 643996343 849506649 308004242 862532519 815812958 302546039 965786489 351283230 435605275 884641266 918225660 746021653 804293899 864597390 910412760 658172142 816220211 925930404 929030679 254733303 918604086 664533126 718408384 741836897 414618888 936050921 830745154 39493870 875746419 437229968 849400525 949134398 844502087 52581192 395565284 851490419 550169288 696685821 996477528 683581282 723220941 968533192 526547681 822861847 819173529 132876034 604988054 803653594 821631463 992132977 985944372 917268870 894215981 117316372 1735131 717351174 983822084 298100814 812738141 349811712 990482773 388190447 753145927 304705486 751151882 456998388 770907359 860132372 400687943 84450054 807959060 683317763 439778616 531293403 738167553 996330850 894217828 670989236 271851826 216762725 297102037 135011723 366827757 393886323 94512390 295642441 816311975 814072206 966694463 846141909 801686267 764782078 43344765 456654429 715389394 827460323 781891613 335643942 896745282 157438945 671603097 252228039 373749608 345292360 162590529 856440269 271286639 861182435 276417778 366933581 838693620 98276861 816974817 953716269 1456476 46696791 269092168 358210606 919591237 384442598 506798207 533508517 736424358 759168173 217161257 976931118 341170569 860807415 74162178 861416706 873653184 376488812 871643691 991586289 733374400 863145246 758019869 238978328 623516572 161567161 362071420 681994741 904694752 173101861 879524839 183590764 802815757 155531640 489251018 923556659 357105718 26394104 781382175 495978645 320504893 824551103 979189942 836111408 700853761 771960368 756295553 639908865 160241864 315162685 688709265 797543574 123165834 737156575 409388958 538320105 931547444 680175766 50578541 851820318 916808262 922891463 184551021 942587704 907107336 376585612 766503582 674126119 822180196 117057820 13778120 788038064 183060664 96143927 197896183 268175167 217326950 696060047 345605579 172241465 835190534 851443975 514683487 943858721 998375193 906726132 893167018 538205557 605720419 290935191 944024220 961351231 900903231 436377603 304172180 712029170 14607181 153316018 854886297 862297878 835858222 733632927 991073269 227472704 998338303 919811386 701669277 187625752 520611259 941029303 872663382 643953295 975422278 794775375 763439485 568561889 175276325 660405870 917322673 699033625 499565725 963341779 845374033 615719357 773501011 76928942 771212405 672037218 814384985 583976174 536668319 699977452 945869637 418753714 700003920 703726210 806087638 759507090 642726630 855853978 689300688 498099185 655902388 809348486 782647260 557074348 679740591 678524874 663166001 952294077 105096605 34407567 399626416 741254606 687043270 916368096 755636975 541311791 907826097 778525303 825298365 843547853 797023291 170424427 124519803 571927700 759635299 750089093 697050202 153546801 860468940 383595365 648270940 545246189 642139088 821620300 674901036 341290701 30473949 738247702 858126814 610312917 2629012 248132776 468436027 201601679 974501421 354154640 962772495 696781435 476776295 699739444 277841522 809681908 226135249 770176184 641078789 572646781 705577683 874939386 788148798 787722508 775406479 901895217 307050294 284087070 516961788 965019086 899568504 787586941 765221829 980739434 832548779 504959063 199405234 268960942 669163081 993543053 857264512 600622951 647452103 486722193 639806987 695176256 305833144 31005226 202554981 385866621 716654561 601479289 85113795 210705579 878343879 15761531 714602509 516480747 145083624 199027160 820177033 784304558 744109932 574573013 58561157 743128786 426387301 70360131 327710564 124222957 750936892 962402086 948846984 956881759 544008733 692299027 771572723 627306962 651291859 699487773 491756101 787077125 769415045 516280634 806869981 348138222 445492459 163594062 340254060 291938249 684201744 294856028 438344422 517020109 832503341 881460911 357490759 673107388 760211895 582165926 79999980 466732309 527728819 979273884 115964156 907412507 183614681 362451615 872346038 827334171 732311572 772151215 364120422 364634323 786661241 768631434 36199577 3761593 131483188 806124164 45202078 972817667 823632577 990022048 860077508 981040271 332395459 890940042 346796998 613624777 809767555 902310322 50246973 176169203 704137967 116086168 168274928 462269193 823662491 677745515 547821135 62422682 693112508 735674402 897744804 952971365 360460978 864910634 486577807 135343469 1705212 651667519 752051585 670483148 760796443 643794672 564316213 821956319 43513367 812609539 304647957 833095514 864145007 849640635 207526331 912128674 983478686 562299034 683327635 889951858 701839492 29922385 725927865 301354293 587571589 736264283 542812704 748926542 830633408 150310706 115708992 936105965 670989236 51551184 745663465 279340030 228368729 939603123 361884829 608813841 777713467 699595620 133749674 599079175 906493196 569387486 403995126 683747327 990395043 670989236 167570940 196024396 465769876 796694211 704267873 91569856 313164820 180581115 726844635 69384865 423382273 332237248 417902165 817039836 845314816 627263748 365410998 822069368 899050898 459292611 784876613 521330479 489813140 123270764 638303185 549682399 687337119 774161658 153608722 288365894 868976277 170543544 598516915 137439313 74422859 890858114 149453315 708555378 804104736 675291492 45538244 860144694 870887263 820098458 941193442 860595549 333200281 960850013 876245825 911317040 973891501 708386768 67081307 888858750 30718115 710440543 885344380 280474352 459316423 676035623 685351736 782891913 947527996 298115904 947555688 214478716 93513187 74321363 687289673 500531874 220850837 930300409 694870388 465435439 459742103 778663163 961217780 516331904 765235757 4160756 81005445 274457922 877238393 489994890 649009168 618647732 291290462 23231902 834227825 670989236 713439156 724518677 474343237 752510328 911096519 759608767 859773259 720487503 104951357 729894942 697988381 204280683 769281611 586316946 926864835 990000030 820928824 546308485 416504469 884497869 461613557 317251834 619870610 327508753 533361441 715487866 652654247 752850739 955328992 654798390 826504718 763896431 356013863 816061074 800702107 778789348 924056032 751019036 663258333 857667494 734320057 828034149 887484800 604147168 84824982 906166313 949038352 294698995 89948471 117898491 842223662 511457822 500343759 987708264 138405231 493774348 604577564 530078391 362704856 838498718 783433608 777587196 489846853 216605301 807189722 801064745 850350165 707286754 433513362 788556183 440067902 53283768 507506764 47703780 299927306 801251675 127632307 438532088 842531383 722318811 961865375 260512740 619036131 676423235 779154148 888529006 751765606 804853052 113858386 188486872 257212834 531653228 54577705 841271859 818287253 761303896 346947494 765194222 898456725 836080982 685187295 670989236 874237218 710591288 910990683 998113848 941441870 645935253 683899891 790585404 646233274 500130041 374237422 921986919 792376639 27763687 132446014 416832868 179983222 219601280 649129292 602539040 543121264 764945498 211483727 665308071 744002391 579330400 576611860 919484851 573718766 415221946 695562832 232659788 437728338 472255079 937029388 439935013 927821830 929513181 574908273 496636242 670989236 170406954 988566568 626369581 921465576 834533161 914626512 886351684 770538547 4953625 348670657 132459542 672931241 162442273 973299629 139263093 978983033 779871228 979157530 276762390 556055688 428145993 234063548 988796808 718839326 977058836 507061848 953728650 614981684 720938043 305824881 928825343 686265048 318736424 969021759 779986548 870082577 940070591 687053507 753350089 682317265 307097735 347075567 972695970 923876407 310796887 941568959 749788829 456435424 557760439 823965402 906925693 159575279 151852681 633297232 112347308 532335361 316719281 820001343 925362627 140602709 917083864 905061812 566277540 593597001 249396827 516174311 176221903 752801552 950036675 231420074 839745475 208150653 783870943 124582979 423911928 590838148 35047237 695160140 335253438 962320033 437818152 917036430 14107295 961225350 962114125 815124033 944346774 893880963 234872982 751502394 160066199 990191219 813856707 896149368 696008650 130386512 54531685 635809272 854631477 892245045 788309841 616237144 469118126 692755570 291049363 548480793 412412429 470663191 746659671 502728559 556625261 921793209 343754204 908133114 250557266 697408033 923763907 51144701 215190243 940289801 740629897 946924668 937080351 13552093 694023521 721072697 384979259 50227530 982260836 697951185 91102424 693916320 729122008 428369228 790407586 965662713 940789534 797602949 671086499 958544032 411475905 834606080 812601278 62742935 670989236 640650083 895650025 846755535 818471105 873808893 970105466 489054580 269835284 920115530 810484102 189143786 801264153 479449628 953271849 107877759 669206063 338672495 709184327 765860949 694723460 934047718 650525049 201593645 375706090 827469643 664299575 520024532 919293574 311504869 472598267 400779284 391679339 921558016 682745884 749432803 836713467 890010747 119182865 994752218 210683951 926699501 820477770 963217406 133969877 593474547 195190789 679920330 694556779 160217808 946268717 176057539 953651944 753338846 998997192 196768722 913225047 775011766 46890991 839586003 94565234 861701629 859457162 519820856 680575626 791963192 161954959 411474839 55902585 773409710 644161260 769442991 281008133 885406940 127348770 975939011 133170155 892900415 510937682 695540064 510346425 670989236 702252584 746171835 818646430 233537648 495357622 905494411 326434907 955538243 615405978 17512387 992542425 186072463 69084748 987879736 396158826 95522460 831268569 249445321 358382664 996406811 768203605 878108370 949168725 848770995 807022823 678251846 366163904 806030121 810414349 621903458 696438159 229908516 216908871 926552771 441402758 579317866 626197919 364078769 221077205 919060651 895904441 99588381 451914122 784582479 394102249 205582622 826356318 33174022 458584559 165763189 417950438 54882277 322837787 509213973 702317074 912017925 205912780 547626344 823512488 756772982 994037675 757015738 88371386 303357691 900771564 334260513 409266394 639956928 90340859 171250425 95968005 32038883 56271540 921566109 869258479 338100982 260141620 930599033 843232588 773845130 699391187 843251535 223059262 795244668 613321008 911391108 737310499 196222728 440268858 877714324 885435408 768981942 17560879 736553536 446474237 905126327 742163413 738125858 975975054 662920395 628418366 726943022 895559902 595280847 715020480 919655512 499196325 238094867 836574820 868838003 546224288 274229155 933168811 967855736 991048998 142471685 792351862 561539199 767640267 375221648 218129535 820896391 402674875 209883512 160768660 831935483 83131776 260383530 842833678 941740613 219942790 922895654 756115216 877964372 832058640 932223485 908249665 942500285 889107321 971185189 731768761 944430687 137449459 517585156 408592730 118107260 228624739 564166673 169238562 984255058 726913938 977752709 776336661 997841465 660516042 514471717 167981620 966992990 488845890 943590747 436709680 459663232 833636349 644869231 828000054 656577824 957763067 749834906 419306999 841356083 819881221 551064314 497289173 490817152 619040871 274743110 505658044 258341879 788394251 993803123 448844548 705163303 361772313 160265946 972018142 225583998 402901319 177211768 694074155 65589361 289900516 810313354 872625760 975404054 896505281 406209150 833885434 556591217 759076601 738673277 906678907 807751761 180042656 107696057 465101950 456470209 945188921 835781287 518014509 379830197 908875817 860602444 499318031 646916318 851861329 810038145 110698461 859433161 242852891 248486379 121175083 947621431 242520736 541431561 753669833 97500786 429641012 633701623 28138956 188108995 770123090 785329114 752943380 921210685 835898084 373394821 713913109 469801855 678996232 867962071 936575630 797718691 87943430 70633175 496125461 578796563 96605255 122025644 673215006 461486995 726902050 221822535 698848949 82714551 816860311 818868362 996424959 995173190 454727587 877565301 901151153 852110964 733780009 896374113 240359959 729349426 358400275 140090606 513297447 665605388 411549121 296061558 459175246 174698620 155023098 296944320 982675927 543243976 202209742 286032222 540556580 898162023 967094088 113804896 869533521 174765416 818422160 823747526 167171188 107099672 292865698 222725125 670989236 904309547 82446112 699853768 978071235 8922673 649351487 756706133 106105925 634078122 601847047 153654770 315133222 773011510 264428328 403718694 434357369 839165396 840670716 176527004 311684732 723006714 994230609 98176775 437761731 452759953 915292648 883376033 972349019 550436573 242107372 915656202 782080341 883933991 670989236 269721943 52227968 136624317 988653082 373966219 916877192 146440272 825800265 977441472 905568346 904332760 331805543 795992015 890677076 325142949 924726458 937110243 624080409 837265717 914577917 719427346 738214591 815782153 656939088 946546937 755056010 85700798 117035946 437060686 74009073 392232367 376251994 176694059 45139938 309195762 550432657 531113779 256340497 424200039 639196166 709957081 799899400 197155767 466040335 985404472 298934423 877717802 657308051 197766672 670989236 922117463 105710185 84906671 23805208 678857161 994003784 436668907 887266118 927505645 873792306 119152689 737738186 453088510 670989236 39852473 396728839 21316519 658061133 879806802 299101595 130084138 661197435 279302629 475374073 584159940 442981046 748075771 24131149 931276378 459047994 234212336 298493163 180586572 711397167 407782285 799622372 896030920 678393640 724190086 790513715 395070101 930182941 787433137 310754174 505097076 768844069 381532446 937304066 452018488 588555158 863321482 579217157 935000390 131128517 755807364 832373606 896148605 122654531 791588616 910662236 919822232 856510970 612856668 235757982 818593167 596306330 559959858 635485177 19992630 29988501 220033640 489413463 842228612 623136020 722718220 964715097 248272003 614033916 543543153 499753361 632527042 778716698 300755135 793593334 801377722 623573561 513635692 953171904 993792345 858874504 79480254 267008936 852248793 589086174 379414542 406997035 598187665 757520293 888761941 576390227 827926837 324070436 617910899 472964389 504174290 285911324 34624821 154931254 716517485 295303831 255107011 956257112 951605390 676605213 787483816 205219402 681295372 9337495 716151983 958649105 817839871 580936494 180686817 944943791 156714618 980592326 118856404 57642978 245784702 882697115 16751213 331656671 360223121 60686530 182498637 991726025 989700009 238150539 724242263 526642474 758679878 497631300 214075221 167511867 451718540 375209586 589842579 224606625 129150007 727332657 428863931 181942982 759655763 404849680 675690774 697374153 834302143 807114361 837422406 752391112 465000583 741855007 941466552 833809561 416347707 734983623 838799205 590800170 731415625 990809190 777622108 986674022 978159510 739344859 801916863 486953724 681631763 755893850 764225898 771059612 153339469 592975813 467546286 526184280 868601466 491003946 911001932 926621474 926679607 702762687 799411927 425864822 721723056 946190914 927746533 134707940 731816138 988745178 997203668 28688512 733936102 899760491 539072568 667284851 733462392 691376714 28349529 673791805 173914735 230983476 770858752 121684582 639189614 93180990 376420035 542067719 437133919 403601479 781423212 201013876 880088909 961456153 817610462 849286756 609026407 946063264 94402642 33193477 594679767 315267541 380858324 484139288 374860234 315152147 971124344 792664119 885963495 682510495 718222270 545910762 955216074 93028565 670989236 883908210 941346819 957852287 295967028 825386511 398707318 377604812 281229533 971350476 634349172 11064417 726199659 923882000 455301478 277445844 174460274 61048707 738387600 697235614 336254697 56698996 720632610 850136981 857906160 673279777 615715247 333864725 674239503 752043798 34328839 996762313 603217567 686089728 97288702 491452627 506663975 66886619 591500438 537907861 706012657 745099035 792926802 23915060 635691578 67265223 615493624 79559735 934263832 591228675 861313671 879473824 102978293 401498584 129658442 804761246 715885406 457494965 23716342 956941894 762915524 411888498 342884288 86470924 735587082 186987827 727284974 842349172 411846507 920664735 918662421 664359399 332865949 765998458 759903957 150637565 902276232 796256101 670989236 982025143 416690408 294608915 81676913 636658914 40764807 990711437 679920500 340617856 353996960 463887157 299083100 360076746 416215955 964172007 907513240 976027111 723995345 954312366 893377863 473693545 467175464 156540298 670989236 302075544 828586302 321844939 953309384 124148698 957704334 700743107 484603775 884492976 796768525 705624727 514459310 838207407 344713428 125197751 966460568 688110686 874340140 295088169 282416682 849063765 295629817 849675544 988636641 154084138 700384862 570823713 984008741 77702884 824432469 595349171 438684586 671949235 423521648 502584145 790225033 894072143 989590491 686946671 275141776 961616955 708638042 142610644 176417643 46114469 670312424 17045621 340517979 568466941 145073815 556076340 477106340 368410836 865596583 652847996 911686594 931701070 536420546 796798240 685034029 644624031 737311342 580883748 2320636 272256371 736946566 320129264 241632012 493136141 346524620 884752692 670989236 670989236 205082902 814094888 896272290 847014983 312836160 307908846 670989236 708314223 128149028 807704468 674055327 937785262 351243683 917113409 779769787 692985304 486170557 4268245 697445719 597203979 936009089 670989236 512734661 908148341 178617259 744116273 676230348 966818037 398469327 905665055 878163575 528618691 841680416 413022177 683430107 170178116 20797242 97898968 861760306 784631172 612476243 894221861 670989236 950887281 401196248 752881169 652671975 173857826 874873275 116535177 964845723 222988750 992786398 670989236 688319567 267681090 230280335 583933306 989017825 392682016 410138772 194425797 756410376 933973517 805578368 363533390 499595893 951041903 877758163 345221869 30300562 173249294 693917858 108342671 800781925 25645751 630005641 434102093 936621569 873158376 828919033 685814222 811255903 317333007 828795528 496035282 986914110 64128829 774361524 864781654 786435211 876370742 670989236 929399083 822347445 249592815 663242698 25204302 841330417 368817364 179112092 326584935 218632736 595108711 814050928 641741351 939117312 583858367 601586578 551984136 748583839 782010183 262860094 194753244 353197880 896262937 888325426 699609550 926341042 867028269 870784923 343393846 493460669 853496163 851869825 454429812 633833910 902447950 706939620 408701381 772795703 485566516 788201768 845208117 58771574 308110267 874197763 45543632 858396812 845882178 934747127 353543014 247516425 176181882 349663302 708924941 858534663 973522094 821496932 148653658 412724034 947781467 777111720 328877464 306576116 691771661 447121703 241118698 965455293 622108812 280860479 570673175 464241266 206423777 574511762 260348329 798075538 28055692 733380586 807996729 795294291 831243790 225483689 925149698 609434673 8523465 142635554 781339058 81183416 738425221 912495898 764932527 455536843 767156440 724166084 872923978 179639245 386658775 572818479 678733362 134182935 712246412 556642005 464921619 245818553 939477463 895626310 775215209 175680501 284412165 133299522 332846443 456218909 902762604 322581569 709505569 713689150 25386044 92261806 793172217 459097423 195235931 306087961 996951656 549692460 744848996 916368120 960871722 907909912 688514484 695820407 863178026 400769368 284196738 475478760 777302688 984742289 679663260 125320398 992426402 178028643 407939547 832452259 471432670 753772910 942256200 957064809 267341544 975394809 274919398 305741214 737109301 485165045 259039671 14759238 66579151 676508192 753073067 518033215 465144586 685557967 345697011 896484276 684750821 289585789 922169733 755867455 470985115 489719712 250696719 165692868 681120310 706825227 954345325 992058808 88401461 603393927 908711564 813308811 867489258 151095056 636357641 785066353 920897201 301931870 219591542 262572923 700975594 268062182 777047582 992581597 888269259 912726564 678113993 761674387 608995196 621271750 291440514 929375014 224389787 794364845 931452677 544952116 101613904 691196758 528685731 753628390 816095488 582531500 698155998 127309894 472943715 791698279 371881277 731752784 950528403 871529100 946678763 241064794 669526325 995431644 820381453 103260098 877604983 483800493 61225391 990616149 477737098 972414670 720445562 575314159 220181841 264350647 900706876 983886672 187947297 685538081 967017853 767955724 10974058 280826054 196044785 789695932 709189039 948666093 416035680 848523743 893907802 596186909 789793035 312219603 78069360 958097536 384487810 867883529 989846327 997984179 690822086 995716420 982662867 618883105 838008833 750315574 317860496 242763969 715307724 787597550 168911316 972528836 398669927 923662659 977660138 761437389 839603909 799429190 670989236 495977750 649499800 930557304 886770390 761248806 915651763 272080628 924823037 103376765 40547814 927105559 852171091 920654549 781572877 418469660 167638055 854738286 939323069 214227789 286825685 704396374 739825575 731016378 363075776 969199569 647988363 812331321 806356380 565475689 427306537 929923519 10692411 334883433 961672964 732347349 761395682 774051319 276391838 966787359 890930418 375765930 510874100 40647592 510907611 822691502 896640130 526991163 542056490 64488846 810976115 491460446 940993830 712550927 697119204 915526249 760686997 697247728 767539813 566402123 900295948 695030546 918800839 457237021 63049295 735796081 582800546 128077603 116385657 883442189 546942865 384354725 963236553 850596466 323992540 190790246 862208432 838309017 687596134 596561546 146921250 67915844 498905627 448071451 797978335 989185256 849698179 438770462 694477820 152497969 757418012 650136097 23398788 714490952 951632085 545989278 989242295 346769206 725120018 463817846 364004887 439194992 848560353 347331219 885003235 98927148 882433351 713326902 670989236 375391244 130143335 267146437 731076335 315172089 716738815 880062487 421728980 881789428 670989236 496312584 115391445 716358977 680339895 243395821 849253757 345623238 691818786 730974559 702504210 970880007 765240485 66582613 202409452 381429154 552552285 336732243 113167006 822689271 736704251 572644455 700841578 724653456 8468934 328609935 804004977 743776195 857586158 234515879 996508035 585721554 764644025 754360584 556950071 858457846 167437210 690989049 46804567 445355616 353800376 741126097 972518472 894698686 319565873 789457871 230317087 329887701 319398739 368191434 74028374 179550404 819973102 494895160 338343026 984930116 580657448 576232504 46642847 439461386 910123288 632607178 467386505 917545161 489742816 858766274 690847567 692612087 239895558 508003073 892810442 732017058 676984139 356326444 350827184 851446788 776586462 86251542 416247007 621320570 383255041 886563343 814945835 977894955 139100143 545121117 763649642 738759127 602329595 652018678 860165270 761880296 541044024 765173173 635904091 875133633 743649273 174671331 967860755 887321178 897285013 516041927 542253349 927273346 856997163 785512285 800125540 291688319 689554569 670131434 130058890 778030170 34738270 83873489 584202881 684975779 647014610 823466162 501185816 697227657 757306341 696204848 917552670 474605181 345601732 695033805 454769045 454106437 697441575 762582628 530608602 873265573 673968447 135297840 621286024 531226037 935179124 766403802 784526781 322868194 644021695 839966012 886145589 972666924 175019676 689464493 253607880 698483093 816233835 557001136 758175432 320627052 763230572 710595446 377201862 410391560 862259510 177344285 839615764 686670630 213495654 194713304 325444974 551941974 66773299 103349299 83558717 725862204 703975437 836771705 254260344 327452699 72373059 318483996 43090380 697700137 930314365 217457393 945138261 881741122 465757267 152693879 668717476 695866064 934380057 31602149 962636027 722174788 204801788 670989236 528273397 668357962 369341776 57900319 697208056 679073617 204786924 30588341 972931090 812258689 720656696 946439678 185629650 931443873 467206594 87918410 804008907 949314067 354694713 670989236 129956616 260461856 244180190 426473169 670989236 911260767 676718392 718571785 91106677 675680192 203521033 940682144 682413433 425805501 439711551 13764655 728392093 858792445 929207169 966866159 849659470 302388554 674086393 695834527 945226342 849735457 701100053 956149230 902704583 792747447 788077174 691261730 937810175 612479893 598367500 762776444 714989593 753389381 353949512 615277989 365276782 590751052 330316544 863427946 101806449 978226163 62083610 433407802 872225025 368261749 814887960 394572286 899882712 548536811 37168267 928085080 674829024 111655293 670989236 588878809 757301342 605419454 231821442 763330922 847694324 947879499 806068856 748676991 26668634 872420736 918453658 894784068 921555764 44855540 762833545 855559156 509791699 334436177 863847371 670989236 920817487 822435536 979146401 866102695 889190299 557097921 914787597 945185975 525139824 704882819 802398065 748958177 516577008 185389840 348213661 669599076 230255584 838450656 447966080 697440717 808693992 879158491 716694536 880969306 236727534 378407208 692107623 973373902 699185079 76048610 917924736 607168824 176649395 662606839 187818428 356174347 557544306 735842913 792952282 814504341 787541872 262933683 856922453 482395841 937357599 711678222 871079067 572870769 595278757 571197451 985784088 871936417 894864284 584844229 810917320 755950591 126544965 924488750 685179204 846789838 42322826 950774781 32689674 762706085 245140531 311996382 263841395 826771806 464076739 32231074 743770727 773838873 965136001 957018932 893376873 924408159 32411048 328529407 489819414 231803671 765826869 580166587 686181299 856742085 753783108 211762970 727558282 883213539 36997458 980893007 17294965 770158108 646336703 961583450 539524638 530023693 811559373 766550458 91890744 947069637 46875135 902332972 465087524 211156680 133786109 640486195 972439385 110777253 969810796 720832789 667984541 852865756 936031793 966724654 264825044 362662209 833581855 269949410 918279050 877409082 766591062 698335548 761622044 620790673 298707134 499494511 288533148 688772154 581766224 504431923 936076252 819383355 559308408 324945302 939868318 876769605 728783925 835834606 635166649 889948270 288557375 447348333 792833799 111979588 121173586 618005291 367584465 329772532 574390305 468720048 129970191 942666141 974586272 963981131 782776720 670989236 134696302 887628332 426070533 705217599 977013056 697331994 897062394 484039869 676588550 768076150 538847631 467617742 767085046 670989236 278091896 175277903 969149811 63633575 576714028 430814075 604508931 721225499 995335793 633193776 579285479 892330866 758903365 791689976 786746176 986078735 346395193 238693962 720120792 986971217 667709851 902935797 624484650 105916377 885995968 969868806 976372875 835650860 852871437 222748264 741097314 943556836 971729029 863186955 723027187 444070918 926773660 538539821 113424830 623874902 4797327 603466478 741043959 774447486 268413250 792319936 796682309 125705278 330724974 295224059 428153752 37954351 949846775 925331587 916855391 909772719 867428777 808093048 747748912 856363335 399302244 400425117 36321217 162783423 572923480 626960971 880400605 226580665 957528119 526692408 429971548 934687276 804321538 938176035 455730732 924981840 557018701 9183638 860526441 648594168 511968883 991715882 877913603 548612777 941903249 610838133 522193826 559163186 857372045 974755192 644620317 29832554 574597201 613093428 73594572 876985126 265577415 308210568 902152067 403488351 409571299 771682277 993744705 963423452 401641405 470802461 957363952 744801426 615081466 755287113 950661873 294640484 210082363 534503898 56793474 969101372 838868919 847113210 29834803 820824125 288931379 817431233 839752219 440498772 889466827 496338478 107734745 937670979 617519309 632151096 227761271 30482803 930865551 819695133 966444240 639637992 597672991 190203206 244246632 976530982 915009414 971300544 995465619 80769281 285042433 249884666 249351820 650910709 900904930 937427207 173219395 837419071 567756302 803360450 749301251 937896850 977947239 563641824 520318165 546055232 707915228 874549708 890890491 112861421 817135006 902079995 622336991 778123989 187511974 857734595 840358185 928588631 461369599 66279890 626996826 783215286 367174333 307867789 807881046 711289897 722999539 92127140 416492439 52573266 981504928 695793876 908453093 940074833 617081866 592813137 802122140 671948433 764104355 855593006 361404743 742181709 798909880 433333909 959282391 629683498 396618526 531845949 533891570 372433706 768361955 798522487 206856214 233721373 308670318 305975323 771929252 725125549 240533036 898573172 176066241 854783855 933889113 886827532 153281583 197397532 505100274 965607760 120085363 752553779 791317178 53675344 924722459 535504314 393569311 883712708 974832016 562499983 531987075 245878743 712845043 229580149 374851168 991848189 394017720 856642790 571831014 707500435 818229739 523013451 949666356 954993584 923154505 889649309 442633349 711516664 978565949 832923210 596336639 64910451 183553293 725364349 845693196 138617627 823932142 243003302 252416344 825785354 850635279 239602321 845671510 923072020 97827158 848663021 994703470 965832034 983979582 920484451 584393503 903352690 70516406 385633172 284104533 524723069 51211944 997854660 841861769 257527483 819370358 779516365 74098373 745506800 573765988 786724307 816121361 757823428 135509252 483797727 490021345 866689439 476488132 162522924 455613618 808707754 759774018 861143741 663037705 431670709 403179051 906329173 440024200 928210221 879652178 387998266 516697299 495035536 654675392 756356493 809997000 951509171 729977135 887396936 611303586 683861638 89157829 900813496 697835276 914011662 926652772 316178979 766883502 143312232 696712610 208030463 686536299 601466378 975022988 233790400 876492669 914933361 858943770 172887267 844037976 725910074 890444505 227274466 884215419 366105842 794018407 646227422 36441153 812756804 801480948 82367858 703291780 207676258 358807775 845479678 670989236 256163951 986128833 918575560 459059149 966260520 761203454 461224838 391436107 857030157 533609500 204769676 900015586 696080176 824130340 875628168 785662858 158655355 347636737 835180970 704639047 617009237 1310941 755379705 878589084 822323513 136816821 893957856 676252228 814323510 692853765 886590350 931686036 203902206 380945500 253425148 896447150 157300748 226852538 58542667 859955594 714045828 671646218 483644457 930521910 476550306 87264835 239061687 265213626 574424020 839307018 749425506 765884128 928259494 937061813 871660613 765394620 736465373 814172700 814282703 170675815 805010173 150421149 5125988 95197040 640156315 619962641 735424124 670989236 694495461 358699544 931757450 796463026 242741343 670989236 867497283 147563057 511106391 927738126 718678066 484222171 79310029 903662614 485609216 439249798 965588494 429787668 999924313 666287804 743080102 837224621 298234634 25213839 844570368 818139763 213519025 521515729 811353302 24684051 832056327 403487063 198939607 951650357 947451107 53658636 86203875 94345736 778944878 565713694 670989236 431999616 867639616 986056418 791520866 334673437 899063795 731282173 939807437 769551434 896253715 780373967 793050481 196132278 774730443 733883500 116457017 417399547 670989236 897109353 846838665 38739170 211209777 793305434 507155747 849966528 158650313 878603525 990577074 166833120 111084440 937147514 504918557 219562959 865513028 466455181 496197853 778005513 154553372 853257353 766867438 377025011 886459773 575998352 897528591 452036135 842677030 932646962 718556074 688500668 983030413 510623852 484368986 471256742 480860655 771849826 180601232 657351858 980161225 528426305 105905424 784851713 171677551 862711508 606252099 818490712 739283341 17053030 820959170 896188365 597854552 785474204 622889447 885644316 687875267 108591134 333375116 374718367 47055515 370453020 708947850 442789299 865079095 509526801 328578656 834627390 906878219 609324285 197129540 792266496 262970037 565524224 978813337 899146484 968584065 894260416 629164708 886185860 915399431 58495925 910234579 888993860 442762881 159756449 806535742 939761680 16153935 123626896 345429349 461052691 264311969 794926486 263892191 789301983 653694307 350230910 780939363 313565877 746017792 884735522 90386470 486224698 158540561 540064297 113122786 518712232 882606132 95401402 234362392 836981947 391668772 968670828 179201695 878717229 6029920 77986500 487081482 756094642 561531420 385682485 825091818 945737231 986064239 653251598 845335144 699089844 489031500 469566552 951287264 654582095 804005749 703360729 674212545 675898579 98982418 899027349 514719177 856415625 778180590 883948989 293814615 860622013 691669512 299567209 79489861 917683830 131476236 830571399 398283835 670989236 571139551 363840238 814732056 910954587 474911967 937341256 67617735 566703732 999373475 673186197 972621904 708111130 681085192 978586466 725033524 980196340 94698371 684383836 695000433 64424340 705191875 791967405 390811278 615996049 360172775 794164158 729086210 785000756 772194891 716278117 337223347 441171559 759003406 334913000 155288870 954539439 670989236 800854089 944198956 748923332 792399842 909625255 750995673 609340240 719769808 469777535 877821359 925489492 810004577 19609993 827641277 697583887 806358415 249895818 558517458 168834878 276809616 719358632 275220989 757816503 978305737 86624412 660324965 74307888 829520232 153215989 339459999 82445656 870761991 804293687 323682848 571823954 363304580 933585641 376256840 669762448 398630160 812287308 746530725 967876570 758304841 708000782 256193555 611090154 873163264 903504385 782142612 263233360 470199505 303462208 682210272 764391332 52078926 849686428 997812660 172678195 591445382 334692242 917854920 698506229 217758155 910241496 755945730 959397244 322465838 941572421 300813907 811494657 817667603 382350716 152270907 66199428 921662047 494489681 754419424 975166944 882665490 752583167 849265787 952428945 909594600 421655572 394837561 244314559 710402837 955731485 323589217 834404869 298076904 59434235 367556811 122653548 964646845 952067905 592530129 192101187 670989236 696679483 876333891 973105450 698578882 10750944 441881048 573915248 817031432 919740115 610076446 670989236 670989236 330639298 205926898 687903525 586406338 91529458 227417579 596313786 42629822 901320290 953895144 245151569 751254047 140480444 366353271 693214163 610308445 307658212 823357814 245476169 791390219 695598711 108230021 403309060 770674716 763027207 511204893 291455247 853712363 461554959 498973080 989730928 932590544 248477803 679623500 254358762 927492137 853174548 470362528 995086902 940577404 131520513 722870834 933131743 919731573 645728022 749662504 513130696 531126572 856464161 499926895 310902794 957430483 936467348 988241412 792799641 286829098 605261419 775062641 440045655 687795980 437245362 300239806 846516521 524623362 720086888 687569673 259114589 285200657 608710640 61205205 953349569 348491492 847088251 223592288 877564266 70711312 416884841 969837379 154603922 262809095 760356407 870431543 896484966 701782347 358829485 736608703 466273079 463264637 552277020 252423434 268145482 692821757 141931503 864933006 681274221 251514981 672087400 543589366 287971737 786461254 817728579 855901832 548545649 851562406 343289906 262624203 153898742 730491177 860609681 888972844 701447151 983089375 16897106 813096633 411328338 917432951 867456552 947646271 992552231 847223076 684324753 822892693 79377870 6653744 492416936 773740375 678633650 719468384 12817378 859350374 941373627 394312108 884136179 875469584 731424237 408412447 863300858 404290279 831050719 973847831 555245663 552978230 985850753 944435123 821288179 851384958 238367254 219139731 522366850 111449694 721050526 631928112 739788129 792807223 114949655 258028385 496087210 964245150 333595542 982463464 268579355 674514549 337519276 187723322 691099896 656319855 113555545 667331567 205376238 670989236 944703598 330889387 555468127 699757724 313231417 733510136 954467070 679144985 807213751 706841563 836558025 608190036 820497160 749316868 714603255 411707969 677948101 812835331 106432606 686692992 489362288 844189746 873627349 734259539 79441302 759039050 894462516 692079959 702857764 873626111 333895068 919143342 347975690 50740028 852271996 990851705 126876645 750235508 71454742 670989236 383304906 270230486 987731594 234300885 651735441 926095877 619130055 972817337 855315628 710767062 944934895 937334070 159885883 140370021 817083919 927712455 328744637 600911439 584927887 878411146 572042696 584092689 884684561 609337920 670989236 41274802 218010205 936917445 912437009 885908037 445486803 742380194 760933639 79539564 898809298 758498913 515194845 470945302 266191215 288786297 228928026 896262617 656106584 436291528 410561315 198955740 803798871 944093376 199813430 692724548 717571047 853815050 303564962 757986026 784959813 706943696 906459592 846424764 2028839 594758430 659513153 28555435 793184972 703240361 817991739 669742728 370238114 741372950 839411208 186611238 689962244 9688787 541476198 690068241 341303742 695750467 337631757 621329306 653002930 453555911 788981290 568355051 485841066 185241303 651770566 763363801 565816973 890174602 357221460 788542640 636816680 122691532 44363070 266809639 869122549 817106100 482819833 841731717 806350115 900600671 808012554 775866117 140514209 725875691 395857003 977081100 739756989 776223970 785275512 653678474 694647311 156812801 585053679 966946557 152655771 932957986 101693644 673494139 140218995 939786981 864572556 799280549 34956808 921303324 731463943 749003299 759052133 281322092 256388132 673859452 724791645 613048924 177640062 915759678 883934054 777557238 863784504 527414009 214751868 289378766 909293352 836234987 703090744 794088416 330216451 139583719 79793351 815602005 329861504 626503618 2402084 702420928 910912696 58595915 995183182 967915661 998897177 185616874 798252817 588061104 631124993 722972396 686113828 847296524 531384219 787658533 282009164 53174358 837101916 507649546 550984812 680778886 891358187 760639040 389387884 545347445 752883183 763744078 912021338 702954134 737014439 171065925 805320782 319287512 833663573 216326311 847278587 506966010 989818103 951824516 885209022 641223684 923600215 688085586 811686092 252150523 174873255 756908710 14445778 751443987 945078868 749837508 561738767 836721735 713487968 892250422 968079981 534595528 478397958 79856137 519243468 365473063 8757189 579297063 386664525 723621856 434870580 279259874 859918370 508938837 672554820 638381252 951059717 998839737 194268894 545708071 486778988 788980411 173088286 29078079 890574949 604500437 968648503 742941322 44832292 673986242 554411060 865256575 80619862 935619226 926470560 802374270 943195630 642633696 785187218 381887143 900475184 173945200 408213713 671624399 311231649 923907780 609619273 68131671 660609226 179729119 771913776 972851241 703426272 164512116 610390681 674504799 434250294 392821594 447127501 722020752 177469523 721458827 391485176 78860365 880382735 877105804 717185386 870303658 92590060 991301941 919017024 705603416 829504377 14353155 970786654 919151037 219031320 297057647 703824342 123997375 296857783 641205080 671303728 124381297 981033295 869695670 995346176 530158403 533930521 215276709 841004141 166581254 981134403 948390001 763411359 292992192 198963909 325500531 863655176 87799393 842742582 955952931 182728443 719547818 866276209 931081876 257866900 668671806 542798458 916578855 268786024 960299219 427538040 774049665 435633989 818697394 65929364 910680037 894819977 893109702 275571570 870159413 374646578 875995352 257301866 397242524 853384590 773237434 799053150 231814 836126072 346321284 417383328 347573416 99002367 777205024 980720715 119521269 954291032 98000638 537434920 97174232 521461312 257757926 847020517 883882338 549649194 264657810 204877175 553229320 254933481 387110610 545090842 892923928 720392974 745015990 731574570 722084580 211615211 831584388 506738383 803472086 87790147 953781626 972985233 267114156 811931527 862460430 402753295 804485697 896456527 948448557 959508124 922205169 964505896 773866660 746438681 911706533 787775143 892279008 100769714 491070877 335969446 670989236 788395769 872612390 280091865 936337677 794785774 978851273 935184791 887257832 804413674 727483534 171934186 755091619 736071834 748239237 647491039 457154224 862481990 305207384 646668771 671724092 47432789 534662782 702757862 461315468 954001327 936033970 214347483 670989236 768775818 682874025 162710320 805438748 958360828 106814992 173735338 979469785 957572035 33888840 676274526 887074977 161110286 538223470 938866351 289022049 62002791 62460203 405084669 449913112 177393033 710737814 977096299 321162121 461325678 770353607 865442381 334265273 765470903 482487000 343880728 911066589 745078108 184814521 721091 809421739 760239968 538529545 46782157 673673694 846778156 793520822 297364752 114578183 592064197 939972865 724585148 752964683 959692715 543749253 208630642 585478277 134340941 986550857 362669462 269127925 775445196 669234456 102692453 518359649 803873290 677933771 392607885 499959185 353184846 562499967 899210824 640854898 357472247 338426475 766734607 992045215 239699678 495382675 508595981 505078859 907261933 654470928 846374974 644783842 982094879 792171985 838535824 256068527 401426336 148017577 797610342 393323974 482044845 24205662 554565885 670989236 781864739 568847405 939384469 768819233 863681765 962529150 122412905 731602185 670989236 678299790 784962189 344184031 664171395 79319924 842589445 443696750 753201643 618982623 530427884 914886435 374786895 670989236 875917523 210559033 816246454 809268842 264379672 965040307 866573440 820303449 640434357 331562188 841296441 146445956 501277894 712154791 831773705 798349032 116721979 364252100 84270512 169247194 11735244 259790578 900013807 194443340 570203953 680319434 847999112 172295127 968576504 698118604 755405025 960400900 368397861 780682160 779903698 306772646 988990841 859809817 87393332 836739839 402725583 774851909 820229279 664577382 527415025 418189510 208726667 294234922 777219926 613521917 292112355 731464430 678098041 521851006 291630443 244839817 849870354 861257749 607246673 680910413 762880864 61895215 522348955 670989236 992202489 391280688 989311729 364900994 936806216 992524316 543502554 784879821 726932033 867387490 682603981 287977725 464365914 299338577 180183403 981767745 46990202 129445078 726859069 630548376 381078201 417619232 641940919 396344211 61521889 531916888 829573023 319218701 366950287 202920466 732645033 677400694 992002629 500967110 465647552 976626010 757088507 851505184 449755427 200966343 372250291 905600121 653582400 710020841 967178501 519132453 892690787 939781229 979915971 369060252 750254858 988973203 671998022 672207949 469883008 6331889 823389899 792826883 348348243 166188577 795307251 188313675 234802286 986587038 134183911 812222490 704980217 410809928 768116913 228526205 341925490 527846125 776510004 928557795 732208943 918096551 330618410 957355822 50445856 816101930 726138293 688975461 24858897 672236764 890409789 770184715 371121412 16876215 20193179 879820489 682762324 172965708 593814310 366063726 838540392 977609776 556853138 252542417 317380860 631324979 670989236 205028925 790337962 764574504 931302711 983750140 957798377 911720387 423278393 664953525 426975781 989916409 937437061 352316460 876131227 921662101 232678630 807654463 431974290 533193603 484271581 669676087 598894273 959384318 817404902 556159172 989976887 824838065 952888554 247815622 596155546 186437643 965825768 417371209 795921504 437004145 540539573 996915335 215295046 900160331 263407272 956725266 510546527 729638456 768841304 684326649 697095809 108369394 639716776 84636303 324515032 145406832 155398180 740767857 722079133 876109159 938359658 956172958 798035508 909821103 921237697 837593160 706523115 976726800 966538700 942923029 749737713 824012684 874877907 94046801 517202980 964368478 228453825 884621902 297230289 996862777 408838627 421023628 839699775 721538525 12650636 846257273 913820512 318850940 367114900 771170242 941539435 646897996 976008448 913021988 809155687 912981741 314235085 344763487 682603651 881364913 667001801 274241171 70592464 820833582 303650618 447534139 575054177 889773916 961409558 785256344 247127890 969231456 774397091 397679722 748726985 189162579 716572180 868315174 540501251 593024227 723687780 732218040 722065324 679224653 837157878 34104775 998509238 716733168 827337734 778097648 473041686 670989236 320567750 749952367 770921265 680514142 376208830 956152928 862270646 445363040 357132848 574442725 487975462 936830640 643271360 424273405 608168351 51359551 868007959 664627678 836440779 359457352 367461985 981786301 855498993 578913753 785362095 807224842 869380790 900035347 752196124 727257774 494327374 850768006 938258049 941983793 728632101 714454524 901608363 603786392 924082491 967992265 273928738 413658899 938399826 833543215 886232394 947049058 15091393 664210698 792719761 428955350 910057647 496158117 20509038 281733801 930260897 667825388 986674396 436769709 966937141 308502126 799976423 346263064 125285007 898075713 211351622 820269179 987673712 539596736 319796863 999947677 802321643 140884179 868768747 954349584 545444116 368034276 600257549 652378943 600677291 956273519 504805082 95740247 517883447 260625905 302639993 459356070 81363198 830539224 578471987 897534367 445802622 814969971 798961567 443701201 738717285 755441695 457274959 493793608 285081174 71328239 162705491 900332803 514140146 701476547 758816268 256526188 876752814 807279687 838892192 341762003 870697174 820492180 640176338 179506448 793277775 209927809 31948677 461235704 691346238 761861206 641776210 802405317 467178094 181624657 165700295 590722340 154346234 628869654 132546673 121796744 982257553 726745613 117884164 900234684 11039682 337709602 685310170 674473105 770178489 785709846 318240652 206313182 652676406 363506451 522692310 746480374 687487534 903697276 705002029 520683938 487389722 338947252 69048185 920958817 660995009 923111281 904739769 280087670 905203594 997748751 779030795 799405838 389126897 833942178 794735644 864154509 905524202 638820189 993344792 882349068 715058275 247725521 497151143 835793957 719758541 215618602 841476648 552220352 13152524 460440082 208105455 21582096 206228723 872639943 508766398 826763570 521475702 735671410 120040353 946807809 704622425 520853977 799701788 879651252 291613650 724077131 832592200 670989236 902187187 792043548 496218996 962006047 460266859 925281710 789669323 930912057 660115406 100889063 508974336 72441883 396083813 444942767 718392165 621308534 781678831 905064163 861431588 989068589 639467550 691253935 228758042 540279894 656082005 284282871 848772273 619748762 210599908 236597627 78461718 389325235 335355469 743556608 493539428 962372916 996742732 611631993 304355747 58502000 740470813 239168797 687494539 978621328 741695834 881522431 955523569 706278247 968169244 91716595 862566650 240603946 214633378 820397063 751976802 838014107 920453251 781208426 811774263 980291084 576587128 771590401 171868598 666565482 778737607 85516307 291388247 764057304 540507276 461839444 954218379 918167986 905817278 199002719 398683530 93951363 836579376 942736592 872422555 609101677 830853351 870993535 332415663 293332864 992569796 683814780 796927393 908638719 158401367 812391377 178076670 773273526 858338897 750116 826125193 352337946 687831888 967607717 160489172 114444082 206789656 671496254 148248164 687280638 938763442 215700537 942237827 323103301 323557287 813738768 997132603 946824864 990555358 75289421 218967610 811149345 284920743 66699934 255768659 701820334 150406136 699349236 384164726 983947028 782979346 773495770 294176206 735692137 907958538 989150009 993111848 612013103 336979471 935557695 245675557 636564604 691091992 610266012 167763139 666537106 215457745 61157930 318513259 733393244 151816180 984767907 272677255 666196545 4525543 984021919 731099723 764143011 853744848 899616732 569033272 729484303 591270222 770626551 595972441 848750773 861363368 450350241 817732380 406895644 335412165 718582522 458964137 307721996 991222292 19095552 655206325 69564756 692246143 727867988 910751177 813618265 793582115 508089434 883790168 618820067 17717707 184797765 835486753 713350839 959822176 672361465 12471961 853465280 622392321 56203755 173816476 618063824 917079376 760531164 185310679 696828688 907750470 61113526 617536029 670989236 501561847 695268666 765806088 894002594 784823396 815560848 637431518 427432980 161839265 710979669 445917161 572862965 539323274 993886363 212645095 50438964 577151014 633432493 140356708 963546546 692071276 997383363 924993799 814719762 252726817 931573489 923240646 545868941 750586999 772495928 95610068 60132106 846156950 466519356 678290865 979764629 961241100 179606891 235144290 645064410 652625006 568795342 676063101 299015841 996364722 591689138 703894413 687950348 749018436 880365109 710948556 535495908 502397442 968073735 909032270 364541297 27585814 103207425 272821245 670989236 670989236 337472939 669303935 976559096 735110340 387760571 864009922 715100415 909425340 959291077 986477858 609360706 212415252 981789428 643662103 487732555 865557326 767385985 711651556 348592552 893989778 883047205 527397572 682792885 76703746 469986302 910427072 694362807 436342371 182931661 420382828 759303211 954319400 897790170 828342304 851442893 670989236 320372429 592215749 833900810 489855391 691550830 746718048 797499011 528478639 715271627 997096052 670989236 100980534 682881610 769001907 675513197 413900220 625337898 457184445 902389824 792873444 486059305 914953568 885508621 310620817 679130348 665512702 835242924 161019470 387900008 368410889 791571202 174722125 635749901 846289271 720817987 218213175 736930448 906717934 934882752 714383846 334572680 799739666 680782138 463275521 842198616 323184533 527698124 703421616 877700930 592558850 629663518 161139011 811566168 631025102 378068878 342608801 462618734 325849490 890078527 754858990 192272475 934752102 798245051 745795029 958716607 697808456 754561219 924575751 990471000 895087146 400604982 953680709 901474749 814678415 790652863 741578262 670989236 155957156 414495659 967872116 433339441 772266733 639176166 894799570 185461896 835287563 230633567 983965663 955982037 462831764 673135860 244221495 927874418 98609081 845528332 703792779 553141769 66081606 190065163 917876848 866482656 388229110 121240370 507298823 999673720 662263431 745890184 52603020 277305884 257196670 720904342 942593549 628193406 963263227 807280179 720394708 315710096 441175018 428216859 117031041 654460015 76988106 961714961 854977174 429351590 943814392 181633557 906705940 348936621 964164664 914042315 821069941 925294829 163843312 575326314 924684774 632970469 671329270 981665424 821935819 781537459 781109715 43030705 875430924 596582582 832416386 416733523 965613346 725671048 661028871 863173681 596721954 86709895 587369215 791270118 297392874 263597926 812628762 137051805 477420835 775182967 16093314 141696257 478291115 523956659 996075237 686419835 682730340 264844770 695628700 995198314 768549522 143174947 652454102 963410307 948390859 327392122 322597354 952143353 843480470 523488093 877833500 13906195 742270456 861097646 48395331 545579302 881593113 38706831 975191784 720462742 294958461 769885986 904168763 873805309 748344854 524939484 940463370 143847329 298845709 926416095 764320015 104400105 828484757 190954708 879213747 894061595 618108541 708793559 149749779 701809869 884162481 777664955 166419529 735650742 221803710 821859679 341153180 130879806 962028690 113036164 684010602 684223304 448305976 931598893 866555865 877181511 786392923 812105500 7158151 684276556 272253198 396277303 125088012 855397585 739486945 248269820 127674881 688738817 931344858 269863747 119454402 434225860 865522869 818258662 408001497 990976192 140541671 808211709 641885485 534829033 936943713 640604458 91229569 517084201 682285684 513905287 618801258 827796188 84793528 906906445 879112108 670989236 395384988 924502806 268709529 658567724 188068573 770300094 716014456 583723077 685501189 905513383 676951421 855811176 815532550 325729459 341750371 279644336 134673111 745287106 914712095 999923632 978614395 385527246 724110128 399029983 666785994 393368341 762937639 846616217 667972873 883056111 281279520 439184465 670989236 341534530 123619426 696149782 40799859 925180850 110102569 950729966 165247248 972328242 908642200 764597186 341733631 962276834 209575355 110413909 317964292 319584235 273036913 838981028 784197512 846667931 499659301 799269550 394740893 638502781 526934033 276543015 759689555 483035085 304189960 702821626 994202042 714296426 524156837 223794751 619114851 253682096 509097337 986934361 893178039 471979683 678395793 144242349 705755346 379262819 344750738 778960102 948092755 706380538 890504428 698990000 360662412 777058058 230663084 525627289 875541712 790317477 296329837 410392322 8648498 282191880 786208940 136873950 788791789 583233537 959358715 889488095 622069597 949790775 111121558 248345456 974608786 200064253 786518692 808601839 881422107 736493411 289049050 768503493 684057268 968758192 357600826 81727620 769667809 997768294 325656725 991077720 492907799 802012680 630396060 774455835 734873705 920007447 751533558 242066573 102973713 637978065 809668024 36161932 647539483 493034321 828982295 234756316 680539172 932302117 186468276 910433535 446574913 220423726 83511080 834829959 854323258 456291775 379331388 836483934 113979271 810359252 751245466 107645084 920742323 784539739 186976526 180881318 214485961 572326284 982660070 899121452 365553296 432949718 258151908 670989236 769064830 445826639 304993593 833311437 492257851 760204250 906159069 18389399 454665404 13424263 976021693 104194295 436529346 449988536 314439451 285209913 541371904 616635916 445870418 958115343 650329475 711568274 216633131 529692640 241557320 369372066 871903737 521330618 301897181 318868382 373904055 140764793 299207897 271791173 346603261 888722349 903841032 790051655 739385495 776246793 720284555 95575817 852450453 719587442 437036479 803036074 716433615 747345468 815297492 158273914 850089453 827070037 123818738 529223784 995637171 420459644 279737784 475298486 47494568 13201652 861525245 875788944 827519635 927953701 466359395 24230028 727989865 338877289 136558058 806844732 221333133 846409056 780471451 210424404 132668184 517774990 418336621 672345951 850846333 477878391 24163747 577965883 231490443 893322278 920408001 443635212 803462347 823288821 926631472 975407083 942202505 883814024 763797847 451948691 205804519 576987654 603762674 288756085 896843462 962725388 63097070 91341266 104717590 782109567 493008888 16147000 131252349 711488899 867387299 506713897 255991714 557658081 821216492 771096883 27134929 752343706 892491483 816130639 593384932 705664991 912723771 819731444 968904355 790975709 893623212 541905516 762273225 636033094 910668651 523878784 909114216 554802224 353628234 722046063 733924691 837480356 307416725 835877716 616147956 365457465 886830022 817777583 690046903 62666067 227318791 959859308 104815410 764332850 132956307 764844606 132138098 421463085 944073319 559248125 851119307 893750036 160218242 459038393 148910793 256584990 683047757 991811556 839521021 746521056 540673281 553333215 493772011 715953524 742881512 633199387 489597313 691545451 670989236 778694201 857267149 472192900 399543826 933340339 644232583 827331905 845084943 824551636 889973343 778981348 752131931 682699663 100700175 311884752 147070947 963001396 777239611 80716335 818438301 585720028 547654182 190474831 726290489 27163280 670989236 350832411 671781074 791548213 365078404 23873930 479044043 846985556 883715186 993727105 303402637 344655593 945516361 906568169 681900703 727848063 265596082 762193632 11577323 928540667 756623774 885371882 292275738 412182773 380394062 679278667 670989236 670246195 441148435 982998540 873601864 974522912 559889219 883384716 163991669 197441199 857762904 944501054 581666832 181669343 231148722 738732943 483193151 805741003 797794467 332311630 661982903 344314208 677661677 263883750 558215577 949529110 223282018 332408114 16594108 677127885 155581224 725818167 353285575 105670858 770520782 399659588 279215110 90451316 850193372 519056924 624393653 958230972 453874333 488216650 987560281 520685434 345718780 998791656 691557075 454182467 942532702 140921279 432941130 250844826 283508506 768779996 838619917 687780129 829617066 859718088 294322965 581475659 304395944 836345529 817152299 441199154 710553075 374649747 997706248 758759143 944526222 611374134 854940266 669683657 368070342 150664003 647013690 497071052 724466969 814328016 101654992 823301316 731814913 292722528 917012956 189031525 813247865 340530990 777470581 932964883 994093259 361704051 963989921 778264408 956204699 621321080 677965084 936205695 806847680 370260642 677099265 598832414 535192320 635260223 511933155 63645447 910676300 456136664 897812068 736171105 868022885 283629722 207870521 942040128 71961611 709904157 892281010 42695189 105022177 607552413 330708541 7743263 719452190 381337883 895925896 554186335 680720472 831264298 256233827 414206661 914569551 761399698 543594039 775145136 939083660 163559419 546540775 205513908 827447536 913077160 898158750 299610306 34571010 658342925 889316046 133049668 303914045 875765266 965742180 873331292 507861450 801283455 252207025 503001711 409041937 433148986 795039726 995950802 876538401 139831273 975922359 974291003 817505146 194618235 444023776 609897397 521761562 990907897 381098277 971573393 811904467 775440486 335080114 747696691 211424065 384132895 48137611 473698707 930097082 147310206 532662007 868542017 510181483 602471370 906867277 537271796 702685597 898296404 156777669 352513882 744402228 520945777 718602491 572046203 804118394 324535658 752639240 806762419 914535221 719862732 627081553 795278247 658049076 969555352 3259352 907466311 556359998 909078666 433439163 829242719 719940718 777220261 732053825 631745788 907655363 411704317 256347533 269912712 426954494 680857895 976603638 459401976 526998843 780842087 225764444 461158376 992909141 314413387 506834215 996727937 7736330 396804077 96326389 147610213 865492572 81451298 986839268 700827350 673654048 989427774 859586551 440437626 872920463 897684776 596091802 312839432 20160022 711157233 43022314 694681855 775044586 507073128 564848684 811689045 846328704 570799750 518683398 958276676 468708258 635571468 814584611 546957167 902186733 506342483 311251375 401345584 6694185 479308815 341767977 236310480 210725223 556490570 103333952 385921546 32216539 465869943 222806154 984899537 462382372 778674770 376956171 875906025 365540065 342653393 678539110 733133905 809159176 966772438 747793428 494161337 162425413 426703561 850832702 738160850 935441802 526187737 670989236 924905078 257246338 604065257 717421156 888402568 330730130 537557648 726939123 829090068 754642500 731992967 986751353 725236400 322321905 724173434 212263099 642779328 701961992 28119229 989520013 434033734 967540618 867387071 474475965 908851116 467015559 721588671 677500386 409510112 161806103 112733198 938936911 863640768 859079257 935901970 147121939 579578306 234167246 426103837 705124073 811828211 506116811 230937376 969764550 822412132 904267054 986417778 317262168 891881813 245854327 868865814 315638557 331549358 699217427 134961412 981742309 764161946 776706650 670989236 50510580 415536028 894137479 361429474 300113785 515850541 366204046 951133282 711033331 858662548 890880716 205177339 647670509 423122539 751690786 453976499 937011601 539915435 670989236 509276458 697378702 848895428 670989236 954926876 722371674 999111680 857297976 464545123 885612129 516110663 195952009 159245525 777516396 258304324 120013095 952696874 688426870 966305081 178197868 463927083 659128657 120208284 484044275 422326420 823704936 911536015 249774618 900765249 857947448 163501203 441071483 815308673 831082097 436937982 229912441 790546257 828525225 83350603 846819104 662464259 242964493 835229154 552445677 717967046 517758480 391122573 193319978 68554982 615805248 562416674 778612074 896014994 892253413 81300731 777755171 555306648 962407881 836422862 593389385 918600606 94647943 221558041 788848478 872939721 624807297 346334910 3168635 997242486 319477133 849580736 43638714 821915295 133835382 237773811 506553805 943337531 754275559 758313765 868768320 997854037 703227489 946189741 211373208 27943240 992449812 537299650 982971200 540020322 662924267 269533039 616548072 910721190 217976765 831924636 874667944 141479663 407935392 973546485 130882614 883292693 91638489 795401922 863654530 396521838 33507915 708439198 673030173 203690803 811391139 236844332 663962424 936439077 85572841 844477155 700293522 753286901 516997957 983608182 33029119 880364722 993877366 717831820 722451673 919907403 761494027 809931655 896097803 707983862 669142546 751450470 238780053 36782179 914595283 653510366 187746183 17783489 144315089 679817356 798340105 804118560 164045979 205417175 419051361 699879912 448392899 997015368 543390301 714306546 497555679 687154431 999338899 208724620 865366511 897813804 962587394 791556916 989913463 696944353 881965136 590422799 995706143 500612819 763424829 177186601 587457942 35337265 670989236 609456292 829641608 117924504 744535889 758431377 118439053 354468740 474372230 675775879 682079048 771123533 860379714 902264367 678767844 976294607 13665061 457261762 321406964 712395687 539612961 221676405 851700708 952978219 638589080 238891286 664094225 93657477 401002511 674755752 490809396 93977362 491734239 893292791 729540148 791961359 524894522 771993397 736783703 958519738 702660055 568582108 301243351 869443902 972194059 386930959 331819922 654998840 866698949 653974430 218569076 727303813 499990067 450759239 455887264 782610060 805497859 874858795 881763702 685465597 867704837 753471168 861997354 798313367 133687277 9466596 399150616 361764020 543729803 107868853 784604306 155800350 698985521 754562204 119819119 670989236 690095712 684238745 942978354 886907829 656547793 120344373 320565600 248959789 208644539 697776611 420041543 916281142 248971874 399139728 721797249 408623879 263442985 324062770 857799021 381536585 816526526 832646769 797949217 924859747 31471643 155375705 36370584 295456028 537350924 943531221 952271724 481840808 759018127 4605127 893850999 413724148 934260787 264705738 615155285 842910567 721675935 903130098 736573169 830074337 686486292 224843606 952980475 819539478 841442757 750876437 886143150 757685130 193368040 681840642 40709112 670989236 405477518 977188005 867187696 689310576 529448096 763508457 838862580 713264936 946490440 252602175 361460581 690695995 48456137 714617505 670989236 936721059 532364465 439338355 481927125 664734799 891182367 366399787 944243716 579041314 398311726 125072975 889623945 402746399 859452954 90434897 315128297 291456700 564809345 836063480 185379873 440646986 748712459 179295709 824067468 481641772 897356654 799306388 867059635 851023349 206168786 603517860 750794349 951164558 647932991 904389421 786951861 305554337 631561701 997943551 607462067 657187818 752324959 967967241 592302781 905201164 31292856 874098036 670989236 364649938 936160711 961291702 47298742 706980301 440285333 716842473 83421782 83908658 261031413 903037576 817511735 127087477 603647331 944423192 770420157 477536769 353465695 745319892 703853755 992926148 428380207 71803717 259872852 931422267 366703161 901121222 776722574 349049023 474277479 989519167 740025204 80610760 667191081 403951748 797476984 632865717 280718616 880186792 729485042 648156664 715696940 109095300 722575777 557847777 782892548 49666260 361418449 713880939 473070366 781122598 665284737 93222793 575360924 729974970 929531388 957063442 760044759 971502716 807905797 829464883 752336583 990466916 109978562 847179882 824818367 853267457 965366084 937835029 692847104 99570266 842082015 439975201 868339338 792508913 875339300 746839781 121229535 774396542 860104600 781088073 240645691 338026739 469172621 398106252 670989236 862257627 233092347 840400387 914595970 238701585 652181007 930720186 825917296 748478909 751096410 677500809 918430647 822812448 981288032 251864320 196523369 877747458 515886974 103662628 169256995 982015753 886113237 216800780 950469350 189873324 65757227 441665101 472674608 232930820 166863214 719001808 129516611 726689833 923483258 391124294 606867562 780575601 677925415 245074767 985926628 670989236 401765113 130168270 582531536 894976473 604762236 646405879 592485352 892070927 461955301 775419500 683380194 966952885 780769844 163428297 251445884 731954813 714677152 928003760 843161942 500416517 954103350 87551129 31384327 741980208 670989236 470126627 902473326 878756789 757460478 121445927 352566158 912402646 647768242 324294272 819641696 871112638 461584072 469973594 656793896 835569805 815063828 632068327 540161996 715333116 814332667 446514463 759219924 829533747 885579271 158918688 944174865 967816987 269488057 509437275 804119344 905313603 1449213 434412451 970200976 213999943 714565678 641318744 147412866 986551565 922102855 723962092 727507027 834862502 362824277 970068602 459646264 983651119 305728317 745771912 471623259 973502926 922135757 836994351 881080656 805334981 556340632 769388079 715526194 235956774 166235882 269880972 406033295 541651950 878565248 564050779 586082915 640979259 320027085 976530604 260563623 682294666 172964942 666046582 261666353 140789948 145148112 436525749 482009641 41654339 682851487 139983397 340817163 695308341 863933499 430326782 635762088 215294219 509525198 530505463 683566232 301667451 291419554 85026264 842196930 93634902 523048909 297376778 188867744 813932065 379500444 543938166 568975878 17169308 302261451 958144986 789363160 481681418 187054510 489180182 272873532 399098545 438945783 744651987 903762084 91224390 793163906 558133164 467280055 795426372 153367303 405099836 33978285 733161599 146361243 272357986 703682311 3692443 72482680 792579333 787577824 551620407 693053251 979007384 250677953 510716336 696482535 722316220 711287843 804149837 539506546 837317319 997956029 715168997 889612220 442013793 696720945 731698389 937905014 885998116 232180988 776970373 409315714 326650410 863759684 144029840 585740463 539735041 119434035 747622760 951421239 526936562 670989236 52505172 382290329 66294526 705480908 967568616 975038755 328110299 218130632 83979904 280519489 907448780 887510693 915801937 579134937 477668875 579784635 637021629 956693034 539771625 406773520 380551723 515608705 753651535 51743797 921683032 793991981 961299209 920242128 458954832 531613025 959073189 918130776 977176232 301620026 163390137 70926149 735713892 367818211 789867273 230691154 478898767 568801022 834769492 988523590 699368963 981354463 37301405 382773707 867050569 505606331 717929305 873389582 715010177 438415214 740353684 362996448 670989236 554446746 493114582 184643216 338841275 755516358 774138580 569754299 873398860 177086484 911323979 115101779 333145175 670989236 705396299 863715893 401795287 333935769 347020654 846028705 234815172 191562054 216450734 320782748 232212527 474584573 38775685 614945944 563848960 773359252 1909337 307030163 909703331 772058653 917642025 234030005 906833227 634346927 665864155 679460572 921450195 57397887 149926993 974925203 549472119 977408027 796736857 914178610 887330629 899236874 990710509 756559829 255184633 199632765 645541226 754264913 964321911 908731750 620124570 227101822 500708799 713856216 49840845 664090378 232957149 831881412 994755812 340776753 449766920 172549524 845680016 613325481 9779315 734758666 884392424 877492509 870705120 307170641 721029939 533028529 90083644 157777591 342432984 948419766 653223377 944712603 931120479 980148380 884092158 776089886 709071342 676951051 88264290 906965753 380862160 16602693 945535144 786563202 966771039 705882784 234577866 955018103 874283353 721927549 320907804 168017739 816420554 691827763 678760963 776417315 843820210 730522880 988527132 820178087 359478149 121241677 197373597 276922633 374982507 328297621 491958484 573265829 875483568 859352905 906327783 857781530 358579604 348996923 731840105 724541114 394370545 864441459 968326907 901701626 182673300 612031371 633360900 697068774 996305943 180304726 972578557 670989236 942278137 15551404 198992800 49494807 190581571 877325923 721298262 678870407 937884748 245527364 558936371 804326715 410821035 704974004 686480445 63954646 768109325 411081416 683340641 598956244 857944989 68460955 32193597 810014932 876795964 900308611 199094782 551299881 423682480 550274576 709044284 677474414 964420657 470924229 852017363 628489214 65649801 754042973 806404870 364284202 691415136 997958823 698590073 956396941 639723405 103214368 409781297 796335092 920100148 688875027 933501030 473770603 807240980 947906141 629116552 804226869 622685245 670989236 712179431 253895422 901654674 206522352 624560175 419855466 800721531 939426440 829834509 487012575 829970836 20083857 896039133 850336282 909537167 501784554 235042776 853806047 670989236 379536535 918391310 896512651 575556991 358415990 940737411 277799003 816911833 783327121 696104195 10440133 670989236 46992965 383664496 95872072 815711184 63504303 929171219 692778921 719597728 853865666 628352726 783104066 400174755 266021141 326434042 834204445 869550456 10798327 926957150 522052023 44723377 985983197 842585180 639387225 771791009 870317270 351278383 655814024 877893361 673993667 763832037 917757172 553924586 730308532 563948854 758051601 700058188 210694086 664315980 7156212 918851682 796342066 241394284 4706308 516551852 750520820 834419158 733934044 824749064 155975988 37908896 471823987 853963182 748170480 549032124 327442678 702832754 62440102 137596374 440939191 727907567 825798909 231646590 753270567 623589757 354065685 410747365 743342210 664726560 337956728 243586717 854123239 520751718 280835059 210865360 451666103 260358460 941867937 105205828 677658572 956129762 287569192 513480343 422670335 80670513 418272671 922520296 450517314 799884236 367006856 987822012 525810237 243407801 460270674 122493353 961232152 802661238 938883418 573171881 686760133 722217151 804440223 370992118 8406023 749613753 835779849 79353500 353862275 295172711 913277753 166522492 910192411 206437279 505125600 909135675 927190680 909472375 292155178 128281723 699087272 831903469 491333773 386157216 931504439 275242519 427017622 427693139 279881855 548344015 475426820 814303333 48507983 835920192 917769581 981123730 712007662 678487714 843117408 880374660 832560911 285596090 182684830 256044012 627705843 466712670 881230799 697215261 749123374 356930494 921976797 756176234 351042490 559761559 952478520 921091054 750364405 933061374 767939232 185929196 159309650 172055673 505716803 502591107 684796098 858371355 257076203 120549807 157641691 851693235 396771952 848449079 424415926 366394851 49859447 955090104 750184969 736729988 128775784 403481085 93318173 833198493 134600334 806068953 692173778 115547043 700987289 761384081 285485037 534937659 193233306 627965726 988431982 400320404 435561297 486728870 204924303 738658917 344577902 513451632 800397981 936600329 754967597 912436033 76797476 470603940 430167764 164312263 326756050 97120714 979324713 547765295 965063351 637334627 388939570 732111475 972196298 44592668 409731991 228305151 322334388 44528335 954502057 201351167 158797133 775740556 468362558 726840285 51737095 759569327 912179763 668852215 233266059 267959985 706945589 145119973 647972608 34026700 990003795 670989236 216124548 880604982 544258420 786059444 832470681 961300833 581502828 671584521 642223635 367579201 708670823 791396262 602880786 24198047 657805270 872359942 482412500 990095421 800096054 333808943 808803562 796226456 429275594 542802534 676671871 114060010 70382123 29136842 639847748 950114700 622749746 973084205 987735636 830413284 747802416 463565969 643098182 34985461 850453845 562428919 652232272 23337657 911919317 784465945 209304018 716367994 273844791 169284602 40603006 701397427 722937447 793819605 587735586 547298316 722968986 998982027 269461106 918275399 993163724 856807749 714128098 474919616 778066282 643594891 992062852 661491434 352557762 983187512 169189695 238341625 491233986 857681277 428807628 789530238 445411583 949796406 699105295 125284755 816502916 759999905 132304879 381350273 172137457 563311975 670989236 80900915 584119733 754184861 392027702 505975968 686254202 342014424 317328288 914775733 974710675 593481184 798388716 474864299 477472152 942094679 25824028 684826289 900128441 290054831 800871503 362245354 748906935 677135657 744835653 415265493 493769148 670989236 451793257 360383838 67149971 373478000 687970485 356184078 884551022 31301840 846207868 332395523 804936734 761113238 155036924 640560730 260709858 228578722 247011135 409422536 403858317 262737371 106158021 573370463 923632419 932591018 152087712 828208448 925559832 868731192 726178895 964201508 430208007 552667833 308287466 670989236 990117485 743378968 553731958 693120784 771331695 760055413 858977389 780474842 695789602 950968243 863072167 951370593 116217402 751435136 51862190 880850106 666919530 744657705 988579764 739003818 933581697 804700827 724243283 623066060 585339801 836931686 456267439 137272307 650220871 883974542 694603063 315830147 228296865 228120813 775118818 186584773 723963701 782254263 754343985 627471691 775127289 498873835 152683462 782636908 906388466 507419690 674775268 877379526 935067562 371764373 772151534 838714538 143467431 656695057 708866140 670989236 898803987 945657762 734420632 515183498 886890302 801096551 129237891 265304363 393922324 310815571 860872045 1070808 686777713 775536378 176105609 94306149 717199531 204544377 452332612 817854321 657210409 682215224 275091192 44093053 905465096 73877946 936775633 296957500 920080892 937791937 884559243 749462260 595678013 820808139 680380187 175303701 955042366 695549254 890358669 369046739 684661402 742618253 670989236 669223613 471468506 949665210 432913126 128915735 980167925 759868174 957062364 374573305 780799805 635706236 388198959 926509958 733565060 594307320 751844235 37860459 960107600 874234367 679559265 582979792 930702480 803307971 352808175 573299932 307723394 178915204 783752776 892988998 314646986 485549853 879633995 34003628 830697969 762403190 808965044 887328153 836437771 809730046 864796529 757586454 214093233 410522463 852219930 643958355 267749984 295980670 906903544 356585234 518971087 705529899 524164289 899586979 271683891 670989236 361260199 942806652 865024028 350333605 399276227 962792623 757543247 48674030 831754741 98694985 423968304 938316220 694673969 311876524 786101609 670989236 973196044 484774267 923386594 637694709 489928778 107789591 737547393 889864393 415303267 570569034 818636662 525811028 713850296 763789660 932144581 777616019 833738717 721486676 821217981 905588090 989879452 771795278 666182252 905853724 724692903 653732713 741510735 482943914 782088633 652381489 555685362 970433067 372983155 201042682 113545501 923811410 314214271 846806162 822854669 993185033 699785767 956312656 921855790 727001210 670989236 113300771 125898717 625853551 744838879 215404281 242846249 383866985 143563820 588536466 445440031 606156377 58560727 874864085 803407273 670989236 270652404 466492026 774104441 746383414 708409235 733824399 417549902 735378794 611715919 740470547 146102997 670989236 191554997 204522228 577153521 779052786 851085629 935658518 36924671 729529402 491217657 622077081 775747735 722536509 43736567 188225547 532241889 670989236 754959560 552600027 422857493 783150455 400800473 531223282 756848791 973808076 814516819 434508509 777641284 625503950 175029395 683982097 670989236 536114971 198379333 971744993 931755341 215510312 52713390 812650016 988453895 776497437 811888114 674462980 650429997 606397444 963143022 981090645 70542728 747446225 755700513 977649740 279451941 617056470 330801204 63501300 44485315 992554272 149854537 836205581 326586034 615681217 835893474 691843124 785810513 69662012 868316497 800964608 725020904 726049391 700501963 815698770 453909853 871725727 997638134 396871055 845670786 800587062 196923462 124619408 946744082 418947043 705843366 701661945 16681813 816257490 856550827 948752129 510475911 229381118 989040846 720936980 847683949 530110829 848989610 245536022 842656203 31835589 279570165 641706685 26560848 981188892 745103675 808963765 416942509 807022712 924670872 397860098 936419158 790609951 61543370 969547135 707919367 908189754 744325329 486444986 686351292 828572387 911281133 624124116 868181604 620355705 74013640 164018016 921292538 919171741 491270390 116235545 36310660 682369760 203078125 584294989 757496167 12158942 138248058 27622805 316506478 511542661 807670591 887243801 767737940 104702953 744783762 685383499 328950163 907282133 807756936 820321065 362439755 511154425 744466059 875071235 866429476 799182318 395834209 702462793 606800739 863896260 535772896 944437921 764575911 64762683 914736526 365552366 683615749 815442511 461903102 819501819 82225759 104768827 911182566 905907497 854868535 561956147 942344695 550978951 832438836 935467326 172985596 217732069 636099327 794780420 422638584 267003033 106724108 862557000 389696779 718787559 461530794 435368912 339342005 70167934 419514104 844676169 8313946 745417994 866109711 718442697 12067454 415237954 5653210 834361505 732628679 189881843 705282114 242760578 687516428 624947695 670989236 699309780 774528635 50206335 745907680 223406525 192247021 804899525 651069605 808833681 405655463 432533351 432243194 808978697 738521186 803234953 850146125 623729063 85759319 3466948 643857568 22056868 246841164 934329104 981258866 786877435 417427151 575324237 805733231 948007202 43512997 664521443 810259516 876981837 974123783 680931599 3823037 705370229 747635541 638264991 577775966 413627790 409843474 513059263 465328740 677111880 348027263 49541720 892657869 707927317 924333751 46520096 186692532 442713814 98158920 890634233 96453441 727451884 228149552 914468244 153435089 612020304 775164034 846592534 358334296 192168841 443939228 716862993 353203496 903872198 825471530 414240881 708693989 751543068 932645051 536438537 452138488 785426853 844543099 354896889 882631591 938989149 951065615 682539327 971826151 377654160 936979961 76697638 854520868 659376997 246383372 913707716 697222688 543624992 301354398 804381231 754987998 116184355 759646619 157818157 454517023 766782717 995096901 326124517 17408527 716644764 997144327 987943351 339660283 670989236 583682186 835878295 715196500 809076350 411677813 292986788 973339410 825544538 726531856 7173592 982483412 40404653 883974847 706063991 933725652 493493470 857907060 744062658 434875595 984720551 632378131 803995183 834293784 378941890 735089739 893768782 160732169 670989236 668876749 787552162 634770457 954164196 703232146 850191904 725945296 891730784 986698039 966767809 687441474 816730629 117261015 821841 419847635 414140515 429803860 21919594 958210517 274762675 802660010 418691923 178952033 761496828 993872969 916073362 752341712 845131757 807654158 428073136 654139639 977482626 199257480 693590569 755365969 386344469 930480085 388236076 19906269 466346757 550447235 719385045 947082402 460002231 534190910 970474780 680345542 840694448 758386429 542130844 670989236 265953738 154208110 983806783 186245540 75016225 542610852 365943904 954053585 753140228 852003383 789087359 269648347 406787127 957399989 824874831 578145102 582920464 686415981 447379762 457259676 853619314 317746091 743168366 814303452 160595727 737653411 847314597 336836713 757863977 195496573 144197341 869379156 80040154 853529919 591782228 565692246 996911069 987037698 833375381 806266956 790082727 717584770 670989236 915979087 240015605 970754636 785350049 371435871 849638305 418309582 914930723 93633296 421696294 793192279 960987486 789652275 292446863 853797750 722658029 268653917 767822351 678814061 839493257 916481980 699859037 964049591 809458713 184524211 834132385 361792895 3641609 392080030 328783850 34264341 581078634 359824980 901065832 350684036 799593542 103734568 467969752 688507402 682247915 309476104 165799904 469765426 275765055 815944182 852313997 833626568 922007641 306199378 887074221 920837613 977916566 967775350 776945602 748425198 706977485 644874022 125751352 650586435 548193823 728843761 528342432 750383654 979586806 970084285 767703273 422372657 441557800 846674009 771333481 259813186 707211397 759841721 827754380 952899872 95700916 894435756 334162582 966275963 911372216 951534440 189779321 723229043 645665649 899090276 942010827 670989236 863799534 787389916 320459356 200165323 598517502 780085294 892506273 325630683 990012881 391160447 714858522 933568185 832247765 567735891 970231997 809745366 445804826 482786975 112650589 740029689 989453706 314203672 164627212 369587135 382935369 896829628 938334539 745219584 724998222 344598069 47083349 966881916 666244698 860081290 902294291 3592461 937030955 163929280 839295409 409089279 771845495 624411006 923583505 957717653 917899273 966635525 987119467 34119860 894799400 914280562 574296149 381575368 563742735 779364139 791432876 189423989 812119917 632273660 725734537 482568630 346035808 496063592 954978503 497479258 289682481 152235425 753605444 252472161 816247469 782241051 725341499 509347383 155232622 370673158 327816949 435388887 685573977 11925085 947841243 775337560 682592125 992677136 960520574 914342293 170790952 843272803 269556491 742212540 780089973 420174689 291563502 787271973 633435569 412144689 780578638 773871916 504784074 238722983 561523608 852464746 276631891 643410123 568159245 857302054 670989236 742078501 56063706 788177071 775792340 854503487 736197824 740313890 923484594 72301288 251065845 187241601 605477215 472441597 29076652 358528562 706798205 985691058 782805984 979572119 151503288 723084863 601597326 603903745 635657877 670989236 787041536 849038860 375561122 428882181 710574928 847259830 461041588 904989607 136769238 525210737 970749311 737442378 296292420 912230296 893278567 796732506 912573606 535224654 724246296 953634776 165089194 891781901 760565758 475332040 703781431 27965350 375091421 687688002 375892826 164164555 918918102 731330312 23340670 911207677 803001049 244718648 690235840 819423133 141301902 854338615 362554142 957784498 626054023 901812973 763904774 902786005 794238943 112578620 145434809 876072214 910333740 819334201 831639794 502153591 846255265 726585455 809514217 859873412 127341375 672012132 719188223 766183157 944903768 175043634 966821353 975193504 986481157 708237224 494969874 674692578 866668955 455853091 938044343 853839905 211280592 596242692 983623849 154959914 906446579 735886684 933864931 136370882 729074486 868649583 113029391 681800929 710755863 374290769 761260180 67212767 509755799 994701195 613842217 797350009 446130372 509808992 265715505 859625092 791359498 681141415 927071027 77758475 476026713 903673080 745475178 682123719 807780503 859960768 865319288 821796003 486621670 765137203 573744322 925673408 482011815 280295383 841642945 843486540 446173431 818628819 138945567 386070628 840475661 939126552 899649334 837433834 813919742 725195819 394351084 659633182 819914479 710322368 387706067 293523602 684930974 816544231 945896991 937711458 727505656 901992732 286759619 376420782 490778689 997499136 597134334 760786943 921091578 933639831 112086418 241189523 837343965 862539605 924811124 825726702 601497026 419277066 749230481 157389287 398646965 956165648 560692118 804703233 384141716 61723741 695413979 102926080 144553293 867184339 627635704 931461526 91152188 549165553 980075867 948535083 943567787 670989236 844783891 749943433 639377074 855967618 145838022 86376486 434760924 58479672 643491829 255175376 779930423 904179250 339285231 974527157 350581246 988292801 644205674 147915983 973307382 769351879 465688748 228049328 765093510 656828566 255850413 457117822 415418137 369354409 628145071 261560887 889779410 67032527 755519604 761788499 717082109 682618843 788020487 162720118 524468220 282934016 342768976 768097165 908925969 811390911 573859597 868497127 23094426 853501676 860229181 780100610 543161975 790625397 879421376 853735805 47437777 390493812 558396209 791729471 406060248 115049749 400008299 38877221 872629484 876825953 528126707 347046698 688519239 21922780 384363435 850789638 929411951 487371227 111807523 384762265 464435578 932590795 724162705 741570087 866060996 944643384 114733128 159861880 514912547 504840579 710245135 924773579 994598182 641316271 301641867 147290991 444326478 530083721 973878810 756971539 705930076 793726216 713147408 144329546 640986615 248531523 371252556 433832553 774060671 150148114 799268906 622433675 735274679 981629167 670989236 913053606 420266350 968245899 773540572 255423752 704086352 829062731 727141678 398475453 856738007 710009600 825537956 841771226 943966345 689434984 746783118 341097647 755904799 822552093 952853612 311752966 514405274 496413460 801283053 854693844 143025483 951362214 347404553 923357693 715979898 693280275 121079307 731819046 977440577 41708737 517170380 858538402 166893828 544362895 869585320 133088534 255800239 268815790 981706115 978467738 292332263 405206096 505767998 780799201 935666399 577349847 865028080 857580561 747556665 750406942 870815973 949603707 908631113 964653878 336396490 139839960 791929197 399054545 134741041 251815712 285284864 56550948 309826044 991916172 659790376 948067157 278536596 98998679 936672995 833503162 787793930 120586761 807940006 257537358 151460540 742086260 922353448 874086189 438611207 962617316 759738048 728821902 725459252 712503094 896413230 737719680 451211930 59142241 948025133 807425100 184424761 745896523 166865504 743711835 898469971 973112572 978781186 581928858 836766186 964474958 743036421 711275570 840967880 929332687 400892140 422411121 249588181 589919432 272410244 902200394 437907120 280629301 260647545 688935458 833281752 757667433 11360442 722570045 162079906 421641949 231428373 305676148 678751107 777362049 502387205 779502295 527635815 715243058 320993710 152490828 830344134 164758799 324047388 66892769 921564530 754779419 976695883 65751568 951610398 123901 906315173 779939242 174537140 775621582 97374415 313928602 670989236 682364920 503287125 670989236 670989236 870346912 422536020 749552717 670989236 676579504 882782678 867341212 815279008 670989236 920438163 127080859 338712041 214180356 908958395 345948795 414036885 704789819 676639203 701142854 819809558 136984967 473345118 38251350 71175600 67179632 564615568 142268473 754710939 543759161 58586218 313634258 124472503 1061531 949107562 970312417 421566961 861099331 26365214 700376123 508503032 957406318 456937232 883608308 878579174 624494750 964484609 232015164 383706923 104625235 718703541 794872859 903613289 27533330 326003443 931766669 719668831 333441621 420869665 721977137 810379102 572703401 964790378 274193088 989172973 394235350 744757082 949556297 933592108 963341859 198198055 648670870 70498860 735447754 832757945 762386404 298156391 215529845 712178846 4512613 133451873 712865709 712430627 797541285 685206442 749604070 830847900 242094460 944931511 836200700 748267307 129797274 508748706 396049907 675591828 993504019 616793447 918879505 990321156 814860390 401263629 734247214 95817372 132345364 955150759 54088201 325751537 911142631 673345846 756914565 710518459 407770992 998563560 910784824 873675630 631350809 669006719 493743002 479337897 899046319 972764789 182855475 411596579 864191807 365910746 794842175 127131750 760914525 760021257 149884251 619093293 646115940 8082846 806839635 745920952 731330998 713555597 916655318 137463727 166516047 964153476 706043729 813735672 435889178 527468647 581014540 900780143 901831150 496260662 291079416 846094436 700946950 869116719 950790319 914043571 505916548 975576007 131375838 45475582 678240097 244867965 103200833 935359703 955203388 798841110 632936766 258353702 834150704 855303665 694359279 112292969 51085442 676392403 225770950 185300916 739832546 478018378 629147859 507159222 968077241 872844681 191693690 971950752 478731987 434546130 983821095 722838126 13963204 915746201 750533096 606345936 766071474 281227193 475646871 912676913 355378751 782003058 45711316 242267453 801664629 444262719 144109966 155616823 350699749 47161952 591359434 11402726 962102847 778476657 116057340 24793571 988836546 832805653 967102527 774861418 963296856 940666442 858371491 124839008 799546340 344740823 803849073 97526909 286164824 624240768 695045486 670989236 253983349 969420289 325161654 807251934 42714222 873462477 80917806 804362628 894738258 110541921 450761979 979487878 696350247 227415454 572222530 856967299 475488295 192886297 837797619 900319547 133772377 814538008 434353522 915964664 167119463 838789348 188969914 481798005 190492273 895275562 770273140 315545938 381324436 822421398 595789556 823648608 26138318 155496233 584733712 790238900 225613875 540701571 388208490 223433374 146460386 114505902 332357624 95238722 779209794 844239182 371506128 5648588 417527584 919078987 497944040 281615836 25572629 193543287 260929785 399959890 896409024 464263232 496234183 775477485 611089869 197991068 749522079 438125722 321780623 929960224 313779310 964438066 983077260 771756158 923257469 743237787 752861798 546983756 890456194 804516258 202234945 493318657 379551173 681157968 927651831 773369963 771758344 9761631 362464547 885843294 970916454 875101055 742276483 963947647 949923063 297702248 551207789 24040788 731244040 850459430 209569403 904439996 263638093 599271460 797974870 708562560 990908600 757447757 539959201 78503529 32701746 979004834 14920594 716084286 884503026 615249533 76247079 953538727 459227624 790236002 361502619 845627380 123433734 630721550 390867978 790014745 999801180 680020162 997085419 802224981 440197595 828842812 45760252 883567863 740502711 535000554 646856139 47768385 858535561 305868167 682505416 685025220 972525096 895346879 844852253 110388301 282606171 500661383 170833843 953523572 639748807 198298783 460645199 931504725 699882006 884684387 696210353 827509975 815302990 192457998 508531433 237003128 386886762 887489606 755351856 670989236 825550556 285120151 819201976 924202926 219973528 878795393 468603218 868229854 491172022 716676497 678947506 52367053 788235161 142851060 762412390 762932757 829184917 853718165 164259670 952022725 956916006 910486460 979640899 527194052 321043717 196855398 413851698 900437667 607588449 870638573 364101181 925995265 767178708 249415153 815617668 933680602 670989236 820909652 38320030 188764935 573664009 890626906 754735905 25504060 604959383 940488029 114544618 796284820 996785801 673024147 428612427 704388165 851775543 424796042 948551018 740107632 889009918 947627648 436328922 196710262 582249030 376786494 757384784 29856058 857256373 858726151 694584781 838566962 378968321 722423550 968959238 895686878 960006926 984147256 266216634 670989236 968469612 763920573 503669752 914713265 379913371 422298259 709656667 80397290 836004678 682960161 912407206 812890908 742194886 771224341 847198267 728189491 295603983 680596942 41130664 959664224 107311857 833634371 174841429 92940964 845140741 26522761 670731557 795578619 863358317 716410178 907359659 863306263 861139638 746497660 466838788 651407702 757880970 146282837 486664177 904268330 401545272 652266236 736688520 660319893 670989236 903106005 82119208 884484370 142552958 586320759 167217884 834500199 780932005 75283041 673555021 595584292 800234174 82002335 150113847 601737838 245755893 804129279 332243735 950845582 496281652 913707892 932617050 993501063 670989236 715703320 796836644 556900097 724765989 90960921 306946618 138643275 951663063 774300567 717775221 425446972 965136015 758777717 35118505 293801853 932098139 725869272 893249205 263610750 833583037 791244841 670989236 679936045 869248934 513032848 551525098 889707749 847436591 707539851 802009698 788055921 448948656 837890286 481404048 130078744 997554602 962444616 670989236 263624076 462621964 317978130 990215102 600085280 435337396 851826154 811922091 485762528 984651971 227636691 314360087 928754925 466502150 464588578 290599327 993889251 645800971 812769977 781997584 762391078 878684980 581800528 960760265 749099484 749831741 365752582 860213202 849361466 903104574 232573655 216895064 444834093 286416569 2997268 669671314 82101627 691885483 864816888 737639803 499063644 637707703 283393879 886421815 130322714 42168986 426791097 863315138 762010132 741570995 483794964 902594293 311707534 644331224 977096580 815033926 468762414 529851274 639605717 781196939 328523673 602909003 674158697 634482165 297387649 774055815 747915358 825931653 439044095 248795358 343467047 794946507 923900389 845219099 451986621 50942896 774559107 670989236 962091298 999171680 494472692 855981754 880463002 750817725 648743347 749354678 896738468 686653150 806812820 780252715 20286197 343583537 85181677 739482168 208233990 318894434 209221021 201411147 555309891 733880386 745176410 508168947 78462418 778855789 973485517 721402055 759783370 800320271 653680732 27221807 777494889 674390832 605590405 449609544 626266612 206608224 272737283 944818436 802762035 905680575 133641263 376085187 788723183 767953620 485819213 586875838 198530493 949694991 810652621 124826154 854143827 115648530 113918752 76242028 425888866 15875006 856170811 857643800 709135273 902549047 994488561 877074577 388973778 659099078 853106058 602727505 688209043 457799632 645424814 308765250 753493220 481338295 350355247 40046910 472432893 793043567 939394568 61107365 878474534 802785979 131802682 699009460 600763238 669782204 965931329 763687320 953471234 483745787 883584571 658420384 865133830 848697423 79729809 271889818 474228717 265740160 527958562 801238278 841055572 862939176 214753487 457436545 255509616 441428503 716688096 695100673 811709265 886190217 786334200 30743144 38900467 487271981 574115309 138565531 123221220 986137398 135138276 404380661 584613422 752611976 979906590 897444042 520715593 937951038 392965836 709855386 435691721 235396333 148044105 384158854 889502565 103419498 162057635 476819628 635249869 418367375 875001431 140751149 844382242 718473487 316092953 114426150 786645436 612509315 760256726 675316186 145506181 250362068 322058395 964867458 696626274 663536537 650973447 499823587 714862768 996915716 581986390 11149185 416934274 594232908 133753907 858777039 993845412 587525612 864722829 237277039 211623479 173334537 336072380 879396774 668232079 588797765 864380465 654336002 218107098 267252041 367400084 623365058 390257111 901810070 323643582 755888501 757447440 932797329 539352520 727647007 978559669 236452497 600764124 8575424 895482357 457290718 778047784 799943735 361918295 973113890 840420310 777528361 411860464 624019879 449684891 141595699 905685683 787110975 297994458 956488573 231820047 540379588 590335922 840369489 38119732 801741075 283527139 87236149 87604402 52699362 487087722 340831551 493025454 324982846 180082191 755391785 101042233 528093595 496590845 518240063 605776568 8111870 442055726 855056677 456069990 768771248 999617301 949823605 159807550 623470542 992623972 778892222 926705069 365552342 910279747 151200309 348171308 754596870 287132211 818714923 634695415 966550704 670989236 354486470 623433089 487467328 313691339 94761284 729026217 288505151 462040043 745785219 859566976 787278159 158256103 802356359 175342960 346049887 925657275 794213689 755148636 652820954 584805086 927272221 45906571 106419354 603812770 974828231 800162070 697412542 112193498 122358999 670989236 339905425 790126821 711114406 968315286 795452466 318062847 533292496 366493168 901854804 622485047 693638962 459561517 371373169 468421440 777881702 782838318 796039477 178523373 793015930 792305538 566015304 440299610 500607671 9172378 20819408 445874484 438615376 933519436 747879480 334097498 812082658 267307983 238761226 325939147 926619288 689173505 836887873 929901390 58467293 123383013 259459028 785825799 783801799 265182243 989752204 320127486 814810737 742557104 56707277 84636926 827412133 582951690 653905938 892237406 706824263 355058124 925739105 684201227 350373246 682880272 776239349 881146554 883571963 713267314 896415901 423933839 173975221 712646457 789438535 293620609 937238082 811026157 558423780 974866010 40472122 327757639 839905749 708365035 420459132 575045662 155957078 560923178 262547252 983268733 448500314 6221768 917756213 228088940 223287816 495189626 960821216 372464865 439412287 413684022 869255202 367191060 239290234 695777368 756159524 567717739 941203312 990862450 187803007 786944187 130454026 955405426 636383109 747996827 816297450 960784206 231976756 634335006 823510919 800876736 19776829 336619632 258729469 802185940 644192615 689459763 768304047 2081777 859227028 918633445 113002945 861459321 800365230 631996072 539646853 548200769 346296717 723127690 876154312 935905895 700895968 993387052 228865917 741713162 931508444 888526725 987210229 844356073 724349798 814622853 989664193 448700332 943802655 7828978 71931877 931631072 666983334 859870602 464341790 431055549 538206865 959396030 794526472 697839469 961074665 855275883 786154241 293609549 670989236 750145202 960661838 78478303 77576942 150700623 916641550 949592902 706279344 19442004 123463279 636301055 440289359 948296816 374548512 850958499 208140402 839461539 156969493 317083902 196041388 426087057 495264686 828288473 360454400 441508861 366885113 287045807 949163829 244501023 446457422 940296845 574075994 281875617 82756064 294329391 587928206 647268831 500916866 881932195 947324028 651090913 18765782 249723556 627023364 705906242 973778872 994420866 951301504 759836604 265753252 742731493 347423992 977126968 769545995 256731686 864980635 691196192 577736236 859481634 672459557 301091142 941292052 273030467 966253416 376707909 717081324 272141376 891384433 285244248 417854089 925348028 590884446 905251871 913176740 902367027 715602908 3458945 882331208 622963267 939584525 434025526 619769120 923368446 812090310 967979071 370021390 506028722 898699034 942023541 257450388 729217432 576867749 472959522 860169790 370359498 552697371 369200263 933184221 638458343 282182267 701475435 698481950 156700445 573707826 950857904 818510610 772315705 895075620 933628937 763245045 976381242 97629114 243149197 905865360 645310366 415354381 859465944 466519078 50413598 982655673 224487581 16067122 996563638 576943000 969401664 193506358 800479135 756612909 36343813 427695539 438589198 154965262 586434384 967366200 724114072 1797828 752544233 931422686 624991687 832281551 464965180 598670671 699244696 109584882 766949624 797564456 955222806 978137141 166175331 697888777 156538782 448809885 663832384 916205468 917720766 678462990 704579099 704325624 933961534 887170760 646733261 537070433 927143252 647040218 697621637 670989236 241416446 926739418 763314785 824340612 733454710 797527510 181806042 533701515 704654568 486057280 423647188 96576182 891692052 325182026 365915085 3869281 872687570 603979348 787389997 427462877 802399021 89301039 162465362 785595881 573609139 634811604 129544767 152174372 452805307 100365906 215336747 874863424 108067370 949379149 473433840 990287755 689847953 843222254 728859777 833127432 670989236 726108375 244212558 199343840 486095597 517197837 833088290 643512275 159985355 227176401 707994843 957578155 976192087 167371462 962036890 689331183 796259926 688814166 815221074 271331352 730717168 333585755 496981793 437747051 746395078 117343822 937046364 670989236 750261074 310293558 833851724 46004476 429379084 755992766 699494497 993298042 760184188 347903850 266790739 625938655 957357224 287621066 312086421 133107064 385731268 3048896 544344404 211727891 926168758 834494827 818426208 429939731 670989236 246177268 495387824 728678956 390538774 252347407 850662299 867241863 594541676 44735565 860388710 670989236 499101076 663793519 890872282 413912557 227358452 451341146 751494593 957342167 822765692 353362855 421484150 655251787 779384983 602199206 834441331 14059774 816289193 833665972 514519630 436453019 22233507 162672262 499961861 934330938 849660991 971226991 825549875 395238097 903482979 670989236 92907106 507485272 748572467 162707749 692017495 230946572 694725769 64598983 752381518 235072608 724129553 177905315 965115319 322743911 675048935 709909498 782767612 993742932 289517038 258303879 184766273 249874290 436252737 920412534 348981743 263689161 179233231 771690608 670989236 730358084 601780834 918259917 939692905 342053575 996355241 213163399 235845168 26965137 888265159 507531983 184200133 727314648 242877891 501409599 467950649 729800175 21942878 427495862 795447338 680782702 213768705 811552457 685667392 550639201 883339141 919454076 93395897 823628018 329498929 317348933 833401711 292854125 835992643 597494908 594233230 912017805 651725734 111014106 978864631 232595551 569312500 203333517 670989236 322473939 927584659 296500023 106524126 646355744 930028290 351345145 189745907 849145430 516474516 970889092 632086907 618292062 998521012 974235488 852116190 416924587 818333795 747454643 927114723 453159995 861592100 567852523 599629332 263362541 314454710 966937456 36361540 765625991 325513747 702386163 677682036 715988929 801484566 644824638 205758725 339684095 777897494 879092739 303487970 374040179 371884988 879677519 287717237 771288378 950094186 945491685 843344280 901094951 22649522 445851782 781916095 848581969 496413785 852960889 441125518 337523892 956577225 35696433 344124049 849406333 363721990 745236236 666284232 862341005 691366801 919581125 437549691 287431556 540207656 348715966 697350569 924058482 679180080 794651589 741413857 822572056 894114999 95133888 953466721 851993666 421089462 591776378 698582196 902783869 275973150 793714901 198202093 762267936 661728034 943152993 406440850 173793014 903720932 306728848 254764846 899855096 33482865 567495750 570121500 962345019 572111028 942957225 863244342 17472671 619858534 929885741 768663079 460402700 107681726 807812946 742460202 804871415 800417340 340510792 910222186 780075234 781491985 754643844 811378582 18890803 449850542 130629193 924949854 855483857 145316102 800943167 921815185 642050825 128562329 310697994 493306095 192144365 432200535 881258151 824225359 748795583 522233691 844139772 543773433 263348022 814253234 555653143 987977382 680785489 525120505 130500993 61718896 704772038 572049759 991333753 248053658 138337252 481010839 759242012 476947623 537744351 680227866 82892450 387757234 650924420 740267151 523943213 259308270 893601469 698811779 265825575 479169051 233236443 888978211 130656013 865074131 876217669 885050570 132237122 757188373 245532608 225885260 96265246 791007488 738731587 670989236 123426503 23541622 530663368 386765847 904146010 509396120 109557284 231160509 969439752 962373180 196078814 911704831 960180599 47437869 914436305 836903785 205200481 892023709 613568764 760528188 980876299 755203689 290773994 930629597 780132676 918775580 906950422 806987200 744710052 818197988 169685678 141559934 852098588 67060809 682319790 932258055 172789607 793653107 717102012 921381960 954759014 352712211 894458021 648604390 385204397 511876672 462997147 751252463 517660268 679879594 629820224 723719744 274425871 197797220 727941896 812820644 858752361 332589383 577955352 926740114 631332862 866937624 679054867 384525539 852426721 671112665 647470044 748242780 928212577 460008597 650466386 695593970 510943475 115344946 829012612 762804480 408346464 779261281 939064980 999291332 335784756 796280121 351428104 51468289 214743549 963525388 425478646 962700858 748733686 627223428 647318497 844943211 764258998 849681144 707686106 379134848 25505565 561137668 844815334 556231241 831890075 783238431 223728070 42463187 792219925 284636879 277758040 195456803 706559131 859145639 811379684 755828415 907975477 746382814 994912618 888152085 7085507 520344041 218367448 705624202 705033199 519880097 387911107 183046810 666077059 866073886 809550223 528996883 871088616 33975087 807859211 889033270 984928695 812252365 997478563 890969528 480392374 935818185 536996266 952620922 684487482 848132032 852149961 651125843 819428175 60765455 550681016 825926860 385138891 926103749 642391169 947546200 719717782 275709090 144207497 880049940 973287468 875829047 329264865 127513025 484334486 648081229 823308251 355729507 583358628 995023226 650864208 816388231 233158971 450343624 289549975 706070696 890723156 882297474 971604330 919049209 568228499 979156960 670989236 231698496 684037208 821311201 881875125 350934563 721046200 99599334 67490699 87911917 672194313 109722973 377833004 692321254 483842673 149660155 271035242 670989236 700448886 713911052 102537125 389818297 811033097 881967429 492542677 670989236 842123018 161116023 993763282 540205389 979521920 302294930 448632609 906874021 964117441 707487158 830348044 669474799 773643559 321683177 105963945 728479546 882061949 529750742 660512292 604925266 191769537 672313911 849373931 466427692 356863335 727783968 173239982 232787476 356158107 768230337 76748050 757844507 287927629 228113060 682929144 790865535 839181607 670989236 920164217 548832599 670989236 474009328 149324894 707699936 886436088 786482485 93811352 26138072 294699400 443694809 312062239 872995037 835144259 872866641 25846725 839395110 905566671 210525080 620902447 621902989 435820056 955945179 820514678 915919333 507547318 161703538 483879367 72744698 877017153 575911032 65624215 950019517 316213752 432149600 680607683 881283499 718124223 391861687 438742326 995850663 58991796 793377985 420654036 81307762 863101174 909743015 805470080 709773358 973344003 918007427 750430490 831724690 871064730 164020082 674233549 953343926 768133162 792765462 66548543 815564317 466090746 848847657 38593115 353151997 690941194 670989236 199762648 970152812 848954987 764643086 459463817 329945770 121422475 574839587 719798142 817212863 187249563 188042040 670989236 772300486 635836216 287266032 56884305 154989741 307124247 756745008 531364272 670989236 913330830 255751389 740880452 988979974 338145937 262044631 760895434 642205076 840918108 184713779 719383960 514049780 71315753 979758320 151099747 340203084 991725117 903346612 372538563 701299450 954840401 849228857 712258643 906974698 316883693 191065088 742290094 584769612 833380245 184080019 994311841 872273107 980574958 529665577 731888427 534121055 163400262 896091646 870749096 721281160 825167150 537789116 780177519 827817721 265422730 990733326 144651356 517183902 966328219 380767195 306679362 56640648 925994902 601982343 737041375 120661266 638276591 138759797 555980665 588513896 688101873 583457570 418352448 599119440 955286616 276081326 685270498 265876260 63126275 206908041 957620895 848902942 790748386 322232085 617390957 41443454 235042692 557049702 343203818 476963602 778155119 898739380 882786281 737320945 972210021 820193513 931799041 780676616 923372466 847510646 857602985 831119414 472818077 463963488 559821665 380024508 475574749 884735458 758457088 14151391 59144524 725972222 942634735 915681687 63589347 434164400 732873755 909671429 354931926 928941000 23224243 847202219 575512519 510885632 857749631 797698069 984391629 443995420 492031463 707781345 859632009 629486818 197677645 769957810 996178189 734992407 903130874 707751969 763626301 296376922 453450368 208806424 290739202 930355140 365737790 833027855 788620121 545418816 677216648 100631078 644489386 455471929 691608094 610127166 853535115 179196106 178728701 710660603 930817766 912117339 835513172 346728145 971431357 407149217 913422623 825459845 153567471 522674707 984131546 779701649 718402058 803827000 943457772 996854088 796142479 148058426 306241318 752382609 496138434 512901597 907135464 292707327 238054746 839472754 371764232 710109799 529630735 696377890 595727309 242758852 210285244 744285548 980098454 513049212 530899566 741171116 458489013 714713238 672702999 124097418 823610593 119114065 605417340 803611249 755874448 759216559 565555323 710426255 489233360 221437712 898980922 682135357 73224312 870061135 613944283 407102497 722926627 965908446 742310122 775193581 872813851 726214672 791486437 255055007 569265115 656575167 596710419 123711089 383383014 748339208 5503432 297080850 162586335 27024361 875549148 295345280 38697002 315433736 563697374 341242078 570701769 957982488 904627198 446348498 240005164 283905064 956054118 257995064 802259751 917805737 218503952 386643582 478492832 527150092 952140831 909619342 981504604 683964180 690953391 736240733 951208208 756860602 219906929 903527740 383486064 682043575 305807139 847169098 884761536 288389562 427449273 493621611 824570471 401639798 850686468 936297947 439574981 50447115 136507625 838884576 598260039 722777481 759650046 845216169 679776749 659959728 168281781 757813602 764861385 331407638 731826895 928096850 87004087 834470522 857016694 583931934 17997999 740625678 735774240 113507440 550277640 133709598 517491760 721867502 349555108 785979714 355555949 766286310 345021615 613882341 795652047 181468661 713103673 453697855 15384366 899527756 916138387 767360999 892791930 770829863 772729815 106067294 846941997 537765150 170473664 929219210 24957639 914044462 435761914 935174303 450189093 723602210 362052757 649736858 752419504 687248990 916332011 155471950 177782532 454680417 928350406 56061398 584290584 115050767 902258710 371403030 910354410 996225841 951355168 505618492 334051054 13991711 19975419 716925650 797747236 878981864 108073618 80419063 357661137 682747012 931416864 990637847 811236809 682254900 778871044 141007807 990262251 644558664 197904306 918520765 756616833 342864797 53890761 552355519 927626639 66299459 295651642 314191618 155154108 955387862 3403017 423749590 877908617 10952156 782215179 725191556 978471162 994398481 797964853 545205249 322444992 807156901 119644916 42009054 247426135 991335726 212513201 772697776 946867541 402272200 869721863 875973979 249848069 552821101 973254085 723468083 931796008 251052530 598699803 831478284 920427825 598779487 814703284 883571853 913860813 149670544 910311279 929068905 911484723 69712519 581447966 656126355 664858442 943181704 555962160 209565351 914764831 343423549 961863456 108159663 763721417 435751752 484111111 769380057 366665733 596291377 808175330 95461943 814514658 837776858 84564173 349095919 942470828 365821553 971821625 392382439 920086127 70943422 753470841 758022606 960800040 898708323 232979350 167672634 709772092 614876384 271217191 971354320 22872315 175546499 910714879 977339759 864461655 790479506 885620985 962575777 966548285 171556282 772480761 943673076 24435786 976906488 840875736 850499400 619877715 171216459 708651555 407569435 752466131 806084682 321314110 33326434 695201556 697211851 180320693 483331063 241976922 701686904 997848459 159680460 523509344 800520805 973631944 856456158 813975511 834001325 876919562 329958241 960256976 917181524 116357453 648853424 316950020 896562974 830363903 759621597 166194817 730429118 696533800 190512935 765042534 688380833 838903642 853240100 853396025 82943582 978160469 302941357 718025123 722267177 169035783 971126978 374266616 255439619 327448087 277484467 46662417 170756977 614974262 452011560 480383994 870543274 722260484 784663010 356272554 833702403 950867898 8846853 777701561 738022524 991390549 377845900 897823251 672501430 347889586 901011468 911508152 817355101 142221796 811362812 479245336 308156153 720530921 732424884 795048135 5543308 454754719 484427444 242544513 436429161 510274296 868327473 11836740 351861949 732412766 316021871 916107126 727484840 252689184 265600440 557405999 691063431 178450595 672608875 69580965 172253250 846041314 265921457 231627852 19130357 820747067 839321650 757715068 372854118 740743892 679975543 748615994 340113232 706266085 701156335 767807209 385431583 606054397 36584559 583446623 715427357 925101659 737109034 554265959 869221388 841051817 724986865 188083044 820802212 985260522 685324799 916119591 990840682 291739560 294031015 816546139 175600293 567471645 837292336 171853313 105016832 138679040 81251934 751422029 769561660 839832012 933719265 964751511 145372593 722419757 379359968 708471219 424939206 970451248 594771795 535700629 673811251 20499991 701321068 932667320 479347802 827241246 174758061 952790519 739887738 433548092 906472515 500986500 821584942 872563500 923005998 206476129 627613879 431001444 823161940 842640456 507587677 984831446 543794713 419329042 608216742 158605628 175318767 404993832 525484833 348025646 839068486 733548097 524083769 77940628 701410834 481118481 224142141 673255058 678080288 728911603 179608732 985415313 797275951 632835975 985690629 999457940 907333720 960216638 323210577 991100691 577997893 960160380 851647307 769535665 110194130 915526350 100976697 38022071 867733908 767718032 822674971 800541018 503578138 169762892 764640001 324304148 525677063 562522480 767705525 522545542 887463450 418374524 814815644 985209812 995618888 846387057 650748425 525117535 173050727 694868657 777286143 959179656 424738015 782685868 650919663 198756605 244946830 863095718 708485839 959921836 413454297 597613303 482096513 960598722 857472545 111932844 923709069 461269694 765600278 782609403 904697650 79359960 837626744 729710225 113684925 45159105 764706979 900889021 803266595 745281088 770696594 43491986 670989236 457610614 785229648 960973890 608520980 943369895 952126947 41589911 974099267 762950551 33955987 988246082 670989236 703474809 683148024 460567230 839658848 537931644 698625815 692496528 35652762 686572728 339001198 717382249 955612010 28250256 720407651 325428580 323536544 182953677 241418109 427148546 944979355 316731361 955924689 881316617 790185862 945586525 133103175 731862790 764571019 727603147 167296699 961514457 777891289 670989236 567406042 720714117 941179790 757928097 206307460 29848959 561543883 709099854 637904265 742286650 970996032 780313562 798399684 458758580 157692776 939481144 468400734 857932468 724997669 36480353 600595337 848945103 803387804 670989236 164351690 981567604 8937963 405532117 939482315 998811047 51935797 865159206 175745441 123559440 942140988 200754679 755359609 673465786 346315777 775803664 670989236 366356111 564288009 252203601 917820133 169731157 516970822 899401479 822757296 882684565 923747653 514137262 936476337 78169402 690790098 816501780 657255651 637298292 808966256 476900772 729344167 630826775 374497962 877208465 953863291 726721090 905152101 42089789 756467891 998327013 515338197 393555124 70974934 996896502 997268318 591389463 438337691 488118781 745992972 768616309 332201307 119971164 109241504 372162877 495044286 755692603 456050207 891196008 238329836 879813949 610910351 682446804 5989976 594244934 240666809 82669385 699647205 928178759 569542616 840545957 816097541 168630655 670989236 911799584 416770208 988429787 889610939 677682942 879011686 837769774 790020365 650690546 872332141 35532551 722805951 170403956 320734072 764561574 633063896 677996672 733363567 752381141 849311423 443532832 95128765 744059233 739768574 737377333 41248457 597461624 886617469 983084094 132553772 449791228 535722708 201093169 670989236 168362074 87899552 99210846 812797021 864786220 471948697 3482714 730744272 670989236 501831924 126669871 921916685 962539083 899761653 791298552 959882151 338822903 872720551 927245731 245670017 762398936 284539992 818784475 233065387 741134290 906524605 790131993 799582794 917082967 927308624 415537039 909649488 815951786 36206512 91063839 775359375 670989236 553503010 670989236 696641656 591997346 670989236 52690603 761594485 888203861 403946370 234043430 518033209 595304625 719681816 745178244 798943877 170682067 825399105 370978720 55862272 714423143 8291168 606977786 674836620 238412591 846038847 825261322 515562559 145136201 703073733 248482303 740839058 797490861 997290263 808572763 849984515 777370107 687401759 435497527 824023777 817810163 215301789 528361 100955202 715788007 398165767 809272906 982225625 588159027 761963905 320312806 603317606 846103362 846549130 706048169 999494939 61672614 923087300 825267104 730111373 789494062 984998806 727465093 282053464 760828965 863989613 890173999 801069958 875622244 519181123 182078431 781645014 957414489 419874043 892280877 987926431 286501173 928113123 141900633 560587146 733151423 11718668 316776147 237404118 717341426 951148030 174492163 82306113 578777451 984050963 815216144 196061003 949177561 714862767 757083690 163761366 146320302 938482489 664500025 77165948 592046795 169620037 125471187 928401495 483478435 910222400 176749819 855565797 167008563 473972560 938382675 641648665 930902903 178814801 89605687 703256941 514329590 574657644 961575873 705063787 543188051 718447408 922995609 722706197 308946109 900812976 986973784 747343340 254406028 288808795 889727695 896108901 904802044 884684988 355107891 520602612 962596424 251206464 122372803 690485557 779908872 22020243 928882101 760461336 6707754 350920676 675835663 387084306 523514967 819670813 389370216 573691860 866290932 302479942 786851783 445183423 657534646 424017298 134938808 394559228 940577127 892766315 469477605 450597573 786022988 551109477 747486405 998171290 750586882 819829682 918765275 94752041 863135935 855343724 75127480 769159578 233004174 873237902 507378288 882444685 600177821 706332899 321489982 950462275 533779753 753628072 243949352 785355901 85011736 763846517 829960005 333725726 852698147 106966176 546701920 953362964 797027427 65087006 720349237 730027891 596012681 732524744 247321323 551706967 453009754 102573202 764252102 106162614 22753616 51154510 104201452 263961757 562745969 307274693 425693373 543173206 934780954 548434381 779828458 195491003 271560038 877408990 370270976 206266219 153851764 491433954 367034106 956303924 271394387 836881722 674405988 284939549 333633272 479658100 873606091 728760480 38606358 383499125 118415043 548360080 27126728 911012442 205947802 886872592 176803773 647786753 555141059 992509475 167347116 53908919 488435627 630383470 994646578 920125334 804850118 910547492 949808063 546055680 908076813 897848276 779422928 463119415 116627540 780078411 538425613 443410864 706282254 925589826 704227765 44009235 102410421 559250793 673415575 462393235 492234520 930639129 823973710 892268774 958479549 956301718 719153169 740827219 962344753 768859474 701414599 946474484 265125440 617378559 948067628 115328666 2711363 691865611 23636169 787772537 699822182 554879789 600504657 880493702 710756521 894273195 789243467 614129066 484590799 883811589 673235191 736343154 508304748 690198703 787374893 898442829 657059188 673832342 238743026 755502030 687003880 779192310 798632672 833841101 487954971 620223087 968006980 850598174 846669045 670989236 455377164 48244045 874385166 645482163 902396551 339623771 942066679 993847107 467000254 17523321 980530599 238892374 835723673 607337411 852477411 345347378 709698745 867449749 726135270 731945528 253788882 904288928 860191286 105110811 868740593 756160980 798345357 542573258 712668696 118453328 691525940 211509423 39495269 929377743 822991924 696955525 803562503 677560477 974733230 973855578 794678873 864199503 931520540 838807427 680072204 492850692 955802092 794158539 377412306 141813321 754202870 92498664 26378536 916246540 314779931 359864462 728264247 766477630 836797093 240211317 670989236 80111594 9884088 773091410 834142161 735239337 827578175 541487701 830262870 745372985 499519926 672222156 539418568 330788742 946051075 734769257 68360599 139566034 758302460 814856938 553750409 123397205 327559561 944724918 126255370 762264682 568814998 174319952 728729927 522419511 167774045 916230129 287594030 826629062 894536291 627216652 190843435 259093768 570061874 942073295 797966337 68822662 802613363 883617855 919449241 87618106 937187656 20255911 246316337 898688668 895219752 851613892 875974948 552583200 188043892 644646162 878460196 268280292 751174694 960550097 42349648 464910285 850207779 571012272 394929056 859762131 346326063 429503414 124471315 683784890 556656451 922934269 868558972 785445517 942500663 706767568 729919933 869912050 36788984 774964831 670989236 873455222 755656675 880850528 118375558 371146035 420700158 20592320 299890348 686701292 323647481 300534245 692127308 816182309 794317269 884904334 680087759 850868377 757818617 892040771 801727148 657338217 241278904 119680815 793517490 900536289 797450091 198396554 891021305 822578043 973758545 515743102 375607295 528717704 614702482 401017397 955759459 656221172 909151244 598803043 869505174 206178651 718697644 879358029 195637446 412214388 110075290 167435113 275987759 656878838 56526201 574602680 975665765 312105934 291538446 567976752 967404375 353699706 480823047 807396666 802242704 849586932 794426597 690231034 891693514 535220799 715777344 758292748 953643600 909045447 419597134 57422692 923376892 908343998 995599660 873912294 704453252 404218883 934825625 960393297 651283570 872867409 996044932 758920018 325887562 874261975 20242972 942757063 808756927 672927479 490345711 718274684 5241232 361746084 104547527 219310626 706050413 934801523 753564965 223831779 725037430 624080715 242210602 365872482 810950309 905197232 843726244 673146755 319557362 106118996 948079014 599081941 653775138 111089293 118805020 882514708 667722383 964788597 956599390 958828680 387088074 749920269 948674581 670989236 309229110 551051603 934803400 476497486 676949168 520629937 858984673 841960812 730712882 709267853 862139871 912558620 442122954 836915243 65122650 428397188 686139626 187686735 869353350 351209808 507739787 265940792 726378881 66411027 712280284 814590113 333300616 767483022 628286035 979252597 821020806 779937750 935136594 840035609 415135553 495147875 667726235 933426207 981161030 278951304 325048879 755076908 798858032 548316086 378365868 142323600 680065168 785837708 713418163 679851856 662082743 857322939 889401939 228872360 947240350 46949699 474308916 727542184 802426403 155407074 80475914 703473325 230436009 853643100 379347644 75609709 401080453 380230501 994036789 749979931 322224284 832344840 238791422 719981443 254441449 425185476 428290251 806866613 987710232 204247061 740974964 801110576 346244575 375475088 15375786 656103787 703075761 462913655 931283100 356108392 887428549 39092081 680173890 478159324 905887142 180405817 957620947 817714210 740922539 436604597 875093907 271583340 622250732 441098037 220223929 869034720 721429564 457523226 332694339 126203437 916759036 772902433 755675515 255764398 762692385 918896191 892284416 419806679 442810775 819524779 78756757 963208409 199525606 693608128 682129860 404232964 50832612 763966644 62052643 217634048 708547832 497722109 989356329 866528506 682120274 262911768 699718498 917442167 728558153 398144117 967853151 800594345 535486122 454066295 151709152 694634191 902307948 734378530 266895328 670790227 79786038 978188172 156014348 736274802 783591288 174474761 695882804 604421511 967007011 911253428 740450842 832056497 984568217 515862537 941865754 967073325 192331105 692720133 967965001 100116963 294077666 162182074 510760810 829938136 384172378 421486231 734601120 793038013 61552697 529608164 756454345 364726009 829417036 216967250 734114085 891644286 910906044 794660798 909418561 909068170 975754875 101907243 66675924 828640588 675740488 252597374 982750040 421428352 993421867 348641875 81123010 785312399 616100470 733958418 866640677 83946334 376896415 791301101 96967426 811829416 738845128 818652588 601898806 721743201 844212379 114107013 941700418 182837182 643440828 522750058 715904872 234856732 163377168 949300457 824762435 658070015 986647262 251845859 271318116 670989236 907375073 310924412 896309901 609058243 665365093 216747978 830817055 17762445 107946636 138236208 707363963 102382422 895872598 519619330 852772135 788599400 716614151 440090738 685240489 326770715 983619639 926776681 25998222 329125250 783604518 443643559 879107513 817623505 902411539 800113670 91128510 95066469 482002180 739285852 283353196 895664107 601961266 531640090 344491960 987934299 894852604 464899491 680242767 714102712 897392899 662058891 156482241 896899323 495455674 522582563 256940539 679038011 193025266 311269134 353261663 950329669 648353833 831726201 294155112 774148034 952833161 780042371 566086715 14830552 871278633 788706427 587984166 849239664 999198262 337069030 702343841 239642023 463379465 988249062 145845202 156380646 847459266 698700894 941269497 999991529 686276569 505122753 763931978 753281078 161430247 956524260 442706147 866041697 911970064 860821157 727424412 951912758 362022334 400925472 737315422 513854795 709434430 810512796 812561077 685393898 88696443 804910636 873386356 725397301 954098310 832864700 157405578 670989236 670989236 973583024 285180963 135287990 226459013 303022714 823389191 345221767 715996465 130414765 324895724 115968697 780958120 935798055 986446561 82477421 679970706 884193064 774050754 778459851 919179282 579059020 306802316 922841663 291307290 709062797 758552549 511936632 900735030 739430119 87950419 453222522 21316877 75226141 770332588 961747926 484638690 845203334 771408190 884865201 168099658 714856014 237717077 694805359 901253704 910057560 800674899 545319870 323603803 535914417 38598440 128630251 362615351 808999433 165040653 576393711 689518089 515781557 931063808 355513210 633810614 652603400 60352494 240714844 484960436 808822050 911886532 755296707 502944822 687912306 364529382 801356808 686449490 281660452 652660331 886395013 4788767 960202917 386730919 931705552 896269926 851392107 712688434 790594843 851559253 261735961 810728979 912858683 424635720 454809094 691186881 84338170 487174916 775549532 977710397 519503578 98828980 724755558 74645681 829931609 408534883 82645722 404886689 24459052 758500044 843081660 801053420 772640064 168199608 997305050 988633614 849605796 803892981 788965161 710118953 882728756 839991435 290440569 954354513 877365030 585640593 320512220 420952364 960015999 778685096 833126351 752227428 13107806 999082623 577295420 940319713 320139068 910829053 161294654 721771313 414896864 765134005 562153167 999130770 37272528 461443822 120147952 970817277 938061297 926003414 25208630 916802501 656567858 708592658 780369712 95579610 244478071 814234521 582165720 472285763 131278417 964102354 924934612 709092964 414105845 870804369 914617484 895410564 998819955 362707476 703982825 482861584 564765873 955593207 558405970 987855478 960358140 545367756 935761055 894411686 865687399 563393706 892561719 908493868 599412842 630212528 247595350 936519327 336253984 717160375 689837879 792655589 32899709 231967104 863698745 159507883 418363754 78132342 602327839 632195488 600171820 409906014 775754576 19194146 491084213 919623018 945099801 622490171 629761378 736316197 562033845 865351740 703256394 541756610 488671921 873653292 887562715 414925673 745893171 925868244 857321221 976189168 929321274 566592096 365087325 82088962 306840402 212892539 467524949 888280645 242076400 150262591 82192826 83854756 710952865 180388258 966490704 622562755 948352494 887114075 149854422 672881735 88961907 267927546 960447111 282568750 541023388 844463118 150830675 893891257 485260965 670989236 133844880 737729593 849960831 276255314 303940152 392967778 581295798 839530478 289978399 774272364 714082709 459489747 933852416 602651596 887298983 586795406 954191133 183714836 524138729 843812966 632315227 631811030 944579189 399068626 95370865 420724580 878581023 776256521 920669674 5457373 87877886 597924439 670989236 691510271 16207503 993417831 527867127 849682300 468257461 752738042 437535834 280971214 987566152 378839012 839027974 648958526 789723521 167250370 616392861 931175226 806141229 671326697 925161685 298736825 881597980 609830787 746946821 234412798 18076057 843740114 838381732 840945790 788853353 554895296 623696704 598724689 377485698 201138831 724224168 934765358 876287510 504392436 726385490 168615047 879599187 612923156 404308811 179416660 873130116 286275990 715498233 399423655 755531605 933243703 151732044 96754989 913494 949934038 903523105 360136944 722327413 746221307 805706940 804467513 754058324 745447022 319718215 945692409 266467087 693090293 905670191 332227791 496312270 289535497 724690359 189924602 616168979 674383186 733479860 230173533 403255247 33974350 651679140 723893860 129813293 858548258 166897863 550345707 283582516 523520592 991892310 994927081 773245343 722695151 938163735 272075834 535997134 562553577 831003899 671055049 760196382 489277197 271506849 811262462 232101551 951486760 113355424 551367067 785970267 393327630 544657858 942674671 260398726 431797882 418421272 694249096 51023236 612197456 425629887 828959206 355287091 244304759 856098994 754921769 667712838 197513586 713737161 929397048 880331219 605064613 955969189 252808360 959829001 352273487 780207847 49459370 870066751 895264730 796630351 767697968 401168768 764159364 109582025 670989236 114446626 412967873 768952304 352216684 961294134 785905620 853931249 780900112 475370161 578907668 767775787 764862482 463051332 787771575 893623986 857045955 244573227 35889562 644069293 220320850 488114683 307130292 326679280 354582070 251334475 885566850 612405392 210000703 698954830 736559118 552015270 108682296 475838424 910002160 655479060 468962762 805511737 674061328 928222913 708816441 166697052 46521837 794420092 666152310 667189857 973834207 556171391 160317581 737471954 752119379 543273867 834943241 790483811 954917809 831297943 745813908 616543966 721837201 680281278 767553374 251186320 487673972 881595350 689233850 519901103 371620379 775686168 662371774 904883158 104454333 885838245 966164479 832342433 314174379 923891300 823065014 788044718 96762654 894096642 54087263 256517490 653952938 261390378 967926989 785824628 765562156 68988340 395698656 942586463 670989236 774891312 126848842 666451731 221981000 942588153 143560750 977348025 905177905 216082964 87549546 495209415 33638457 37198309 354192174 700778337 752195093 641227402 466815334 428445577 668445988 938917595 711981585 604339403 685072476 13363053 774838102 606693407 249378274 317628734 418825932 453551325 485500804 903705467 849251813 949964557 695129858 874901476 246544788 273825455 78604727 714280090 647100766 391649290 736987045 297396411 999176961 684753678 491187489 347069205 538369095 577338683 733233285 675988317 356442132 957021001 743369240 579943422 81495764 708565069 807414595 246563387 673873510 849851486 864262795 840103637 822313505 969743549 914417949 44223255 670989236 871710785 809553345 247676829 333634190 886067085 598231969 893835807 297170533 931031999 905707414 978081228 741343518 788492555 960579713 388044063 525922210 728850218 746723309 730484874 268088723 807277557 437678380 639973884 413809281 309512167 216443682 160540560 117825639 500903392 33108343 789420943 32995274 328014557 683352948 391353023 383751014 125116566 372720661 823884182 172174841 84820527 524373045 730186130 966943308 746617733 665407150 827945051 830829728 720806984 367841870 598776051 276679153 315049106 542750164 997694159 987060150 788428720 699436162 448034209 741430240 855059253 80062156 508963294 337219260 448931963 504135686 83625121 829345563 868739706 94985338 114865102 921200585 268931601 983658089 31762509 874140767 979697610 976746149 558945604 245704107 38315246 302322822 789534293 975997922 795476608 803604388 388719451 467073267 950633944 908107165 963025189 715358170 374517466 153228085 243258955 291705776 438861472 951483358 926702887 862795987 709945810 490946812 682681798 624823140 761577570 844390312 919946842 325167286 519121513 914323909 989655327 921850958 221901685 166941435 639631055 276094206 801257902 622944272 186067021 698754078 928650708 312577078 510020611 95225310 729037720 406177076 932696391 153040958 766790112 502413497 882796349 999460459 995418756 380493977 413288317 533558258 846819358 367889608 241049116 68220857 996988400 533636839 814257212 339226500 931154223 488252053 195062454 707375582 150205175 787793344 898863915 742940414 990483554 749114660 16980238 685813347 883623420 452233067 900770078 108963998 603378236 214856707 705254933 845126277 891333135 825309250 880280442 854297046 670989236 367497297 247436685 604679320 708325553 996642098 319855107 459651347 816078540 959761163 583579676 251674858 711925708 760450513 807254409 815209013 920829411 856829957 862981947 394346362 986871359 811525887 787319092 512609109 807627084 266283591 24029522 973521636 950487047 586809595 56573969 106131885 489980510 809403178 207710248 128780334 641668785 254556204 685943833 677674994 827033551 147199021 788596955 729471839 793993974 562743692 505480286 400160453 952687965 64316460 460540299 645040571 457348447 369636211 885503482 675412964 410410662 568533034 856975894 344564901 577607015 348619753 839924481 489783585 993169235 232122637 763040483 424211889 866414556 774040946 670989236 528674591 546887505 936372004 11358167 482891076 317591414 719428429 675471812 775348630 747619162 793181348 620679838 218020059 134063662 330171843 743214087 700141657 283183048 146941090 784837941 759189001 833417191 333213353 151655031 69634086 772650360 836777009 38903179 105976375 979389271 948735048 605182158 422961525 117176583 36124043 724565419 240017026 997688216 542409851 381091751 881025981 807907504 662831357 899065164 272269812 827836187 718542396 169130294 855954547 298969132 410864561 727286568 356670133 767990167 670989236 821706321 1565094 925380511 789514243 753704746 171092768 723296042 132794715 63194154 929905042 478221195 751256840 677571547 663248194 222072230 912539246 697467896 728771793 165957637 851665843 820354055 128087051 26485384 862647578 970445120 873824926 794933379 990427759 896011880 694348262 587148837 492223279 936522348 876563523 565081262 136837226 86272034 490493127 603960200 816370504 601664348 726567835 157489281 882550429 606802835 917099715 924543766 401944308 769293940 155995241 24026105 273018375 717571557 769118851 61385415 928107874 977664295 191678206 834155953 417056757 596358880 888089601 603477604 357875271 61655886 767173552 856960188 790278735 919511869 882682973 914177594 699044000 745723330 767709729 906492638 19297899 738591304 408146939 919850397 890599324 782697813 525449008 845884574 381798072 974168589 435684130 732638566 471275083 941102106 656148200 937086351 17784971 968561549 22053506 670989236 284408424 800162235 60591196 939674777 218839490 71050802 746889576 968880548 786587180 738216229 372061942 965398952 202024886 904822625 479799488 536958411 745928463 997081794 600128846 789502400 962796552 750615362 16869497 813106160 277581940 509350372 759012909 380510167 789814539 247870546 177412038 129314078 760667377 751075049 97869585 993280322 805744037 105188619 48401380 621017408 156409763 288974912 782808346 707300797 591444709 619349136 588981693 445383416 762937105 635479819 688249419 846427397 535170130 299107604 526283597 855760062 473145380 775639307 329302990 729573015 681214347 313895666 401946225 886265536 387037441 387468862 859541099 410604248 397712176 826195558 698358375 776887133 698690761 171496781 366931858 781687592 584379628 180253982 931097959 110710828 430629005 810280697 850289230 799473106 762183559 646385994 980954776 972923375 422540894 727572086 829460664 760015323 579588316 701113321 258418010 896800112 772278633 429356732 175210142 741663795 150416787 838387619 700945043 932371383 89826231 773003284 521374123 408826932 682557265 952192838 419186041 835521689 984936184 812608629 686731368 743523792 267902411 376254002 903489268 937056414 978867911 760683484 81681454 685895387 260312585 804188618 163588813 259504774 20115770 907501654 982695329 624405028 670989236 128047474 166642787 352095073 830014790 223030784 705786027 62182778 617946201 976976719 282561877 486233506 454940346 498572313 252772117 890987353 883288860 988660203 572480159 663695834 968172048 901795963 794359355 921475342 253451702 728477947 798950535 773279688 906959231 327802909 733913362 681326333 467102901 814533269 790786342 985970195 790876167 889655469 643616312 802651090 19215487 375943079 582093502 490889321 157503410 16819289 759332400 514045915 405743914 853350266 912449751 763857898 872370664 622267694 951543622 667347827 374880702 199980722 926727953 670989236 873043056 137901514 302591927 965463269 990071611 136689773 712138078 333551911 879215711 952430840 997352450 890356245 274631025 407384583 478745770 39715697 85957132 851771667 969652580 28991941 215979279 216814033 8578923 990182649 322568022 552101241 129559416 829183643 587651978 941692490 674681072 633371839 648141889 130802411 920984271 970460912 242531605 495055137 975368557 323225842 756030359 235284881 203502472 762368966 338798079 660464540 484770938 803026987 967617690 950474640 457808781 800860877 991988781 828311570 363025310 983080086 743396276 955596851 776876772 874435932 801803298 808101622 172209802 733909205 685964578 992503334 875567953 225290776 776470301 784640459 975456234 426929709 956595473 877439228 775111895 196704853 863552153 848081256 6790876 691748796 881636181 943655792 755535849 892057243 997255894 774678222 541811683 780120217 643082550 717841667 851983338 238270760 378484171 811034550 818129117 124703912 853971242 892649198 57535457 149784640 703515156 812023115 980219423 201279013 529920390 154664071 919372790 581482406 940094126 782339117 757580085 792753955 873770638 786381509 852338270 590898644 682280640 244323096 90139095 786791271 349205027 967764642 102611139 440107037 442263487 9722458 444365726 577351810 55819131 795353024 727503048 849176627 654650339 455452264 489541063 915585084 713936033 731174094 581193903 944868857 907777856 202266732 640593710 762202206 834317598 976129675 55561847 905207181 916965162 326689871 279533448 680282662 247744344 879108778 874027250 785970123 358193782 974775924 32344649 804107893 242936331 229145140 770718530 422586360 407511494 648517030 675261391 635264396 433276408 644403985 480490541 66929528 662371502 475077802 832952384 870573508 372427726 825160289 733137239 576571003 835879380 811857996 796265936 716706474 977457123 684712607 164700242 592819372 846846024 17745517 355452984 584769176 311142666 603123579 362685941 358081854 126701069 670989236 102954563 119668025 751586627 123920439 270028044 559328424 993305581 135047575 336036134 888239576 799631483 974799970 243961667 173954393 733742360 902191433 173448647 97563982 667960552 895191644 60128475 631569615 435906949 253491394 56376327 987527868 494356761 658145055 823223315 718167191 171053931 834696042 660801583 804552479 525341734 477318634 356660460 713744976 975193294 348805770 824846926 335009032 207270087 744079756 258539698 975458496 683145045 908226418 290302170 461284644 92768932 612011365 901375963 8776105 825473955 960774876 202458078 666441178 914656442 969495488 917979382 499325490 346132369 322526058 376038668 662821354 845550384 899693730 717494124 714066227 844113118 697618457 587620507 729142601 888449848 875417519 891927725 132829796 122399964 340181745 818446067 271565290 604820695 404835708 931077814 64306442 382274379 205253477 221259383 810099942 328147770 231352837 732276901 868985345 818142565 621803820 328817144 214209095 19572724 708918435 961063079 412553332 996036169 24116284 918227332 29450760 725540970 336457813 920889545 475949195 726127589 111310485 973158606 779824761 172776158 696511853 94850634 553264895 779863842 918263549 543017885 514177599 393415508 771826813 867621129 175477311 273617493 733234273 993809480 172322199 702400662 720736095 180340619 875094866 796623039 263050065 932006540 889692653 948485750 307429038 699191124 827088062 863558536 257407762 61531778 185290330 792278211 100108627 944561139 760078528 940193064 877410952 782793157 937267858 474433799 632538753 112563587 524294511 899989557 867430246 567426987 233746742 113883868 913350502 360490925 985565644 793279106 841818319 76100774 717811809 134291346 16668160 956940191 361118829 185906452 786156990 185556346 62955149 900511422 821575721 789561581 956180791 505165933 23811527 664372427 752006231 408523497 854712819 729915185 297117593 328384351 793711964 843631819 782548995 750513830 677699371 44751604 252729301 644459811 460012480 776738932 785700577 734402863 442794246 910887605 796269191 336946829 949550507 573581503 502199356 897508759 776337197 710199147 969951148 255557465 790524887 562108418 640572775 37654086 818921647 369591822 848261127 171691845 658449966 930643355 948119192 678769330 494532325 974038228 790334621 973120813 723138026 689445585 934336833 372053466 89857796 706182525 822741768 550530585 111045436 921485209 278324480 853456591 860599571 822765861 128712069 394428905 813325582 286251239 478483191 902882490 225526267 924533753 903927959 978802419 403813993 901705369 461735266 502382297 227930485 390654875 696667561 31751865 145357961 830935777 980090195 519781225 964918821 371494614 916306400 994848196 806811450 293035736 381437435 694232053 680517871 131353574 308489265 792829099 731117790 853205932 301286045 136055047 451346112 721762658 650397885 464278502 789983576 923143537 371707753 824559550 722889166 581712886 854915661 828819144 715612408 700398602 114610795 78018920 750454709 16820553 608028659 934955768 201680720 78218388 885586356 893127107 839630748 28847513 451039641 415222322 263811880 800457076 698231726 277341127 852980100 219142183 991903779 461383340 876688814 938174226 698428828 766178630 980828038 259154477 725379757 611341865 492455510 407606933 924405558 756746089 860845439 40960521 670989236 543626490 33516979 739949291 711052859 842537194 678057953 245096659 761621706 913094916 387617628 62358842 765520592 83034356 688435872 737686657 217306888 873309220 755096689 920343831 815283208 396596779 995568835 935382732 120738000 129890770 626742263 727455121 892580718 758130885 420091445 166238491 923077682 314484722 257473184 332492082 904164266 769748662 901127949 741243172 320696389 695873035 930630606 576795526 96507693 295701559 442088203 985390301 721410224 99939952 190743847 735931797 977163329 207166148 815073474 350371249 31959151 976557862 878041600 920527439 368724041 633482961 928039680 408449770 482001181 119102554 107946833 736619053 625998694 244393833 977720606 426088130 952462915 670989236 762839436 731741535 235069732 677153221 751198392 431055615 797332495 318305039 12632950 956656512 814516832 670989236 139338254 683500644 434007597 50551883 675815937 466147078 796515785 953824895 955390601 993528936 209178353 732734483 859429624 933385640 437639493 629020114 779731756 869301601 491989054 577305801 370916790 274592447 197877877 666770857 733010265 894570631 787169065 2592116 719895684 358682640 783183338 963789503 205981277 933262573 665017778 68939897 566472725 433393871 132416406 3346425 915126918 701849896 899824448 469734564 564864269 862018012 946120922 594928429 730037925 126540961 718267831 196260427 836914802 187406825 910245807 926600462 8272169 323804208 726531908 353486460 212030350 794202889 282923473 740942478 694016016 309168145 237067723 911893652 346326473 781079789 68574293 7523426 760848029 753978699 447757991 691388164 533881610 186337607 727877192 559040954 664932399 234149258 264135203 977255278 914381903 974937723 666357422 953886261 771965136 112839586 418643002 467151205 448039197 222995799 716166008 680280011 383371653 618048977 514503014 144375023 681242756 879563026 86462323 223678780 34438811 657303377 722280501 868030857 918957929 376190538 326851002 691644396 793018257 945202230 424219820 912026392 434020911 563065826 436296761 1858052 761074640 381665813 262860171 12685832 865769587 114960560 723987240 158838609 691816557 898021100 851590536 653968808 779479821 834481049 909388297 848294503 371408622 693894625 251147031 677254992 589951060 607304620 810737160 266083840 754488640 949397172 887835046 823298519 814686721 655637137 735308168 753702332 908882826 114913705 954719626 596823551 666984547 976896873 717604894 825171499 819852606 601211729 543040917 862491640 377641904 553260604 857087349 737800884 202235675 670989236 425909564 882946164 50522730 193064539 121464216 972895404 593556687 108093467 911208292 816305765 600575531 867766003 913359955 855789949 334594666 515428171 997438482 748140216 751003586 663171034 767152248 768986051 571287512 38244161 116104297 337983862 917897159 18629208 873821002 195000185 839360678 975671363 980512220 997656677 487228347 810200549 862130734 258924867 873131002 989760259 177442869 96320778 117937039 663110604 780161271 670989236 289055925 921373863 279896610 716798525 123481221 55339874 575390382 121818790 484094390 697264262 107849066 322488699 951541768 418513299 13804101 119451696 977865714 340061435 683568041 123488668 953275034 76852819 675734434 829053152 192440924 468657629 180860103 99993892 225360409 670989236 398074996 979029102 43585030 952272873 723686281 265089766 181850281 494142789 450380252 310916454 165281536 683904482 694030209 369922473 784078483 730527399 178701477 957417263 27491192 730253460 860721834 997673126 725832713 593064363 965868736 160319929 576447811 686933049 501185780 680166766 906062683 15179061 691501241 835786259 915186562 639944810 947841417 8643751 976157898 399658423 133844634 670989236 327508007 144527785 734118816 581089214 69790818 298971395 603270130 602213067 962233380 670881348 805996087 820857184 770534033 363892888 958837756 709521891 832041314 872248480 240785761 913198999 848937350 574991102 712001609 998674402 652560402 129393357 820442700 858128806 920963659 759976329 694141008 926081502 27843656 438248515 442717935 289340792 354214876 748493752 776332680 842082967 538079537 380219155 680836478 966649393 843761897 950368610 731034856 72381229 982930927 259682700 388597880 971941103 787571239 84336189 614790999 733393101 213831971 946035079 405056333 947069512 141762270 384977813 805781124 842640839 834319388 231574947 826579369 776500172 974966398 288522604 133001543 321696153 999706225 824184045 563783859 937919866 670989236 972391765 377130916 572260850 220810477 364539660 213762700 714045917 214452877 206386537 989722499 965378849 257984392 850676788 252242087 788984913 303344863 579283074 117694531 241224269 357976010 599880874 131705690 665217270 825506019 870082183 975196795 930262197 413209601 968877134 212909672 612125445 554394856 745178003 731549640 424601835 969295724 708987998 335454787 575544491 613317316 124264524 29772699 207668353 679391318 704861084 967864065 35041615 346867871 449107764 234462760 716993699 387766191 209735778 923634790 836217815 167419196 825838014 311685931 452515344 377283258 652811640 811474962 861568800 640965026 640712342 305205281 670989236 812108045 65047157 943034046 646623949 672359063 417675852 881332002 481718960 753859627 698500655 153779319 211150216 867525220 787012083 985192906 797652935 366635880 456833727 338044758 681211805 670989236 521748934 376591703 132975623 907963188 369106875 508714820 230279590 785408502 912073023 402224284 425234045 792330373 382688617 199176076 196419664 789136138 834901072 486370432 859627364 681435558 906172527 769377957 618857091 959821289 819518588 645329338 382770950 731299708 765322306 290863907 586275274 514035484 622145550 399494170 696138366 954630034 950518773 521037569 77276798 621439867 946981848 95651000 834672058 190724179 936122367 804926978 886134221 162253396 610689719 914400051 846835487 98894912 338318982 959355009 365041431 146879492 173276153 485023061 51538598 786096238 159816779 655174102 863718222 188583395 379025923 49519789 501098062 967188893 229816773 768260920 823461336 876255931 972308262 670989236 839597264 938771875 962244320 703813395 626190672 279702090 944185107 480541398 920951693 820957262 737285960 869025002 361512197 260599935 410683131 578887079 742849216 899209255 747667190 507083548 294431596 695120799 746192064 592424093 93121147 492852584 647117713 935482744 760862600 755024113 140010782 942742438 928048985 54271023 228097673 899422248 383562893 87135715 40273655 40971122 220545136 889669392 570129914 823651588 283333548 482137599 706231250 483554371 486496660 973101813 707349562 344118490 166876911 822887401 981927839 714225260 821224796 199757326 922604319 834473063 574378972 799705091 811164409 888256844 121982531 213176190 406289111 521105751 269711794 731783417 832482162 986824201 204943984 920825143 228276896 398937439 92980770 735669934 458131852 921040368 537004577 324689237 55611238 807839668 435790332 486111495 965065145 416220033 718511922 215100201 872422070 598643861 777266084 322738253 597612260 670989236 297192866 106073308 215114801 857465916 306237861 776287224 778409901 974336561 483623008 184526924 153569465 395876943 148888870 456949310 726436007 687481839 747688320 765830200 777242426 699828596 228997019 329213007 612713272 336614161 330295109 188283500 867788443 822071612 74938734 569699194 23711140 217819081 946877658 20430419 780771422 918644724 896532597 683991951 601319411 293616403 946008230 963016485 769098017 964103840 760152744 492263999 947735450 880342896 670989236 864601373 840794206 70577619 670989236 140522423 265367879 829011736 947587177 231136938 801154600 400252757 894014345 400754635 6725865 781710110 686531380 284261598 326628994 102378465 876243975 945300154 873420363 893943616 197014552 700893798 111925435 903991690 742609142 741667726 787965223 266924530 958448798 204546688 765187707 35493392 774426894 225554691 992476886 107986706 787869980 341465621 409134978 696610526 125947050 712971290 792012295 21477535 684990481 739777943 417612182 210362872 862888655 418362173 290196280 987528615 387065654 469608185 604053031 389748026 55783054 842643995 715267542 756006702 745355676 44150929 946022793 342114468 220265409 796126807 235605031 711020120 995161608 355586256 213033149 827955084 270857385 793095123 401351096 182143222 418153354 867949810 78679625 575373593 7597542 917674141 950594589 945641418 725411410 851815853 550259468 723373199 46670503 678161394 535322031 793797307 836263233 548030978 918062247 499615257 227731560 969896088 766956598 795822018 792127581 989436954 102778953 933307658 693436412 175340602 535316343 197636397 517788608 876213283 277816536 428709881 859402854 316009619 208653534 179655587 708088181 290847603 678246389 865395471 802977243 322961573 574999649 193642248 914700861 730451066 211980814 886595009 58688793 788697379 725010412 78857768 702340835 143240746 192547321 209594867 539951989 420713746 905027453 724338977 249694 872829375 668082381 887766148 672753060 307648803 815629135 855800140 176481857 872517592 764471317 790554448 845365133 349482380 909779736 215088179 37325854 375348869 607059899 549179678 165250788 101180578 809862240 685404695 243529567 621679826 196496035 286619108 280908251 309580433 576423634 708234090 823645986 34056822 492995716 730546788 971732613 758010071 75108644 873526610 329708382 412183614 414554894 824802878 673937357 174076800 296040832 799475511 845330338 541185768 967957502 781087159 775944826 927582293 194896585 835893776 844870365 999973438 791777550 617486804 916112348 315268582 251598911 750390978 213549003 473298881 765317947 670989236 788806630 677169333 724044352 719838765 951363405 40425449 621086064 396791831 623530716 141862008 986069210 691219962 787845466 753227570 744047491 686012478 925112896 716848761 855014481 995622706 617911382 532467973 742989657 812470155 380420865 873908681 283120682 703853035 825322065 4172742 762153225 735321541 360048917 890294799 729818228 288567819 722193588 583326406 458056866 691130595 302270355 563827505 882414661 821661702 684051327 346444644 20540113 639034668 961629886 629281682 792209481 552144756 71838888 841449881 134960653 892585425 713262922 828142382 3866771 468698528 372942257 396523488 487873298 914077720 431966393 781423997 866970012 719219881 582700316 688795343 718872694 36551596 536964765 603753180 772659288 838877713 583848152 538768681 192375996 959675305 432935251 5030018 670989236 777015136 169831660 393638228 816939963 780348280 616692885 187312315 983089018 616915189 838460703 743681865 865588552 756161420 389335850 556883467 524602422 159733542 986896507 893614283 235379544 296671472 505590179 679044479 837440081 747112487 448469991 398974523 344753558 478055795 864894498 949440296 589975568 800472924 846872955 51749264 76188092 133065353 496837076 862447988 766864182 357731268 919057194 331303220 613322809 935731563 889787653 133603262 971745891 875104313 919160899 827951881 540072227 788242035 666242893 828571051 745886990 437547129 804212778 499901348 763242940 629460414 683606858 745120096 248956423 117280254 440815225 991376513 563703133 864055317 827486078 921589212 565686015 69211864 721259602 124574069 668553790 908894775 560857212 479831306 832888047 974125405 696708668 504975260 860724067 926092309 747926646 556402050 811905230 927353696 774251462 907824898 299068702 837054722 378507034 111289129 238946658 516226276 233097011 694837790 115754860 848550154 261061443 746288182 901792149 389142141 913490858 333862705 423199871 17483128 900445351 146297828 818156441 843784647 410325136 707831226 305824966 894020627 428173751 681873339 851730158 832085248 381936701 897798060 425028043 72935376 994377706 309181741 501955112 390778111 739514177 325859886 761836056 376116473 35015384 698428706 942723522 47602393 221891772 778667758 119196246 404513306 757216201 899175280 376708118 476217799 817429867 793995167 868136735 832157636 856772292 705007900 771068646 543261499 960185017 977587261 895891647 873982246 749007310 692224269 969042179 133482452 670989236 211763930 62065579 485945932 986109693 320253266 49003227 780528343 487890202 870244160 536122657 170436343 696737912 831722765 616341553 822228800 729046992 484890219 670989236 850192643 806038108 483537704 763888213 937791648 615665574 900144586 634024251 694371591 563760940 848718423 140643038 405926474 127019491 302225561 759148719 670989236 432227232 565160155 670989236 770008641 512804366 924352147 58792989 273458254 655372034 565834130 285689094 12738494 153780603 809255677 181086778 864472725 647875994 475094339 849785350 194356841 504631606 469748532 536244640 87152812 977042178 950817453 737516353 147453775 455679049 466177724 611935781 298728504 675833319 786754222 623407108 779184308 476439150 581750664 817224169 509719841 105836847 604171658 542675080 628382254 116474489 780593265 954354043 953534216 225598652 746317844 698958206 315855411 696278922 761030590 749451963 337361720 703232989 946399160 610098979 855976382 552716972 771513086 955685182 910697955 665145349 656963755 275246998 632163218 78654544 873861890 217436115 976313753 306509661 708943288 537346834 168532728 990245091 535149707 237999960 357875156 995034978 391657344 267077301 639062560 749124559 953338837 761854077 990607463 793823525 747342295 757659379 850137222 921478018 284028381 374799697 924467400 985301462 159741754 809644504 861013366 376997384 604899756 789340604 851618617 281967830 842672906 218479478 984292290 899853957 886857272 894007658 690408632 913756553 976509995 324741213 971279911 788856034 589193642 842706205 949656688 976558256 774589851 754306132 292884199 537335119 317095316 713676079 677161313 631463748 41178478 498121736 177566297 414663594 662369545 823587786 852700921 199143471 560982477 686647747 125498208 832994200 75064855 899844625 204184982 817588999 698024005 515809240 154707048 749112817 951664357 230551113 49969615 197826229 66817115 904964063 975413901 394585088 465453420 280235508 780755235 252598846 14002597 218078914 255261136 877013707 61922910 186913637 57107100 457124982 328167557 596827508 830334602 687998495 977118732 160237406 204525532 938867265 933639707 172094589 753471984 17079487 259838784 555415368 285029556 873458470 618936690 424434565 267599195 109976816 179418194 812085828 785872500 990489931 700998366 15998969 302605865 277321212 863226904 657046098 585175413 673815689 544858115 600922044 987091140 181337160 411796371 980057440 619664417 983843421 834688904 377357294 848630572 757124171 785125975 254524537 764522459 719346116 820505842 242015041 691428348 348012645 557586908 812089934 691073092 834355364 962241655 697059719 922647483 542724385 908675566 76076372 210027011 926072872 499325649 302921999 566890273 368408367 434068252 675264522 352983404 550483404 788573481 802582633 979018231 240099756 941256767 962251420 841970787 873306305 487292534 537057892 90577444 947152721 212016510 789892225 986651661 145406783 27150573 438501499 393029810 569958310 122167728 362554022 497063287 567808743 670989236 831620787 609306219 648794818 582115384 14646912 896114405 974305720 241892915 670989236 942565924 75105352 80341180 163194875 816065786 720307233 555444975 80750440 130370751 946229657 926357871 882765151 175103829 349198339 489240702 895602480 457255844 263666052 223545564 938183365 434057983 690983299 158049888 958696780 760883473 494094915 6928641 495976342 981200827 133276522 723772387 673930436 10337568 152057184 859348499 820229866 744547357 152321948 438753444 724115719 815266164 877298701 923918890 784511163 965416907 963011560 968361021 863897678 747996567 542405071 738129934 955588408 354318836 28141089 29262870 746426599 819245866 391591913 874060318 440145960 933677157 790665123 185293982 96086328 195377997 765019369 48084926 713626707 423128733 795857155 620498136 134457478 199151489 344571233 670989236 166850354 227311083 892631836 588585960 796349176 670989236 21254549 932659158 886034511 800947769 924931628 337233926 900587280 781941523 709075187 372843760 983714608 556155514 560428697 993175243 645229474 973491870 909129488 995592390 759223719 521999425 360579894 521963684 862978641 670989236 440468679 902737479 688004477 808508377 748104795 244885961 955475699 987037095 113377974 935963570 864407541 717057755 760932247 124600087 706654661 512514611 680855685 401808211 123550745 585201278 799860301 510608741 226927040 776833680 85668465 751080894 965893416 808765274 203380991 826059249 499916686 25907122 958189927 886286023 926854569 833554735 841272804 674395513 20437532 18027676 605215586 211227183 183056074 143342950 988733672 945467204 858459079 348728585 768613348 2891641 764153670 787771374 917995667 919862723 749094493 679772874 834505804 807469156 177405174 912972362 879776552 304547306 576090225 34917338 706854470 887201625 256025347 725809183 827796066 172715719 958503214 479048689 766145387 129555452 970315901 790859655 596346374 503167000 521024390 777369484 717522131 740738545 603003472 711338834 399311918 113753279 108014691 991938042 202668299 559676346 966007518 44774713 947207866 578423262 925625345 730629087 361541687 489178304 698217636 855534386 813794260 484291088 17578283 527287610 870074789 980744875 767161617 644066008 219745614 724870018 761552778 713403152 770632169 730029082 385124261 918746123 713743217 728735056 588924747 300908174 295141228 996918870 981291877 876906325 176588012 672787796 832979355 910012220 977892183 445919226 943549040 831387825 288402825 606816148 75242491 974421441 430393496 524995702 829828425 319151914 429831394 151011183 226218439 727529955 921407038 828159182 881118982 57454271 681384684 670989236 835555032 734068696 659533215 566439881 918335979 305747299 682759792 808999196 726304867 280544279 331337567 323798661 971563436 443344821 521386930 929424521 945803842 451876467 857575710 974542525 438146515 918165573 575732939 950156027 721183535 282913907 960693190 839613401 856076009 761654443 597480910 150644526 650149429 20517988 751354716 814382949 488365463 597832895 821816140 127615650 773208555 148647754 923913337 804554946 742585342 973208419 834706005 310816559 869531276 678022815 675920159 782593541 141853333 256537300 79127341 716630666 756206292 694409633 828187891 897233485 858752797 962716752 767599087 36678381 942150863 545575247 817253522 789300089 419173755 950354104 136450048 545916474 236527864 427680852 112463053 140577201 226308594 555891287 976415567 119825316 409448714 863449907 161602696 336654023 662941192 223015758 899016787 373219938 734138553 664760006 880764198 444499555 916789199 951422928 966106858 939294056 572120439 75813194 589864235 971992970 459224734 253916122 670989236 942930685 978996947 823188122 891921436 292349172 459384614 212025365 908884302 169002326 784669511 995040977 112542445 67563347 952178917 654265586 193573768 625017384 301462206 776845642 665704502 395938317 219671692 968951703 913502576 864787714 858851515 205806636 933960565 797136079 108685327 667210501 895918644 712838553 130368136 293219780 296758063 263112906 965408909 870590358 497336344 718926871 72452400 249381100 688480679 670989236 802323507 510819181 717107309 717884929 59139323 109539535 946911922 619548757 949943037 935987518 674322442 960593178 441879616 62292679 479740366 671872621 754119043 678623097 980972602 928028468 1371412 713898519 211233179 862780527 406962877 949244459 988641062 432355721 358429906 736196090 450598677 732203838 862194735 941335675 942218097 108144039 532569522 788748325 8865198 821618447 928563720 507151844 889786707 397886171 894843763 828052449 545536817 288210055 527863295 163577505 356716441 755130498 959938754 447990249 8464628 811609937 946813032 964640169 610725981 365689549 399641769 505432696 164886366 647113301 804478846 361484212 866446525 728649640 806713639 279344566 879915408 168815315 315761280 896607958 628102996 441784107 637630705 764110825 172238588 668052283 880495967 158985859 273384966 470625388 953207325 25728853 803212029 625663480 230320114 192727342 586161501 978679738 796030187 152045403 831596163 644141375 686381564 119064584 792618843 680087902 424497041 957340081 692245357 721217698 962498535 600979110 656792552 990873716 387868549 249890101 367175954 671887065 45334576 959203143 410843116 256682749 447411820 824032001 950391223 398399602 532330655 266303179 202935157 287508492 948363885 59460156 751257952 192295211 763588861 630848752 392263516 283158126 740182881 922542812 495073015 438433461 844618380 125918745 676410496 142924337 969175498 894218256 961193199 501398620 752138729 558735158 746008878 341817356 103624765 286704473 857381191 476350862 462904311 801036306 521257787 464924629 423326040 589116642 442939207 791427786 638430187 347667746 984084255 290340483 68703839 454406640 418682557 890055778 838996642 939570291 865143795 375050650 894665163 771070177 37629063 854848737 720654099 649825678 568547370 915813967 865916970 176081802 743532530 735081212 786234600 937879161 315014438 281232749 596284090 662428950 253273512 933996414 908764746 813555270 489235004 786427955 805600226 568609202 46853816 819558991 712185965 75064680 82796286 396270818 803057676 784562013 889523084 656436999 715811490 71558943 442846088 632528265 711147256 934107487 430363476 364162388 677842108 728514450 991058928 461325085 83945920 854156784 115474153 101635811 690004629 807515235 458618250 173825095 871273528 370589114 753536251 544187667 447768820 739375104 693925090 850688246 759370070 125001089 935273455 903478388 347548775 727556772 366532718 962108197 966756809 503146795 860111586 825084227 770077603 205428656 858265139 548102082 137624470 643923734 603792738 161669638 902073647 159709828 866685319 653272674 55322946 251820190 275323484 906076860 857013701 379667286 733670330 726991390 820066606 353463188 864875777 257519820 280501830 50129952 886729313 983339365 311211812 631644240 975950477 786760435 859957030 926196167 983050949 603773076 832528453 613933833 586806784 736842077 367032835 104427783 524380933 52558586 789131948 836228299 979321514 499471514 619753776 931726559 830062641 260688024 973482591 748212526 450070536 249277886 824315009 608842793 338094455 22016292 98726874 457045721 87803905 115622043 562327355 569690576 885798654 924174678 675635756 41631412 390842303 813688249 99511278 698755685 760479479 799661926 139445372 712661603 192597594 630474529 666419226 538763419 565742251 744445698 409847087 695880258 687138242 873871078 829025499 535970808 974322580 735411807 617181850 82347628 956718968 551889710 932886985 336158294 736660567 677564649 911595955 418601013 649007390 103934742 930984680 229975625 878662816 478365142 712122797 719147647 905823012 879338243 491071637 789979338 673771877 873972734 920744033 445746662 786064840 513246820 16237632 427628421 895654251 155467048 37817567 750059305 872415818 11312954 790536049 89389371 702364705 944394536 68108487 665176256 263934380 783339663 878121141 568506517 789020484 919316668 21623535 93027936 561672792 969263457 510531705 316352871 676709733 349710536 787130293 799401076 933412456 700745719 753037648 424634272 324691007 988376792 578379780 658932861 799558988 624569646 353506310 713539239 186740031 99380019 847346608 818053032 977223359 755656582 683247982 357167910 808085361 405314569 390805236 932298015 432660261 392384269 65758909 908420989 289139614 916254062 639006807 345711156 810047510 988267418 930196174 446972857 862702324 280763826 705022622 442576102 337494946 949231064 738378724 670989236 842930301 712898399 448755671 972280354 871030109 624487506 976287873 232263845 204610773 161171501 556075805 457137161 36777951 430018582 951024295 382286846 561276884 114957768 960598187 368409633 795117889 226696693 689561004 937786130 846556688 20374296 670989236 776263058 747814327 971497247 94710359 734695513 447319601 752476389 670989236 394595048 709097313 310118132 722682248 419028933 841746429 795529787 689262696 253290922 727829982 733245043 12175034 766123069 975942530 754324494 651181733 823719903 788613103 805584254 511078395 912370023 938887447 23175654 286712932 211415967 317368078 444571669 607964373 67448223 668140010 190658553 539190481 600188049 704740455 766858455 54729033 905963901 708729216 741172032 776695795 356758835 540248400 670989236 437132263 681834074 899754250 918417286 823411132 779739806 906172369 575871463 351723072 602397743 762063103 547903171 517113194 661131888 995397828 78837336 157245225 164822851 697617447 670989236 912820960 539255105 964400169 238314712 872767862 800969159 46583678 50517926 382090895 771200395 336640885 466494827 834566976 673755037 2347336 766277099 891949530 815343302 714423700 789719496 706231117 905690803 553476527 696081719 236809186 184179711 924116091 604849414 524484812 412531921 711139470 670989236 845405852 416101938 471716192 759197263 786025186 76812936 133215631 670989236 916900923 811230437 615758820 674407947 305046525 291621290 768611983 417713099 993690305 147584432 879395787 432538441 292788544 967661997 677327336 518366838 971602345 728580411 992227263 826117101 736438797 672157971 118491692 487068127 985078366 743138462 951538589 799227036 73076901 992828011 857684710 285870157 786377380 72723332 780949712 779112991 127276120 677075664 670989236 822183470 415230324 495508048 541411035 660427190 670989236 948210781 255930613 838027425 281934155 123392704 788277434 18989113 126493304 47058664 281758947 112846677 923247801 821882219 610916034 654530143 407973907 545632616 366622029 12364506 298351383 728562504 458200110 377664836 800005145 962963384 991294997 630182771 918543600 876023385 53251477 823205352 656769218 739836496 994322774 66275837 882086084 967323283 528262380 523072399 713104683 521896202 911507867 314167017 935110532 736729606 624501271 302404305 32464334 241386526 465280939 286439708 780452879 430473119 378289334 824777209 918856539 722921546 553850723 297582295 710861921 126631346 170424433 858636878 377863011 317185532 785373347 938673685 629076452 923925165 178210946 468934825 704953200 791401036 423890141 898251488 864886356 889314482 394327119 423978767 885928472 48502407 740686475 402765664 907976272 573362932 288008991 159024884 857402682 965590525 997418942 135721705 537755196 605513016 467819523 418894929 858239219 311199749 348629812 824620757 680935277 852120617 931823084 979393126 912655313 820053465 856308614 710538321 626125549 801730727 14536528 872931265 909297582 944380482 424978155 859814108 763780956 620865832 819474514 55909694 725864976 670598868 855350309 804069422 681338280 394206176 363983031 284641493 186850347 535233943 11858521 677729356 207603610 853035506 228663058 230721073 843336020 872515551 812503135 736925239 737563991 363461518 848498845 800537566 557601327 333658249 817960601 407718181 976541697 136170631 730317830 632393442 919161808 227070242 445778419 626302094 466888857 638900224 167898388 140953529 920520014 670989236 657021498 476136927 758106547 704996457 856335364 303088163 722274459 836710995 244281359 498368233 863172579 686990420 677680084 235352832 781808115 287691150 868475514 192789562 816163833 295732987 738561209 658741323 947964540 467872244 184478839 906890251 563437197 120193979 57510621 490251736 401367698 790928366 771596766 752459761 80132189 816012130 188720175 966862941 618469221 836380160 842051153 624636879 905844895 919260088 534350547 553284913 357553270 686420966 566656729 912239069 662048352 323368112 808925745 955167158 68469030 743011944 215851743 784633452 794028375 866561673 615456176 932084276 448742014 106425618 828048569 829614469 678805644 962653329 670989236 738988385 887230031 670989236 368287525 614878831 879407785 960839277 513322535 495740853 385223125 216655155 807651456 753729116 635437403 835964059 82738550 787246165 904243058 376336709 301191959 999177957 665090722 997694157 972830217 508995902 879937911 524286916 650883889 732330847 864183214 310349739 289077106 217329789 202712322 902078435 768147175 938797020 644376167 271461646 856347249 703540563 868684166 681953244 440790985 215965498 618779869 886230855 693659619 996599838 836526189 103931808 718653773 476474960 746991226 475908578 832163726 111165718 769469202 762113945 732799113 945728549 326123655 482507071 626726431 767632234 85909835 487778214 928150645 519290449 736091905 225835586 952867481 438373607 670989236 338388805 276307478 457487567 38278779 796367475 9711420 880904017 836688857 719980812 350749235 733142047 699289999 959834263 330289451 931942837 856181808 130949886 735668386 248405352 467932986 788056843 328660518 652638197 638337156 536415168 728119328 241490062 670989236 844627438 767567361 696740968 252580036 951460042 773425724 3320686 777964960 255676232 826132113 670989236 344442474 30888269 807348573 947142737 283987456 499730055 546751481 531696901 925598742 746964732 674777488 316245241 900496415 480917510 613610281 315889982 455137649 762677717 308496216 683529510 531884086 131363818 763268177 979089807 680198646 776397538 684973291 835059840 670989236 855524755 623568303 935841843 541435858 528824538 510611696 494673042 774383813 497934050 149108594 24707229 61293248 740125738 866302130 949378392 821981178 439673889 848527295 427024861 757972818 105695563 594076347 605922080 721224073 287654307 912484987 516939863 780896588 887070346 867789867 363141146 532433372 655087855 78035329 549369070 749399847 769173990 778829208 683156999 749248551 488504572 832465156 186234700 444204757 235451021 754198793 711241402 691793199 905417375 821966639 40580079 4847445 376202086 959133889 749860339 776421307 987689357 753388136 16926156 941997271 838767666 983095599 813508313 84958822 237802152 730139928 883188572 462246489 955235328 423168149 292478036 176216780 820864567 831415252 145334956 952523597 318498650 612106192 630896014 737678389 675503545 796338886 901834957 778928520 490392129 514975199 224238411 860087669 208205660 839161487 703204726 791230442 854021654 892629357 774268819 464746967 996999081 170837424 99032790 557117293 615335897 785735881 844179372 865233828 993395638 725351643 377213996 718935393 909582848 777258843 875275176 763186289 875972058 879463005 440485355 794914251 895166315 533431271 851511929 731796924 472637497 753106016 116251177 938532117 148178789 211022362 542667812 914821323 585419335 439700971 697476026 11041556 150205665 676073187 922771049 701960266 303927859 781411506 168998556 605178014 873263783 692136220 948849116 79660166 612114412 385843122 653299093 265751217 565067448 136836231 716806545 35775136 697197053 422464791 913164500 467640542 599876063 977208418 739929020 657371338 514778310 145080348 664174762 566690199 776176284 792384927 671909180 138814551 207279530 687595471 100992034 51594427 243306013 891651183 90305799 871986103 838873972 120222992 832146372 935669268 997733862 264807597 7191180 784344222 742890528 670552504 63433998 556503805 147566518 622414620 439885124 880767490 670989236 701993969 649786011 594885743 942740316 777056157 296883420 945602317 10057733 987912316 888187585 473331723 749879986 417746530 225398030 435519370 797722309 659370051 840848948 792850742 102006580 993412308 100114086 811200747 239225461 289141437 180006706 950181860 324204077 456286366 590430558 161774871 415162428 293500607 794328478 851906520 848109505 335392788 585066693 285757983 784645611 861735895 477132024 970890926 290415037 109125938 11770426 769574146 384417936 858566784 932444397 995748518 924237868 974061265 605502569 722988908 76487437 19438215 581062249 888333373 670989236 431868877 670989236 317225908 311896934 170142234 546670664 781757135 875542826 843548235 24108931 1930879 52344538 849608721 807169889 964750033 11001337 699452639 109341073 739586862 545342485 650406978 614429866 282150017 66863836 387644809 848874326 963381030 91936546 826025381 734880957 965992514 372006525 729941107 66613731 492665782 335791191 154084739 939716852 446595473 956219790 260882509 806546638 726982615 836636719 242443891 996203358 526645539 244867721 688609100 767728718 546243245 913073781 114957328 945689870 766602004 770563629 550691918 969434627 249296929 70541289 703717769 593555242 505568058 315196886 100159021 989656232 103938098 376826356 941903620 870996703 215768866 362627611 12287135 446175739 206529824 686252279 732415847 940350101 728074128 985969437 293808857 618695186 383605460 413838412 134768609 617715392 995046475 817517025 547149102 903776306 692448121 559751550 988710281 384984870 918352784 931067746 502667429 740069474 767054298 536845516 642760235 948821281 861198275 89160113 486929466 658163478 923723192 55218745 698064080 758425403 874716254 572316360 674466144 800454156 832737624 670989236 854904843 368522402 611485334 880781921 525769280 128597689 806209814 518207261 690449761 777311206 666380950 273998943 317063996 248066716 165399170 508746295 405460460 891952142 94029110 694658219 961042303 786862271 550676759 687048320 391126865 12425690 954120803 795813224 884380443 413844345 728137954 673100669 372815961 939833751 571257513 261512745 679515808 211341813 359654505 31432496 98919908 951764078 650561964 427787112 93930633 729235221 759821754 861899876 887377949 717873445 790238880 319896829 782144141 696794510 674152174 790278056 445992739 239554881 832143771 964949943 805950909 921501337 424785591 886817595 810244853 197065103 193670555 171504628 831040734 898087778 149695971 239245664 465395903 960999764 793693953 781338710 911208524 125584779 210778978 778897023 110977444 375460929 717425613 312425263 482622441 45354326 381246804 742252738 732880383 890074083 985001730 995798327 90851534 300080778 253016287 750212977 921048608 762698759 279233636 638327471 776942936 812672500 715364148 920995262 830759067 408653596 742454609 823203004 145435663 985818131 270448722 962334144 13243749 369426232 866721429 952500403 553956332 610906138 389815019 112476996 975610549 911192363 722566768 135552985 759642525 944156032 732528159 14280365 325991288 692177365 671953430 470299808 752141960 170971555 45944045 936354399 653685997 218672882 670989236 482722245 889243606 972944426 279293676 829901481 848946673 144631717 172482741 325088216 434044247 444774211 516971939 188612222 737705115 770678522 864398091 170725317 903282319 186142921 262388388 926263068 556871437 803962521 864083244 380930705 517465072 902398221 260368038 680325053 308925330 965037918 154748202 356139307 523015166 813790894 758072487 820185520 791962954 789961923 479233324 836677829 417378937 266953253 934739659 814717361 435007675 696090454 842238895 557250985 745533469 136720311 830975545 919395768 499244469 964460207 621652829 438806512 727302225 611722060 246371601 326508492 169988747 586105618 777265662 607852304 690528985 774174769 844297623 845884930 261255916 496406846 840616158 773900717 332296043 737705255 172320351 627919454 205692958 814226034 361661715 983119273 495305358 944328994 495832152 234934140 492922114 217853416 240825088 739662846 457771266 59760335 741213500 261691657 596642488 180995977 866357554 979327645 189093923 645839197 908135961 452197659 835280469 161969163 784397346 695968510 454667493 496994088 248376808 726765946 183570206 648154043 858691542 152708113 814764028 991760841 462754299 706528992 82993698 899752119 316299627 791265179 726132240 1686860 333725381 55772417 138537290 432833501 694205725 197350855 129284727 709866523 722756586 970723303 744309689 416828507 736918999 817167677 963098782 672734031 824818448 673325735 948886168 869318896 715924169 916455166 426661613 974000604 830539527 808780753 661502578 203951240 734387028 305726313 12371449 837309592 590443402 801196564 591272931 438366689 27054052 937245970 363563555 366403471 696551756 679560511 747655355 778318024 533658048 474492716 799969527 339614968 850883219 267802587 568568529 726431394 557846776 206096960 689323261 956589751 511352084 872007813 377638400 629329187 431977841 480614178 392691707 892212387 383653633 880836996 832119099 744152025 787071542 24790548 503166041 973361899 860056048 480869928 12666349 334334997 745618039 381438424 753762418 816917015 889364105 907051679 978751610 964751453 900309363 647154735 764455543 241441481 785935238 799593329 864952519 155948537 290826471 489894525 588379104 117700511 670989236 939667009 770498356 183070518 273261454 118165753 301811721 765345219 31904010 273926796 824295492 401961591 468100605 673341679 758383285 601900641 618326527 751422926 972374873 74385922 690961772 725936955 538602956 706487676 795542634 14853661 863047167 710652116 340141938 74052451 198200653 247560601 116070509 714027090 611249635 584464646 273585305 739817874 467109110 470563789 812950015 703117247 683330554 806360046 671128534 178300964 261135184 178244709 670052585 879535710 66201034 812205246 830170659 673488869 510103725 769160116 750641260 614841388 748205844 358215123 853573870 816422186 838614075 723413832 908081041 162144655 754105233 378203738 339774149 537512465 264258662 230626980 672947846 863648574 817943811 285571832 818355524 600135670 575437375 87451887 780323946 743902799 924693516 386985179 886540511 757561621 867314688 637540118 901214513 414239887 408957435 965270156 645458024 943108479 628579925 829378757 41459307 974540806 699821025 849591811 535590655 750375383 968221936 972823154 268629692 632059818 690959282 839561388 408461226 905598162 830047938 863139984 848547176 879080596 173218355 153740728 873828565 636880280 637506594 625698494 114251358 124132430 114903471 330669643 999761265 374257789 423798446 660313227 656751725 86108768 443427695 746336686 390268280 449483021 688104230 268094419 438710243 73537379 831297262 350052481 835290844 849621131 779574006 931688285 609178606 19044342 955344264 715933909 520402134 263410414 994532072 5539845 89477984 167533938 421735232 404471529 971747848 670989236 220818333 757730406 836773450 292923997 768203771 795852199 141325694 325719850 864439355 691388442 785348166 838865440 875011567 711930776 264819744 964106775 501498699 973501074 860540652 680846690 930102413 346229241 994147600 368606576 859335201 414750878 382398440 912900578 890193866 172716952 349376607 474493674 726564876 951604451 497231132 830519066 977226897 813366170 676549440 869267187 797765509 887286245 631313153 3512497 242767277 751921879 319390565 895474327 915648161 311635232 904460982 703853200 475996998 736009185 214367093 890335652 344793756 859266713 758119359 709741327 321719438 964109482 761701235 690708951 99694623 698015322 713398348 792219720 902473319 250200162 223729327 455923762 915891537 938365789 916584246 370458103 272544309 910064847 841047065 992956527 721203606 298230965 149714438 922321923 15890408 718893651 78029155 160698141 74235495 702601998 964840781 692080831 897556056 905895525 871320359 323330048 946132077 807242857 723204909 198214845 368911358 680928308 575074541 758710699 293896954 392947911 881104663 594855917 839166639 222682655 822229320 594817536 940636812 597736688 885970780 676788933 619777637 996261326 952193135 775930620 979172304 553495139 63761140 217050011 125576765 293777370 720509018 146254658 839729960 779465323 870747284 118759507 972068137 955107360 327422971 959260854 945160927 251681067 822607810 103950995 181480902 833450991 457562527 184079191 951107597 788068965 555264142 514512079 9149411 421537754 238661952 675555746 71847371 101587977 423403986 391091349 357132978 616734161 847238190 554453223 187359603 781011135 194773957 13605161 693096205 980597540 184105465 741237392 751016163 871539023 78452284 671766073 756364262 570424856 283376188 134759442 545728636 827174757 946267204 253768890 855883849 213993992 512129228 924444989 695014134 694163163 721080147 510466677 690022749 950594748 312172053 893892878 388659893 25369267 852981674 85366352 672945638 966564055 421163146 670989236 316325548 946179132 745876236 250060214 935617060 405091365 644221278 884617151 306925313 53724678 851342790 585021605 255501289 800561750 160679139 835258025 82723225 489495304 490603184 777855103 708065679 20493220 781402015 923667928 627739452 404507958 688479839 920454304 543420782 591981704 825878804 806063896 131517190 323844838 583429935 84297618 487580379 121850523 416409700 842650523 450597114 336045090 987746022 357919993 710993225 772733746 976051225 329096196 599640733 979328462 152557116 926342416 753212408 726611380 822163054 814133864 846642773 612853977 466426749 449750751 491986544 198979838 776588635 54516663 876432501 773664356 781567553 758992531 251604482 871820540 982541874 913391267 804631529 896166941 865956262 551485218 955372862 915814961 30039514 963107579 918932133 867933880 210164270 251676518 11481618 813051029 791910811 869535221 261779470 722585303 923187060 186819604 948315145 89553748 537482677 765870386 520640303 598073794 19263018 991711124 228628781 37528387 953829752 943319694 829910722 755542307 624670068 384280888 873766909 715654011 537139483 796158284 322302927 769224332 726549056 106469419 978278787 970868036 268840009 875989311 481832501 509295281 928970282 985761834 210470467 55933821 936968327 739156373 819476143 671850566 512937119 866135929 453978058 670989236 738417962 175682444 870478927 528606379 961962450 800741468 505375875 650541833 106442002 876920359 54884299 868087599 828099034 950831105 983961627 386259740 323628982 867325862 922587236 953272459 553539957 969016435 855596176 644591297 684556616 741163954 879318436 916087410 521349602 523517347 795177986 40552576 965177654 19107099 487046862 716117304 175696477 718460809 735575311 2851368 877899886 811659653 328415536 346971601 528175787 987291250 671109048 353418722 268019753 675192261 256335853 682651394 342608965 878299243 686590843 95610769 584511512 137349626 687103710 150351801 670989236 199069664 290226549 546757039 258687807 869019461 30129132 13855507 805368646 745025768 404201633 190429288 820468240 799033492 146694554 447571900 68188759 139278384 256259332 607765570 668921440 823426082 686670414 62018485 199694240 658473934 381522472 632496475 619377694 624348691 730697611 182814508 516742419 205941191 256036593 411422810 585474270 774585344 987099479 767266526 248542645 960023911 963576411 704294708 959600210 692946280 611397006 158802061 744582086 61223717 686579335 742909726 961806093 80352138 29048656 186463398 862253949 116400416 995575693 879348962 837528458 152548826 533367867 975466083 607145709 263937522 702493443 240008908 258807199 132528201 646280582 346581896 893340795 389170976 836961364 891899949 808527241 726262718 626381653 981520876 184918710 763280570 353225449 751264010 580704874 734843701 848817283 619159989 887331691 725803964 968395946 778568312 724530085 222729696 832489560 202878387 769431949 742779841 754870289 916942736 990241831 764799882 696807628 44805154 221116243 457585689 342874092 968617467 252321576 928444773 733005646 188881732 735772838 21745953 85353966 957309003 234295033 497376607 991682973 845430593 886270600 789020132 236869080 871661352 420258039 991207864 367075710 321089689 563806149 173570486 702243153 429510067 445137286 734343102 416720171 777483814 234425934 304182164 662738357 171412610 488034119 400220164 908932469 373535085 593412508 670989236 85094091 879788891 900118988 192298813 747404958 385966658 732495924 490180009 562277576 724664897 340293576 494027328 823946207 307200536 586657724 391722615 657592057 692116832 471607255 53578658 616580955 44122770 704178900 864881927 727360395 815341090 980896460 332563011 736940765 895079749 995595176 305899640 868870372 701580242 838475723 219306839 86049389 892604665 26382606 932111924 701778336 699807952 790508820 40374571 600510845 583821510 312978157 749272226 835128852 350347160 655915955 447522595 826383786 846494124 214426089 614948789 394886926 993063402 974460582 964678303 797233434 618853543 704271926 663514587 838651250 595335352 223267131 977251118 10270220 425110414 420974809 843366516 792420219 985951808 958730934 788735110 211082239 87965685 666089485 455805719 818001811 658379077 147498557 181295452 781703816 942407292 132107194 249518937 673474931 74889360 680934348 967266908 743242690 478447382 668323643 299030266 60755797 419959505 764791973 151666588 575882283 32577201 673989928 752093861 970821877 576289759 748206970 871934208 229936279 225965235 115026186 790522710 296535134 909912713 940082017 900740891 802172974 671210883 382315890 54443644 679825991 994496554 616806840 683627660 663370127 270446941 731324869 899665892 437343427 401711051 802993348 333959739 643006860 926180243 646635025 828474849 430594098 903363644 638301320 481882204 168701708 36560152 837541021 312446483 963889461 739888519 670989236 907900678 882776315 72900063 37293255 425177175 863740383 421213831 436661084 700686469 721081152 478202528 228276988 865629107 698139351 928180517 118054095 875041419 318919206 694371598 171746698 892004086 317642402 86660823 21543981 941208065 373759393 989663413 337219202 712061609 483484986 686162137 294052247 760902221 816892286 746431129 118149101 973967429 189315322 456681259 177321189 935558286 388674858 82089824 670989236 918309613 562333230 960949165 507459777 15286827 557960410 943309216 6013350 719105316 453878583 61883340 96217505 754028568 843281409 823784017 103265188 379574769 667604314 970323273 935593141 216371993 610451117 469759871 143109300 920743708 449535888 694786395 445310304 448595533 5754913 240426497 118484577 842871940 243124085 952963189 274768466 785521383 439902290 918093881 783195222 600412426 625127055 875527836 749336282 963787086 264139573 708403608 534846689 835828051 850344800 396441316 909598989 451616752 989778825 973476106 993096686 435216622 798208166 776918237 941158810 263627592 843030856 447579559 941957230 521161448 645430337 363636581 528857271 785835238 730351234 867798701 155058921 935457630 441799269 440332943 212734144 94990567 717848811 413287174 338985395 79667696 175607638 298062021 935751588 162912893 709398767 278037121 950417224 933119059 735747694 873463146 367937342 995578356 576918092 267360332 915205073 120406267 692401015 560075454 583083609 664876966 969556416 506104300 696487937 971808080 397743126 639226893 894758613 266057595 830192474 567216606 942476323 314953188 943231701 914623498 930097348 890733516 826684054 316975149 162244292 226975970 76127000 710438037 798595763 547601525 913274071 783049255 817169015 885571423 402201162 502245961 265607683 230151295 947304714 98327530 455730317 867780854 266846444 682552703 270908529 266045486 834175917 743975648 856956817 231120469 88647498 135422828 665236865 686938589 25246806 742761514 4492731 927619266 61846559 809037285 245767486 479817893 549019255 425024894 747673614 726935888 910171921 845199155 703521211 643577186 124555066 168102550 982455688 266416089 139508134 849059429 826072981 734224288 813122766 745609217 630354048 544524018 821187975 657167122 782345709 425761471 693678980 718651702 761839323 492530485 930918384 391443295 676238094 648518587 807846968 759235179 999256601 841394183 855897638 450929460 854066755 65958670 950908362 59755443 572390279 780923964 533299094 473522216 509342117 824668494 330192819 358190818 754903455 724747929 766154105 106265871 464085027 843339267 731855607 183807858 430874953 967851693 737047545 546138466 738328631 695073216 925113874 960823222 73462276 877341947 743157726 169248900 509430926 295773667 707291028 785223437 236499362 679341164 956541016 535578932 562511219 57284797 373312191 305433121 43990655 400250404 823743864 78536112 772718005 896467816 165220027 4052020 839428461 675599452 878848306 485343758 495859255 873853705 631722636 522625168 341111991 889068042 184481044 768197922 921347139 702484036 741151118 874541135 383671005 693483969 744121801 381669153 78261669 533583035 27060866 774296382 621068942 921192869 830034306 691897743 540104529 747473978 284515125 952806482 356656939 851595945 109399672 212847918 115431026 218293052 784095726 274770992 800530647 764683135 757528701 302331196 760719321 748863783 617270771 363497835 513259822 819693640 266627315 802621045 950277150 253794875 239300447 218134413 319038092 501483936 678936628 538021169 24081508 510124745 377970280 36909879 800633942 698230092 830555120 755242179 45960544 545186262 670989236 976721217 842269578 339517386 683607479 640581243 935875028 947689966 451872096 983358779 456009663 892512612 831030963 905871712 491646895 410943410 691063948 979510051 222224936 911676178 175259764 88319729 590200369 550077373 789388056 927689918 505554910 673944983 88556618 753369809 662729575 513545111 495523063 670989236 42537075 410840562 350952768 219100851 776278712 703210036 190802662 77376612 818117310 560648487 200901105 581836741 656629815 878194007 105212480 958826934 381839404 933807716 568831401 233447078 788491789 218698485 605040831 459669733 916815014 451454583 690178515 701955508 471499059 991837465 777137516 351900922 89075848 579002178 30610412 743790912 237621644 825079502 817807461 845751587 554830756 983891063 670989236 883713703 825616484 725853785 969588857 145579666 834812094 430672179 684470711 962535122 843987357 761662188 682571055 549349018 222513368 714722162 848330071 879497251 743626217 632235003 124121084 217302772 33472227 468649592 252805384 888017311 837935860 979311414 282114579 839971556 388015719 324286975 705476899 891397549 614533886 802045032 114602900 676205735 523610974 688273559 698120555 497204704 782739385 706092454 956880672 831476279 815520201 32725248 694593364 792597138 564941902 727043625 606518812 368460246 881477629 672925212 933881988 837348983 646935509 961262903 988768246 54183728 750008414 90166423 803683582 839378554 899913047 376633443 271195056 806598279 895265815 677779188 958702684 268743393 160656336 730756108 639236704 281909978 521082160 982247612 967681058 473673411 923823535 971105605 820849650 922808636 311913339 774531223 918221606 919738340 367392850 310658613 118553434 896849297 838443347 437992060 84897565 579732607 779187861 279407187 836065540 22094718 757032084 681278422 408529606 669659588 667803566 94155665 546444035 374403296 224403686 770773092 413853395 136669955 478789696 183951375 978963243 193122707 571452634 226717143 987954700 199004413 583765779 318097555 168941496 5180492 873623449 428332683 191025890 698608641 894376312 323498182 924004154 315129585 505112370 396274077 77120944 766859608 13763768 651764043 410663203 591670164 725607163 908091264 262627845 158018567 48490820 126391260 107963418 670989236 833236239 154813572 687566515 761402452 665046008 531128003 393372301 285414524 479754054 630300959 900452330 301553027 706256287 771339721 915379999 936067058 486875086 887274907 151745296 764921316 583849938 533570817 871085865 538527967 743919365 704568857 869318095 952940100 799864565 844871053 885529533 713259025 980608757 480564036 685714097 156270582 396286782 68649057 363496561 761782353 778832604 458550496 980967512 995369736 631017271 843589016 21050162 746193674 903777416 744509707 988945012 915994528 111969555 675567448 115524940 932349733 904297802 926051202 586908334 299049361 180665835 921622292 997161228 438379786 755334421 654602223 875534410 513455221 741164724 176261876 708635973 883727675 203365466 670989236 90986284 945815802 719815779 882745381 876922546 265818036 828648883 935648623 18621767 726075919 732801369 709898071 958430526 653863205 251787211 765990929 21099307 816265163 795252729 56226002 862540891 933867272 278045905 508352736 940344304 298942262 478630470 386354597 825748308 579916946 266318343 810620607 536697131 868394070 851314414 670989236 745805435 295507467 565851769 143877527 845350605 895548401 79919748 2952677 971187400 691182835 173670976 968549694 844340809 252633971 120544966 81135925 849621028 734899188 706078740 271985310 380268878 489087866 170077201 182531342 290765446 358867391 833627128 588104757 484811181 194042880 526483228 166405884 972286788 109987209 721857017 757131751 671201287 546572058 477003016 207609031 935754062 477246744 942594250 544748057 956820698 300738427 991773021 656582747 91090556 154141996 964489629 822062384 635485027 692730717 237087335 297231551 153647511 951404621 50533262 404046863 663233296 702909083 263375981 845841273 772287878 45821137 233838847 924431270 742134657 340297909 717877822 270982401 732074921 479991073 161819256 892187347 997526755 882076892 758754959 947528991 803837090 171284349 736272353 820385345 402276272 836112585 441241938 872704154 883075521 789997937 770833749 378918797 905148963 321132036 771852017 344539704 510908777 931632311 441096417 855877557 773520762 157696223 774572826 56028172 692025033 771912923 264373955 20416207 492812769 304988154 813636381 914928082 631514324 800321062 970309885 91180169 707200269 524652803 532737371 966780 829394006 699026222 565435820 438264707 531219418 330245181 26298827 404168990 869528326 411918451 844291642 798347838 367092481 125365271 927162966 593010635 342948387 865433318 609628559 923427812 944858487 845440481 700036755 615867784 689419352 788603273 218578359 292767811 907857955 852677138 707536013 670989236 633014805 293615417 862303540 683500269 746663984 496781371 232807491 862444277 4271311 808390906 854150219 874452799 395640666 746112805 775205179 141470182 866064595 870488302 223921345 115216078 229075816 342769003 670989236 724770048 825063330 443485125 821291818 774074159 927796851 501169402 852218024 705964865 763864999 770531762 14375287 497385709 722776289 962859051 40366377 705207878 808090124 824283327 201026519 731305942 209398878 167951225 738175339 152433231 256022119 967267742 693632922 353331554 704872969 576996641 732142146 824215188 937085242 825069145 208330837 687128385 940332997 101837574 174707936 613342365 816153094 780956937 448417753 283894161 763870395 754284171 861750282 381278454 642087979 670989236 904570257 603642145 544106926 302603148 127668682 200506305 561892038 259571545 456042047 153215780 640637073 850328823 19194829 370169256 835474962 892079019 849912589 773810497 711439368 889736422 985453372 822197436 920097849 892047223 677355224 183816327 170349978 423156850 670989236 722390383 140596412 416879412 759181347 622163403 429617129 385284085 161758775 784774905 436672026 214713770 774134577 819425016 281485239 245312897 593231887 463771411 765381626 810794862 643016361 662609226 766690774 825953725 357456829 919942430 950149043 806852377 684253636 862310694 777635302 705167351 140984236 800655564 806156460 795117480 807558450 982787538 146045648 158353932 673512954 533540883 868161537 670505931 759254212 885122855 935013007 197366649 558515698 235415170 554781751 962106056 313562055 759292795 597897286 306504644 995496357 874706538 533299234 900296081 819548229 693709421 937265456 627233609 956453671 641247125 518123653 554479904 474889944 829175269 905229304 583864474 184067576 644535130 988478928 984168314 275496153 518529359 594898075 769791420 892091069 686586413 723393901 693574807 758882766 939028822 276659769 876855943 458937172 623690515 208996227 990653295 133635355 433787687 259484984 609009397 916281488 228613299 769482062 474471790 802620085 285223237 453174524 832842961 767178727 418440252 181412751 208449810 924598452 969645167 811207760 122187506 363651376 773096841 5225662 231182546 845171502 930188193 401504351 511021677 905209734 980815879 623160426 998371710 388640877 424762450 231710243 513299830 763066152 813386899 844532107 561397462 848928089 646414253 946870181 553568189 948732058 19263365 542723818 459912385 341433660 888204540 104117053 732883198 935115722 262361085 748739355 769501743 953025137 463865316 681644014 982357304 261249825 844992245 286982161 114358921 864671260 548220994 671638474 770130284 21295494 195052320 71061711 785837836 862274286 307017019 854758223 814586155 338447429 194545462 248869100 863965614 607948164 937686313 146974592 539659487 499216821 778838709 350375466 96215408 221600608 805410925 443854447 998533442 726707687 767298682 964247729 108979548 90503548 106240767 337082528 152972242 750578602 498137812 507518855 999629908 815214116 583144834 690345602 844199440 913118732 861048899 800080678 263718045 51530326 864309142 176270931 700178703 94103179 182935534 858403211 826731590 274744588 670989236 692254613 242793974 821390362 829856010 129675184 94696784 600262809 514441717 399384236 297706031 708294422 397960343 336839376 637817968 894177960 729413007 884811003 166649847 656128293 4143209 897821992 323112313 863062553 917053692 339130194 590131097 212199348 924623853 842291564 426032641 58723989 485150833 259991653 363322540 446887041 153522166 209717202 153849624 917377433 183928539 350117612 788153770 822845336 393117644 727979175 589979918 672884561 930824004 880166197 721855512 999898784 823766654 668198319 456647508 513896347 852089074 476876490 178738278 968595614 860492678 757337588 897632323 128631606 448886406 464768146 307096686 143058669 11417276 730162735 797901971 106925575 850055763 556995015 366706387 685751748 967530075 883718155 905619773 523571278 872791526 454421160 898414809 187193150 851231041 984428915 938507900 309377148 801062772 982009306 73871499 457415543 328189861 449545289 795502502 987717468 640870685 743686778 359104032 774453800 936294246 883061194 84309005 920187327 197371702 39269021 105556345 555024968 779734595 614587125 172792035 552398536 334160089 834749620 814020227 301403120 632236036 513342820 899920894 763492835 53053712 427316036 105067083 548314177 880527288 467493221 176259371 791349660 945389855 53680754 153131525 702255191 869320293 895980223 685296400 334451886 109287027 999605528 939639936 53264941 575372478 133254474 144832833 679671646 408151018 735352458 113499396 181200909 972342158 905837765 875460629 799416665 56851561 970107689 888455288 931434055 820742756 259273888 797603454 917128007 156929433 493526111 293457456 318495701 663130230 807099040 665490599 624626815 270220358 517356425 96721180 899010804 710271501 158230935 550710453 846978556 267293800 120534038 640963020 486734233 808559223 249517278 215784509 149734811 914200781 53448614 743539228 565632809 465113150 734802463 558342459 729123623 293001977 868264935 829944399 963487564 621849019 682614215 49269925 112518236 716645547 259436688 904256823 297509657 698757935 973901513 843674821 830277324 971774744 229385326 470301295 918808292 13987091 573709048 769538220 414203197 798902364 48818902 819753657 467538019 937717992 875359476 502298799 402196300 40747954 719028317 767286856 648009944 515209771 760772019 169426614 976252558 198793787 684239450 883007206 374501514 670989236 670989236 701757815 930027759 480429611 787208652 742440072 866609472 932109324 862826610 863036717 29577079 225214945 906081633 945647149 430422206 793846367 911998193 993783061 211952835 327570420 893592930 819769480 981986898 438282837 811337850 146158163 368049180 936862611 514360152 234334615 808605803 161743748 725411585 931334472 948219777 374345596 610848794 804450160 768122397 581919521 690888834 175479732 22139566 229199574 896483435 815010932 973138551 838069604 731742722 744607074 820158699 898502134 952574480 63332721 451289717 691646973 303135970 804044164 81241701 896108451 847622249 799333897 582191604 322437991 711433970 686665358 902255239 967422153 176145055 425109232 228962166 882296705 769629246 312795403 969497199 791967789 605144225 775136899 32265063 753780119 769111407 813182954 962202759 965334818 745064708 223086264 521088709 630898125 266283347 144318468 121795589 462378268 74914508 887973371 606407533 821010861 984420283 15882188 854289603 15423376 608796591 836719561 774337044 943306291 811308606 958378928 782710342 270031055 634957444 14590334 817842518 97705997 509153673 705207678 963126047 539301312 985470496 17218600 55417474 267253442 846835246 988603081 173516159 845416388 223350042 383716314 316640216 724722219 895742819 491013622 805001344 689637241 786184048 692069237 917816752 417991548 874016807 408800922 786702172 479394834 550947549 966084868 921207607 92858672 896689981 126653313 494820394 871227584 525852017 670989236 651851506 713927914 557672119 541375095 939702520 957476129 418691453 483230221 686649637 166500996 670989236 780145762 433691260 980725561 512897247 352316058 984705885 574266656 342767875 864612707 370652610 697490205 287543119 271840497 154451877 464848059 994844336 837460082 462993916 736071314 982573147 604351414 768105731 420747557 765825850 501912359 831042502 965300927 963081896 881148703 170168376 942457985 992635476 423750284 750939665 745661727 891105282 85094883 693949677 921115734 910519857 735291707 700154776 670989236 441666127 688540875 128906230 883876714 214987550 944984679 782623969 855779729 96653282 767367500 738401201 542940116 895993321 936387096 772955637 804037945 512016316 578302826 630466480 70039973 385029135 657850896 962044750 683058475 773445698 143104295 423384147 117704996 420559702 960181779 392509464 810388945 192464159 977121155 845522053 230796634 969385194 30434408 195670055 678118638 617295469 157275218 756761006 984928068 529572804 450772095 767021634 510937240 523372933 771235885 954801585 18264972 873367866 814741344 703882799 683248728 711421781 262610668 919284804 457501186 713792368 718692430 733348354 88066147 763211141 808483236 366148414 697896164 691655768 326538831 728907118 876600150 771140347 741354082 786796757 676850048 833998346 91406037 545759031 995051961 189367896 899539299 723321460 268562238 965233907 670989236 914279473 507246868 728417123 762022504 922910262 298294975 420976910 559244089 898762344 460933146 750020496 369573409 170289963 865400487 411689109 885049865 796883981 157547570 779769674 830418516 536813817 998654487 75596797 808031459 451292377 304695814 732587283 743735889 918492893 841355905 45302884 59306469 115173998 978054813 724481523 844614030 622450490 253872600 281480794 694385896 234157878 851439530 805240390 738407508 627750443 803744893 146755207 126688112 825506817 308031563 59243733 83670833 785642101 263153598 368796906 725176289 461216081 288028311 961102666 581206634 55944288 749175877 719014442 762120722 610352024 985375150 919521520 109489764 931532500 259883504 519155129 716617869 579897066 873329192 839592681 150359868 806403866 72847669 683803527 199591833 951000183 993717554 58377298 99896157 837769356 935130175 870555736 362771694 737521681 667074228 218110467 554042151 786623867 963244041 945605426 74355144 305838906 706280044 479426753 997388466 811435239 277099145 889204380 214433938 911962766 444674541 542451504 960454817 357539398 935778937 947540474 6442525 858228008 470523332 114367970 468886025 933403086 576285482 154489430 378280077 726620045 751260271 568908865 837358781 912933355 281346626 209610016 882277614 670989236 753732935 697830930 150362029 859568638 981393323 450892762 940774096 5182306 987917002 107111574 230988152 245681074 696456678 716989827 316045206 9897146 934855000 262503797 891514966 803939800 670989236 619649951 272541341 999168063 349321565 229427359 266646429 480138143 748128297 127358466 607965572 449613965 911208724 511263247 431797264 902980516 786510175 967466342 972006027 694338753 908347386 882833727 230564567 241283379 826657318 196200563 920914274 573124709 687927162 787819629 763293337 76632215 807416363 338514131 769204208 151508515 785358304 993544739 989482554 893887664 816856135 443777896 669947430 901217277 278524253 326773825 536694876 955567825 918056303 76790326 860517301 43867424 883671145 751630965 192703824 291281795 859960349 742101735 306713709 444154425 166936743 901946870 734839192 978688641 929764977 707363420 691420542 940882884 456550893 828707994 950582658 49748180 40793683 192822382 674039077 993525940 793904697 614577474 60630676 713172761 584123000 836919826 341762381 354453367 122870365 653217012 610318443 628319152 687115664 234378464 40530566 866968843 915469038 531697747 550144027 681133837 278384206 474122044 782656072 939468810 685062026 420673834 810124910 380605944 804924703 270113289 860609604 842755165 870254598 497916438 994639764 578732442 774433679 678644554 881535846 442779901 835287249 831370975 710150762 898338371 171652389 611810921 71133374 768351757 495741425 958625557 529862517 688985412 332734687 250683953 674817548 818603693 459345099 599759775 859127877 448197439 957841402 909762193 762983833 763906092 861378812 47550590 851464514 842168505 978120315 703086820 264081676 179244554 516805816 557605539 693284679 416502127 680132261 806414917 843153915 844103976 951991717 783085634 751921035 872582248 890392568 923335293 26543520 460360874 598648032 932455905 711647162 883092767 125433902 817349562 945045404 933537539 945378815 585839647 138123908 758127408 367171784 942843874 695208762 414566912 693210724 704444142 657130703 907852850 696496828 707631108 687123738 58869123 626843129 90173091 411952020 875637536 752527067 56252951 334865360 570909430 64148072 760897231 854895350 805264422 760200471 853520251 704974970 577652070 833272929 585508660 810633967 647507849 611087524 851509687 399132002 780752251 425863343 216158195 783167097 89179122 155538825 647955568 871148524 437190435 876545569 717381035 679218819 134384007 963251015 610246921 570083083 610461295 825056165 833621411 979448955 874378748 9145778 954812764 851460246 195430529 865073865 401760222 925511647 698373858 864045502 873920971 553445066 394303269 769230095 490748998 923959188 108523596 683444566 30226254 404806132 716292979 670989236 691295142 428643923 302288542 436454853 506589779 371277391 172063751 991797549 838732898 158372804 715370383 630239572 47536015 72256866 193546500 262766498 741803327 663518203 677588151 679088611 753095819 849235794 677135709 913784762 802722379 890244749 809550379 895270318 264822885 701982004 631411474 238428933 557188189 839562029 572422849 270562122 156964014 185929875 258846319 770222426 819937887 621058609 671631508 215121022 28438599 713988217 879584867 2543605 144221260 688067383 826692068 74852537 374909890 14528353 213618820 505134844 271363341 796338406 763011799 457110657 697969224 157777069 804847380 532002225 777864383 96828044 734211400 455047022 804273848 739396986 244788323 550183265 735786840 995649311 670989236 759876563 736984758 903612780 255170996 749250414 580395270 970040343 143701786 831498042 921817426 991261772 343059558 250825694 944885074 477128085 852013539 321121075 716841358 901725254 126524171 917805470 648016679 738314087 553432674 915964384 812721830 735339182 982442323 341490799 676513364 690968036 762053260 851598152 279143785 697726101 898495552 769101113 152979674 878066194 990034490 723408902 999390854 437596791 764011687 51626640 338217803 797081490 99874252 570037067 185753651 827098547 584216229 909644355 894525395 934497776 778465534 617999117 954450384 330640096 797259945 909175142 766046090 144110436 112168619 973893169 823839313 924145775 509738872 759921236 965108927 432912294 303540806 65161920 941799887 82873881 159214260 370866342 253826406 330418250 949980034 649288617 727724892 774402454 670989236 702305544 83746043 919685784 41442399 107852678 577395528 294576640 40331552 455606184 820789101 26848858 944770596 826625642 416132256 854049939 389774700 102227258 549133049 800126018 291985318 236117523 573777396 677400211 736379579 697203750 412902827 757734407 531104836 957235096 28820778 22021975 884579007 679174635 888204312 224134339 988084264 236427074 953783796 817283364 482136460 697600270 496709521 364609544 697850582 745874784 990157009 131807822 755243819 991152370 264512836 981620659 866390202 868871329 357813897 997848483 797963637 670628050 183285231 785738532 674593119 589948196 86254138 196617788 784167639 750766898 315578670 50297517 166826972 736651487 119299999 575574899 623434329 97649259 836268123 825822948 943435329 861446341 596623640 833273985 723601568 342748158 994809514 292067313 11793957 731696349 287174475 825496291 633504640 142324554 679812024 961090747 939179218 698255800 637641049 553566971 438024208 42012495 136541403 548694493 675869765 187270829 574530031 421774165 78117420 936331609 477215261 786171734 917726570 110286871 311081577 498987488 530475872 738483647 957767796 844878486 745524174 963687541 862436999 754980882 938664397 217311488 760038881 896214763 941346055 176462976 316921626 543654989 448502596 748130954 837889285 22804816 768008235 923412672 471597636 431734886 776850755 460129028 236564715 299240317 956550061 721940399 872225544 451067915 710443503 505506046 804644672 839985636 511607325 84999114 779831498 19983802 39892108 997258770 274509244 825364923 717920680 728668071 590623353 705876239 958811985 955712838 292327645 281433926 469074868 749208928 921314716 191864196 65619625 771779717 301878962 292803599 759520916 987163891 58639814 674393706 600449734 759349672 888376469 398723828 910918190 390714461 720790511 935734442 851266887 825774559 324467834 741563057 769858811 421355368 640803106 656091923 891885503 62002492 430695033 332410441 339520448 510693746 320447188 906442143 954492030 935185872 954038788 980575055 608133379 928076785 95326893 627773159 471474701 326088512 790030465 119156381 844843059 576179544 707299553 266647615 753604540 995127290 530488270 580604092 168934985 273550235 674190924 937059853 227110264 423471402 33443391 580620599 900278512 855103758 416304640 959254941 464164650 96553007 917547580 345094136 802775729 679843333 438834888 721597124 211528762 908488009 392239822 669250265 41944646 152022954 229246925 985085110 447202141 714215812 405402548 750604831 222406147 670989236 991119261 633082737 270771006 832682208 640064385 218387078 44174723 138896909 611662103 197822809 861599437 928133709 379413819 793023533 789867409 94364742 804577759 316970776 396712584 857699280 510856764 97461657 879989148 461548048 821897249 332855707 919079122 851858658 989721305 703038955 800146244 245257122 540671355 224489516 166118871 570477138 258460046 392438763 750371926 888167947 578165732 332732676 950579482 773821440 617324274 873749735 989278086 420696136 798072793 77602083 801850724 178513939 170941736 324377015 963110129 922242698 170082733 240759748 123484665 950039278 749694827 351670739 594521523 357498077 889944260 200610111 194998421 192955677 750245858 224024731 659354179 842988319 476951076 66226607 681650606 810370890 750136632 711343932 971532960 432370371 86463578 976227066 771209287 272867024 745213574 168865292 255280582 973390868 741607894 784467860 788513439 147983115 756843392 663479423 918217377 765263882 812946116 854325048 909288707 926912407 954918714 811286876 907612645 868129489 520635818 804878420 336346508 980005516 119737013 949105317 572769369 275166526 762103318 710915045 972283612 575574395 560193405 159561122 738336654 915587656 18893490 967831236 708906035 77869072 846067795 258799737 791015223 706952189 909874160 592776324 500934093 707187151 6049766 387857605 931314527 813995342 596801653 606246781 747660211 373866511 968441446 694144856 844060829 820678574 364129423 794752400 294957543 289671821 418110074 529100595 586240146 472544502 632980590 285240879 857747852 865282632 321149207 845044783 484363164 765836247 475422012 670989236 835171872 71524303 992433052 944137026 811165051 940865355 294048802 712931923 881099130 856933041 938104663 982895796 197488940 361312704 836531472 153054691 658239622 759422063 801613652 884676364 543222348 768383349 152470194 480366448 946587424 985499604 859410804 230128650 836254944 964100917 770887312 887840804 379698164 82462402 731344264 691056588 738403652 90642220 739757746 562946816 879533626 771213371 574707863 443442781 32994845 611000090 349658529 740954411 742064506 993374447 709107927 239615136 43485994 402748756 165780431 72633628 366039204 3311268 783057626 745123152 855413372 970778331 41296398 965722947 447117598 626054938 119335914 396419290 517636538 467318061 399923791 739901340 387953216 967827062 154876905 500578427 914772807 916713509 764508460 353654754 919288859 912233439 42190334 922539631 671704935 377072668 443208763 799976652 10764519 771620373 715552959 819058436 875168446 383451082 944499138 803146876 385904892 660510926 410106059 154243 613879885 651182581 174324471 672066807 164591734 153104908 755620036 810574272 670989236 86101394 107003366 864680074 331567894 832231074 956493871 312869709 937364425 800123351 928993742 588036787 745914803 16382945 500368381 481725932 525510012 572424032 36550777 702231227 295750081 701457363 311481902 101745946 214725608 783946690 944571387 303344346 253889226 810474105 766895066 239132973 266922475 860888876 976969164 6458422 922861716 426831156 613409555 930225971 584201664 266664341 495661760 398435749 322823921 342725113 570460038 970207183 689379346 463812259 334432386 597710416 981981797 893953374 538252645 750594000 996524697 193459976 867674613 625913526 902859701 732496217 819725232 670989236 990233999 716365746 921937699 476427688 798280501 377680838 255682028 506056284 17347021 742680237 882945976 360550908 751794270 199096043 746347389 918052468 540378515 754669590 293481568 897530973 29719474 754112838 947474601 252468624 218151318 996181735 842230733 821000941 327193626 34612229 933278249 755130580 479210803 551186701 829227992 162267969 866729963 991182132 73320648 211808380 668735561 75363340 346702723 436244602 105279683 302902871 702948120 726318173 527824324 967634334 884138776 73821098 79792071 840410807 814500477 66781537 76922670 724117313 828011661 919730676 928855811 615779320 405362553 60435104 782657895 659524633 249173812 736361157 907620748 523681332 304023625 670989236 997428936 972811835 377825076 240900626 124945961 585886974 414410448 743696987 980223852 434639732 882172944 724824824 83949827 945610522 912045482 36632502 837835311 79812735 831270573 715588202 279541900 465323944 903408062 705124491 763465887 401543078 702011714 8665311 904386415 475598562 369020946 742950267 258673204 248815213 445464330 681943712 874254680 776226453 382666264 871119402 683367314 961138980 238228236 734653682 556212657 742773001 523563858 243350645 678976104 985883430 670989236 642849 730637646 696388775 852231662 728436211 503228941 150898136 903079010 904235021 368897713 834035749 546260956 436192256 136223374 205572192 349517008 826521558 737946975 805541965 537241015 635321275 49433816 752746957 283416930 611650849 7401208 358110160 971233596 811176201 681901083 221614093 856730100 531678455 596514153 941962480 736411427 283653371 80897339 268407133 58183269 128232977 937148181 952479059 755050449 702535309 659080618 825856518 759180521 740501964 480645609 979576647 524296578 763202535 330650346 267474079 415401802 557462146 349860711 471610204 696403744 998721004 829978024 997481049 577852274 369163930 556572955 794678033 114843374 578752071 848875550 715020184 357866456 619607147 994308395 543747457 14382850 44768001 334694383 69032454 636658151 82301991 476182802 916543211 141107786 388933804 326712066 48744686 139471776 920918903 413907802 470745243 822545948 183350479 686888322 415658117 244645590 121055796 560018420 790871110 734242135 407753390 822002290 753701976 55619896 122454185 22000797 968173645 687398611 963601261 909566033 162809482 573699883 696274556 803305107 785921012 234774772 716408126 74598111 820819701 319665837 263863577 8976960 722724797 250628425 21837606 865940616 437752474 446062971 92114208 678900877 834153186 47434184 835448265 682216477 920222066 527419041 310526101 983528203 879370980 722142458 576684956 65912142 62143409 969887283 358204935 408618438 572838592 718480306 515596016 817108964 663228337 535664702 739104291 600008990 769703784 733607126 422941575 650290203 864961965 884054374 581111821 273018823 822257038 278647203 623849195 728463500 868480126 302513175 146918444 406573961 255288307 69482272 722901544 530098058 987396113 892150561 866757822 899618559 850595880 871163185 899536251 808955272 755618354 912726527 941211364 177633601 572255907 950430906 787932060 163960505 627293444 632545033 194216553 834499807 367980968 713422091 997776082 792862129 679643523 23980936 910035236 279963272 162710029 762753805 153689401 598035166 424713156 479224496 938961267 985019983 851219153 757796713 745771474 405292124 926845474 702053888 952588792 716574192 664980665 211236201 701390653 739232143 457782978 934718753 957566775 581727234 804413727 390282569 468326845 670989236 348287020 877969562 938220712 388164155 182222530 681833190 764184334 928582367 945891815 284496460 811505085 981060138 220391070 891923595 344251155 404803783 915045229 619424255 960874883 259353307 520894505 755755905 853135563 943184644 458939971 801247363 434487686 182727596 798631368 382946870 168907076 373011869 939263606 7891165 746489507 650515283 828218520 116365589 823521191 814640242 352490066 625473671 707693066 710320118 22368565 338761007 960539885 974548775 751406864 752649304 670989236 904521779 452359196 883954142 949280306 233732990 668514872 269161879 981941827 737859701 922586040 60206181 899510512 502759300 419626112 798191390 676220719 348759374 798939954 248272222 966270090 855909151 786898987 35498773 882493067 672866289 73665766 283150501 735477956 392396891 940507286 964107050 475335252 568272129 393440229 709840993 756236888 277687244 576332356 312329866 95883333 816841279 41454677 82716407 738135468 310994721 442196405 786491493 184045069 44781553 439717173 947708404 520108391 698379830 51239357 939244528 862026620 68499188 626340966 686229163 679539869 756984142 64730706 848154278 40389309 969928944 378727839 590915828 850263099 128335892 931043114 550945881 94978632 790604560 670989236 12279101 982538768 460032153 725273253 872151756 692527870 671088579 784785751 673828716 946513642 137670886 213117807 211214915 80154637 651494676 224542666 261350643 768035173 744255368 743860148 641587199 516572901 15285471 958344991 999467507 666627278 512114551 770583301 883927516 416653992 982582039 707134061 758551908 761714351 162001698 167682753 42198957 820679612 953949734 305537840 144336247 581988314 114702712 887879019 572847091 534777496 555190333 605550295 329449941 903869821 410971498 4486345 810746675 358605490 244963512 730750849 707853846 186065775 487197652 912791010 895796666 179547499 994192957 253208585 977456455 867792933 948619754 701485207 813502644 865034688 805075523 415718915 487113939 189472185 587395027 680119264 430316282 332904243 789120697 848437894 388104985 896240370 164999520 307939597 987461192 600289509 880403350 716738174 450749857 548465244 776080723 176868370 650576219 931890925 393408992 267632133 570394035 502913180 202945646 951240921 986995834 960467871 125337587 26877087 853699434 733913834 975915734 843391530 173103160 539133029 180385677 528755471 807472174 783928505 883396151 796362987 701802380 499942740 737731051 640684124 763661015 871938562 939390272 529632645 769512492 823662856 694125457 850939669 387488754 191593140 752567398 727598199 799581057 610343088 606785603 109234181 635344402 889176939 52544427 645285705 539519679 255784657 208925710 368535655 95531524 760731234 813568520 710765084 87123570 114542656 164492760 189745364 640167873 883811511 995987442 786550218 145114565 658977647 976533412 762343354 740378107 348666114 365563344 694233403 365429816 342322778 261552495 947321859 956505953 982116233 788561883 653018462 935345769 171439268 457542404 561212955 466501628 25065515 932172625 476934960 991899962 529850683 988057530 323547391 26138821 828825896 654860571 783402066 842392073 734131351 100088485 498643003 422649701 435193221 889594413 959672812 379694140 950560410 768916340 530794762 881663690 611017766 545862803 193170185 281636501 513202766 350752370 769531416 839352708 827446285 618616897 235251284 435348692 980040706 275467735 186517799 451961136 742007304 519837487 597330139 543208401 395676442 968161631 915791803 858743750 149524107 943554892 676700253 435203956 864666732 957289826 47705356 611658769 166944944 449366340 837500188 667901021 831498568 71497939 680271277 497978467 986196968 993495868 901015642 510785141 112543742 767444206 962914420 802238440 243150131 736955570 623764884 670989236 682316703 325391708 921195814 710153686 939852538 706324363 958755837 759913283 733218145 689531342 549094836 507724961 675393726 790104322 888877741 69972100 104765046 90377045 417548463 623977691 874073697 414704473 801649091 693112093 689263124 542493875 420184348 45960397 114542792 758834840 996850592 612649672 806934227 618343870 474152088 264049892 929834969 943969268 277887794 768023983 383298457 917320113 678396955 260661108 772391525 512888932 175652507 643472159 8856467 454902311 950567491 942565967 456452313 25910584 254655737 789958537 825638438 946152062 936608227 382495260 18647029 776273465 634536581 379215391 828861751 837896914 13989363 280190214 735969106 872446468 869923560 689532773 893097668 902399658 972611228 945762219 967445900 370982422 61540776 850784036 580348492 968043999 804557007 999802834 993953862 305611961 704675654 296267319 942600194 938924899 541989081 13863669 781192305 291191128 110599605 879325557 855570890 148999421 982308157 795391898 408867658 993423566 116273475 842923347 592262103 202025124 793479120 703462345 823215616 716965409 993418546 359194203 298268111 660433909 907823823 707162221 872758058 116995029 136224068 517111013 670989236 971423499 37884779 20587502 342275801 22653386 200179840 44985884 948366274 52261573 699949607 16697344 380709821 670989236 954978797 784161636 519991859 75414640 867654006 961714856 845270629 108844427 744009774 262711932 781530315 471912851 721735312 583937363 847884041 749240676 819303730 180052695 656579267 675786427 520084587 967523680 107962972 296371244 719670609 578712976 944291445 338644010 941468769 406437670 90523075 31908277 973922847 907609079 895730515 951169237 222763694 804130095 325146568 223089178 849191066 494397182 127493904 89028443 49384780 448096922 817731618 389583044 606313246 245591656 866505163 292185660 332045013 862797788 943026967 542001364 881579930 901249871 689201348 462550626 413843369 511931828 943236084 948904843 991765690 518956820 207028068 925913807 937943254 261238599 101954726 687578153 628778884 742662131 862897378 800703313 698406738 869209105 982591369 696270257 278836094 262191235 862089568 723178235 202555020 744265035 623968024 352990382 784702392 620982085 909849234 880108717 807134506 974394865 257175209 201515464 165397595 890727346 692615019 871743993 763466060 839806610 636550695 417002157 395263366 937902823 975203620 901731482 862959344 826485859 495496975 726002133 886038784 539299350 911522202 446033618 417939509 359156807 335476245 355867413 812724725 990291027 796083857 761517455 981329567 24507958 869406568 418020551 593097421 325184572 733295929 138165518 869621864 808162943 991160698 768354399 737912321 98957406 315053650 343543548 814463260 670330154 144909389 801146739 659080066 152548117 898961731 596297859 533803031 388324002 511517222 519648963 874883692 248977059 723065477 670989236 769205251 829261843 481076608 642111285 933566737 827127923 656651137 940908731 612851596 305652177 527522479 603325999 563757809 777386391 789533295 870521258 50741641 701630813 859171245 353913079 873320623 920466764 680224838 765311522 736227701 923300149 869960824 786879757 792621640 238097832 131135886 751742492 325348288 937580896 523625666 763708364 147039043 271738131 263402676 352809192 941836061 215335551 716046769 900330785 770426431 773519613 471991250 534669906 743673811 165709875 885078402 698273135 328646190 574072240 964877926 441221456 484076572 823012390 936577513 827910126 596346784 670989236 805730313 880909765 575873162 793713769 988529976 728097887 477080134 487652226 184345422 15446905 722691785 29234396 797589340 110438365 901018730 700298278 551064611 829594949 717998740 995331295 670989236 242507939 185882318 745617521 818238584 945194711 284391103 774317921 573479118 155430240 339854646 670989236 611226896 760997085 800098338 306783928 599225858 886652658 892563555 210622156 548322059 171903400 956470363 552278429 464124813 674930094 835298370 785752906 203414999 622799490 408500174 366600740 104422295 430075018 449522529 415850399 862594640 48892407 53533971 928236632 581800320 768842875 955601000 198440360 912200372 476756100 743698629 656056164 249770682 307657358 232237755 588447108 968840485 824672117 903159911 254371226 466865739 778625914 73443473 565827259 409451215 186694855 83856623 999932422 360476756 666033287 754080005 861429940 349907409 904475669 989930926 542341511 16167581 809150007 832436595 833051030 997358326 847510896 918575069 843036592 311080729 579350419 575903953 520745342 70049490 659869814 782112492 218170073 874973726 505873368 381592263 882316725 942905453 597054928 856085097 133578840 825966379 859727211 83245600 894487299 101363311 570411884 891748590 429003059 845363388 709725527 935334044 858048096 719567348 799345201 482541714 197053965 6565103 760622200 772738757 670989236 771538132 311564649 328756699 661573725 821141433 16934002 871237638 342932585 670989236 92516008 752916337 912146420 745537688 713872875 745560913 586404573 417749633 941917890 814855679 909931496 841191924 335403678 40922696 962848111 556392778 748350869 412404609 680464842 763871683 505179119 754363605 373201702 900495709 201699391 769323745 95586617 660400697 88873933 743221995 670989236 499733015 948901327 674163588 565058711 580142263 960782753 902044170 771939965 290482603 713097733 720791591 140782209 565996169 696976297 92827640 726111288 792834106 575972331 789229100 557304558 496213382 52020111 736337347 949875233 883742393 862487546 11271460 403213816 786929775 670989236 61749271 511713570 937117538 605138127 361630750 726331971 859121328 734534752 884971521 476692500 783038495 323916386 811920955 346487317 93136517 360057456 561722957 673039272 215118083 778492823 393640641 944654778 910294805 733771270 118869106 683981669 973986192 772020751 670744580 629220800 361498799 918906370 876398480 740244037 726315993 806359086 131704693 730294477 243394466 866545151 858994378 525479993 818084562 359360015 349979120 806126702 949024819 20270371 64957299 747128643 937592138 376823977 229036181 82082017 364969818 819220584 522423046 627834859 375641889 903214523 756851656 425486908 326541766 165835343 337328812 587646595 779379701 323036211 158734160 36745264 895683923 926245065 905214809 519840826 565828101 883862074 225610700 487333178 750020901 515857858 737943880 976575662 699991334 905050538 915868690 885155274 360288744 459059679 534273777 810476541 932183247 618937952 827465200 663343923 487887258 669006735 821424272 758424895 927833645 879170585 711647920 804444853 462994851 152129960 816102653 705528445 670400638 596298660 617903858 8647227 334973414 840896727 560570736 533570376 808761157 827449943 692592402 901583583 217805607 736778691 279115994 698086676 945152795 748220803 819779946 827313132 56583475 291128302 962529298 364938831 161786839 172597588 682634901 469820253 25525939 461872317 701364641 118269775 661681586 218907532 730928634 704022528 543291426 719703574 334928763 320717740 345857021 920507796 516039924 793767437 893561941 956211365 738242908 927776779 862470017 924930277 2365313 944121431 180218486 687970463 801378110 13905104 846009792 888687763 818459505 463934892 980732296 350900472 124219759 794472215 633504422 815064004 210616502 697702921 555767792 713314021 716332237 945992757 958406438 197280961 449061734 93136629 814110747 41822558 793327614 166180556 684448879 863598144 881114927 259105737 29187903 563800237 763463366 372154516 9747381 671968152 179205301 251363526 877968724 993609014 947125780 96378827 755008068 109098778 933157810 570147447 204348560 772941799 190854893 71598266 819497546 959540415 870409576 650629485 669098830 9419951 262600700 741064456 592114591 915859176 730211632 922541743 496503570 217835186 685615077 684650893 722624727 894208061 923890631 866546075 935963115 787547644 737676773 260674367 681272535 324798401 6065605 851990624 670989236 647028899 195443764 838446546 684468584 717616249 774097016 948401707 30328000 768886534 81693260 937593344 595409758 230059699 878155515 669384240 793171037 817055303 28612319 52615370 800500950 800328465 552227117 505770452 113792804 386896408 210651798 639098899 13096160 646702935 869777239 246379477 385073777 27856335 901554393 621525629 505090643 343444595 216763597 745911174 896010221 245456937 846356133 915365266 970520422 737775046 259643913 728663213 915753945 44867119 726195652 367992161 69065262 318406102 782045725 417740161 839311032 110424062 969880365 287903039 799047112 991007913 926253102 804267690 429242644 668493017 43987924 838741656 391042114 794361358 810953223 17876258 842059568 136577023 122994934 651024046 739357109 189538719 140332228 670989236 671425040 969472159 500572506 845927727 304041939 624076710 705853579 875686894 453981979 561279505 632298947 433418309 484482276 329162892 24939381 291526796 112452559 489583003 435876411 588265419 596677630 143040563 889677108 601515346 518867542 93009117 656330097 972505780 227294176 456188731 180801068 768547082 421152550 908696686 70428689 663677905 777704524 828504148 684059526 762383640 765284491 729652911 57191916 994528547 740682914 896539424 273837167 134586952 206148091 245123794 762268373 567980297 870467086 39572608 811519399 303822218 754768945 815347554 847292071 734183134 902510467 493041754 535359308 380345878 599364428 428421014 542748673 749759683 244192521 835301862 947990614 344482224 24958224 473135982 967982563 876141185 680064988 160732600 811618958 119460277 852576107 945571633 88569714 1041277 990410378 120914523 771741357 899469070 390995971 795524413 828658808 267655381 874923240 622162695 240682836 67655471 213624290 749957898 946803933 649107948 168978892 670989236 883395799 461786527 840410725 804551850 684738625 552771000 788534333 626697084 809283139 723186162 925394032 727265728 571510491 295831290 12621403 35863139 670989236 765853144 970973904 974619156 828214742 728962315 555114161 663381132 4887464 38197614 681431699 135240996 983095289 866748111 852253352 905776156 638808756 656731918 480653213 600084733 855048451 881640825 727172770 218347210 784015731 845875363 392008408 618323726 972992250 348977968 408473872 186400424 603095786 880850885 428490702 938524311 784267056 141358493 680505699 753558998 605305924 694296372 706938790 700439314 245713206 877667511 438015135 98342411 690169153 307278589 189633715 37165322 907174747 548384874 851159161 695571674 558531063 606550129 992789333 779350012 262135414 125012162 586362784 847461392 808556404 204698602 821296694 431004146 142177214 813251867 697218804 632728430 900066244 793099629 938582461 296834117 316721989 914487399 858410303 577828574 156421695 674496985 979577442 257764404 170721478 719899306 565188915 201951999 976459521 544161482 983403793 509368380 420547176 773279244 699227530 694433479 856192661 870015123 657905455 681401218 159213101 896683080 512670353 697760807 285980982 296507155 733931753 975365552 664606367 364802569 498421981 944241825 297076317 217661405 131289593 689687265 933980840 119518768 826653627 887504494 778340260 473056644 507373160 701116163 855091922 767993353 149998166 380484154 634361627 905776264 653159989 188269460 855262382 793550051 918141602 725977109 882521793 813907286 7866790 708618984 13008193 959733629 837049738 438073438 857804410 738568340 986169453 193339934 893554379 670989236 973730377 546843953 734704096 730723817 611842717 840043782 670989236 69427571 525670914 195326727 774069321 814766654 118660502 976837285 756135877 126964103 479013048 313957474 67718226 720216885 473767729 8610407 468000343 173396763 80062211 943219693 841711570 929969993 28910521 505189533 141444774 232966051 210130412 816014568 694338357 589350996 271718029 337069346 943376061 232971093 158409565 677414519 619834621 831516840 525181465 818478168 575100218 421028719 787057250 949498620 278447018 707231046 948565201 753661185 262640652 320780249 805683260 53141965 951007471 914411115 979217427 693639814 766907847 182657792 839962903 573913159 18036224 801075487 431876931 967414388 921916813 539756399 758979755 198438772 601668323 994050292 588574221 321217624 514502027 379782069 494418419 788204874 637224157 274468018 674856099 315194673 591458344 828604506 907616676 614111937 783532308 94198359 596040096 682288233 561480504 978597743 326519185 775754850 202855736 594457553 822134167 151338490 234915352 295226064 586085459 920344959 465708865 390445730 569631953 687720637 848140455 749389580 849441965 809905438 975082156 905882152 987701914 755648244 477210373 12426513 410533241 142178460 441619074 857006173 795779566 992243366 840203437 648886449 895979049 171570386 921863765 131100200 725614457 956046316 438735935 884026402 973959488 907027526 794364076 408069288 102442121 827342884 48124852 418661311 923023859 961962913 959421607 852655120 738727999 180236130 785795240 108024204 419847683 913632630 622695761 5538308 693527623 857841201 409994734 389719535 862996851 887370786 9217466 7065878 929479011 887144795 724753006 290338702 725859469 693962584 95576340 139970401 377916570 318268334 821127105 44052110 670989236 716070222 229762422 195145734 484721367 227418896 853141560 424681632 568658801 316554808 318655103 855627832 384895498 722249249 342699613 807059518 762362444 731399757 865380077 935419843 892400062 834702651 986390495 674030924 806294491 863452227 325284406 902001054 457163090 818851819 510580283 394804060 206791286 629638377 642821188 687436791 494668852 670989236 86387624 905374057 841386737 893491715 889762325 136804738 921038162 290164547 944458867 773719175 907411306 954548523 476608715 317026926 995462394 972370792 916754729 881555019 176212882 729114734 855647460 948873826 687708591 445911598 848725557 723817833 96291185 126223897 657601198 150129523 842408851 985882340 403722385 471340492 830299677 83130251 318300580 572283964 390560778 626263502 813572768 563649827 887857159 691712913 908513808 37865936 60076170 75955 63822269 797738689 883254041 579970936 703668662 982963349 746660033 259100161 860458091 311561891 272649127 475390015 941167185 70140613 709451242 812974852 746324482 769552543 6479441 673991807 670989236 196192800 331760525 818306244 830193375 855191277 490781530 330476569 29795176 189072535 357965252 986992480 745118213 675101139 792702847 448913836 711540462 896300816 825888217 947533508 432147329 709688377 466870649 368282616 99195308 740320450 532060825 653362881 949289657 739788769 372328279 935923680 62848063 697532315 796589706 924409893 986806828 982995706 787241154 390000161 161210526 708087968 86468626 565233893 991118663 775444389 585643142 732000273 328140631 511087496 477821302 39573538 746472460 638961227 869660060 533231387 787011745 925672805 933996382 3070550 908039914 670989236 948481051 287016628 47412782 786399110 648894950 323804148 670989236 867102891 781391815 705977640 679327737 489795884 146475232 582123396 490917135 616251128 573477041 808821175 612932124 354385828 527904449 710738780 767260734 934167207 761652404 899536204 358492595 165295968 957574271 502838283 748545878 182547660 65029513 679156510 60351291 670105729 712055996 953519822 610223587 341598569 886379301 506233015 741303490 778411851 171069146 613029183 398661630 261878574 150782833 862432167 364702623 79569600 741414709 454898767 493784989 539862794 444419786 576707288 784622748 983708606 192020785 125668132 379111215 119211729 136024996 699787879 570028246 694286041 400345118 307396642 367617602 246602459 999605147 971709301 758384232 88917468 952409748 943543334 736961147 426269227 442164988 714003277 553234880 833746019 792559353 403903726 651408120 481084993 978287942 193381189 731097801 548187240 779731351 121367438 971152760 887630083 869133382 985971986 411647064 969432840 806411285 921088948 858404429 927753635 361032220 76852647 494333055 920097734 105568119 495896592 919808620 3956878 815693778 847362938 621859126 549188906 633906514 405767894 453064045 493888267 876777157 56165129 820599772 796031416 515474267 280149866 303242422 753417815 942834420 788487078 112651297 32054050 359560638 717233921 501458618 912102109 750546773 719478590 761594750 730471069 880456685 816186454 827020428 925949728 247156645 951448852 332239009 917011105 976535267 760164937 525168989 752525961 536939843 144643650 140892024 215111226 404246332 874629705 706490634 944256848 431275820 885782627 816154072 117471381 757229184 304591539 832253632 387796889 873894680 656772342 913042730 807219311 802893533 898646280 911394591 736084676 581330969 969240894 916218967 718549304 582657969 108256223 877368880 837274289 557676973 293190054 981684869 796350324 787643259 159374896 870097507 49458342 91535711 429560294 980771925 999475561 226997172 986664054 844697218 125365025 981921474 715063773 166699195 527081817 474016322 877766229 646787527 944455206 673281539 861076831 679371220 990365752 210419305 630750248 593442687 973654292 738399416 805526380 224596146 779889531 949353110 519161541 321937570 52669452 340783378 710957758 842962997 98705423 602034761 3471042 881462263 288446392 865995843 455886868 760691283 746191605 849437946 52524268 689076447 867420156 906448458 630053395 925739126 842829799 620764021 40101805 860302712 978117966 725817255 485082241 995982709 264864342 581437801 960139876 766748739 751401530 973879276 997667440 22449347 293231254 287546339 926172794 92972309 268536628 455101836 40657068 781313439 534617990 797084759 787739987 916306024 460199168 918250960 702233683 30293117 501150157 565025405 839934588 867338130 790872888 138871638 398892688 685608656 921699320 296180836 887213898 428136916 405548024 157161742 690326754 746507324 849490645 566530108 239756148 415518640 927340350 298897049 103218420 392311158 977794186 977977948 965396077 995019204 847544238 695516068 955450138 671943747 322744541 894436303 174199756 108255510 857089135 817144835 701983042 27558665 13450800 10768000 969456262 847046039 687591613 110935396 519314082 903164663 188509365 916986696 4332691 884812734 809812773 852765628 969506690 578977499 981509870 725431620 793671499 576688282 540577844 686171104 809522511 907716426 770658921 670989236 408871589 824865407 636592478 222873824 151686691 92262247 93783233 971883691 71600736 778303664 996614346 513896982 872419909 600084117 537279142 799184914 629855681 662990708 93415968 658507360 852903756 385518677 740838457 737876875 984837952 740978716 685732427 865525676 637254307 243759356 107505878 240868401 575252732 789683550 36493233 921128900 623317523 759141423 120070935 773921571 670989236 334355698 325833300 500493603 163617077 74274576 761006055 659759543 632836786 685396465 198687717 948880548 950390271 793458665 535545863 749754760 71195684 131871147 228139589 528779915 549524469 598096601 14492901 258606247 404276834 890393833 338499963 826607466 897284854 673989478 847321998 281186978 174803336 833061338 849313264 24239109 399047078 623506169 938390428 581894714 831375224 941511997 563748617 634058607 767265586 769529612 217493538 809781711 983447732 599227955 613796273 753870440 896017148 660094985 945071253 870277029 719308755 878425394 301641722 811680894 553202744 335477437 590318078 565828530 670989236 375237092 123689455 900892739 918784221 175484854 830282480 816549512 752355143 855058392 504058912 544263383 312771245 730028630 693038698 410818635 584072056 148562089 943531008 714237225 943758948 861821306 650484817 852540890 795337070 320049124 344914303 806461391 960147422 874201673 625730094 954480290 986999065 699583697 683394871 336132578 255799000 300807530 786381532 371912031 507346715 535021919 603573523 895059116 215158750 676053230 342011427 873662060 704331319 947606815 873492383 467099203 788747231 839113317 798511034 630697821 45318049 736242914 726227980 68229325 365832962 20170245 757645760 688026973 44853185 837403162 913430186 994662773 845309609 279460313 874095410 50092236 699045626 933748346 710645439 745885498 135718852 745803445 722738752 827981290 950218392 865021300 791015473 666552822 103734242 49976822 960195869 156972910 713275453 129231754 922465002 895088271 977536829 755641089 995134966 723150833 304062036 247885698 26970939 143164599 789587452 909598398 341061885 434336273 475043131 807292625 681734345 602153632 764820036 790808522 810071505 924082026 10513039 835051493 844284927 11622531 880752045 931176384 841678847 917026762 113491585 950294205 670989236 215898300 30422455 690941782 244977143 821132907 21447975 337286460 266207765 509475700 950599124 440483834 768286994 415626546 721949976 969720981 153047696 27434691 19119503 5916384 245067970 410147760 927019880 926593032 923041940 674034841 684067180 760230011 879064293 809301035 968739558 928020559 995731717 524252064 485774224 964231799 698734720 692933648 146303730 494383396 242745176 758554601 924746854 872833230 947311759 748589764 889754287 280104868 676820379 849207221 414634308 126738029 635420 336626534 996350812 960092209 536507539 848371328 278121911 348610201 801443906 922510624 698981199 702661023 527915646 755099187 135441405 318353346 299411828 993476887 918656574 391647224 282506819 677223498 768084489 806368022 868001517 884616775 177931444 612922810 787988588 866136901 411585774 18804476 710923620 349919349 129408016 663915994 742600994 531602424 711354473 375754612 162853684 912052203 712296868 954374815 498962263 914556367 399279596 924785136 261631908 485103618 213318432 614898127 247287678 610967744 795398987 257174553 537878468 71711929 765697130 84139755 682603806 886082718 884927873 180825974 116224613 657299348 670989236 80003289 178029200 342283266 405291269 655626593 910921322 33226279 987891161 188854530 466709144 124648710 59659476 994186343 867302785 129015824 819909455 191730538 668657959 801896131 931024750 794034239 329736157 933913284 957589083 864221297 127804034 743017129 261796808 509359888 893917704 19995365 250695410 5092193 270372807 68696974 892978871 777811554 75755709 594669868 536029241 194745749 596638319 769363506 799222996 144516045 929325786 819937676 996929751 877566706 802479365 213571832 898814682 853268429 785794756 475150907 475035817 343321792 456714659 774957186 117659707 656408004 850740274 723695012 397323746 739801258 737166898 26819005 865551273 672190398 879262462 826157014 599108519 352047193 949946036 82862547 803157392 536114589 819082312 819037741 679429398 510858176 38502421 45275082 959749132 768300319 840998698 838544671 224200817 952813031 458641898 442610619 94112520 342238048 895709561 815083437 554864248 912652686 207054661 148411655 860209198 708618969 857927552 707920927 28481177 707131342 783349474 233838474 741037954 156130610 62153328 331184217 428543133 682805472 673638603 388157030 781146020 380276960 833396244 909885488 982159357 685735026 805451248 162458107 545512600 582344711 73033631 799994009 840114065 916472083 8080438 311192915 670989236 764431435 295999799 544038008 509067714 900956156 929008141 34990123 751993719 556877634 772957733 229223518 966119037 906420475 278568556 562530310 232055248 448765995 744305370 541966509 919777398 780978344 616881911 668957288 128473927 696174319 296048954 773306102 356895452 266649547 539279537 352287469 905841997 232198745 747787333 904962173 311667142 189614124 73368876 252920961 143368342 267792862 637035275 267722128 706929815 736849667 995180387 767993880 596841865 828831417 398504433 796668314 672810842 656972191 664415652 994680440 805582239 873002047 262698837 853873133 717040451 491917476 868524700 463201510 805282642 878862028 30746589 923290091 894403695 982878894 353550017 795347179 478221340 726477785 816020729 13672563 589394092 864123993 742403025 587070118 660963554 830283039 870643847 790898272 223620166 661618466 208891002 271437752 39272624 856917177 590205282 381003806 505522128 891152104 16375531 321887541 109509154 396273771 630626799 915807614 670989236 249485322 729526338 970734431 342157800 892118263 995513274 378811985 695912802 89839764 953077519 717566475 392074512 670989236 83790684 832569251 892830583 121988748 675134799 475642604 820648098 190342889 765099500 956976670 813327666 781572325 737125997 661373339 762178469 191747402 31016023 943460475 627634735 754788360 848169420 585832761 293817759 61947852 835498328 340895175 863386286 628376341 245481001 452370452 454353696 765754575 10253343 612667805 987085497 585651655 291723541 525893631 698463265 972445269 949296959 690798051 463483521 841778743 619572176 291415638 621170526 782579979 74172749 947168149 603435737 541510348 126743737 829765044 58748455 364924315 49999196 721199549 541521567 708873419 765880135 939791468 299104983 973378907 580497744 751910412 609383428 206281153 652313063 162485584 30829749 810648674 58809521 42530527 969017213 534880172 914860320 669368196 738203699 307131843 878111539 558135084 31264591 719046956 682490470 631622284 253468182 646432324 495253545 96880342 849702955 753121971 186503648 652639714 715664565 479513037 670989236 436281488 779238686 751550243 349290632 846427884 285103600 10693035 913506706 13733736 972913577 818636528 243653239 508170324 224271249 501513843 889216693 829401401 158072676 828764609 670989236 886445059 964729928 248116432 769526760 804645772 765219483 815214181 931181436 81076229 57610598 921829879 598092554 287361465 108164917 599090981 610838498 936266912 717889523 80698869 723890464 716270639 497096034 970414533 224612113 981767073 747768490 15158492 719997986 718156094 732312527 717572663 386727995 114213260 259162600 569964553 186023038 876169799 710459620 894211164 772671084 754400029 59132452 339503230 511610079 60744710 933125509 46664149 309535547 171162525 838560689 810936593 234682676 472448822 413147360 475020969 590812658 255653006 43604649 526297899 270545497 565807848 931564143 300758455 186935389 768742868 53010380 6210153 702313457 524445413 991910471 678855491 714063249 751702385 670989236 775267769 417319116 440861446 61118393 770557514 955009092 98661107 852179074 332523411 525910848 770356668 223124999 416661711 360817884 55632624 898410555 26184047 771153161 393245852 720596301 794142215 467878360 330901646 297876242 561538690 564749282 430971279 88740187 953575491 194804921 602803110 701412909 185166501 618173669 849570927 988307231 177126071 400532974 299422424 393759638 975492003 801517990 838573019 469755171 634214219 748817437 836180869 380961031 286157084 631276882 279682188 883221989 826365059 17712305 683580134 18697204 737810176 359623172 899314149 726446712 709425827 655108238 728222761 311483127 261375892 978383629 673487132 710343608 705432724 591498341 474180917 815971264 441287357 448405135 748180903 917674928 165374598 741128820 784318286 706655839 8971790 961987648 191425059 300502485 62693874 814224069 976421388 881327512 842589226 926240295 737794153 447881256 127284522 759949353 617874660 918966116 984855609 565744051 939530133 534635792 400375402 912225183 986198842 613944165 755540829 500615228 745289286 598382725 973201171 635637700 908647321 758651353 752961745 843672459 973412120 73568652 860536243 239286866 664349643 853693652 780501122 218988451 248042575 55891448 374306805 866016405 655160679 77024919 831108451 758319283 162592682 119719349 719923089 952591708 137447221 546199007 53988283 579145250 930049290 507419927 382997854 596871826 756278204 344243760 57368148 697149519 954234065 601087261 69872828 798810259 995173802 281054687 548530488 476515407 325984118 232998628 826853801 553764894 741379145 417541137 369575272 764102341 136326104 845946787 750188765 167779961 669090011 4091710 243005617 101469826 693372219 932582912 699364805 877074127 90877247 515137953 376260856 880452297 746509982 136711579 754138583 970184244 769814676 485465452 277718329 204382070 713818262 469423139 234401693 985040597 556922590 728741177 875222078 598537427 709946230 870598620 610373551 366942633 704322561 900438097 69486056 827475252 190114868 36626386 734693739 134349796 443325111 731023810 721929318 709878188 843950796 109390769 688920583 868382516 771150155 95068967 792703709 795276041 586773197 656093919 532350759 714234758 529963200 47422575 374461071 924594559 412005453 809910340 995460545 487365028 803983337 794606139 381324189 10814958 37271938 431969811 897459088 385274815 7054175 5234461 686012586 776509949 919585724 864518483 172208401 18200403 183408262 751249816 204790099 489374317 409409632 711302265 814603165 607843547 928248411 139046266 558086059 331372377 554156619 812516774 329969390 873024425 881691211 335146233 869157724 849144927 693188589 761988434 775323937 783157819 835038975 229443107 735779546 806617693 670989236 847931596 634965642 315290129 189060139 132240986 6496324 721447371 696378716 405140788 693549862 824135616 433109666 630707224 815260904 843867750 989189403 501552370 760454783 586161593 508790521 20462188 247542627 39931224 868138008 56711458 356505061 176560752 701867981 90203604 953296915 787603878 982277626 211485728 325111373 826142411 837553012 260599666 848350144 933198431 566799438 237748785 701645638 650884366 583512890 826294546 245236897 848773664 312813500 32875860 714850861 364614961 281802325 814456563 392125737 810195191 462844785 711936396 680374663 667012198 793515322 957914449 500828439 731478077 957932574 679292205 832720684 744599784 490126442 248852217 999301921 961452785 96645651 997327132 822127614 403396745 5772309 468132864 251485243 211418889 719454357 284803887 115530220 403710519 673921288 852904813 213602169 874008017 676148639 979082590 624367203 599738991 506207680 449843404 759007055 87737308 17903562 738597646 517736788 500295675 657994375 887144017 108834213 191309360 123118241 437462018 748936758 855521291 935968467 361116698 19525379 812433577 677833908 680965468 871701645 999426154 243588536 964693041 790772483 577230452 902074377 928119769 413607427 761796711 552166320 365476795 79580027 555469922 738915099 989593060 939873087 74854127 996645523 937283639 229414427 337930679 800332798 745582644 213002758 135561559 843880968 626305081 979352667 543550267 336262512 393872605 644929629 30836258 750659802 909755009 914817934 951615255 238722612 982762021 703715297 747492570 801423058 931003033 12540680 154835693 281418440 782566429 727838589 982871646 896856100 432066546 71265398 903277923 977491103 708318910 101268317 761960795 313825174 91580606 291840883 436141587 45498398 868934537 106450569 24523373 889006219 736826392 527494073 554169230 812531982 170537154 885920403 854320612 974580886 118787196 383055063 683525460 811249488 736309123 606135363 903863539 72410382 672540365 671477995 363564871 795927203 195689112 478766680 961558901 601880041 833843169 86712848 545867180 703236790 437808163 990919246 977043400 70871575 810767198 871000632 455612752 530550815 923527132 691858518 301549071 731010001 378954797 438482301 150343328 238494149 753587305 267853009 818183156 36488032 424575780 641096646 479491375 636144352 346114392 71564105 268504549 942022790 448876044 854912146 474709239 786080568 708201160 358003564 958407311 718434229 427170407 983729901 726587792 617418667 731802478 446750941 234797284 561861974 878289468 926836226 463527309 792163296 943578583 688597379 592110073 443012712 3106584 18789232 742583737 903547730 882368044 981905953 993207060 676633998 766436511 795856217 898299333 433746671 901186161 990043869 980448607 406509415 775401421 625852334 540079947 303165685 896863006 862155846 716653078 832564506 578549242 885608419 386102672 183003326 819334384 690136396 653352435 901565636 365401716 952209664 985346852 257062275 366086164 785947142 313994616 961507643 190624480 108515554 526130587 745288271 220242416 760733493 675103128 778782785 288494344 828946818 235342242 936714087 918052118 676548921 489839013 413485123 456773864 791451669 143179664 764445135 865632963 507943543 774938218 826486012 594533925 613446767 571075600 268910750 162495584 161730486 883162215 168015191 114315034 206214331 632299083 162886988 789860626 189030074 527438828 785682919 925258672 800351909 994225934 952904831 860398928 232415868 914202213 392698218 460803354 403681169 747778076 371905610 876828418 474816588 65733905 553328584 775046631 82053891 359812572 693835376 668801604 533708450 845231455 965033777 529310394 46526891 986233478 897833725 594652950 988418608 592781566 687549567 395500625 353222002 140298095 996644374 977300087 778370540 881054631 954716576 234468740 737425221 221485311 678472388 747289966 181644542 975717874 895728545 42369201 104891105 861614700 884660467 840287136 336446637 660373372 521908455 971188556 702366971 203006176 37015603 806726542 328260714 778108029 838286181 141140445 784682685 670989236 433285611 819215567 927386650 644002471 944700332 734380234 463305406 885821326 880822991 176010518 819593098 231354386 857592325 920773122 945132828 996815493 949022833 823153916 683603667 221844395 997777474 828906726 811158275 696599799 878837018 395518103 651871965 429799481 885960461 102452161 649178654 734471514 493225682 763241009 193424176 875438154 998734469 230768918 486611826 390879634 717060052 755929946 19419065 87395072 833557570 599773026 390015054 844052071 943350596 211755906 788933153 806293422 763386726 995760590 572278248 369608517 973818090 754364801 890183479 771951751 348033169 808823118 234891215 867694428 762492925 263213598 968266346 138566104 448353516 559775434 588422712 862974534 219723992 662671835 545947517 173550782 767454245 499260476 670989236 925389703 842707691 152806480 883148006 829529511 547132871 880793833 948175523 797735970 200596719 176458669 814832117 458532682 465584903 438750366 528738070 715509306 600157608 553966943 203020172 579358252 707658820 900244671 121995577 399483172 511264993 841573804 238320720 867394187 426023080 872941065 148102478 713409085 378755890 720555013 232880412 8585588 261884805 563623452 472584015 447649701 670526967 298718558 737046419 691286133 181282785 827562560 585515258 13942139 43508643 435353434 805971761 898268895 334164248 824934951 670989236 349379871 14141328 979794262 679341796 676737640 312427518 79245804 893055750 545702043 967130488 115405497 314725055 597722982 754497899 252057601 633725048 970359243 257186723 81723593 987014082 19668641 736572299 717230037 307585869 196066015 64584144 670989236 4047978 674416846 145481104 7029758 885680563 662182726 685150199 846152068 566705621 709972118 980463609 728458882 732456419 229615292 581245983 785217373 158845796 933832377 497206268 144538100 968274769 688474641 276745112 455348860 921275984 712925962 940975116 809093601 714929707 203876868 84963792 298151423 507107841 971357145 797132286 958948836 53971012 101501413 960341275 369517067 789516990 865857741 685930724 291574670 300814228 201896266 726343216 692205620 449227825 402809406 908342413 158265849 7150021 505135084 923669182 984228279 694713827 513196663 383226344 893095310 489128476 424557935 964818304 548242270 85924212 645262767 674627420 426526939 40232123 191535654 540851179 144895763 805258628 330411051 255152438 975950973 809950979 681519173 614839021 897128900 123120437 320647135 381886352 877330894 482280130 911737389 795878257 770020068 817806711 847708910 670989236 248865739 457567810 819806064 812679278 652419859 719776235 674191445 197481206 409108228 943977020 737311149 965448240 810429286 748838666 846651483 705802894 191450949 199870717 840880907 445231500 954930451 290163715 841790360 401875483 600675592 998580609 348722725 812680809 592581850 992419576 345281624 726442377 514394399 909087602 983160896 95978311 928126680 275819769 955356387 943266728 826306103 534647695 797464846 612576093 890705979 826466866 474937233 104673170 163267877 797809234 262858951 477589183 24105539 473973420 19729686 42920786 151066424 45716777 354661562 865288579 600057218 949866736 674417093 721310544 575204560 115968888 999950096 152790631 738516996 926856482 944073614 734233385 477202904 392273754 715722903 363210979 209228944 469672608 932350588 275398762 600252024 239164062 29033614 953095301 920004176 910308705 405639008 950740000 741269050 444262796 674696260 971055335 265528195 679464528 924376837 281521971 459280758 971838190 899985556 839357163 674117933 983872954 155812781 211935567 238957115 851653594 754176713 833280411 973563725 967511321 549910444 71781749 712474682 689128256 723825224 338398999 710501467 997423705 823265054 856285948 516888676 300410477 388531835 451998460 683226432 273954680 876007226 515166759 336023134 835088505 175055166 149984139 751537283 998459883 670989236 860564679 552018140 823925950 401306747 126711058 767707108 375154176 754532467 166314387 137587583 933633907 351917509 670989236 696887789 69589439 728333139 549270332 753921882 877757739 687332438 76071041 541328782 681049042 683245178 157065257 107021746 420581066 899793978 803981958 254105055 609322985 397951744 275262101 68336110 747633505 880881584 978000816 282775819 623490221 769774126 500314480 996904680 308407861 38387739 770469690 250567812 918248337 751354694 470765082 634221162 377783059 739294558 260325068 991461452 120342608 992858627 201056007 78048009 807083111 803581452 794660686 770465378 322203337 766529977 918767862 289280365 629660512 688177876 456988343 255905248 113608219 618562820 987060729 746061626 675721604 86307620 741778352 178277221 754553484 997272681 896448962 196089694 321510009 255225445 107204978 730510899 349910714 545979658 389019410 933313857 612759074 634605233 491627891 873676574 78402350 938326233 746670303 924438400 816646674 182805339 898862881 432001081 673578518 902785047 987818347 378728237 590438710 959204405 729336701 744333558 706927735 237214920 929844653 990529257 927592885 546048456 59125451 720045902 890889968 278642925 813131622 876810081 897480798 754936986 909460575 981228368 777981967 39271188 838987965 352506627 478281963 700535087 575869639 289558390 481596972 690144395 684232005 704161790 924783521 866474217 274010084 75437121 813982804 964332668 243745384 966522020 162997107 342916762 527017262 752357556 422265100 481704193 779942038 380666842 483339142 944356572 345260861 961383645 209652798 744418037 767092281 747273590 89674245 920011051 2392987 256605460 456901306 591781047 705733389 917895293 463046370 561571316 88774056 446309111 167915666 293324046 201590417 420753865 499567567 104605183 527785036 81361754 744540602 215481472 864910753 982045316 84683847 18974973 775888178 923110567 703290413 777848467 607237639 867003544 174128378 177507404 757663765 203091028 642405754 735771205 136530274 936024598 236116323 925924835 847560233 89849426 776961838 760702714 365271274 953255916 823494364 872351270 522293654 999277863 322823180 939146083 836585379 759481219 426655618 623354497 952000162 485660050 436520589 739193024 995914918 549307063 931728674 990076845 165128704 746681867 102398494 72062900 805493886 853148468 126525127 306781417 609887721 249167156 938006347 27417931 872403579 328671181 708340967 750446196 695097053 349504133 795528995 34251890 135992008 400673121 175992636 188236451 996897726 899731002 550817335 780783419 505448885 935032182 370252676 79048611 707859187 169145431 985445189 903735862 49713081 192144104 954300488 26900209 380202938 584326911 670989236 308945121 898887939 352216623 960044464 591126370 473073530 885674318 798560064 897896635 624496519 898734901 874344641 914166564 436300554 847919071 423582995 491034791 726370213 980440452 929678591 863852063 884136536 771586785 120701736 70533229 883149634 908998228 658615634 169689727 732963869 924041435 519785238 49642211 414276203 238761374 869097111 695838045 767102629 4456860 675493150 753849738 866274911 713971351 345242935 912398571 965391985 898055536 340239550 937661272 438245037 762750930 670989236 427707778 637023504 666729947 899187685 630328885 953387772 711411350 278922869 12366605 88478973 386134144 799688018 872996429 233036706 827671951 961701296 415112401 804874794 96738110 533275794 663515247 19449670 400470224 346677777 999064881 858926121 36179961 944560368 651313796 810538564 803466984 439457686 470756597 131379235 727861965 181084385 813680977 940097935 244418538 343246459 799202901 899307821 174114440 418451171 450465386 912632731 13683563 915599343 767764407 183564300 691589470 925405086 709947696 225847615 827915570 670093419 475058005 282970887 777545537 682131578 441896246 459141554 733708202 702038851 211137618 780056045 916634295 269140691 752907852 934842713 334294014 845598170 634993131 962728017 90346093 344795547 921304354 932597974 600889711 144309181 364999313 805161641 649334250 822818297 293665678 865075039 385647222 398278626 264786778 810973296 160018551 670989236 828279725 743225783 174661436 974542764 898343556 773854341 952659058 640531863 97952965 836050487 352611277 532400649 446147273 361150720 957071828 985023229 894550392 845989247 716278556 670989236 784195159 293135701 760413504 282574543 839215213 929407263 216391002 832378904 25707327 792534132 199684486 847549598 525514260 670989236 358870163 564226190 800356240 147074281 793035011 739025115 520503257 757956348 937664487 941280941 782643459 803342961 111381322 708917469 309514109 277097617 328041786 756622608 318256126 61024436 917404293 593425415 774584567 128920613 193728780 934420708 668193853 552134826 148501859 775062320 504333120 523855526 686313389 954508489 670989236 668039288 210350588 863158230 423519540 858625553 110323102 880909818 773359282 355262365 503896384 889222654 924937499 940082086 852661212 769997835 74971209 959044800 759406781 430226968 381918233 949556833 928473965 795849286 679558510 769448641 90289458 190292489 764478809 975197023 814881997 176049618 684964993 52040661 972520356 371104256 870001801 176701538 720564684 739441389 923340934 971730022 227827260 473212242 899013413 986767622 887036462 732116120 609501524 347262526 975466044 714751147 955799462 535905967 686086689 20718106 96869917 779186041 194127558 23941502 37413980 111388192 596436561 85224404 832400448 521885548 923279557 600777546 895049824 768142440 25761232 750656239 582482690 200910975 999041288 160835515 454152410 891164681 921554001 277314069 736976176 945758100 859910256 502765293 347221408 940094003 760027776 754446433 850139552 985524059 933660362 967769415 12011139 100974424 716343455 852469887 849701366 676494142 756077456 561171420 834554285 207633911 305044825 822319433 285955335 748708050 859808265 791132500 524669763 848956460 650886155 403993319 938748205 926579657 925536153 933049859 912455292 699134037 874217951 804851027 288398006 688439578 307412897 777092302 198487181 191879469 482262244 98168141 708755349 58117013 301840634 774011532 527594109 967698369 975919965 836392239 449281787 201239438 873040332 18398846 918464073 94808592 402441654 150091339 330596207 591039934 568145319 688903715 98278981 761399608 626630313 835039326 786335602 797416197 821813450 537886017 757195593 670989236 19067341 678454830 14426841 801174840 69986689 767241114 700629204 508490308 864098497 673404818 176900214 950615248 259373504 105358609 185031725 94626732 801174184 890890743 623212695 577255735 537651393 709502355 975770276 343267371 661711356 838842230 375282635 708489454 725823626 594472870 840227778 926295180 821216765 427860761 825886252 902497824 576565433 676541776 977569596 640082852 977613833 680086655 477904434 40849883 914457658 497866531 460807205 825832704 899439848 932916867 863633175 123823196 860724371 775461018 680783376 706605171 610061845 901728602 88830472 368999718 470244282 419156647 929246959 952271882 119376743 688760141 484227117 72251760 799299206 136217186 99005820 790421015 635613480 57286206 802256646 138265220 227492506 556244216 977380018 724745955 845520413 143896990 710761573 807524290 966728938 374140306 569570137 709682126 670989236 624311843 843518750 919737445 755009044 879957991 810610061 962514304 879919305 742448369 805498451 740377254 693786422 192475870 349838814 950329958 507455323 510907280 707067285 366281030 887178691 439698096 908885209 339753901 301206994 765456551 956540711 207294449 204107101 735421997 369543806 886201905 621398181 936320026 506168971 446558630 523011392 609420529 803358163 670989236 760788178 673859967 772246711 916033690 159582451 534107417 461397441 751875057 963039945 811493612 670989236 961715120 670989236 864695098 763384485 394820649 188903621 399299284 921127808 65282050 312795624 317067637 774921964 966222202 257123182 984101255 445381288 298506392 355271712 293312451 49445265 748094727 727848863 55626481 5106043 900332344 786897560 854388979 995281697 631749735 197432807 170303716 346023430 936157839 37616854 490649585 474121092 723084801 403163544 928993816 531585843 693372452 275520463 955260883 808494996 829957136 826063739 82767120 17722396 251644088 121399360 539271227 964574726 945175443 912413787 173986768 510546842 441282369 739421856 807605013 850471390 950661259 752495002 255471995 859304735 145896299 672887462 331472707 313577758 769373008 962588831 970590202 956237509 922064025 958111906 818365801 812298147 935877225 51514284 739695020 556554132 190262863 675826776 119357719 513235281 419818854 939132804 836844937 972733052 994137643 400059542 584650339 499501087 786350059 767572037 968383037 315504923 20146003 17120307 270634137 800770720 423674010 851890952 235444897 701524884 33749618 796086121 701616290 551807742 929579192 954720891 482834165 433930728 745703807 932954734 849950181 239157490 792356152 898542076 705929486 464312295 878002803 696409548 331414937 366255717 833358059 697101110 532032172 76897164 401593395 776950965 481693836 65558696 875386686 883029793 793897112 724547663 714316259 358952355 133652633 764250590 791607604 298564764 244020463 794736253 805083219 847915301 782345138 96012166 644474528 859840906 211901926 788379115 122038114 736874319 41908493 589052893 951529011 190428723 209981075 574501503 154204198 368713821 989840882 783212843 762900945 674409701 288223206 692942092 784597635 700468966 948914035 5443699 747239009 194581891 712082003 738553097 478322998 741297465 513238815 535974624 684984524 433403765 853559677 748795304 824326292 605952668 619930673 858601951 931837412 787414409 866724230 86589022 372912406 323668344 912124982 994301305 541235402 779508691 45963794 810669409 430975374 610871088 726973362 879492579 744064474 834316496 396594368 184584401 370462332 924401178 365975568 714068790 743712731 212871283 704186286 274770760 953949173 905881550 961261982 805521267 599593019 865467797 557489262 448496573 677764045 540782453 670720790 670989236 165661442 421339994 331786881 156130959 188739972 670989236 467723260 374182934 853855324 272877397 578483708 194504634 949682747 223443991 5385874 773325451 735401575 935431569 731869593 276143862 737727384 716202018 336089129 523953254 944658885 932538392 727726851 844421017 23863157 629077889 443501005 698722669 823996827 916987654 807420464 286404089 868357078 304503358 911656041 700482488 711045235 88504638 779401951 152633697 725778652 132113605 670989236 506905198 512855558 867243279 584403299 761127335 975385490 332023302 705557916 234567837 493296533 930250608 861167662 332533506 806684668 437699757 681396963 239345472 332850453 583265180 398280516 898420680 206566036 890934914 547922696 763954396 336800246 225138837 832594406 170302656 871235327 215732957 406538612 938060279 964668985 786464881 493026586 995918567 917444646 967362444 711083280 83274839 976152666 933313216 894972808 460272333 493295151 513906496 580689808 414802209 599320172 812498540 311026275 381051665 286208167 149522032 872800582 240975155 902454978 854034132 782686446 116918158 163428691 311887525 913267353 48260320 18269964 15667352 788099917 79176020 511504370 257498940 352907071 566089472 54213292 914714897 894129177 642872282 477093798 243406706 764712002 162438590 971326707 897429440 350524408 101136477 62952161 918357184 970665300 824984025 703026619 80649696 248435927 123483869 521860938 716555983 738159032 796547144 312741564 558551728 46941408 48206329 807802974 114925836 904503692 822985576 750324981 200722873 885550190 921914078 861281605 244408824 273786264 601854356 573628571 585614290 572308562 196825468 735370933 817723211 679074498 222259009 212493129 56555902 646911451 689981482 730345034 699948545 853519128 285549013 285232921 714686486 211348465 997720730 973003485 69451128 592396942 5629819 811552330 710666828 738642013 807382193 916780694 798083162 822293867 950509912 337955313 723214182 891363030 737456805 463354273 958785513 512526500 829764732 342055493 129778902 881942020 400681795 986320567 304929372 97327285 138829892 465601124 818924159 942781341 500270507 736456358 822395778 873529316 820026476 353859311 736033900 726414778 25973296 476291543 879426058 362665993 837909702 754122558 508017511 911483267 133246902 765425233 971546083 354396373 869386554 301007341 997935960 670593741 292496691 739861868 750759136 305051386 35951142 944787175 652439694 474498855 308599694 671704995 896668854 674544724 976162042 112198630 862691696 983242116 54322422 838908110 402924889 530574498 715686246 969141993 932637424 334036798 173674659 732337881 47661049 174567019 402292203 956538408 587615200 867244968 939686906 794994161 986210944 891288602 836091592 907857044 659087098 300976423 251216461 691653068 182329839 230737035 257021495 288733372 232594821 581021385 483622596 846760341 312818766 381655945 734861793 757314296 206725044 414574081 326204485 943882929 597301022 821083909 985937211 482915901 500427693 689194724 834689478 257026966 813492810 339932121 143580040 915312024 920964692 769862411 145860344 902311574 858089878 894616466 325072194 457519886 993553814 942091416 109449944 840156177 989152249 995084056 517365207 935758932 725894386 651205709 185763907 370002629 822054439 673327050 452269182 781991064 883022398 562455097 876102294 173101578 401473676 353834026 858878961 258310693 968118539 816525842 135409782 359725731 897904840 340179367 889483507 520664660 993624357 890172710 918416918 745147210 857914080 283079161 825030165 506246600 952044496 315322498 298816328 641852109 755299693 725442517 5171199 151366106 828906709 765734186 714907695 522017109 729225709 831869562 250678025 320824964 97407244 854973974 922713558 961272262 14951289 737761785 108814820 675286685 907693805 875240538 441272695 470267860 148480920 359804894 172418252 881542687 54498315 620122023 608203320 677775510 927452236 719156312 272570432 896398003 108103015 680886146 838125752 493683329 936857152 877838568 973723478 25405550 457086114 395568182 961588050 892174230 148906097 949408800 766486401 779573552 53354590 797619029 987042565 300923119 239575140 634425485 484325239 728712546 122409693 66531681 481648201 991349491 977781736 561909619 816573592 103497323 360254342 448338127 246543750 973217981 805035615 847357219 721246118 901387565 854269948 613186829 114886337 860231390 798553960 120975508 825792078 150470977 115906228 788624336 23013425 371691742 584053515 956633450 303583775 165953940 184209597 925558510 836432984 716645970 733005413 926961699 516289000 853732461 379797077 31100598 819840731 130507148 713683715 752099018 102099578 671377204 197119206 741668886 707273219 321330557 894926283 404924853 637523347 467854700 510851518 762508478 207799122 903889425 118479915 963664393 898936950 960902482 864316208 140324033 432901115 918788590 632978093 904139689 68929987 248392708 994941711 865941344 91472222 773074759 748531775 78545721 991979546 839398408 825282441 939666873 413315492 700789427 999342415 695143086 921584056 789502866 981145785 791249031 741605340 636419800 792153838 711458758 932181279 670989236 822158811 272644720 301481752 358972357 715389668 707530482 755511547 899970731 986350309 655703110 391463796 119049329 673538108 875612694 987003899 298165649 711342236 854155230 656522930 522121460 899465740 745102621 408132958 152849498 787572759 277869958 100742770 305361649 296534693 798479633 992462928 485842271 422292958 999156530 380813365 448397756 537605609 118761389 942742049 887152815 991341441 928353894 150945594 714588845 875351150 398373664 950660970 499643028 884710179 115577096 53187335 396831969 541992105 859455126 879276126 968113741 538436267 667415112 1588421 84393818 829049149 999368118 895922104 502934175 565207136 468127205 881896607 348860235 690705548 696697879 324818852 830671165 901047261 670989236 688092879 809563552 156405313 34313130 480680834 788430760 780368343 806295227 812140576 998602320 602865503 345524720 897488948 256184290 620616317 690753927 919733583 784565023 564059443 707097412 844185856 493915886 431833052 79740155 219277975 686539600 855058461 59749477 886082399 830805277 187226919 670989236 683741372 958551526 645707783 763856868 568151364 905346425 921989868 577226200 927683775 569225749 431182084 539489745 162215508 674254622 983230562 215654967 487798775 888710644 414333361 51790632 720876193 987008774 954301830 906729553 654697510 18858502 769299208 345641912 904312853 670989236 676475996 389418561 622518016 193042143 712442712 801449824 652472956 978617429 759056525 842851120 870056832 885507005 699761999 874491479 874088379 381937328 903087119 812479884 518198194 33051646 222543321 829075838 740605309 23933010 349287969 817925678 983414220 748071486 747188397 735782724 696205149 660182637 841212294 624397851 825471939 691997463 284654754 326935657 641692056 330242830 682870954 441994372 868210669 773736398 265165143 960970500 949528789 120834170 719972947 932944197 291358335 89473639 147695282 232765640 834550880 744730686 546032136 472908458 214296375 90002172 218078787 231636704 518952971 670989236 861995421 109140340 299891774 906140865 950252148 651547724 918217243 737541395 331114335 990472721 690750621 858872385 871588929 892069236 167433637 640978154 738769947 63682663 235532688 774050646 923654936 57488830 790577574 709508447 193306590 184623324 70686920 792387575 674253481 306997198 279711032 465831148 868718593 890145700 857708289 611389621 209589343 351283316 459761399 794667894 915618735 961117461 406904421 857895253 816051628 773972529 922225689 89136493 257504254 794319895 917091235 800851434 401360233 503611006 6764972 974971313 95398260 177544624 529837361 696580602 500913253 728711907 978634096 995591085 234797198 992034851 384045824 996739865 687606215 437304000 365445973 879927874 190017230 163382169 591574628 431801017 607402590 377035485 740588776 764459986 917720461 945629059 141547047 124036502 819650857 201958899 855042185 3627253 955538813 478080226 78784891 765595007 864920189 955265875 989332516 615533578 987548105 862617947 729964357 951078283 161655340 421408512 484543328 687356382 541806832 806399952 697300749 807275726 601695188 453937981 765305341 181259985 285719283 448923671 596007176 809550825 946143872 597058363 925904218 814664953 422244898 786348251 676793727 843207982 839959132 960123444 963329839 799480138 961233223 692884846 709008869 520113872 484552391 745780631 513449908 648552850 262971375 813455142 398943880 794603109 187905469 95958793 990581340 596201251 919043677 436956367 463062335 546205396 142583663 859778915 657549396 894760061 729896654 569523697 187672580 234625204 236116157 68221889 839086818 240702767 612511432 939412174 879576793 354412434 404418026 194212279 697478793 606961179 101702593 793564639 185237009 946521784 827141088 764036377 762672799 66301604 811333715 92417365 431279454 459978636 847122745 681664154 496526013 782718281 255688284 487467548 336088680 382606503 684203133 834602189 884154826 454922077 986664856 411159299 776439478 452878754 837175088 693435433 436221355 628855117 637780076 910135715 28919168 299201592 779893030 900741116 601498160 750770300 945281722 927101074 25920001 806011141 95431992 389046795 238863143 500856771 536156386 782873385 111349644 670989236 491386266 991251750 179536931 128513928 767679303 669551405 882852451 965464029 53869934 715984190 18534848 979591575 72708734 913563762 954975338 704330812 338178411 777666277 458639987 971596877 10700295 698716760 950153362 743446804 931817296 686495508 970066819 143449226 10996082 265116709 340688590 590104308 615032860 713953553 947110759 959798394 792956184 685256543 555937415 218786506 894703203 505456611 740333631 911634267 302910259 116899026 182005429 747736271 222797534 691227652 798872147 760600765 866610361 83928607 94174698 491756472 387415041 185754833 71969047 178805945 827717715 20546684 719799723 807138015 551628942 79184393 467480600 190085911 907245045 587184802 985100783 756727964 769599055 935868297 957676539 769173647 335434301 878676127 630487401 308285704 883527977 384439514 713655643 791054558 750136627 878574103 797436989 985399624 429499492 905020022 193121950 123933995 584405674 704986541 827808706 879740643 727110279 873032873 898764080 68855272 678166443 831279897 778975135 363584057 488225908 852190056 785377548 632046367 793720999 330052196 665348846 964862687 678938856 822683127 691325420 34021506 960172849 387713798 944326758 808286410 211782719 929211892 348583879 197173609 779936599 80252832 402488199 875839965 909229163 97659449 895923396 70135864 916595639 670989236 670989236 281935572 824494329 54962380 331306789 21368849 415454253 511689164 252448435 959519643 392746414 988459017 47559768 730105813 683448603 381201620 109227991 675279152 915145207 516859716 754547299 834579911 595710092 922909922 478174198 831603314 962693777 219684681 860735543 500286697 966851214 725840460 521193759 618518658 976984030 482140061 699349861 890058064 629881693 488324446 673773974 480847596 205183682 944699242 694861025 948075040 154929188 395956669 996446154 802405492 645807518 255729827 867691111 21612563 738410741 404866838 541708373 691912714 992588169 824546602 713753990 250574986 985093323 897627184 62741249 424749276 882497908 733195994 119563775 101278163 123497036 700308388 235350352 804306213 762120582 807675593 999478618 906572672 661554798 357891997 971547888 242224789 334939018 263939100 980520308 757077725 764289284 232091947 457120306 691349611 608424392 171057224 130935665 521811976 862254101 761920105 268574233 945121436 705212901 911285000 89642624 734340452 694186263 692835934 159474214 486905237 210116373 752698591 811908398 421701853 916008921 988035689 200469721 942502679 806040283 73679025 683036986 94956778 48380759 914215792 76250638 996621253 905678362 818066477 10443556 746295936 692758259 829304611 670989236 839721672 804600910 857583085 330082264 329807984 424001622 964391333 264706418 521421737 855371549 388001761 630839444 3172972 884805984 963941961 853883005 543439125 784609238 936230440 860902337 686878629 809614147 852913412 416050419 233302828 942160167 720282965 675329748 691597676 670989236 585625686 998347439 293824201 581540299 715007377 209860833 220558497 819246994 142112942 303070988 218400945 814205245 832349845 774644979 586571628 184105692 688393199 885541534 181043673 639750236 516454163 365135616 956993485 438532541 648563142 321858717 120743570 835070573 922659756 23735259 622231648 951358088 847265737 259714118 730797721 207933527 436441615 993558231 980004657 872269204 607546206 58686610 279518370 949836460 670989236 255548549 729022696 911589921 626179654 344784321 923027927 888442258 945968097 815054442 706586256 912254078 881661715 891898801 538446393 115758223 210813605 775924440 511657658 963477851 600570952 293591861 607393560 110123461 253361385 730796607 726092537 774730616 193591630 208400904 156466524 44486327 227853991 116546312 263422853 36146587 16189027 998283065 685271342 44459792 174254418 684855506 186124112 705799724 372687787 931076271 849185412 282011931 914535111 359685944 859402963 210131247 646430528 461262639 846691950 734418287 438420111 560179908 780935429 160724390 291412265 951234998 861431497 236094107 329471088 694206362 753563597 785318540 729075587 463956356 441962099 368537415 780130441 287729385 709755979 366463122 422249000 829418018 867459869 986833755 769505712 704471856 374207968 670989236 83235781 342877175 853958340 258375463 293364820 180021863 878249125 200262410 875391008 897420882 864096861 773991251 787457288 576038043 541538909 197396483 279366608 660334073 557999125 708161337 541170899 963471759 130744891 989606079 27549433 670989236 892025299 666104287 862594139 976212101 119493740 670989236 85159077 905628307 425818432 896808779 907603475 729926843 111928039 262210590 594482220 917657963 736346289 30900982 877589457 843186316 402948022 100478067 30095634 714152840 522757361 936527048 710630771 832672949 942232172 276791069 366238095 980451217 875748817 496653568 754375081 18394272 882558909 418153848 403472456 99362829 681167025 564063421 607130407 868577775 765781425 840787560 19541837 453924504 778196415 799943113 673822606 479644583 888130588 841989076 718841608 787864818 537103616 743724390 978233981 428455448 767190235 501478624 670989236 142799469 158178919 753276474 703980676 500111523 673380255 250193411 639431186 732171055 751443395 809071601 548557346 642751620 71998849 559420089 898975028 326854300 891303449 766417925 900237330 307637050 171744377 813903957 811945981 326240848 573044698 556017661 657951894 725358353 237602135 192391001 922661009 536091015 728988044 771943468 520228538 940556994 551325882 977852860 501856188 41104181 257443143 802787325 780754766 724655820 13085081 321355747 928484015 155458710 815118508 459043448 876579435 688217059 354573951 727629983 263013670 519398175 847830771 333673476 134459348 236703521 378980843 728767254 469468448 436395970 974170452 862659827 614145191 701173037 832141630 692778077 104890217 458233181 322484184 829565835 690759366 840076601 158293643 909266263 171911158 220202739 994279797 439347485 843755487 751420405 518752016 319867238 762552850 175290708 729412189 1867780 415210813 317073687 713549187 612046324 299628109 464902089 965259894 422455214 251560649 438080465 885285660 970700037 211425891 954964207 285453836 863713128 474605220 922720013 432898002 754880183 214517901 265733176 602123777 943960998 890188394 783730155 707440554 80695198 858977947 304715287 103117627 222324595 670989236 532509162 700349147 961108443 535219441 913163290 769535151 829168009 870194910 926575221 82423954 915328890 577098230 711747966 320187193 419170872 994837788 935938620 869174674 954686029 32175849 331564956 635677224 658336749 851922560 794483292 679342508 807547656 127507271 724978807 645285834 756803905 962811915 577852171 848276923 517725669 672022870 727365800 578593125 712949747 894683976 314082229 455389979 107604777 185551410 242934498 702790091 995641619 399836206 531199083 617816773 455494831 546923929 232446640 853922901 910808070 525063650 689318186 567942065 913415604 362298550 99679198 83206280 705339088 949933475 621682628 502708151 687189796 78694062 275809895 341947923 108389138 791045516 850991343 383077788 730698242 594506687 850774770 867964708 956415372 628943840 365586828 167445983 800413420 829035110 619025875 755651169 722931151 979972357 21245121 825684474 701595095 877913819 692942229 867781524 414530197 293740498 539603947 12575530 964116123 869458952 13400805 697255558 356232377 686271489 747667434 916186940 709186131 813129490 196205255 94244342 560923245 732744342 749041473 895443120 958759318 679515830 297410514 846560613 281582609 758605015 252108565 387978788 934744148 887527323 977177592 359005809 911666107 485002117 896377493 930456019 658238192 567893309 600733791 845683474 84486489 439929357 191012312 300269026 693827839 941450267 854222830 138380343 713899743 959606600 756289082 982866058 825894129 959358644 202255252 229903550 588766756 683691156 373517616 248775792 474537689 634020774 794325656 923110759 999340947 456857751 329363131 232061594 403972724 660401067 779434938 742135439 982785350 862807758 273682294 557433224 415552775 594901083 990770597 242491758 95757278 108160936 57206671 706184666 229002654 136869141 916460457 155187359 687376719 967958994 501475791 870933435 763921223 807251582 322508249 967053488 883546724 264373780 642487986 824303535 670989236 263860188 706591115 662014993 679779130 570672745 403518737 856625839 817307651 664024589 738831649 171373636 753237797 902586824 867516333 465269722 852811070 508792630 794816114 906010695 721130433 647349036 834372321 917273757 100189052 961030395 483638470 99173206 816308867 205097914 378479011 768560743 884807801 189066086 601582098 738038489 936705682 608598371 695492730 78455487 779098622 755908234 511259776 673536699 919256588 39837343 921218988 30478053 584784017 531250623 787253242 844397629 547627438 670989236 686998917 565766355 701919109 818778227 130957711 573155115 49792042 593777906 519732305 138315776 21329863 623820212 593507486 924177229 466624180 821913751 866908962 368951775 709298119 968245877 304263995 697849930 515219916 843205087 951646171 78172518 900540422 864880702 426093723 87757279 607706726 921294761 692248742 855291520 448817449 886685299 4836367 662713386 867864618 823847287 139094710 126238967 207246088 978172638 964047798 670989236 891626456 980787279 876636983 921389816 361226409 570178097 674194328 296539974 573958749 71141522 258939287 835944748 219761614 403532112 780746659 135253543 434484806 559759801 331912145 138237810 369605874 809493836 112206643 851882379 654681262 680546609 277612266 171512387 267406247 393623687 502255319 904251600 811290775 768421960 72146817 102857848 979364491 905503605 854156649 169900160 148440517 312747633 588357329 936465944 742504639 815438374 867667696 907763277 959816090 894848052 980211128 985199217 390407004 821521987 898200309 183309675 70221025 627033135 963754418 873284080 738843548 99315897 230502378 496393426 19814317 21771133 81302322 494583340 824726645 931152875 178056864 767544213 788495202 979102340 744255226 428899984 110359126 756483596 46371469 119464695 658064933 992216852 331465898 45962942 414989411 990974072 238969527 776335558 754000263 790391141 783173616 252704059 925466274 943801004 818280886 812927690 171660143 136697701 611544366 479605328 997274315 435881739 52857530 729659230 200930602 341533798 117325182 25333458 321421221 947397837 558009566 134914961 145665268 225844712 846941685 884993967 984043247 679467210 141422008 864902932 909425012 269798964 78976744 277582579 892667682 170412177 994961858 131521903 442309563 199433331 23980765 233918379 232248022 240340116 8906980 693708382 709350562 711054006 357910713 434598629 520136281 729741000 670989236 252848960 863271816 434190542 435925528 122263481 983436010 959831648 950350697 793620058 247998850 943125565 816220036 675391818 787647293 405781663 937520773 601571950 671659677 265768613 363294843 895194793 233317674 704945981 332622592 770564227 922056376 967416357 783199903 947202523 234878645 480022641 64938014 733175551 587776779 994085601 772926425 443144206 760414019 967051652 630775888 366382357 590911799 782380509 167015446 530206732 16611323 306490808 889388050 986220097 560785983 312488390 390832966 772535257 645760468 608176631 839948084 409963178 996486440 962232322 161171189 898196440 28588685 798254007 85139675 515733938 204271775 768331831 563145083 60313531 970516652 715283980 816677127 958307268 804352840 272970029 478428610 661554439 699566201 343335814 729711821 624774221 708128575 785130211 837429122 712675542 737615829 925883030 977927591 907404883 619251264 397249613 774615296 756094896 159879493 778707453 809513830 68099849 934764397 14407960 834119729 173740940 696963679 991856285 841987241 806104235 636314366 240600311 796083727 701122424 392400649 527825567 364849736 954560543 392571539 297322333 665117258 768427802 194634417 890345514 310344089 864634990 244854572 921176157 960494437 928918984 920660511 464829665 119600683 635657486 853019361 917996859 941341047 715644920 212503106 467235021 914775051 485828510 49683488 852292035 156636072 997811982 851928279 720265224 392100271 921086872 26998933 492429019 411359867 369810783 916618396 935061158 991514501 691268765 770003818 525823241 415025088 587340268 341058537 599161242 547951512 798468679 347962779 833765254 417350761 745833765 871740874 964381362 162175461 943833856 639515231 902112266 556592426 790104327 497756506 853978848 529469828 528109191 583551338 245951659 940969925 777699158 916709383 872698184 429564172 724924361 603556406 205022271 27255141 576731994 642452412 690648415 101769260 928213485 717636606 494336154 512190384 685829987 774833244 245947805 475782942 293388150 836281134 763480683 845010515 108123725 707772002 7562278 405140558 396405065 993794812 914421529 780233361 457885339 335781277 372369706 960570735 403233958 989287542 738946536 801012856 370605357 83011277 791137188 189649724 780553842 119511752 831305330 558868347 766417316 907051724 335617334 41489871 830108772 725094747 835214510 966087826 553060189 114504993 858725730 170486390 757833112 785219671 671365188 38704575 524770692 776477859 822335922 670989236 923382046 685006348 239176042 80590593 400423709 730392370 704145065 891804042 873138840 653716958 114601097 817925371 966846390 677522111 754005680 762126309 872725538 785531414 730566938 87317386 991477191 969481773 348075558 855209741 710713521 61647885 376085150 722447810 699112781 230218750 340389023 988537091 798389668 644847904 270380054 777740924 433932969 70228690 406031368 272058057 652573146 622668127 779478138 51989144 367381660 755725818 731412457 186441523 815988079 629911464 395842238 749882421 775165218 372255068 806945112 926054168 993798566 556991318 170558798 87071224 507086563 476805061 687934351 845182677 428798021 609224585 932816027 483111339 534997362 888542993 474577630 108385602 760584640 618902811 880950298 419504938 947758679 999573320 85920204 768612763 897923415 887867405 889088021 361926738 846173985 826919774 137819262 747990955 401872295 72076531 989786942 881752968 980644278 22507180 319430993 514155842 494625613 856457665 842067960 41685382 594319121 297375091 189944283 811127327 257767525 830627197 481660444 767241311 800154355 546017639 802101168 84645616 607439520 747121884 827741160 141129219 798769172 729062714 737299263 313256196 1197603 669502655 823236120 324691458 294401178 891716552 282337135 803992033 969092687 542102243 24396007 968505934 944418287 450297294 33152065 946017312 395843892 914242556 244153404 431287282 313266535 677547813 869129770 19239193 970213125 781757873 582253044 371540126 303708989 596423305 970229843 889350484 430199133 653432471 972084712 733839173 966465398 859576502 941838996 350615956 856284588 504554633 415090622 480671566 717318657 48013544 667896072 832883021 682259645 880556478 882594921 746232690 366418405 41774503 327833350 859407181 96321875 418955065 943190509 623062876 767158935 692524984 845848288 821928698 970824259 783593259 934508894 851589647 403017143 266711354 824919412 549023695 683455228 708171036 644061515 405732811 753610864 934927904 796863929 926933294 961579999 534723661 556379940 315193032 109563668 805113279 552349082 671147153 818104176 907902430 964081857 839789516 566071017 779073190 682822102 769712897 160948099 122393481 924904572 670989236 882659630 245887638 327669873 769859145 527509638 382097338 724163778 415533816 313351878 482103187 734122319 5387142 137451646 732706703 193655799 436715671 907480707 729194421 700052991 402933116 995494505 268512459 736974463 684872104 148795085 724150246 641230982 974393517 676813778 900787184 43099261 853315479 757804056 806797865 689930951 227303957 662575280 855216034 553257604 389489504 240615168 451128657 506234722 152042828 946586529 340001142 209593589 446170260 62103174 282619912 9913720 77763825 877327814 607271056 673968755 480562514 675394960 316436720 752169809 744369320 998619147 725537449 4036083 675732630 389033833 48947090 200303676 843170507 650465162 844237341 631403940 230864461 926758446 985756914 599334271 777852271 797763994 947229793 748270496 572996729 570056893 846729552 362052959 558180366 32914603 765248738 853880777 898057506 982534289 570407353 85420598 76590401 351658601 473868118 1397024 235407744 750946979 785897030 121829423 184458611 846047658 728688215 690575052 781372408 974932680 474869870 693826983 265725167 598777115 762607906 408009750 513033132 897237724 505232835 711658394 99955762 373800397 894226315 297953009 731686496 663515455 301959472 832078155 703820883 892966666 21353453 920169954 163989113 614213534 389095301 770182060 132501463 876888218 940945514 653615784 143194860 763394517 764484571 893810005 325630740 972514893 950836861 847689671 896598716 941540621 460080469 340376826 849015867 265087541 344023787 719574767 399398314 224535783 816429145 372335351 122976040 848525376 698099414 362035202 68248264 976390943 779790672 930568744 980031574 749574355 859634960 771748670 889228086 53780297 292048950 519923442 934547841 328472706 953390330 378413678 509550003 684461064 365284229 204732877 723884368 315327229 620423181 177454473 992418569 497911459 947233135 504201668 832398293 671734148 902290008 877906274 698149597 625239020 268017348 729490692 695501282 351233245 304783674 737318051 960323127 126133867 288220135 575090117 492101747 622886368 585507679 191366486 940032016 865855104 990852840 732616026 847789837 728399327 702402837 971470838 782981809 150619273 899585544 741612070 499963053 295509193 617895755 733333065 675881133 706411433 65913725 985258528 894173576 718952184 217755502 693803172 722302998 657984105 714456378 590671123 17933420 918000238 14630447 331988929 33585015 251482813 463227825 250706435 697711620 317070687 747661774 952450303 337212760 840064599 409702166 843681802 619433743 155500458 719624200 833448105 708411052 819991440 548373270 973897408 685211342 41775504 768443480 90009883 632903749 547769892 711836728 368413679 502788026 909991444 845779350 846814392 94174637 711089480 902249089 670989236 861687673 477241806 890095542 990290591 948658248 848449454 575284603 837065738 758845088 111882034 509069248 906928830 816988311 614227670 562662665 29929363 829343554 873292375 771650638 322185753 869145502 708262030 651907072 30001458 694697574 670989236 69956880 670335766 668220581 845010136 86644704 558783515 741391902 453162624 982702517 226046026 617453995 670989236 923229466 171540887 889242924 251876449 54116873 837949154 609898443 52184700 549637345 790148380 631823451 503990630 859281826 617753426 979641992 842378740 437588900 384488666 395744135 22470864 718163259 984216814 816238259 991501389 278518809 21733100 955325503 763390219 506050955 950552586 205918824 797789065 959035258 569771892 473657880 191438517 255826924 886164108 680226507 825743514 693809075 769582112 964146384 198734486 931066073 949463740 572885162 90883905 206744032 107484893 633640812 711343533 176728993 696402145 412904395 46473330 831855980 894286392 458308631 878220733 495388305 431348399 741138011 989292313 938898579 897532433 865858305 286965812 791002059 592495216 527124339 897774133 640581310 684083076 949249639 958645767 478375716 964603393 710174835 684496555 917776746 235483269 193982785 323477054 991048369 837179513 827614596 316250006 857172652 952392249 986102337 744016962 818050247 771135287 382399947 532764448 830070777 938038277 723469258 652801906 631409138 605853042 150266320 766120695 283485673 942591750 670989236 402425490 198717135 45025218 274054160 11125176 999138183 706373266 722808617 821860624 773978009 540902218 203339698 73372550 990638113 997939180 619847659 101102567 796717630 375794885 50551530 485024825 18892508 689716530 897716750 653570193 640846565 918082079 42367640 994568432 164731868 973347068 263421861 911054699 745276939 75888924 468562284 929248972 850801429 789460909 841070681 751239915 734688050 119151420 670989236 586537948 854409717 397354369 803954801 920577616 965791039 635762375 116194078 670989236 491034416 999081848 872140528 986488120 594130081 480070980 998854842 215315447 192623266 814310938 685421930 873691430 598978408 686401759 936222754 485746240 695647404 829605607 698474223 999594168 670989236 561747932 535184196 689220216 962587515 873782754 283437467 223766784 915849240 838221485 790145393 971061502 551525969 574677123 875332801 183216268 361820015 889420393 29453009 712856647 658636252 576363575 61352134 995046073 831274858 451317953 713861968 751786099 527153093 747502221 813087842 966367100 676299723 376125535 852303727 882828551 425350421 348978198 700221291 659489507 681672478 419106880 204049061 727210542 572962339 489107319 686849743 695395369 482446270 672923062 679619448 853047319 122032819 920994190 294108613 190006704 776839155 131664292 607263873 92646270 505955014 810813838 203747273 836001581 822937787 642075474 807773719 339727538 718013059 757738492 870729931 846305325 958900764 880307249 857112742 303197324 130943236 153503950 352124928 895763832 230975783 683391193 167662460 674869216 386422333 295941296 908393713 763695959 841659203 682987595 341318964 8605854 748486372 55735919 897819972 811849206 101318641 412091017 670989236 920549908 536811945 853049269 808609392 119861858 789957663 631854485 542757011 706227769 670989236 689766005 778084745 526944961 857154868 390774452 932569387 942042124 686423143 350664743 393733360 595827259 128158816 861459608 499074639 393420505 235828539 802620966 711669217 728438381 679399804 356555352 815820985 915955158 873863462 369087361 447266235 842612411 894875454 273687763 955710571 687253398 599949092 967335427 862016373 630857338 594136395 922636580 670989236 860790154 717446368 964109691 674134788 731768681 368382916 882584585 652046017 491609989 60825933 689208645 847676072 307480702 521763535 403036084 339769167 926324388 127519561 141142578 759398669 693734179 864267674 755188700 321402353 869397333 254622422 745117330 407638606 769052326 809474760 519125055 760148717 464622872 799025687 846533639 914503770 748880317 411363552 562083560 627952970 969683394 769785468 420688412 125005889 730008654 42844320 131401463 736594627 940652027 813855062 592579073 247961354 369169604 239226602 774340021 991896029 813515773 868113832 813836836 123860194 288588967 546703921 918878817 404024368 203004191 982899815 771249217 762178831 630134292 907598989 932884173 251791063 513051647 199489128 835319624 237868029 868112818 808729628 663149839 916194970 60705915 223284653 588071378 748849600 181345664 985451658 108647594 108042541 58032711 943734609 141661462 524396168 718364816 689681387 820768391 952555114 971856883 912945979 150074766 712451099 19810478 283551709 667339225 594735270 112207342 758399727 829126973 331399418 979041908 923404610 422220388 862872032 318860759 539230071 694145383 288153715 324235510 993636143 737001375 811224390 774553725 148240232 819513397 471806227 212725855 55962486 975405178 194913450 901842904 751221000 239875833 275046600 729823717 985089390 872319711 738107519 664339855 313517808 786548468 636387972 673285930 288211305 716939053 760279283 823686532 480904023 800307236 724096643 660186618 706222994 801415289 313843456 994208482 128433968 972459192 274241934 15173818 262980100 471968085 672131920 763964702 597353295 781934632 752044509 50880394 956480636 789078174 902343995 885561930 677741418 675689767 355695326 763793098 250574261 840747993 926291176 931933436 601950854 193673154 915455551 324432572 775836618 481626775 626538861 831555683 543980453 70835563 842532895 600391915 793135864 6146823 380905281 910417820 775277546 13828690 242224505 68760327 17727984 838279415 787923142 74738277 922258909 868673360 811115129 792861771 249644979 238201230 419376965 209880236 687370555 977392105 521045327 457574560 901016347 516039085 119445595 846235074 928311050 814635473 74343216 701496024 977679358 908734866 764498792 845955937 999951564 724725354 481161322 790537090 32762451 915528039 84840756 695271276 49657552 633623668 433983489 118326598 475750269 340131903 584481309 448050435 995178420 813414959 766759869 962446121 266421850 38068764 26009259 784661616 35122820 187650918 737707352 677292526 247102819 380774047 969003858 93582686 883624421 929502870 69522580 933145158 12950395 837969629 326950132 733291876 762879799 42943597 685281188 442960799 801404109 972866389 777274598 770250838 691961633 730892311 690901955 715874834 783738288 823733967 322113696 129749376 963484261 756152580 597161578 166750826 851699028 813677714 418485584 385807045 625622539 402918754 990613661 253438610 380262592 243882186 434826874 815001773 594137066 871901126 268787692 918795311 995173098 951714110 948796540 62645172 990855275 976231113 36528535 144799511 987986090 816069344 915629698 957166574 214862604 744878285 951069318 820202795 948712008 877125828 440970015 911927985 648492265 351710674 149166350 628204893 2015744 857783507 50733922 746203288 753642312 738402544 96824816 133930785 36422015 959626143 569056877 203123240 857601864 23463804 128900023 289037565 564670327 919646375 790184185 918080180 384728516 67802595 606730487 300607462 202504794 733488284 338777527 816238253 203240023 463893114 832367823 930394624 768636537 971985385 724699955 903253497 724591342 336371691 144158908 722624540 377645036 696224717 707053796 871071349 432721567 653115002 765703570 670989236 427522680 254962716 978732990 592073840 672157085 421377691 863152490 992024107 448025131 536263006 942801609 686289881 807939836 483056281 894702457 910563200 765430466 224156088 798523671 718884344 788915702 363669761 85089137 213609231 659826564 670989236 677398417 402035288 771965423 616869704 837098439 245385166 896964622 689194777 501494511 705220707 670989236 935050260 748903464 943967431 543658501 932638510 784037016 531629575 55170963 401386472 627339150 563405399 270344008 947377770 76600328 354573424 980734973 613293761 849498854 939786853 509015 852119329 994997964 801773513 87237944 958218287 688085627 584203389 900790932 332375935 495779692 28017822 673258709 935601754 751526943 803398591 191195220 653501501 473998213 512414819 792229417 940501978 813309605 68741240 354149189 783355481 895256649 629491060 265013158 959580184 785245887 164586525 594164541 791580870 672498587 993921495 752422072 78228858 676094378 373308553 637276519 102142597 670989236 701266512 308124862 813509791 973148340 686645878 444043805 863029393 784352375 366493111 968546910 169601139 856320747 119721790 562930783 290888406 869150439 622178246 637673296 853989023 781650117 308408164 914228243 828925231 183157259 67052061 918293314 6970001 686995644 527551476 981352542 212645983 573426584 845803583 539478387 740004506 418525963 357556062 760454359 310716147 831308933 54777928 270265498 995886394 555366437 465223078 993586581 576305621 625202519 222639877 261314838 909636506 726048945 237255730 616529899 601969904 226043933 750127181 832220237 223532644 88948889 533509842 61636170 914379955 848283113 984708445 965910368 939640495 27713734 898547149 797469017 689141985 131868711 850831912 448383294 764733341 942974479 519752282 679645051 815966917 156440496 423181223 803563963 997052126 206863869 935489603 247674908 875309048 124146565 637856339 633533229 810174049 906334307 683783447 550582238 704975421 723097985 550567263 309741226 980569349 531762143 244896912 742972855 608995234 818747389 825918679 220939628 741434738 960570908 688063035 535711735 226804835 540780898 849906282 716165896 7904129 104845316 41652010 713480526 279344141 435439429 417259642 806374881 868172088 874449215 275436094 817563029 726081695 891010137 350827697 863810610 911556106 915986038 903206044 727590762 223884544 297996657 32649128 297710963 360062232 909445812 878953030 948391792 824596296 731183016 161626938 143652352 888360940 381562915 785555963 810198390 882886668 760032232 989321070 700839860 339648580 939225735 690167442 138752205 826653307 379929444 825220095 485066838 340740426 997700883 781524519 62839736 352671170 864229134 116994195 689265955 985499635 154148834 739460306 523030228 508862400 321205686 834477691 695428775 700494699 590181372 179753982 51511427 527704703 696211064 680868945 807411292 494915864 140041465 752862758 120871334 898189037 333317369 320274030 890002897 997568781 368203756 145038479 911038134 397357551 878007302 991774665 737501043 380704830 767758638 726741840 713899375 187949075 516191507 639073017 555241558 319654746 670989236 820409757 675196621 488076107 839730480 804423723 50344356 170120258 370715723 793035067 919528291 405319061 83122441 956517451 89748700 750912752 62595072 892864768 616727421 257905853 419015947 144113609 630167007 588036438 662864212 975043266 640323117 696641434 41654190 721239751 213321636 579408355 476202767 511875806 766940644 80714689 740641318 945313576 882458165 838342588 297844859 405743241 848618268 813312243 449631080 166631175 711687002 81397198 12604703 992019559 751870293 70064577 999333088 502458141 716369719 912847323 220082475 984231872 836902267 531914072 233239021 763046168 968202406 375343924 543051875 905351677 728335557 198275242 169714449 916234138 987142882 767273264 721660442 573973248 932139106 114821755 693416659 619556372 474379056 81409724 602006602 578335033 857850937 986421803 230222993 796305911 686291403 735481759 577460580 928835558 915573081 551849190 194712593 569074444 105012618 78741816 932741656 18175896 749137308 906447037 779068476 469544557 805135137 796408934 95225300 978543923 19552854 347586069 954097011 186716641 468446244 687490383 440344855 723133000 990460896 410945075 140327804 913485136 323780942 696897608 212789245 934361562 842572594 880139282 899376349 708927696 862481775 838158846 67654070 256928726 820226098 729894878 701162006 196165914 683392293 854215455 470274572 38768230 499749889 747872151 178200901 943784871 297170375 730251714 409616511 719001185 809893522 141673421 952627881 969618010 933487390 730656661 721646536 17467902 853469333 435343374 299721733 304448847 765012565 609929755 53941985 262604164 986846243 943530810 947318114 208508532 979886350 106669615 805425502 118283024 191383344 983642424 957996939 195165489 103296520 902814340 255227827 987276922 713247688 494298446 575908810 398999157 526916758 962072275 315151331 251215736 336901900 468993456 704568096 524856964 467682395 386064050 724019802 367991662 741783571 162799418 170956456 415357952 988390797 330105701 699224639 688486404 779740748 982990397 917511291 697372933 200322954 184736561 236102470 811683791 923781236 719680788 769689994 933911159 828198709 897203306 882681851 670989236 424630323 605638727 217288424 924514236 277510457 708495405 528608161 653277143 963808597 935189730 280126357 274625383 879776078 262552278 75707888 658309374 852297196 873283293 723624568 786174570 653704802 805790901 672326671 110046133 932251495 531429990 243080608 763374235 964743772 678505653 26399916 963964851 695907225 883082036 903855128 456382228 757424611 777180782 563365907 464828393 776066067 828282928 482682389 783343158 898065299 998151756 439637127 129880206 710780928 349970873 533201364 536783626 701041792 687840767 677428067 995398772 74293183 861097012 683105125 739203961 130199284 974196723 613083473 764351192 825748110 787876280 189270337 254446967 154931845 973929552 25211524 689838572 730928839 163349318 834206036 345860205 149289979 764283333 749563228 257068450 315892671 746830524 1541735 91993971 465255571 717639306 676734505 733370198 686266972 588629898 720713747 465391782 769129266 277993953 766921585 18622736 394986619 533905502 632899229 257660128 306915601 681101314 960276998 638270878 80844356 454669677 172523336 613481951 514752103 104945161 490127013 88444348 733219166 629823778 178431846 311528500 479546232 936040479 105067127 477351837 768288505 17681406 961233551 711534360 441408991 799921402 785810325 894876455 376119925 785461456 747035920 359747744 889426760 543552374 199630156 435418462 791278348 952911515 204561725 50118827 726408910 753351967 330495047 389873727 723859117 258087770 489427768 313833024 628761574 858324993 877242109 325289202 242668240 859197758 65731218 733488473 28022170 64464435 584735864 653784343 776384586 717699062 619617417 958090011 941037040 839802182 174704422 496856397 901667599 171573210 998439981 809254690 19969086 658807000 997736070 744764088 783055831 1930480 742804447 844566919 799774037 933717288 969078584 274797189 891673540 729253235 981957662 874324841 182676890 805696644 631687752 972220084 258320859 893604601 663421085 983561587 813457527 823219588 281706960 158501194 476382456 904692755 784205010 876617747 808643501 848618166 848005390 943041994 674843356 830796189 805004705 899080245 15260266 466588972 870101323 553982614 691506378 410580982 976122527 218510592 763159926 716179253 471656295 448730660 699083588 445741639 630272201 477915116 147889700 346387231 689414177 274998033 62142629 620281297 822207950 45035298 83605417 846275385 982410724 405102630 845853989 805416047 890002872 304470068 972786235 441556164 409979599 407169028 444745685 703523723 990371929 734197588 121332562 867867900 772293562 105141997 436980043 547023763 693125590 577350124 240160055 619063267 970314000 943943772 670989236 740859424 528654158 804882327 738927557 935458547 182791531 316780873 670989236 670989236 962523298 365813303 702758272 973791329 307169116 771323976 459890514 367456510 720822303 938476892 774523557 52594312 240166017 31459620 140447326 776140984 38544063 72221967 558680544 386015418 383455247 11108425 684444191 190133746 454976004 72208390 830071141 370646052 962941404 443866649 838778348 431333785 360486908 711548354 918494341 715894211 732485666 914732001 694410464 440413394 848964042 769416814 717889052 922526613 670989236 766041038 800311809 787034649 89254205 943712357 943610634 633101742 953452473 535742756 6671558 800220805 569230327 295626522 979810939 435535362 314362968 842395669 430900783 63637258 124183940 977008830 318868765 854604846 557456845 531577230 730964967 581289620 691188029 111527098 723641480 736694988 480954326 839959554 979777788 784662458 592712531 299960327 861295439 577950675 7022444 440242905 820543557 938235971 778878494 910475393 832497476 573466017 435767403 643294804 950812141 873116741 165556679 942496617 806382520 762954641 25496556 861480071 807657532 202930671 70010467 774215292 697221350 796328780 520165622 8268655 146262079 845957861 358840259 894034871 944228155 907418069 696508200 900399300 670989236 183946226 275354935 429777117 503609667 684227868 567068045 352868005 969032112 225354173 72345845 528575285 873001496 548060544 711557416 89839198 556343735 492300185 678680883 866558617 758400285 39294930 977283681 576313698 537048601 927114508 905040648 742186826 856030625 679901920 269852638 736885577 870024359 554275059 758737277 817226588 501466643 766786537 729064005 635286551 733632256 948895152 794672219 415466291 220578006 911687115 819926413 99511518 973823190 108121347 985296555 456705397 890603064 183863381 762471147 933503476 734000271 261763900 993988432 829183838 798453008 839024570 137632110 366542572 30767659 683260067 263748598 442989901 794530186 764400314 39877485 961201693 906110970 639145072 518239124 304278248 318191500 999167771 346399226 799142002 842123103 875179241 354774277 967723943 108361023 987948855 658971207 249160812 452740983 795373707 751744879 995611402 259434868 847856788 424112562 963825408 580819716 493591311 740499389 238031310 736389212 460032775 756789479 409668776 796565267 602187459 59610963 90207216 131214123 99867197 939704361 873345281 819988712 811781895 643490332 704598673 12881080 712043057 678164631 865231867 850951446 773664559 390044503 852895071 915326956 757080458 954903903 670989236 714208899 926132443 708326277 719270534 720860323 671878582 882505218 914784071 920132348 110613405 734351926 797945228 820792158 32328693 976751884 342589438 133726202 922265648 464208187 904705705 551977343 351458803 923020134 843832044 917138268 935552915 968741435 413315554 515753458 690377671 550557223 693664927 622043502 906060494 139183387 756596939 845992286 5712820 543848732 491098296 847616180 932888965 731482933 604312115 110759522 877874626 981282471 677132445 329821962 46198702 899815485 123477557 107514323 685487583 735119981 782231974 183707247 859170962 385890946 550596148 864937645 721063607 723143450 709839935 718128475 809071454 609478500 818373397 332701102 759904918 956585588 951119681 462519279 974417524 877362117 875986984 470080280 306817914 670989236 729135069 801483224 429683186 296567070 817347757 338391567 162694471 552576766 943065729 233961685 794496710 938943099 140926509 678152622 824779588 988160691 685729535 428020157 704676686 353696326 723527795 894863567 134152544 969500748 497608843 775873361 975544404 337480137 171631880 200598375 916375410 677687372 945919029 759567444 682483899 732074516 61040813 980762061 679099945 242766777 475836912 755869625 716701464 359047789 780945043 113156537 684189133 636429643 139050361 881541423 222477623 22223904 737165964 558831026 191238793 660863201 876132753 923032355 898760950 603340317 842326058 941431212 722657783 647414912 846387819 71065268 95939017 683296545 774166963 686966955 935771118 696752965 992732375 731583582 967241925 443810838 319238288 832525463 854772326 423859235 873747676 358724546 466348151 370924661 271134575 18882401 296176533 487308771 355440293 302066626 947920966 929326027 889093646 963701692 892618824 457894981 41878638 478823628 649698642 701956245 779701685 956793178 912132520 997207728 677646650 401602179 813342336 267579281 183303073 662416724 940619621 885587989 255890750 706922079 223035370 261073609 920077201 805231345 481154174 186819958 581411442 763018850 808458537 519354259 888961342 860754595 917250602 507647731 542129929 546606915 709901344 797486838 701609168 5948129 40480064 466940055 965383251 315632863 596059072 244444831 958474459 768276163 644551874 230073061 489565528 884845542 198929285 860050830 642428999 471253745 864221092 699674254 949059147 817227177 175645692 485142737 662965871 467449127 737316486 515108447 414124848 975996791 239780640 979913321 806826210 365336555 367322755 922023565 692792184 693294259 176217400 296608573 465113977 241232337 818230581 237124557 260668004 219181249 912202787 903160609 101633285 651289466 769145040 963677724 246810146 542910566 684777042 83792527 18162465 823193933 715633470 770039914 528220290 670989236 283368879 785548510 882339600 811875147 288925657 365411609 77817294 807902782 617457514 992550671 724168060 838179251 157267454 957772558 204100337 435338674 873455083 773931658 577763449 120447192 643561856 109448264 266008289 39033686 863072246 365298235 659042993 850771283 318720843 771673320 713500863 455541561 246634448 204121203 710623820 828444719 933455836 413161742 685746134 358890219 940756722 971519905 642573129 670989236 135601555 765953215 555803872 732096949 136116936 267078259 766490875 856948950 811807004 12653309 53676665 735188993 980136100 710516420 970135915 407887461 165491827 432414855 439804087 156188883 471405085 779971573 931145302 344945900 252321434 787457934 297477063 455598835 328293026 92908594 951991320 357164616 947067940 753943982 827051903 78468892 729931645 816697872 885524673 388275297 258593319 543245454 567779383 929920963 183571764 132858861 785462037 926977798 416529874 962368356 569183751 872440951 141044317 668895645 808534612 769144629 944160768 879093643 652398093 910154761 732091808 355899075 481092469 723175208 616004409 42681676 978892960 715672123 763376975 226456296 399785143 990676810 497019574 704312869 796088920 228578605 988270403 803106371 478110133 689127629 873909672 744048677 854854720 714063269 298534012 941743673 2942456 176498206 242650613 763388665 982904105 827851485 495939434 909210343 670989236 676722642 780401178 20478549 418107158 156796895 420869169 628198098 981715221 842499560 949346597 610714225 711439345 879394256 880867586 862206700 232715969 714167111 618885958 17592987 207355551 943842346 409034800 476103531 45476849 13325327 730275350 870347357 249603601 882195875 786763934 881033164 837140881 679582406 289139197 939034456 574316484 748807298 1498279 837124447 484456158 875266674 239593500 925196881 811102514 862961231 168277251 906559045 531551289 900240166 820048575 780060941 367270921 935916222 605987376 699613203 501889771 797426253 827292090 796102537 62383789 903832368 653708386 462137188 60894478 917114975 804980857 4352104 671236981 697537798 118236727 776796968 79600473 286111756 555691440 728432910 702653256 995945437 312566545 146911101 873337934 763262530 681355839 236701007 781531582 136535446 674046639 954535050 624816398 40858585 543938438 814493298 341656450 333231693 908609817 598301756 730603023 865755147 703732556 66026241 381776555 454928553 644675012 731270705 8662107 699662803 515693127 670989236 342602075 671665556 790065497 181549836 147985807 535703616 333150657 746814687 844554805 137919265 810793888 568355669 868708603 753530550 775782844 167703576 785668922 576649122 991038267 575986323 47815758 195777727 527105140 465918622 846988258 927638263 587906864 742595073 73413848 707558484 863080456 999684886 561740665 165005822 984288888 843388847 10963564 768325916 651373638 495217799 835990248 994549679 141294188 385276519 857683940 96546411 992865758 112875021 880372889 955447365 778983493 909069623 239376866 740440007 613913136 878884726 561536443 42545372 878528491 826638931 677777335 85533869 105488992 62717435 744109991 153474224 544012188 345490380 203579589 174451873 132662056 925655100 813527594 685622309 786698922 755876436 183731377 305878578 605883760 169651439 806662971 959553615 414142584 34458692 848745190 346765311 977787319 819459775 739111225 888762887 960761961 116844403 858267993 755728141 869957722 734929746 682700031 976738767 454702462 749052390 777086161 755487027 969824530 182741671 670989236 320178005 698250467 923897579 286966644 32625287 889311699 453651455 361469641 253379289 859400350 446477911 96466029 608575305 778708911 878110139 935252527 552596280 986925352 897131369 526294831 105263962 152103873 836015533 675907753 964573814 493177903 533004408 512125401 761561406 159863098 336696362 169563539 353545219 724817405 983181030 239087691 678686865 707290623 813958438 651719112 46794809 753192085 354649947 997298180 195667003 914713956 670023567 965294570 842681661 284036418 744505817 881094781 211629373 974685414 772058190 96498372 698616362 962782766 977532173 24659342 637074611 859121085 847812137 765383772 283020195 322133536 630500502 85438727 9190522 593570855 44412972 925210139 982823446 776726938 262894111 976742281 181536017 685352233 3438548 322973176 695004076 764637499 998091015 982443508 812762502 712010235 783292002 912884851 940920791 955523472 58458078 635725819 813322537 974487903 508916707 266580472 691132963 726906362 944542886 670989236 226562034 43961179 900222964 233180833 362762966 605338837 828191565 670989236 234523396 31155438 254687530 459907746 754914161 363920281 282467915 993945503 228295838 391023181 962771000 66873503 482509880 710770412 943403266 700820348 670989236 159409359 681248322 716825768 641723502 449466763 823933719 471744611 717954919 688706392 425319327 948087978 40502886 115294281 883840872 439180843 570658455 104584899 962544546 110191626 670989236 905628440 419141524 791777022 854778504 715690029 140926274 916011859 44015838 778029993 786601510 90224270 998720755 738754412 913489358 670989236 670989236 862953882 80757550 572702776 764704740 920374855 735185138 552218579 368190313 589152950 585927962 75214959 60714336 449738292 60269958 93084444 169260297 680794076 955036663 679038463 316785040 737778139 956346090 916191872 947423852 42754306 350054935 277136246 885875888 432757559 274919013 683479007 400215781 947223606 785073596 806531563 632566085 270973903 674371356 56387277 710271961 771353139 572454748 893461886 395872419 700405841 841422932 413717051 441862133 501941058 959881165 357944734 364137029 67756994 719053261 368456585 735502048 687504630 907643067 881837122 906884208 996885301 692176058 490592972 520899794 448750861 39457335 985465670 194432738 466316668 917040505 188550844 13979552 794859433 904907956 8595134 187452343 688501311 807256086 160150464 486565130 702273324 875579505 753289286 791419705 310103938 877864616 422415122 644420774 735919828 766245502 703781982 127558256 726424149 301945903 601616399 182218567 118555430 742360064 314114773 285669582 47962234 403397134 25951287 192699681 883754316 345713750 740748144 609926902 757885254 229478357 829097699 784801284 717791341 979021911 833401817 787139744 408049917 110246083 841140325 4559664 422176659 375768967 648403624 50593007 207481474 375877982 401437832 681890022 157568218 486163137 569091259 211109572 243556351 572265992 928169242 892687100 781419751 157645086 771099640 341525860 754976581 368972873 770410272 494983699 184246129 519633589 320410116 290839814 52805111 747910442 931799427 92093014 446409802 780702221 810228828 352806984 548781050 991710577 24680847 69932121 217481212 555054137 637027610 460731852 924333162 775050641 159890398 159282160 192151902 702295262 475151278 500814463 769411242 332036821 796479333 739784237 478354938 763496033 677152300 651535237 753380001 987817429 49234348 473132479 657466548 234687426 793671872 949220165 5604215 117824726 840261798 488308315 22103340 187936345 285956701 963344779 114625506 817423964 490863101 339069634 77981621 114575822 528286721 421053465 474676610 889702823 807254291 107450263 923169181 348254816 983681179 51827880 931159525 127595007 600759310 302951081 639040742 311357446 912259348 743800422 665625503 759844267 619908575 850931753 189755659 959841123 878584078 564819028 879966767 757611317 786722295 771603619 362353915 702283429 905668695 694801684 585754378 718083525 251450319 844599946 457243135 660304263 732641106 960836488 202653439 980769847 670989236 490868941 704887486 729921273 907172929 847736653 989401946 747879781 378300702 730874130 441874867 687056117 208275745 673633389 544301840 357402000 183515319 576152028 564535279 686201767 670989236 997300572 213417968 573687463 421051465 801296152 953144778 741443259 474500900 72709588 124361902 860321481 805741619 587290329 881663717 180393874 933007557 319314606 561174281 31441122 707207892 769651187 838865382 109595776 680496839 949410970 662297237 206641209 486765687 806915437 418770838 979717877 759232937 950696044 461940393 571469501 198043367 697018846 722676430 970572829 849149280 728474881 322328469 206877262 241499583 410650010 703314309 776645570 977881882 230529747 4291125 951718547 311881611 709630335 698734394 463914550 938357450 586390950 953751710 651072216 31998452 298935342 972995283 781375249 853417285 976262918 421659849 344948131 670989236 321742511 337341424 356212562 782196689 883561836 938134562 538307897 934920365 953282715 666401972 970351097 673540713 678578007 906306179 421827962 729592475 45636944 824297534 830696312 53361335 215648763 645456505 909018281 999158278 743959330 717267378 236421002 298645845 332253296 194734391 178321940 580061780 415352352 412381005 455641757 706816442 174154973 4804082 531095070 291481370 841107560 865213914 671546823 376930142 707015594 739575678 921619268 301906593 375114101 377190011 855294358 451200980 537438257 251193188 309730057 986394495 972421277 868005279 90743887 310651935 646040135 205510202 492040453 825824297 960087720 738404402 851619830 836794866 675916879 945392969 901142966 236979565 994434624 985686902 543654360 930006016 114202341 947888626 93959053 788319891 725810138 633943110 948337893 414187368 894477523 927136311 699973961 731143349 103738578 897006030 951266518 744096156 993360138 376056506 756644295 981616559 784784774 122495380 986847089 409457897 69907628 703359475 282612949 642269534 857862811 761213611 373339453 815007454 782546562 926604249 710852117 407014329 435217897 727806097 250638838 682020603 448884007 646593807 442035322 8926271 729487023 854157573 779254581 634567700 225383558 628569872 886352433 17522923 746313449 542750718 290282576 746723699 519093258 580941259 676905512 326288764 543003562 185423727 996111016 178478190 695695671 710278992 716659683 908768195 600939161 754795344 210673440 383965807 950574765 866888490 187477075 451438482 34382884 798932840 522744942 955763241 429387421 847096849 833756444 950973258 821731970 11991116 940202077 96480249 802763716 670989236 772397807 981586492 500674855 993441832 422559318 366296934 959889858 302858667 671092023 388679172 148800934 452378340 913127035 821845390 322224878 733414269 854315774 809585020 390500995 828577659 805087410 254924572 725500227 720260212 684107352 383773603 941890561 911799907 40912487 847649444 785569028 262098951 496875169 915799640 470893690 849559708 470631816 899281287 737693430 732742425 897452048 729484190 108650720 732589066 889567675 686264864 518038163 886529177 105712946 288254979 693339276 249809783 382573087 940391855 530205514 278771614 792433656 491504139 870102805 95623777 575644240 758044209 756251589 550649966 770103876 29248924 915899696 492573656 671014161 77140702 810032037 681553856 827351013 670989236 453550607 769420409 966197053 876898469 72125420 926406681 380783514 840403382 509043027 635905614 258964979 544594757 895568973 459039790 724084996 217838195 726439800 997484284 747403714 839001758 782050244 433075027 95974671 615015546 759500948 896709241 782077008 670989236 869819898 114958299 875720209 197932831 573743360 873564178 148417738 718621798 849450127 918211181 703731233 847839957 477522625 943888294 695931830 883992692 627075152 203176405 955024245 617861133 212551433 958242549 112250481 692878897 924708971 951642730 485160383 887815859 607967590 870440102 710520130 683570661 870146824 950641305 980532862 469120172 517277354 902955288 670989236 174936772 503608887 951260006 895828914 138756341 30902981 671533136 285263028 680775648 924214009 909362806 109199039 236427357 138702175 522888261 827858362 725208240 902851891 837818020 875571539 898639279 892773570 398848576 453658157 288178398 680374310 761712210 552899683 816466524 746628868 736691960 861755328 522172404 519367888 90193967 538832505 162138652 311443789 425199001 686955051 964691615 730422910 69549417 870009400 391510598 51934255 778651886 525256521 329533930 856756729 396148373 685298070 661211574 917832220 636837096 233020693 782529173 670989236 281619880 503839137 773153776 773328918 690130091 595028279 693493681 144467727 269180498 959361642 341314172 744726641 642043634 670989236 63140563 804915460 842347510 833133663 499777150 109989109 609663970 90655668 152054415 703018838 527342145 963433918 230695701 743223032 826491579 387367845 606632977 903095909 817698017 828493699 991179657 239419432 591918342 516792823 836825049 978447394 345948399 609896137 673303482 690472468 987025766 772137188 636000717 861723546 521327593 458317333 421819345 9747802 721260363 328492571 855258781 684328198 868842363 981341021 716728631 622364368 811913028 738336590 786861198 741402097 603642593 663703118 80851254 268392354 909639600 6845333 491371506 443896688 85984433 81791933 232529185 842483616 895128650 449166289 250384953 280192177 863084062 882834684 650543127 934966437 682789657 921158850 835562389 348862160 974358077 467456949 200263978 434581778 798854674 959309924 702464913 719984399 582264833 393210200 132176349 82519814 217036303 597241908 591301261 766512166 921761786 397013480 919019550 280903061 921680773 719588353 20995796 53267523 843237126 7642699 930127581 541248501 339308181 529306078 189159229 63157084 69661733 685523541 9444676 904696712 309313421 84429355 191287346 30599672 740461912 673861773 164163963 752210426 286322173 118189337 463027049 694850272 868800582 643081856 824585104 937705682 798653977 766743385 222822863 572664145 695712495 310305111 718611468 899666080 577721845 245797009 687099162 676746894 57389188 658780097 265214843 670989236 809683626 424165433 190919371 751604755 718783949 302458137 819110786 647794292 475928255 916755977 679030889 438670072 714951871 593225084 545993549 282709587 909994236 866000938 791920485 452686193 108837819 913931808 784608369 987472221 841029205 445577258 974816477 938192620 694467896 143334695 780575931 700199155 688171512 689045363 674707699 735748612 689237881 864135412 125442506 451009801 967675579 947085417 507482354 799363803 915565928 673753289 363597334 750635048 978028836 42724236 756711888 591930890 651469646 719732064 273763467 400658292 991301608 40147263 885712539 212407697 673340937 543793569 351258669 784520257 515623458 419859184 339355827 738084533 231892466 892652961 688880587 686122894 945643817 934664761 728314102 438050963 665518278 702415030 879839381 793371957 778797446 804140980 55861003 338932500 433398717 670989236 975389837 873725223 353783419 608752614 977096982 429629017 622092640 596251261 891768647 77466396 848876077 454947022 817292199 811844927 240131361 617805687 317290400 934469028 26400452 920278078 71154053 755849089 948799558 726078170 980172034 77664235 864507592 308853750 122537017 580136402 727833182 401337653 452806309 835135531 80523405 740179972 768494511 647714605 819479284 173324317 947819809 888617433 49219978 166900443 387956991 883032320 185563415 570782530 484918155 898964513 484771480 903283631 550011946 553655543 831685434 457309376 512320928 956512944 804685324 229377053 613299209 844110835 131860562 803019053 690719409 961842977 466479611 669878135 845294944 776756193 208484539 444084500 903811677 937950743 655066818 270948494 437474492 302400246 266158038 300780995 738276768 493528452 592963284 403239550 729712696 862864781 452164605 154932610 559896607 396656826 13131504 923147695 779016546 656264289 121136495 704203205 865995498 571118692 619409311 485907538 800723737 353550838 56599170 106915526 204317288 467713236 157049942 938834127 458144905 985354901 972205271 827819865 802971447 968695752 586601251 578169200 799454857 983294641 694842230 320089597 427387597 232733664 748366972 406337613 137487173 237171409 499453412 706152107 657787967 994842452 286465956 467163907 69610324 943876102 870350374 507644032 651533950 371634665 861443256 742735356 563686292 897397888 866942484 948623298 508312390 494398633 845365366 541270982 628686041 702227241 368283493 190188246 649225125 627750369 971838722 197364227 786489039 707240573 917435760 537303749 271952176 897264149 685502554 814795798 259979919 469520963 705004400 879942135 67290477 880721334 328014987 378087339 791432161 800619541 427293517 379331583 937628804 140637584 106727208 965069869 166537889 371507057 112216416 327147698 143687411 959960238 176638749 662422334 853066131 181997951 911132204 807533822 220838678 877472242 47255731 739636121 119196001 430024462 911786521 180063747 459465237 488149012 917740463 866028370 657937288 543131915 911282627 932043084 976470103 148002141 727871707 939741847 774075268 99918370 579303385 567318983 885734270 948260684 485071856 282705338 869595855 983132170 148538922 360267093 752969074 918932959 837477216 786205374 201021616 411565985 68851570 208735693 195623692 598523130 271496961 162149363 534936299 298622368 587038676 248719489 670989236 140901205 426442035 173377666 762191371 634364850 982061123 269017357 646553486 853845702 4240091 202057734 952497397 876717473 177132838 762181108 6474891 899288327 228394281 90817235 214834426 495276559 481570309 878502200 809308209 750902722 971819084 782809450 955482081 685641035 775086708 128112825 482179963 17748443 769171945 60080086 447535492 929842089 926918990 776468201 604990010 549005280 944985150 918331969 810608155 870753586 950472921 341062807 841038650 748216205 716016962 752747539 551617646 962706871 276159187 756797681 905498074 211245881 891141514 23123403 584326788 286576060 728438109 11329530 699151056 894283205 50624176 277710392 635627580 510569917 30977017 485754981 963586920 321625734 823835320 666443488 946146863 572341565 941189079 84125794 574516470 827271517 973844042 727071665 447444003 592978383 413418522 764218822 944087212 955156812 337790856 447723014 841309067 479659065 823313724 965920118 346185151 680434716 505634201 935524975 955364506 392488218 539005925 912350057 904412439 758982437 396072732 297327092 714580653 660948442 463100993 994587253 195138919 775768063 961006837 921949288 487434706 928287868 826700668 207172338 979710855 830419950 652080158 665740035 783025462 59836201 906132294 280121986 281000737 466139808 967188638 989903433 482739675 291861767 235171892 603542119 470192070 327021329 719057381 542760220 166506665 420306176 386534945 380387050 905080178 867411031 823732870 727215904 113960256 309216699 151129447 616923889 805838004 970928647 670989236 371966274 362350802 839876572 982594270 678448366 723290038 721261985 568149315 700084317 677751758 598931485 575136235 599060076 502752717 464105853 674832150 984302015 759148937 683763427 798386692 605738150 679640136 477550632 432213338 875508491 988588665 408271152 239257442 847523769 896731729 240206729 876816009 191525291 106826911 980238972 803420 24912652 675225215 894514086 693263344 993363925 713337713 726981889 814120485 987170399 691589447 399174821 707114557 118127089 342373745 706133528 767239272 697099479 834200680 277086833 86014807 872740359 424876085 702611850 645632698 990770093 237758667 82535480 889394914 448373305 923108619 176884394 815125651 824191299 387642096 48828989 839414828 279394998 500304209 675854079 670989236 699764188 927183467 241435239 997133159 899502962 670989236 364264476 440498417 929394056 902817800 354497175 489358954 938987940 977869827 700743632 83389085 771786316 221741297 999518541 807857207 471105208 989298729 20605922 338331013 549440603 381430880 406222295 853562108 438742988 784401352 344207686 203039298 829846876 590765830 320860878 165693898 889051723 694787737 851912716 996529309 549053231 753148852 726115652 81379658 252506049 794270336 75983620 446303684 983403650 452001996 342985798 346940197 831736580 334358349 175320679 960489386 79696584 914015990 393766421 229662359 803674067 889256137 825469337 997169815 514301607 423466227 452722721 202755226 760073485 871354598 714648527 968666111 323645696 59784979 902591506 963457841 620374472 953376148 755837384 727732876 841411070 657837502 893472103 362559637 879504083 839612159 361422188 37691429 903265090 982515639 728289358 432286922 78197500 814018190 831542090 772629170 942514834 375566927 797757190 166637504 425400309 750363803 972044546 839113072 277378449 60815181 749100149 846830562 104841480 712951991 828579565 889304958 431553036 467752263 493127585 215314368 532494807 460548282 611976898 704836267 174738664 816281071 959306746 859474092 699272818 765062143 872023225 942895731 270664674 809393439 135906234 753100941 199738464 473323855 539667761 518087499 616496921 735074282 315993373 829716190 196005361 819414871 872987342 876965574 725079575 493072582 999881976 96722523 697410163 930647601 478761142 856873416 845023085 716156419 198640802 730685511 914703466 835702243 267758308 38722545 733251836 432982059 833653121 828433436 876610708 998984945 176002789 980839811 700396384 541419726 962426431 743176298 991508178 712405328 623266736 972883671 966842144 954173261 17894689 909145970 246494927 892036712 520629193 301586638 187407830 715033330 860914978 915960983 793325733 842811744 884207957 139257084 579396340 875009908 560817640 195835848 670989236 732172246 729158178 924171861 419572585 998056485 445631869 4607618 969448701 763559741 562566535 485330815 703116758 509998874 75330350 625162869 670989236 770621164 790832697 530008119 131009 62762177 131440942 540511490 739909219 912021902 337124879 133822200 913738969 770602855 930179962 897666618 971341304 790754981 129836402 788869731 45628291 760194505 991154254 729852503 326681569 343203696 747285734 82410428 856492387 967571817 670989236 904763661 763757424 943649328 213692390 377226828 976999838 807809729 879405960 865941283 873062068 673808738 133744342 902495646 797683956 926463596 159265690 423119112 162914428 527831937 777366162 302744280 608291203 591969121 317054733 254333689 666808942 623977249 932910919 445568218 642621145 484835059 282373289 784845319 170349389 380134584 738095617 163124186 505718783 120456358 686455922 289073851 510903740 262571621 753930000 673475385 756436956 194439664 146111462 195373540 429235763 736177050 109550565 521701502 791998520 343131586 534133903 657950305 924466427 692256529 865415095 266202476 852331849 894573011 300231784 844960438 354172264 229757895 673662300 628629155 797957160 568786150 332967300 915836443 945071853 519030007 587808755 151605017 822454622 938980500 813261667 847727633 113878858 732487924 301202973 707455326 530386494 961108547 670989236 956555390 464071072 363071189 671718905 475759978 881189721 863166597 496584227 670989236 432376610 740585481 634744834 766876373 143552107 883627314 745350097 184971293 240384870 548681030 776415720 848609271 967802594 633112732 280557317 976104088 967924540 981998458 474369667 671825316 975804528 724439520 191020074 950711360 14476969 110181524 530697851 691489362 859676103 818860302 324330850 816677407 670989236 875690109 648401663 429691065 314001220 848576376 910235911 710052123 367549411 908235053 797805309 400218046 945469398 199705579 311481713 670989236 580338970 710280756 72757938 385349078 272837395 765210218 915113829 532429140 139690275 804333846 817739027 148889041 584582048 400201845 774623032 736706573 821621050 724237003 759351685 350763328 246058887 307908355 423401007 837629499 82305296 842627520 478336219 965301421 951077996 938676493 888052227 422976526 247832967 189310 964006515 95382331 715757042 635913176 865501458 647777317 691105065 813615847 304201605 645039145 830556980 70893097 64517454 40053069 414506668 228474873 494614534 979566044 925241812 574621144 66225285 958098539 166984260 755742248 779360347 734250605 699316026 610864745 626189178 102758154 585979957 416222758 749624353 222150215 360530826 474144545 885802612 674618476 500352829 969550668 374100094 786564343 513424022 566073258 771678332 830007459 601089807 522448792 909333830 670989236 479537831 938598901 806280681 437417076 997938381 603359260 673416962 694605023 644127354 905708474 838682987 988019464 531108313 504504768 977864565 42466918 815655023 876678242 863616112 445682082 335998846 585453504 785511354 171599280 898287241 971858024 889635288 848659413 510651324 831467171 713806361 284503999 686959805 540619791 883056855 938146852 119031536 910538303 778749660 392770274 671355065 758485516 181055126 75104032 711092857 733172064 442857441 715524227 744613003 815760344 855552099 275944662 858543095 325921387 777499485 115965997 237253182 63960159 670989236 596317373 323095000 884133761 970140441 239378278 801287855 597138298 836170605 686530099 224900639 911147069 859917423 719924766 843058201 78725454 899855239 881524992 971397396 56701128 642206039 279183688 828314296 849634404 513675525 840546066 23745815 929452014 941175695 540018821 408250863 984077853 938437162 795422200 887660658 701329485 335672184 932751010 643562729 788887751 811507782 65451975 571379577 727390223 861302442 203541822 839430065 66432002 350608056 253972705 294173064 234847317 821072149 934183204 801792247 240931542 124502899 235154432 713533439 698526049 954555143 491633270 280438864 865826104 800347248 692643014 692099957 321495473 983758632 879558724 365561783 207656991 833211818 867889702 957112524 596063569 636565068 615750744 362490559 127105855 443445239 103382397 723971193 756035145 27997040 814775355 821002673 357018526 249283194 802574924 315956467 242504910 670989236 80893358 487231770 790530427 517072278 282278288 536521901 887564855 601931954 441968263 980677736 534430466 980013312 377640098 830539134 391797607 728654236 790381810 788346988 321107702 890965607 960959095 650436179 487839478 499910635 411543867 933082875 584327788 253171097 871007392 939934273 949082662 185787398 762704749 221151136 834521239 842246068 682596466 658855577 213562343 934049822 940749096 894638910 745236212 446256694 569651048 813996119 822647778 847378680 356513670 885385803 312708249 545487897 241369010 796884487 267113836 187812188 354398901 349140304 815340431 701418207 702978040 821644097 165614063 321558505 247087767 711076752 281434652 422043226 701211483 128047898 401440521 933199006 842971229 578891634 742930483 70591558 591359038 182800410 333498880 530543523 172650179 847746417 796411306 66674328 831495422 675466669 867151889 499559002 745583913 851902932 213740034 818576855 783920699 333763681 332192344 860314270 687261988 696649394 728837175 871716889 634600670 726771467 882068391 901719535 563985959 689266315 719156975 461434926 941585825 85852003 132781191 479588778 951206200 433903010 330756580 982369116 987034072 667139520 333048924 416803552 953708971 938000476 931772285 959689715 889790326 716283888 15231214 536223288 953247270 834491245 854497214 783060761 991925309 966379401 64132385 693099494 909231306 541333712 791149633 678384041 923305107 451226732 586624311 450759378 541649341 646463103 376895278 310965736 817463403 93605110 11698461 268099230 106584447 779983202 871950122 783421220 536719538 970139481 237389321 612314073 608599739 664642335 10558609 500738365 683076286 422979201 820305314 943420659 89176729 955153746 92431717 958870428 333031526 114634980 875594672 490966875 661330042 654474111 580997261 335129065 243017120 698537628 127190500 825175457 909891051 434274813 586571660 811021599 91116213 678395806 510702270 727216861 589285834 186991444 809556532 672029881 45188006 833847250 897657981 898606752 786450692 971297144 871940214 814453259 923290179 481775940 505108883 978400371 991687076 318164114 464598806 61658069 638126068 637852935 400887940 926101220 970786232 539954388 914829505 856041357 849809724 821750089 427848612 493691074 741109505 811208647 524000257 194155641 485354972 127296881 995276550 989683989 14458440 436732017 515507950 721721255 822236425 805042485 739561917 469380660 343582041 490182029 831600177 455718869 999843811 976637988 768713248 794476236 563887662 963791238 844049099 957002298 995732033 813863346 959687278 706515975 452489565 859546161 449421258 784953937 783281667 578111818 370938175 998622323 636780787 703875846 670989236 580780158 243469494 44639248 678712741 770266904 576798080 680397253 139138738 122230427 618038229 493048014 685005630 628978786 486314384 975047488 637758965 672492392 664875812 811570326 604535996 932846252 511030722 508351337 849683743 971787786 379862206 360925576 681963987 711278426 390915429 683008906 417779095 90115827 789659122 343523490 529100058 202663685 984844054 956996754 855240278 435008793 56666404 700482235 337957123 910963907 859566338 531642329 560466569 304583600 240837949 868592397 853538212 76487505 738199192 682678555 594832451 404718165 393491056 438350105 643473924 462365791 370423384 360400333 194418731 979953894 972136547 906164854 706072432 684291162 701529656 91679737 892116834 928168170 864634066 853444716 938577627 104959815 267497907 466416018 951399469 911445481 248210102 329885968 538021472 798847779 719322932 626748975 840240143 547960 198705676 886082972 319446018 656938852 901459586 966083069 739538824 716117395 954471037 985302310 873805693 556888227 119185192 690215226 144743650 596821086 585920595 439569825 670989236 352862125 759032782 220497776 636388778 339491974 546794643 786811945 801913475 568338944 216970718 981720062 712995834 408724647 814530577 740048000 909247522 238803461 502190782 261834802 910133454 46517892 845295108 931832975 7748339 648142634 706216143 892221391 675188071 931690078 249513696 627013173 670989236 162523136 865869225 627426854 407632114 368794179 653972413 219595091 787530657 323496296 916602775 686763097 493305748 879679953 904672592 199756425 510393244 777304047 914669775 835156927 564693060 719528186 893598173 74367976 115264655 802557965 891808790 990065309 92925681 570172667 225581532 999350694 959448207 329508007 908311866 622319118 951666786 259465751 222217792 622234684 253976863 999429981 239089728 955822744 593220216 831955562 651856727 796530200 154529541 594220272 270430359 801581861 570117173 895253921 41571738 311028135 780503448 236688983 15095543 237403882 690241307 332474955 805005934 849005549 937832771 976033242 596780850 711246628 934890541 452139882 731250853 738162431 932737393 826644769 921125030 714478363 924497645 673308920 643439852 797857043 836517380 999384223 714975523 437111911 630255866 903096042 319617464 66654371 638691513 34922889 140745562 190700598 537517177 868009237 182374144 445689717 518397414 279471212 206890753 361306237 131724150 198926575 734923272 590387582 388678273 389806670 678462941 65793716 875077027 854245528 910127114 638914757 264533668 51720054 344924959 200243096 948018833 424133386 821435705 987373814 770483991 187136569 811210014 256461133 771384022 906929922 915275478 819354121 649041753 51200240 19735709 527103030 769915575 978681639 291610972 43466230 242682036 814103075 504720400 486157512 983825843 787952919 361469930 608244575 670989236 285042553 147738932 950099757 217804324 66525368 170959666 779783678 787097668 619767653 779467893 63080133 836267416 273393713 300528715 549255015 894906031 234377787 290300126 348953065 795878361 593511706 397750932 672938139 460473447 877295596 954128837 730834759 846976129 679530372 606950561 786175635 992827086 678587855 530830525 783847862 12973096 838614671 857707473 867094777 144909335 85557828 655008939 295295210 145788420 834313005 683563539 794689014 791684841 754034876 582703453 526389703 822253599 136488787 815228508 267608941 704720335 335820081 764565761 184827169 458195428 831038940 29190064 847284191 470249304 526459479 686078336 140971731 777097082 841015315 956185388 777539381 844360405 472722523 943059742 732383389 970493566 742572072 188181958 351877993 780953625 36248956 880946748 256845862 710127083 762384384 593368002 530429642 122098069 316922100 30578335 844482525 14065742 745836148 755046194 935628322 670989236 152599332 670989236 493845134 867866129 844212868 957826346 522672063 147250595 969247608 618617719 972106620 761713149 133486845 574149526 237997224 141701872 253053571 562877168 910167710 974358837 354409461 229482750 773022491 523787004 860867559 783499511 767979926 226301641 932856783 574858119 759996880 351112786 978348974 99083753 787321868 641105981 788944196 512147700 720512951 558697946 670989236 845715721 24472962 754446258 686547918 48536920 678641459 753044849 360179048 352445961 768847471 664316764 487694362 1412846 794674498 606798210 47497321 901505618 250200417 162423130 949182665 959956808 456584138 840237163 675933152 775968635 754522293 761959220 160315632 987733815 770330968 973742720 733432465 296547223 878316663 728596597 774258676 921234283 895699603 535014559 777868197 565467198 841875276 98392362 376447805 555875126 557049427 959137196 126431631 719653650 635612345 318054694 934295997 805956017 499773485 961278536 918268520 807879426 514043167 730842078 374404690 994956655 848381415 421221298 761641600 169594958 929736104 813189451 948199091 596396445 930174413 849844865 573549921 990378110 888952298 738270003 599909710 690921761 465780664 62034275 298358133 774774869 746089624 551354325 618045857 814212119 554612285 812482812 12268386 731149647 835745427 335956770 985837293 419578079 188035082 298220447 680171718 333493493 320887671 47501457 859641715 934809624 425018813 726404648 717946096 624658366 44257129 542984473 184748438 843830163 173493900 670989236 49060038 568007192 873257666 78485388 699166480 885666773 75863288 311016169 921022344 762583186 355963740 692680259 887544534 61450561 984024271 400677612 582619010 479388248 461780573 605338317 238798337 117075154 728194269 831672842 816382994 651844018 252801616 356686885 703231373 859220743 85188259 769159697 566135008 604831308 638107311 762039267 958093572 167958256 161387423 997553960 864845080 417205374 335661421 832916689 785855514 778753334 699253897 772945666 885613221 566580671 598128194 280765018 562205848 919692409 723828507 776094957 513862183 497593559 399080382 338876561 878395160 160344652 498505870 1930828 850193592 823855009 351760585 11360539 691212134 767431419 881504821 142312029 94348118 642749445 730663725 780235958 732331737 737301444 538919520 41446873 975181260 725617349 974099205 867197503 479814912 784077231 671824298 113001642 771995347 559060838 432302019 193564315 640307783 459642014 80523189 909639723 876596804 304844501 647033786 765033723 143589935 781326940 699607476 512263923 732209672 545390990 459124330 773432734 856130800 592578857 251157255 874038609 352259108 356104630 760883800 485543349 666294596 546474955 204590933 771328790 26429801 941788531 221927123 833667581 351856781 345745057 838602461 893657660 621901119 801577609 609738041 870141213 725540119 613818583 756110267 841854060 782224127 707334495 847456168 55397210 720749649 974397690 723484477 771994191 582842283 387027819 419364325 646041434 98111062 259383844 273262736 186854394 488867131 36098904 199699587 524064900 655064799 704512162 835859249 541065732 943728419 760951991 179108035 564047788 847094776 670989236 811361444 878522565 173128597 772150133 90559533 39299323 749499775 762296456 803200526 749712568 890498747 654733440 464334864 806034919 763469984 507071820 86631143 632804069 487398055 397706277 967079638 831794616 239988499 208967172 687824881 484001069 686277296 267427532 708434789 71688795 392559076 408241289 69979587 643663444 796189875 133160258 55854935 989975370 781362727 851871676 670674840 927295414 257739460 89829720 671326750 949200529 953407792 229231136 989793831 670989236 782880743 739456556 610871944 909069928 393503633 251378435 432121039 763058516 21185604 725948264 433244413 955160465 692959830 710618128 851878648 55830263 521744561 801467813 784219148 633500170 833324211 969067730 691182980 994460635 41166103 704271382 341049704 256687927 878120625 746821270 962367609 924610183 802698509 784511404 814678934 806405261 315148294 109216794 193400733 820475386 90872754 860469909 178049099 921778032 381549908 161428706 312806591 737861477 934816960 672526640 677830357 321892774 330121360 530821540 109716578 532028750 743249027 8822487 392378753 671077676 956926850 622607978 569534103 102577753 919941765 620570530 652291138 603352134 824950938 823339780 990662299 998893050 707754440 857561588 852501865 511788684 959848909 925789093 330377460 337861669 772618049 917233531 990066224 685397623 538006597 240396959 42428601 925825039 384964552 798598628 914722389 410123483 441668031 967429582 87416136 783277769 476286127 687469837 622443451 793044874 286347107 373740000 990171810 445156076 893359088 148871005 431897259 325412512 847774895 768606511 766571232 804638170 915255746 174312591 324570450 121369992 393043441 129899818 385549216 989347274 868514853 432295412 587691751 926424474 121574128 914459354 259913819 601295646 62251020 475094459 662020642 868137784 975151503 792495580 735658309 446198167 199126645 826940101 757720248 895976192 960513456 57913947 843475761 673529600 277688936 806135578 670989236 806416700 785021084 16573731 188756703 712748729 528530105 876745795 847944725 928154570 906024215 602433927 984535204 517724227 469674814 675168469 333201278 440752191 507736902 607123126 990824080 334142021 11987233 320827443 800937599 721904916 759995783 651574074 642171582 920617131 743321471 609052292 752647561 64629746 933929748 738590618 912535699 709867096 908533140 435873563 645589860 251527004 208824296 840842106 706832397 584254984 628901215 391097418 837985900 725865122 921215247 369726682 701215615 836880560 311246097 181581058 164698440 126737876 5888225 758299109 210899478 802445824 817821658 759833776 501205627 671493187 233424408 968130684 27703317 868284700 280197438 498799475 564176700 610187659 805409931 462103978 670989236 887605843 965218057 802469071 945457658 767650615 778325330 648687211 287573746 111039478 239827344 649374577 371572962 991594959 170958567 669286766 767543535 688823455 769206486 630560226 885587704 573572420 500248541 748965380 182361824 795269889 533901560 693258275 875723108 829202183 996834334 997928642 895372373 741099935 687974725 645917171 767858808 18657439 811120880 814344832 726037652 720862051 905341487 940726694 906129693 869470662 653619445 815162659 82274231 725361015 697966035 109965186 670989236 536206531 994318132 773777489 670989236 284673960 939906465 982352210 459996341 713093919 670989236 394383538 305789280 325926892 319179086 371932501 646157783 564668323 858789048 789937147 941098543 859257202 635150288 605606799 725650832 932837984 999316222 670989236 847767641 88973975 620584059 212574604 197605452 794272620 240249738 779227756 582209324 129308404 272140771 150379953 454244119 778889154 905409210 683955106 469842860 423967173 417063858 262438381 832019991 720487803 236359125 922432273 886419202 977231204 614088082 616216577 157579168 954131566 870411942 709307543 120328236 801132208 978128010 659304383 34206736 263723373 64859234 880669931 899961125 701679736 886464763 746488043 976130196 584256885 627624199 680536388 952167543 693599341 628719642 729769071 548050118 876705728 834840422 602791215 990300304 670989236 105279743 414335238 981435516 923931629 344932576 312497072 396098605 994010476 1273526 993402099 461976415 746805398 63712457 736080587 141409303 537360619 823607209 422319122 715173917 934351792 969809384 149306583 761894572 227116491 714944893 799249312 151997743 395154974 507142617 66528619 722122918 806252559 959020142 23854292 356633008 336239737 688130370 57649954 890395304 454515876 200874347 679808533 359891825 365599099 734718723 605416112 930008628 912663766 877280899 677309816 874426366 376298140 109150257 969985586 248974794 905896856 754933855 320072872 670989236 787927524 728498988 893305150 551249125 886161883 705679305 444104396 577137694 519162128 46213922 233386799 513307048 229393829 959547288 689292571 712533301 705554867 589040833 957217355 567902171 387965261 30070140 789096752 979527747 742344112 882879810 806512919 231201701 767891902 207491967 127601320 770729239 265087411 752598501 392813669 693250541 787441056 805926813 974744566 679667246 499765993 926345539 561959289 35533705 505655202 865021469 849178425 425309314 422105228 346936944 942172153 453655605 333705958 376630589 241114084 109865726 767428772 675916604 854025267 684492417 962883364 488981576 972049105 440370534 927588540 935539280 803435802 909318085 649777715 514732291 930785088 826727598 941606150 682472542 922690139 848459140 186543396 838970533 484422108 680794836 15320744 657333654 965891476 308396613 765590976 285880954 898053030 948444936 83342381 709260113 847343478 491371535 697852774 215413709 269899212 212463351 223670138 842198110 776004196 576115256 881226757 979065247 840671359 709631120 735944273 723496129 771814938 509745277 684370340 650634498 177459421 783435976 693116903 302552100 948861587 692467897 972714886 737683588 889229875 168921704 254507841 670989236 170710555 719796528 125177009 461571731 631854088 400419531 620624330 728525439 901441116 50985957 90037373 22634615 670989236 813310019 722846589 580495446 52838727 9238272 11465797 340268706 927847474 526506888 752873156 186793552 916701850 306029892 936358936 185923040 379245119 815468397 696581736 686465827 710544687 425023986 932070935 523477950 698158465 23813035 330992772 733676643 871818858 954120992 100413068 64939845 761133608 893075390 983548760 238910317 459945550 188025024 62167574 977438988 882744198 86599588 129506240 798629825 704158677 21645751 206044228 991207249 63154432 194706703 410609409 649290527 892910996 490376435 295304468 607404245 683302148 739240538 696222661 889523069 377699795 874935626 825143388 149442512 999874225 885283284 728245591 685534929 255874110 577955035 309390540 195684604 697523563 972581818 692961246 883740086 795950478 317146576 944485339 742509292 454493064 603060277 147697072 670989236 521709725 741915948 831244110 752436209 971393033 740064928 785597615 907194570 952756536 162308825 85303002 807231872 343539252 841974624 498067918 672186994 645377310 370797438 393401492 857522330 769020891 474778699 779010232 98197211 273203563 781112653 170958343 63090810 670989236 926861447 64932484 825319407 770522742 188977762 422387961 470112359 684841403 286532605 155648543 693429769 959099876 732689220 925486661 53199389 901969848 928092008 380122255 643472963 884914191 885281588 570735302 85206513 942243993 350010896 463104689 326290279 170513241 791552353 203836670 388893536 79251855 324434676 707685612 289950372 392036216 890183726 969732825 814833006 908832691 944114475 729524469 882924790 750718199 148860540 82258742 568969208 710589760 980725240 907496739 806512388 953347104 670989236 855071824 507534070 572912619 751836221 938734575 927598795 185427966 943208139 103317271 670989236 380701032 405839485 604735541 766318375 42171738 956514802 724927493 699123146 793706353 171606587 901093952 781671022 68469140 756726115 526924015 814633741 332686509 226377034 567373383 70964334 206538601 942664608 904360465 688198996 960840823 178083965 853781866 652634895 804429144 780869118 805186179 814165153 318834655 608821477 912262593 304297542 272277873 410468675 626703022 721964004 759157984 147994834 863063524 1055625 851219632 977382389 670989236 789000481 881801447 278419954 655899496 751493482 848007878 690103704 882736600 211678524 855859768 485301848 772809642 363448633 697141515 159998720 860050604 722990090 798279498 776385305 799558217 728666446 367927604 691217858 924734856 931376150 386992948 685829174 958932863 703122534 492602070 374414704 971164530 675217939 959379687 936547080 16464486 158458602 704352477 412379087 837500432 730270733 894094897 556264194 553436210 916189604 124205333 449129867 552571983 336365768 674158711 641000447 596021457 478010278 737035172 314896061 887181677 950005137 311844594 71230090 894519294 669486784 972179279 437679532 717519227 175172013 139929906 854168602 855093184 653048353 953588591 686538052 361551432 670989236 824888025 308954624 818065776 663371331 990534982 537649296 814004575 868278885 6375517 503383459 83398537 690799633 702344284 828768070 993714735 813746327 254222077 829556721 687825211 987503573 677309927 941906957 614098212 811791852 115383057 859989078 677403170 716513840 861737954 747877587 427087922 744432130 936042409 690969950 479461063 670989236 746442473 478534177 364119990 56377417 594133161 337775322 456672627 238048219 252459808 961802305 89256473 103345379 385326418 210016045 12778073 977258022 935533587 675926115 11763717 403985047 592036390 329509366 586830017 444059663 23683200 37789745 862088625 178058691 746165409 372007040 820303549 652914522 314309831 492248447 962143303 945887989 883818995 683866778 107983825 755427628 721975295 915784318 626292203 372816884 762766438 109271007 724932399 912613138 808355926 886032422 198962742 409764849 115148727 682753416 975454124 560809727 869364242 896711440 785692336 990496490 940265311 670989236 671806773 978419246 833033309 397214324 277593910 855244450 685143493 285681562 126694329 48807689 515836575 188124131 107072224 945147853 186964472 867661665 170629833 522767605 681398464 335641796 831404156 849633945 51026766 109652905 966454913 989276124 807496181 990258642 937052353 217333410 179371794 529007324 752168722 362610778 936266000 535949024 698535066 456172739 826903040 334164404 269046216 745159922 961725279 707159151 544636073 884208730 89781795 761238535 198232661 135707048 582618039 532833464 393657023 348498366 482746111 434371898 749837342 896350648 89270200 288706812 610007995 864504737 438184159 36727660 862267964 378849705 769359455 825102799 259310842 883512370 158522115 199506861 36663175 755400375 319767051 195533661 111442781 281398196 966676312 172626421 816689079 322844037 863496581 856028314 709432630 832424586 798207002 83788454 797604528 742135137 866379490 880945149 431840099 461872027 977718273 463960491 470582062 648823017 608379172 327472038 26471218 466537238 845469309 849773433 303268658 690971775 670989236 827228092 942940396 895233773 693119866 977422047 687143567 889785129 330452556 863738388 274724384 190008549 129941679 196400173 962356283 532880343 804567690 924066012 827829530 482455190 340128070 649839481 953877286 943282274 987297821 923927248 252830588 833135019 257818914 811676514 260404552 214172047 997142929 808040822 49460327 386490330 94408260 717199268 814366558 45129715 563593220 670989236 822638557 256842644 221568431 460665681 325870449 735408360 786121661 333002905 532992197 646112100 888017797 777004107 941890718 893342258 742387292 800711251 547427887 670989236 603546707 51089614 789791523 947229494 782685397 733082436 566832847 842973929 147732135 746163581 542991882 857776205 228774254 674018767 670989236 914701297 252545125 891783714 735615343 194861823 215929123 458720681 102086383 752847900 769972670 874567138 486419154 881104356 252434710 813606966 869730456 905246761 323693076 970531354 560759525 608469349 958477464 790845682 483917220 198301449 991358582 185377282 414335770 142720460 695168504 448852830 711190525 660731077 375631968 890935003 187068962 798457448 648716066 872307359 971351588 976080038 345919915 848550704 230726341 645967948 71499428 696481987 761113787 584446201 332360050 982591405 815756073 866254224 959271764 374565273 785374382 928293795 661837640 544417739 721179996 835400471 908515484 793136739 778172582 122981071 505075280 428583114 528749303 709820766 702516285 139077194 711394639 758562487 988171752 408274310 409705677 699368120 277288523 358936855 717705977 932135644 241195768 710361657 670989236 755457633 614876832 74157283 939053410 175432822 182004154 965022305 277422522 5657371 992443482 809290917 711970959 200390981 818807570 249869487 877602804 540210385 543768722 428313777 508679359 200166752 484562878 478033007 264824729 443680830 280184832 525061127 882555678 768962520 233289820 33303500 568039650 288109889 210324454 70125093 85009523 63596574 96913585 402397538 393660324 520062965 440619284 703995560 187259195 982685831 34424565 979743181 127179095 125474466 304286043 187831437 335169456 93792249 801159269 923826637 830590554 792099896 774742354 451068583 704609724 534586402 499288867 954951981 824647895 733607072 367313728 137390373 817317213 704867062 165933365 830715690 493295016 690739112 485368447 425652313 680741951 348949524 838321733 160567180 930770573 784070906 827322395 995675135 214084474 718429522 801399277 983756667 756110968 681828128 795273543 1558730 819773604 124502950 746251725 697075042 694343209 466548922 541344994 506176408 152712253 981067847 879652370 270519105 747921711 995547876 346341493 503129363 736166000 182453922 695937715 780295250 729192885 970842338 142692805 739955073 711348826 445277060 699478177 694589993 708971761 632671539 687983276 258163658 721969256 161536360 327430932 566868162 573201255 349486999 157593453 373344390 761339887 303490526 572093368 719180234 759670187 539147526 352572398 761202535 880105646 793936166 901386879 926451828 926771946 849814167 529298073 924478780 559493496 736679874 75480965 148770133 799144766 839851494 771440741 322839688 315224036 125062114 696524645 614699751 980069039 956403384 732116106 786364650 777384014 683257029 741800456 705331204 676543607 290152880 964765306 432624505 329171003 875412415 404240782 762277666 462631635 222989710 929295558 824348863 64258700 744524995 941444608 137201378 872414269 564647565 253861797 511558199 903707570 136790875 817546806 483965553 740574022 854338411 942963900 669291559 846501035 370974451 671964921 790530085 546435095 979692383 860055377 859473091 365475121 670989236 806312472 804746168 229683856 759297179 722188052 216418107 462539978 983689881 800735514 514285271 308353035 754563192 862922793 852001621 740582414 716431372 499711762 768147318 10831978 817659533 46827660 368923090 852828784 818643291 309961736 132207581 376903808 687987683 286691894 819135040 198032864 106552374 123265230 191469252 168927459 137218706 689667687 928479249 124267473 679657027 312428647 812526194 753340090 706529592 38963311 735425273 990845230 106608837 877469472 915684741 946194220 378481509 274260652 397108852 930246584 324275737 946494720 956476260 93701084 810292756 789657893 423757199 938047112 774202805 900341804 956712149 746429234 701035651 893993591 524394374 601947673 61606725 767802560 197646953 766565587 459502425 781087954 692385304 762528358 413892408 270707115 739242467 784780571 634271499 780675892 878712561 203630700 504333795 240083962 964725773 651709232 883312744 118429914 396696060 885043620 833054470 761113083 460692288 671589238 842101104 666775787 840250486 381365169 311269273 215583377 224497310 818414418 212614468 958812731 896743417 723412977 695321765 991152448 223079587 308753039 666630995 721351336 514633526 701164570 4584411 113405473 78834637 996808825 670989236 768747974 563930009 691324480 20601542 887863602 774707984 881268429 238203132 270143324 918078928 576094804 935960410 479998149 856384987 158251568 81249624 246238585 296153339 130395522 300672566 368652025 723330301 907727426 743176824 602368706 724966288 528486786 896919216 789564704 720414165 858160874 375809033 788242230 605046590 375738831 585941975 500467868 882549595 963205396 919289650 798713123 375536409 938281801 678149140 900615469 689933214 920824491 994094978 736991691 456747181 890971865 76581457 670989236 819028840 505665791 842527675 14543665 841248295 488889499 429118337 806377959 451943690 491709389 786090602 60392931 800189869 835927488 869685705 740172448 837172269 113688871 679069783 528170526 217611163 970993695 572678131 239196951 257088990 864995598 887168713 670989236 202807102 761802255 965989455 240615630 605188202 670989236 784390810 939099558 645533254 582437272 126589779 856380736 133138628 456355813 927866607 414392306 459578496 910273762 413868332 134185647 317529990 760015599 720832050 282640599 421276954 338367151 393739494 174316176 609884004 222668176 634125486 101561271 906037832 810372596 815783478 754389242 972958118 753922201 902682211 762275540 927473380 393524573 763135257 182846555 445419616 846052311 23599213 531711112 156957825 795846718 871783850 536888276 709604809 209999872 755728620 910242703 594077010 235027458 65884701 423135860 934502163 754918527 769814319 713661359 284720089 172428412 972961195 440526845 931075383 21006845 523219863 240374547 267042387 678358176 103516025 89037502 747781106 376417202 217661576 942650614 340254832 453488015 467874899 913447101 825544199 817049692 764744911 85521555 803826246 704006116 424175968 725695866 992723148 690798171 184449242 538692625 867564839 294814484 521854472 682965980 651037324 40481699 920014257 356722101 278922546 614898044 769386206 297520500 883359303 600112295 705522649 159495430 493501124 622709792 595558981 737846285 604785678 110430958 887765607 909406521 767706358 433408108 562811600 417227160 682196942 565805633 789002809 408135178 671660885 623286704 390076372 960954606 149138075 502925599 733203702 865991778 216479719 164125705 852390029 475527017 194308410 761414072 670989236 719007970 968989316 933371386 691086496 771679997 485672233 670989236 521431208 507687437 195736879 245273382 703907950 45243145 717952428 145374338 779430460 572852989 467817464 656219230 839657424 543949465 796067711 89992175 890791411 542992733 943614779 979142919 310890860 128974592 836630868 921516834 556826405 758169297 627165389 976648723 526362666 662646102 218710767 606194069 997217371 924376181 747982018 27164487 803451486 216392638 961332901 866863600 81400802 592597228 750438764 880485213 685993548 502772244 186205067 375819332 974188068 639925172 362298493 648983800 417448753 829997240 847846013 853209864 684803097 270226093 921223735 745616776 821477013 853598054 115058850 913708245 44323002 330746835 355084783 533828306 258908320 891194338 694687663 770456473 576362989 300614373 717809251 800044024 889629047 691756397 975918970 861325802 376761540 208915023 555783154 728894020 204731398 985061310 403207670 57975026 663825275 762122672 925505333 769457104 645738327 94172692 726860504 898905157 988418894 516370351 793390352 485006945 825120288 839263089 320332100 559478983 883227892 565550683 227200414 84004709 578778085 273688597 325104186 658400440 659491008 760480770 827115944 746590861 435339962 522443216 798639541 818938790 926027153 969643167 293189135 727993081 831959173 590852421 874692435 663407613 995475813 310357510 895181559 297573501 431676683 812058073 682534440 938674942 11789275 242610279 484847161 989959273 185073261 806844325 503883235 851904480 309447844 944111023 364145010 189622883 602853555 709460477 832332735 847085910 434639417 987956292 854096346 777314675 731337639 717239908 237476008 815306705 628272156 373062903 934530386 345960870 276162977 895705148 226080256 701357316 534282548 697255680 29812003 323746786 183386976 317403489 739283982 43334447 786984458 236521859 718845925 771357217 399950116 621403326 913489407 480040998 417889434 745892729 55724886 947343432 269341686 699147833 244390615 839276450 32353750 150387309 461763453 635696210 442908791 90633761 738123456 864486248 208055625 188563490 425749300 359084410 791219849 737340171 336581666 883648957 865868180 174986624 308922535 397518448 884405860 331419760 697085942 305794323 998432951 132697979 232081811 667815085 885133717 139877940 766780256 794425266 949907013 862863587 38136331 669619357 322904859 739052662 845368123 127391092 745096294 414701095 804758270 877883171 256643416 30327767 446764238 720354217 145601014 611967235 566598860 926083604 127807958 856363546 474236398 967528888 438799134 730322670 931073765 924690316 766400994 49326367 670989236 45069117 330062845 615438141 861965787 837181574 396333531 63437141 80422067 56484960 93198675 411620856 603373959 265151663 950289842 791498713 955133747 964067199 392809076 757674099 794790738 741648887 902566143 39539013 347389260 336623608 274075634 416679286 568652157 749805568 584872943 553523414 891778774 781820767 709145525 267182936 412199285 707575218 585026013 933866327 438433483 861639111 812330410 627550306 657956520 938276206 308322380 407777780 612411385 618023372 991071248 576108028 850787952 215880601 183211868 410181564 475334277 35065632 266252864 188600176 253891894 147182439 673632716 224203025 398245128 825937879 598593590 554088205 9352378 133594365 727464018 526103265 981675819 661251291 705746063 891008977 241970767 37709218 168604223 584978664 810641608 383418063 486839323 345053088 113429551 178549607 834422908 26020174 699019312 421321780 608939980 326389525 497809912 514431501 35194902 820546371 901371683 998263644 252321189 619869943 764758745 324784051 158653843 885624811 871985055 598218257 608619482 743983487 869657912 20393071 201744743 124727295 275805985 112646330 149547538 885794588 715822662 107299997 693787159 425887584 504021820 628640266 204269788 921600027 996327774 670989236 472498296 994788215 51507472 229101319 28509488 543023825 947589836 458055947 495592108 77763548 563760748 986344823 921100091 334578973 136895064 332011731 671659452 264446573 853587402 618470867 638500104 831976128 518484450 793309476 74899260 523996300 502850467 840904069 52689527 292736943 826628435 795340749 785988966 280123402 970748088 244086187 24711787 297897007 532721698 731030017 801607578 832352850 710547231 670989236 779117850 687288382 692936983 357352994 729311522 336514486 812641078 734602484 799987420 625488736 858950262 277375851 238797982 804489713 999755038 865291705 343996490 576646090 308866600 832658092 678673528 700583266 399894897 887947420 824251482 217950528 926585530 879893464 856048306 84892567 994297396 824933755 941954444 476365643 984929787 892604965 310723215 12494563 967234143 475859427 685067365 701484445 72273364 386823200 109565182 96434925 520645707 630811475 843848997 689428957 725588560 962948234 986079690 670989236 385351535 770167459 394529341 653270546 223984902 766022432 552096383 810881609 670989236 741252009 142902050 958396208 697380267 182310636 927389508 314371226 94278039 185466850 231802516 647451480 522172199 92154409 173547931 728308489 168415496 654464520 602155345 676680075 900265748 650782126 776030372 564878832 852910070 589479317 560001812 623157188 670989236 651457578 858025578 6760901 643444960 650880176 726092440 971930834 945622982 486603278 771237123 895606209 998532008 940192935 91766068 675019448 725900768 421691266 589284177 753114223 141579263 251349400 980588088 980616240 709364750 828010284 528154616 982818511 723407380 156446717 932188216 982841667 573198021 19728859 833663021 731515618 834818500 46779299 622469020 322724557 854543623 968783459 370444136 344224548 165930091 39366159 276324515 752613620 796122475 108522885 791275657 768729830 501697257 845204210 632833211 734633811 606041454 115198792 813071102 230009896 728689542 507039991 180277374 527667115 716290109 960035412 60615830 700202500 299607247 131159114 874616909 917075386 792373033 800095852 824830802 287098338 87638957 293769109 686143286 978822804 484417808 672842633 555945385 382396449 781040116 417227082 512011120 240526557 648076827 992949481 814353307 913721543 694488843 816557870 981818996 534048019 965587050 657859336 17919147 178295169 52227734 110224820 293749285 609562883 660718230 973880337 727690306 91516493 790223821 834816895 966264997 957284820 737161322 848299742 436038380 526350574 902397226 131748114 893187506 984530581 303543173 121827727 878795604 988681131 386140786 24183651 35578919 404628594 934887983 106028659 297185739 339478515 49469533 867391250 163387920 364582582 784090828 221366020 885643462 885077412 980018900 638233610 764346795 288581430 981935540 791597271 477212169 944877861 673966987 612304111 954876929 424697135 550332809 529312752 821404028 361220579 471071955 455705114 254350981 759352335 328280285 398018054 999184538 580397610 208208288 157940484 973261601 736959767 983280844 910321953 241481355 762395142 310247455 912608354 461739147 28958726 743700387 226723029 528854084 636978038 422206569 670989236 959845174 858049175 578121113 132388950 640773747 504006945 636848369 784049226 102052602 501297792 559007369 817839384 676075065 891711867 33621279 215795834 578517129 833541439 249784942 429350593 763070181 737952949 850964683 234446431 865511776 532394172 169775079 408280964 4750624 977692788 956804709 327756862 838708106 880301226 660231204 933062547 940794673 59680791 438581099 670989236 877358982 815339828 158022817 576541921 482613902 721687350 450689009 792911280 574778338 820435026 773810237 688217871 81323155 869266851 382651123 982211106 796435543 15950352 153185522 687297647 727591002 634995884 698983815 741200431 947270802 608629289 896752569 722293405 727870353 233678032 902769000 213712605 968792843 588062242 860636206 812022882 745935099 84905368 787384470 689977169 519941912 826986354 667058822 762882861 675176966 567867627 916515722 717500661 88200374 65601809 581196425 282348516 472633301 724789432 685927954 670989236 300443768 330384321 999906759 282490695 650785510 665948743 131945693 489881356 210471123 514950483 814333062 123958977 396577660 473161095 558281049 543725552 683989143 925778744 909310357 923167002 541654098 314032392 95475168 263224554 702927561 840796955 504365722 59826837 213677470 45985087 571554577 36202562 230777374 947159894 354985808 87927622 655696114 894740337 768039607 29884652 350211809 526233608 524156380 800979193 625124887 539664591 874507126 706284545 910151778 442579992 794748018 989147037 982737245 757596427 415667962 711062159 261065190 616603023 377894292 226021251 657508851 221843318 625055355 149124958 872826575 296022712 928843018 245919823 932804161 574149871 666891399 861251542 845645239 758843756 838068610 469119418 877201202 517451384 909914900 51068826 993640202 487693697 784225298 293466082 728590517 886247230 169913905 92764360 369614740 597860645 887963115 665687643 55940228 579935342 935595242 975016679 891310187 209388507 784923269 336420497 906333488 983755206 727845250 150975817 612099251 981503530 639843552 751662942 279012024 966291151 415001090 957772215 962371664 116063477 894565894 728325173 123524753 688655428 528728270 706667956 188477782 896964657 756059759 522346673 802821041 411208421 717796447 344671815 979611495 166274964 230060822 977309571 951985901 168760666 781504057 143971347 963932468 673423526 489574422 368751805 377553784 445258572 745148522 64466918 678277453 369331307 692671875 424987482 419185239 856409742 958063192 313558614 405954805 663808766 634594408 393942767 850463233 444821423 715408623 796315879 962763085 685305718 722030424 615995810 805790863 647637741 222452600 885277531 124004826 381292710 863712142 281212384 697555189 832206574 82737089 422773206 87512171 801631822 768151774 33513414 943501736 128614362 413865269 541456204 928023547 695855243 833576176 897237930 812571079 486957889 732602716 201912491 878514614 689032401 601636517 916711014 152236022 741663492 109473860 964066824 849631506 250020782 338419229 956690925 81616239 708003530 869120762 179208126 691696156 536536770 953736388 966081011 492005991 952554078 39235369 788720534 790596481 432634147 666070490 353839876 538697233 316346890 867963259 859756703 533508448 110033367 946396285 765949459 702024654 798100070 720236618 786218838 757616919 239355661 136286608 579756295 937645910 98210841 958363134 846693634 57699125 119112347 900538637 416179401 770353350 742837437 984881839 142013591 608592406 225864399 833660548 511027937 229141744 415974104 861004141 447532144 952318067 245853128 885019672 272402966 320302827 660622299 27598706 792929689 8467274 680195968 50847902 25613058 761214221 573174769 655796174 613297015 167744069 200977990 726626679 367299316 507505727 970439845 602585018 695228727 825223194 635841762 123145850 945018185 930269205 670989236 546965311 178953300 938673020 975212261 759339127 842670319 237117779 825180529 542595422 955565955 129444148 393142811 315858520 201282331 240879393 19085470 917155712 907546854 198109474 613501157 964031671 264381989 904407759 381314122 824736890 152724594 748566857 310374715 806149261 776791756 575380839 701544340 115433636 984266657 960908894 215722809 979117355 234440759 843230588 949686335 295171475 324162687 670989236 439771326 872759827 898258316 910555233 879892387 683495170 299321150 400553810 499135204 355569277 272731743 670989236 910321605 299387476 467059927 244599967 336134624 682820605 422375360 973155970 731502330 937855700 952368627 702705006 631634470 387044733 100913091 670989236 889776948 88920044 788059711 539361642 322126211 370859644 964945535 481357981 798847034 520162165 646041041 869309932 372702488 681505668 880399008 646331861 794782792 102124647 825032236 671905026 170007416 500816360 98646916 446246661 608931495 775075792 705174192 810701536 578397341 807730661 65742150 84618541 889894084 817604170 349914228 945579148 33564949 893859696 401699796 847328610 889914788 892322550 700675205 917073750 159580024 527798736 530937015 189900483 687099419 901088001 931728284 334871117 710293021 727835197 471963072 689188869 679827255 191185808 770719514 749177040 785426039 985600744 973412791 670989236 679298237 781263770 922957292 92133706 921526665 819949646 861794704 150309617 308086948 850532665 989449175 849515762 120955539 420968788 824376356 939165647 227699564 617507828 788647855 94878650 881451542 670989236 256723041 40645084 29858820 238105018 128005076 132831382 310994451 262300297 779948442 541849579 274607772 742098765 593585414 934942559 100477636 903277557 645213990 694728816 670989236 676605764 744456046 335960816 958819446 490567212 996639728 696605531 970923025 646019038 707800972 410262885 897843858 870210987 326040893 954289307 677929715 535949041 703926564 899896861 83119973 406676855 978973069 73553174 702813628 806599316 569023595 948398394 367186969 378597577 766643969 862033289 645986579 957006689 947097802 165506800 908431645 943957065 595063131 173667101 667868603 947471240 134787764 155265412 94286328 177137769 706508667 852848847 455770378 610018141 842468251 688000794 670989236 670989236 899629442 525318524 672180929 748579277 416417795 21115738 779841684 857309985 973926996 73592017 277762108 896466706 818498503 152206039 767640344 69172890 222097809 702105968 573824186 559462176 873795694 106995245 801538611 448540857 502429314 696006990 624018459 79154036 537620459 869841994 14261839 870691953 51875518 714339630 925365693 796241234 928090416 681660082 867366307 118341721 670989236 725765156 984364271 220191872 931399233 578242505 625097274 990066997 65607169 353350571 258626219 229405647 165588234 977775780 437395679 813247609 619931970 615189910 466473934 234122800 917702356 705445047 807560316 732814793 158430986 926123931 254918803 371422914 705487216 529625436 743203117 861160707 370326199 539484358 178425001 751435538 835749399 754381018 693163467 516625697 779433500 283241991 789290749 780093662 746185868 150195343 751245625 318773747 153309101 431941946 788560325 868616190 964538655 770683342 728721347 738846899 322431176 885087925 510569367 865706186 289464108 466020002 200771522 350643868 98510774 427262796 498170794 176693952 341196348 832724175 827768354 780540078 266136356 894737208 640122752 782936515 596797485 908192389 769476078 810132400 475988765 514664674 250903107 218555584 258619177 911399271 961156400 58098316 620974047 371254056 284979519 182219895 690598884 988916644 941161622 637811532 84068403 36294343 994954685 682443319 178314594 580182857 590489989 319924797 391288774 475090746 342992598 934808616 728784631 800455043 801202363 349924756 702131450 419998182 942541283 968797547 857061941 446211487 644861125 190859044 113007777 247425538 981142895 993233501 319447242 382364422 211521091 769787551 797461503 764358798 677656711 238161975 885894600 535807816 805917389 840466506 997283436 597235634 863871077 385818074 581550626 68998477 729634479 746902237 135140508 719899835 125082351 974660812 761028699 299292661 803118333 666480659 223111927 381229050 486707819 840425527 660891021 519257795 329436559 954083109 805086606 235226794 914081597 152204974 973492182 750271114 87843377 423458153 433577215 581372061 723423167 167281414 809857464 718153658 791425461 740263539 201411958 668310514 998047217 692222482 469373124 150596900 173580085 498843384 973657577 512920078 229920011 459423196 170049851 960446481 826807702 658457447 410263918 261408994 93853499 177268987 571942612 947281397 233845705 963036137 983802387 435209423 809505214 33632148 960491397 670989236 337181933 349264593 715725860 683870477 721322419 805872261 612697851 89489261 147519441 531847063 299639060 673068323 345245464 713809619 397636700 967128821 982082551 696360944 801956036 890350516 717170475 356653318 514385833 23612640 128993161 870937885 798286589 814440679 796688882 373594012 303902949 21224060 590682669 45965437 874442948 894025046 627250036 456597517 627527888 928941041 853029343 756305418 837454158 32904415 753535077 209459021 567458599 695254594 674332687 818194892 430230538 716388813 695955538 342835636 879150111 687608434 914786710 293726090 511539450 830572075 130542026 865320745 547293174 371126180 893344577 540854294 24640819 946355411 373756109 144870940 990843394 230905138 808547853 983368555 760342429 675864836 655112599 485213050 12896310 252337473 42435270 237464882 60586124 771012007 821502754 338741613 849720124 970825765 750334005 56388309 373232587 783151579 186179617 787027701 972333846 815733666 889205563 863641157 644435956 770389527 49106515 498835978 758842759 157723846 289684569 829519842 239726136 805928385 912343926 543713917 499147201 774426580 114974103 908797928 37827030 52670822 644339300 690653240 48649592 953947527 53568564 838183523 600810841 629297598 521669157 509312594 532465760 216129397 904458409 830705807 510987871 436766684 365884052 769139035 928744409 642831275 646720415 971077645 592821073 963486131 62447538 308729956 779709286 670989236 516221139 713182436 512297293 101584392 670989236 799091415 481902380 453539059 594614787 320855158 659650337 841904823 833412383 258010060 750655612 301798175 827758641 957719118 677184012 850220284 247532357 604544982 835539961 768626214 927971961 778127265 775285224 397797823 518262932 521736851 243079866 734414413 186288154 990365730 840081726 621121283 732105046 425899713 284780379 753334286 773604984 812268219 835559516 21300990 430618229 822347843 743771462 404158043 803395299 119548465 491634085 356917622 627117390 664599040 25516537 480095597 796345860 802600061 541464510 998551177 737789471 744926529 304759315 488740100 165588375 499570291 929054384 670989236 927543420 475967783 72795161 939753128 988386244 778366496 927879826 729660754 800264077 304355121 787143983 142676970 369697574 895869828 776616240 733826745 68171847 250067210 594345891 943123348 827719433 723912533 243831743 474689708 7631289 338293060 306804056 537704668 293777182 783516284 857196185 725109263 683345483 223543225 475616404 660455049 277166792 681798718 875842307 892136258 176276110 764291744 710173997 304654129 790684717 902844367 250409921 466676291 748279778 471459417 850314439 978742846 806889126 768009332 846151039 758532590 708769072 435294114 101830367 678954451 799690326 123953266 331287383 946654627 882528878 583782317 631241647 988642952 530957849 638468899 825336808 114892890 513082769 718466448 713173200 963781560 522541114 22571 858010272 670989236 635450310 620430298 789674763 727881651 481577213 776984405 320605744 250745533 705706850 218822417 82563963 55828906 581185345 564448073 96997289 839449718 964207103 700147423 593815515 613263008 289366134 153194378 421412253 846279254 772137706 621999490 718836349 240736701 611151780 571518770 690474897 980812464 237327612 856465085 872975974 279278091 566448197 922756281 81002209 271227049 846098544 906244952 351965314 180637021 759716736 4127795 825075058 730856492 95785156 892484635 855902501 683369798 426976870 933480517 776096540 673984492 993500766 866452775 144933220 71271849 506433761 565644105 28038652 833648153 660714933 165577680 974233653 165661889 847720501 783108620 874111010 404120175 44648613 881450470 726260812 377010008 241668672 997013063 457435607 704237071 362759395 713256712 866687766 909054411 960581908 691703888 465417577 63171362 775452698 363414456 776913805 205068974 937838767 344658832 257341418 945014537 824963100 476342540 779923584 327060996 871559212 639476231 676704793 712497972 955322832 432383099 558134406 730521157 547843358 943237602 116573838 739866648 671445051 744045522 559707453 189662735 208086412 801503850 397713788 733572052 375632763 203649388 748440930 867551756 300661924 943354232 528833670 371198301 23030153 620148113 998003759 799621346 112908830 895354216 62028282 793133906 10520259 177139321 955184344 937098105 956499829 525998941 715152232 553992255 832934627 387235159 454591886 780240850 670955578 507785932 819135130 588539958 126091325 952566854 670989236 478973156 765360849 915072386 978125965 622573617 598246710 610922256 607457052 694584847 478866335 311525509 97876309 600224019 463668346 449198822 631531806 437046768 46147081 807480787 175201468 810344112 701268435 748052225 896540136 776518515 404794354 889906095 687253865 883248971 739608558 282120331 76865331 201230006 240311641 969707990 612790658 903265621 605253900 597237716 759420409 333058977 292603056 120041387 384404547 70420252 837424643 912868386 56125331 672310336 361071583 692005350 191180865 111659606 319208177 747197780 839939441 526074868 825017768 758794134 981639047 841398526 691400247 834486704 922294759 345627483 955105209 989031619 821516695 714785822 822154040 883395647 804844255 80831064 751086988 678560047 710659116 284772769 819681790 667834590 956578614 760445720 676547594 920957653 42850830 724641039 888506842 227955247 500882701 921310106 534598613 366725846 129249239 648031095 193757266 506674423 729046913 336964852 247616676 694702940 549511682 163587703 637177120 67124644 155686386 328304364 211406262 297850754 170489237 110533465 846938270 318273231 965001413 12916212 975253748 766080489 566760778 350712769 736846847 982374338 813007593 230805210 983073433 553237737 667348799 437293323 850770685 899463087 907719403 949831057 738510170 261275063 909073127 129435663 584551879 512036112 994515546 955799722 960075652 945897419 894359413 980833715 498759439 894536077 643040151 361626522 888289744 883444232 716888148 90329984 633656383 677644243 673349751 821610596 955773110 950306525 830455473 70912616 796276337 830767438 603764243 658030975 153937723 881240112 192272696 744321190 867723303 384203431 458637822 976501677 404167516 966891389 284389447 715020715 430494446 409414531 781073615 658278429 336745157 942374915 983643448 436671646 321252951 290059133 507833054 535461632 902280913 593485370 215474100 815089702 805634690 569935358 132509725 844247535 794047105 918595613 796019418 844358549 449524344 60138515 589459829 714557464 253143282 484872677 963264103 540353774 736224603 291014762 370322372 758728257 546511797 875386353 716493132 43118494 337094019 271016055 997293155 813855310 751825189 696054626 749909647 915894803 57486248 245934963 50581770 937084027 802624730 279354600 584937510 666383304 347668816 671619095 3026021 340878836 43812711 494964558 126115283 760747869 600028631 756908397 759407434 452857143 626754657 6373564 913072683 56360647 659414757 446829031 399217902 960602287 376498347 318627291 903203273 951382787 829998407 726278699 869427830 945771175 827831290 705112993 679449721 230829751 970401687 838249215 852892138 805641771 774763224 867728379 814538781 582992279 726087291 727476814 812271734 961181714 882533183 953727989 207658106 238050572 856890069 739113170 627521529 959681144 691922767 899767232 92922134 723059818 736362974 253909516 66207430 323689599 578895771 214183915 587849269 257125940 222332736 994434229 837236862 463121166 795149683 726180564 595694118 381481451 557914775 7380759 67272977 900373529 108245668 822378661 670989236 696948081 192829115 977963282 252768198 667139330 782662835 789122295 267552245 565034328 578422725 195663702 820090760 384967012 252483436 878402360 881029643 803881158 915073707 964193261 768692689 713929774 198904957 987017263 189868583 286328806 674963862 452840462 390588573 773780171 255220533 802493520 464578109 911348220 983004258 617508116 680359520 138986050 408074094 505464522 605372417 775198510 867115558 804695538 520220272 498927945 967364524 41147841 687940341 792504874 534981827 796041414 865127440 688148763 756645557 269912734 465511817 277215304 732125101 86598500 821347431 193723236 728554388 788691218 763230751 109160225 258157960 857374467 47624973 746369749 425971538 665284999 899030843 392901322 21302168 72796092 20304634 221331056 482082372 929674816 842507647 531397291 252513514 946327100 359035400 765609553 749177155 896142117 894466725 813002549 863160924 876970552 830278629 590742416 823771457 894230072 96670048 870237847 544558088 834516928 680993248 430361305 573703290 835249623 818315922 905993421 769447528 25844417 223074511 433132877 52123495 702740397 927451659 453775758 901441148 701019307 81569403 605917441 973054147 775678554 774390516 831188558 419459262 146691214 712556964 455781274 670989236 890686688 976874668 893961719 422197656 391021792 374005738 167474734 215459854 171873021 815973318 286930159 670989236 424303132 31284990 841857251 779126697 964528900 841043376 947427265 790000508 933259820 813542018 745620519 361077090 670989236 670989236 181946988 969986981 537468927 619284020 316274204 884553494 27718300 719496808 994564811 372628371 812071561 519642769 283532162 461186357 847145998 395215921 953319077 511734365 236899896 527498532 88806025 624471157 839312381 992964536 383175834 167255352 694609550 180524193 268720007 978594612 877539845 121006958 983455266 411972276 674681269 974780750 892946136 97618789 855591846 947336075 440089679 987150303 938490229 954199090 913858319 300313229 428791000 377259686 64384016 751735171 924000144 907998418 591791176 399473645 251964138 457735282 842516331 847684043 632760965 789531192 659098116 911618337 999927846 383268280 893811015 655615491 892313711 898659376 187646090 680409158 688606325 987996992 145619179 798901663 179016727 214318231 824145408 753294054 909630754 478889027 123113846 288407938 670989236 883658960 773595303 766641293 514184906 863035988 848582340 453818853 402711581 695468762 781647519 724908340 233358091 685981092 590691311 825857673 676497106 781540217 216715846 842185138 470597499 457439036 996449103 944575718 214256599 382698306 992663672 675382748 912777911 880399893 972421892 855561056 527929268 709055788 787969793 764495732 320983826 367094427 335203439 738620282 928970873 821914828 392811072 614891053 935017698 267350028 930104101 956723216 214902285 358146127 881092703 888937457 422911381 15926889 670989236 652991747 624885493 909115372 408614665 457175063 768553912 723224872 752096320 721590129 230915702 823173504 826564454 935222331 56798363 325863096 824417115 820617989 907297070 809387559 755541771 999839026 349856290 30761689 695661225 670989236 624080613 672264891 471942235 965960411 904693127 517710096 586420881 986102510 584112679 184278121 745177362 841217632 890924265 855071808 756184285 114738824 601112641 375106271 794284494 575920357 310455854 793055226 842477894 847948574 175079772 806309080 111353005 576608531 922646204 66822114 193384856 208949865 805306763 556647481 530295461 434574596 101631844 866486117 17622610 677729332 683578622 240618547 278370510 243491261 545785117 307596039 914789868 197631237 384609480 904767732 918536373 533427409 890448289 935208944 275417938 839644330 952929989 72379909 416860655 440751128 986104696 585976709 674761680 953643692 687924537 162530839 991665944 670989236 75668617 939680838 982889407 732522715 753727416 211393964 871991705 781697604 867788843 748316078 292446697 822734641 37443904 730931789 171993927 770757249 335594678 292069377 17558249 817790405 926597456 686762363 83938090 247593944 881674975 689946691 687690544 86544255 982650328 575111396 710054354 734709933 125999997 993328025 912935279 861075376 826594232 655790529 947439978 319289029 757686303 737482815 118670765 858520819 939357569 785213403 103586493 579155346 432853034 717471809 536750629 318073057 768240019 964933398 308943826 190515184 192210900 830925947 763772844 731773481 733826159 290514233 43606420 981794234 303034540 404480646 608791474 108724240 785929503 410235102 410222374 562436115 859574137 23266983 174428875 439397287 427968121 976578420 525642780 617668423 872744555 361482408 965414100 723478669 397250156 326359527 530721129 896525873 295350946 272957991 673020678 95661073 479064731 417433114 667685904 396689637 844258165 254496742 903406440 847545977 533328021 296679673 877829456 987117801 188243492 351041808 410345653 859128362 762785153 540831852 292252864 595027102 865936392 434469146 838894552 836930024 941615842 882828811 145528126 817606129 933960660 713108029 581721089 15971846 670989236 250083305 737274000 725136036 732189204 685586735 41304457 914036298 513330947 731436333 866354714 389478849 408629027 859569078 787155774 936059935 339969917 824070885 338197162 64727887 185342091 772287899 130521517 966238594 705339446 139850363 749342458 385401293 797356513 211851317 563794629 816749927 118282965 40814014 745297117 943233538 715439314 925485256 749576590 727206478 764630083 623104709 928178252 521240014 666204362 463541366 139658480 958723619 863958676 958879365 368512465 684736751 790422974 876793912 917849215 86593154 34489902 795308896 620906729 914764302 579537122 387788595 846277210 884190075 690149712 963449775 152086237 554852693 942993911 817834750 86329438 957648305 833431715 333644820 600402968 115763511 770849663 434400528 485297519 647287279 91048195 138959906 191231196 819932077 526490649 39213028 654804737 115556858 817311944 711785515 56600324 271395782 848824197 968220915 499162366 810447106 265688249 772857700 66545511 938200266 550989444 895595930 809163523 481336218 623746693 845676177 589595956 498834643 642158111 764477674 43395171 60140951 679439613 701077241 694191090 150561002 953272506 574059506 975719234 817510838 606744179 664126036 869211614 171611876 978662338 385772948 810917124 773438426 127233619 922620366 745178977 676879325 739809607 317586517 245285502 764396239 872772628 719456006 414126729 470693867 450201526 986236210 624826045 137928271 887804429 707287719 945709617 242482918 939532156 614504771 145382130 589969568 369329456 877235086 881994004 796836885 471821266 704497383 992336082 860723617 508004406 993515244 555588133 494171527 997653570 586312829 838319191 419347417 984982714 54396913 976716237 460422609 931359345 344204682 307222767 106768370 657629204 800026279 565205068 704629334 557059342 321928392 629229569 286174286 548073718 801363307 903011782 93838834 826154279 239186463 782585971 670989236 915840816 874851616 650883701 121733346 869048213 855797522 800666338 562467888 823696972 280231955 57471727 768754196 43851106 171810123 630742345 769898164 767752863 480378471 977970495 864735160 742210392 987474670 182080087 580166529 12219301 901990750 266390516 17461405 825592033 888131004 753848150 840438717 897687764 442453309 677679880 571703721 842313616 787942086 990465338 73465859 852042013 673045328 800008698 840913420 793590935 907460999 786937420 967961625 814513982 746174200 756160608 353888088 694136701 431154432 789997971 718951531 110611999 286870512 120877343 491122217 783134213 406347789 380111091 795168889 319908365 320008100 861889398 549085131 481792095 307149092 930389559 133541032 632935604 409752128 534592346 971732388 305735070 881768578 933730515 29819 653458400 535644992 300388904 134995205 724004381 578521317 699998164 922752438 287493014 158771166 899947002 846706051 904097464 931225706 482135263 609444983 847596502 305618852 664830637 908888362 689100834 239700394 223923732 512943043 800333002 309652023 288766985 798011150 907102112 228129788 68756896 864466622 277598645 137317699 925386595 827206651 975579465 163336751 930210359 437362825 738527838 580990999 893574873 761115952 734865416 306409320 719450317 869023003 763228667 160971587 241465517 493332702 844426551 428945989 800140740 491130053 624944008 973721703 601176946 854157755 706994407 604108275 384757331 615315424 214367715 31504474 943724627 311669466 555127115 549380782 921652256 750604965 147430050 997751205 44504004 713707001 611973813 771747577 873994906 382669940 438030721 821799082 964605951 730472630 112303517 431330442 908459043 670989236 300698649 887194886 880289219 224457132 953002109 367278593 622250772 934156145 748892190 244996229 74985477 783446899 914420862 791745640 997733126 709800610 890131276 670989236 818046279 850582215 890310185 577600067 966670078 917647464 686865302 173774040 957124324 850539759 559143049 861772175 293033090 624694056 901067845 931075139 958952935 451216566 524807911 714375287 535781278 921231787 361797169 673546131 121071575 726684941 65063593 211467541 932109916 670989236 216324059 907278673 871171233 852030094 475433372 594557646 934390633 68834753 658799603 202240300 70150023 869848599 710276539 462705934 904703899 784767122 407832585 759839905 830431214 670989236 798862575 3098986 830179960 704530278 927601423 909878753 590896997 680473367 948855719 553738871 784962046 264664110 150540527 811562829 167818001 215233106 683628639 199966211 721340343 49499132 704317814 594674088 536157266 710738302 768082500 670989236 520731839 798299083 57813654 943429887 927413036 698297432 808989745 938412113 856223990 744300131 345695349 477190183 879912788 459254597 309963582 908469114 226816989 197073126 42591123 280357091 844105255 776658814 316706230 931290636 921870119 823718391 262091922 517962023 634097318 152416124 879985337 937328390 462475694 281695544 227351278 751881012 569521379 360836582 786070249 814018217 933242245 986266357 890918138 307362642 985824089 809483426 936914668 166785961 608531815 108367672 222174592 708718584 324772559 860998247 882577828 940785529 955609610 776317159 130939983 622209804 792987485 865188952 906201381 787432740 120691633 388560522 738121581 569868744 390228021 961444924 445630560 313682097 628542425 275997822 230572703 978144543 848043058 965617557 613856228 838196171 418859905 859110019 158387889 850715080 866992538 857716720 596242437 835805742 775048958 911552119 122038258 172208046 6110533 469099083 352554873 237309839 107148599 402374067 136899097 951902560 670767445 667344931 115641164 440474332 670989236 847403781 778558674 901413222 875419673 352317933 968088745 236778728 53210712 486354660 986253067 889500110 958950412 698872425 287960648 910888110 641470983 113986111 728738589 689972695 767589229 968052131 990641704 788128160 35571124 957173381 420654969 80006677 52881132 540882639 785640170 955012001 995968171 521347370 883492384 153450714 997944478 267584558 768414799 749603091 708161503 811765779 475961392 799727078 384580143 510705128 689544899 87404243 457650606 809989170 19757945 958426406 234343684 883327491 464707707 380554632 793188618 895921166 112002451 451421556 195818549 224495280 919833513 760829880 707323432 412290461 73349077 488786306 788995001 22750558 44200927 161592312 839466686 168783649 999742122 522214117 924563949 438022093 758050597 758816539 17437003 296852682 802824512 241243434 600573916 900087475 713184112 541213838 641327779 112290363 86642648 717768434 666437173 216625529 758063666 591080616 448161656 900817674 724325047 713452213 816942296 870641859 388254285 936594051 218255816 323023199 849943202 703205737 960281937 938808932 839790104 731404571 700109793 769474193 956737027 503493217 419935467 109013615 482015337 348257687 766923231 599909905 396554429 276349468 175184180 827085929 708278713 387272620 278646963 609339335 34425783 538196309 375447752 853810460 355553810 878846165 761801604 952138079 755552411 185016600 50421358 690706029 776653552 343127117 517124957 307566309 117055226 21906673 535466387 79137847 432431413 298341128 811199237 818852133 820475639 719463271 873774522 305970795 22634731 755427168 972744903 849283596 797933618 789777117 729150934 908807663 302137244 688614863 149660615 875239948 179965710 898227017 103431520 991149925 301076195 751616168 381190910 693956536 287378 644521211 670989236 766153520 711392063 804614285 971305551 322908425 864585246 284864758 842771854 901322144 346698387 57094722 101244296 771434497 864622730 26318296 901912324 656940766 756045291 989243951 733481044 989080208 606586666 899430931 965738502 907235822 723734222 467124390 275661958 829779718 774057460 742650673 988048588 602002202 918550352 851462410 818365772 998730695 803371718 290875953 694009426 954570004 373107217 139000891 753270414 854228175 157049194 502778240 936250827 162472026 722170085 157495618 216812210 895642875 70813042 448410451 997018785 765473337 912281819 232900106 704918679 693149211 915050148 742811217 424636050 79519923 165627568 990228975 127376683 510586555 956716220 980990606 999931214 81860458 547582645 624607010 954389809 795388316 477336736 3806343 170140424 759093999 80826989 712378206 550727533 503792547 408511559 693785978 310312058 893069044 49549264 740398489 684550261 921690710 535640374 382137288 978711286 963345811 826137914 174217061 524316106 741003353 872911660 260900328 173277372 711073525 791088340 921254730 725185956 304536533 721012547 885046028 639483013 888473426 940918684 831561572 849712918 90809935 696681639 762271539 481108044 703503335 470677222 960212851 716223665 52583902 170495034 738738069 234836944 766246759 811467801 774915977 193242743 958038783 946014256 917738717 782937974 709581892 684092463 632182581 904949101 717351904 736702883 991855772 686949513 829670371 883656042 74109059 474564295 868301591 677042984 54991892 200989844 840128117 706150828 544100986 337737345 718339462 570822913 236871410 775165198 102537497 854858822 959959322 246190612 432385653 766722220 644525301 737952708 143596249 912849227 476601033 912565760 920008750 984290853 746821048 748107899 271697556 590649881 806980298 670989236 465256322 879428412 432162085 966375065 288113872 210983604 996889455 746537557 792588056 799637408 599083165 912650807 699369809 158060014 396340458 794702042 823529751 531133746 145002948 903136516 786856752 842695893 182755300 139331465 269436329 875270385 910107709 558663188 606741849 504056136 380950572 492651673 244173502 121366188 724483319 16099635 675987124 830123664 126079323 852390885 949510258 706375071 44954475 773491677 729342459 949155554 436540674 39022371 745551351 864582754 470256817 330634443 170931369 72792073 857856028 670989236 810378335 971249294 217881625 526706928 174963464 508846000 698348199 802043493 352205149 534373597 680035291 850895872 375831647 850299284 39270681 306904603 5111768 695255890 284273584 609807687 360423210 675604209 707694553 333728640 925702214 32040147 975822598 995336082 30586610 419762647 322549566 256988785 33736548 832291773 171881777 22338410 451933190 493410358 844528813 853883425 777682575 826464038 679647001 431943706 871096810 181198927 647023688 899490740 921345601 377395113 171252157 923898475 320353650 311937498 16146688 872160110 768607006 45786526 87440082 430727867 568225152 678863720 678655661 712015939 659894363 2416374 927511255 181667008 721932493 502656727 833895595 876408660 235071498 407869250 831962627 691975666 970229387 255477921 963766165 435197185 81343967 974142035 993578901 261700917 697728289 333507531 694699012 732474784 522771889 926288111 330913705 753264362 353494824 847604578 877837500 161211276 38994868 947599243 375111541 680163911 933282842 725682082 70242286 803202604 552004117 746862790 247124502 754939413 101929512 217821021 833560269 862014427 991548557 666232593 980647819 893814560 253548926 357683061 770995942 993829146 661028769 81042058 725085413 157299487 691236581 676326030 252249541 584804637 29401745 982086698 844495304 960610727 366818127 949346271 440623154 995173525 913463818 909357820 772217259 760028309 591519742 32951229 867851219 24316535 402814252 553466790 273021761 720961023 735626233 811278584 449751674 193051000 749432870 633936870 181964616 902424967 218149555 813023644 690076605 373685666 845665224 292160832 617632923 465741997 390215060 929365317 252959416 247466223 84456104 714390904 839239808 86085379 936704239 836604558 960683047 562720791 775784128 336008675 602102920 803797306 202157178 993298115 852423857 282588932 765793499 825474009 698855487 560434878 131710605 451658950 518129574 640407459 441767354 748805177 738777033 929351183 535706544 909073732 398433062 636696606 148561628 117165377 103857914 680341484 987170904 72057497 746800255 339385974 373267098 983613455 656693033 951346970 356693429 172634420 87001804 528492216 817653059 863996552 772718911 890353970 52170730 968965196 997375941 512224336 262130043 122590253 948500731 873444586 944245702 52951265 962911302 86124160 375587945 827620567 202524130 940508340 312032717 445649388 800198092 355245570 877592762 146478752 765541746 940658439 143658229 91225327 353057977 627993818 252387208 215749112 703182801 24491296 969828125 490698069 130035879 815870424 876674378 661205843 186684067 17970382 314102728 917703984 974678972 494754076 234200283 984509748 811455781 991409826 984215790 235066712 779879306 211447902 145511410 938343126 451947408 574403866 810397156 400639085 679007803 270252849 954832628 365629279 165878057 736187748 968132767 927428277 947602416 269447196 959875792 7856462 908354949 717888591 705711697 949940214 539816386 841961916 769234002 817406442 48394251 988974175 176263323 260185287 285544060 677459299 987151369 793492900 680960659 364329345 753329257 886171313 856767437 778433223 749852935 930627538 696510254 149483161 25815633 695064812 849664036 272319949 937324216 548733365 638662713 963417532 532052336 866622779 54273786 723190405 981215951 315585317 494006881 146216887 45254996 973463709 857647673 649349043 569358150 780827612 377789555 841462742 930233542 768008781 132304224 892806750 979082404 798077263 699116956 79985124 783192724 254241852 670989236 455763445 131644506 611373879 876218593 538781202 787299327 275503187 223412202 871144517 673186823 932203484 512419338 824303629 528941238 423637824 731004679 988775902 930666112 379070321 807511110 562837253 943611302 345629227 894653033 844029245 509394603 11990464 231831051 245201759 655278290 684433199 268488989 937346406 690020385 749344912 755621894 146216453 464452906 871411757 419164427 702364733 227929892 717387314 320815963 927398031 517658116 521232786 966614227 251421490 733713832 993440213 473114098 762177112 128397153 6641567 580408251 174592643 494289758 853144653 738626236 807209781 709235354 505221107 940560377 878388118 396546682 760999416 837235508 587358747 388151648 764465843 782223981 949129445 528928759 58156365 594368149 130345068 216066074 267015664 937579147 303729923 34593215 705824199 206127849 188327689 59321702 105232577 940645551 109901975 812694250 866147931 829550716 577911519 728086720 218417431 344835677 46081815 443066503 986567880 758746894 432600648 274877180 844936727 996059292 181675934 623337367 590070974 279122449 338130302 962832461 189829032 748409108 974468250 253086262 824910959 228670193 899601061 789750136 840713778 105795285 722548429 670989236 985754021 513177163 934422799 903964060 259632217 934435135 75654001 684682321 690904848 819693600 462776347 826614585 338051421 219766684 760240506 690944562 248513212 792968523 758393515 979983845 245474517 29547368 40668044 865250584 246742077 828415916 164554122 916717138 832662148 678794261 571247172 888006564 375025463 990535811 868298642 473995768 593828740 337273859 237997013 931417313 472633107 292402437 993687317 509418712 933998356 818919578 996458476 987747134 378491974 661364832 816702105 415283248 917372623 811870098 833493010 842505336 174780716 824905446 721111065 754486950 695820935 810111993 683017197 798314819 590827996 737713839 826241548 55223061 943825 873639798 489446706 927891822 77565399 530502158 624111466 730975155 931954092 800289031 538430688 904326518 841501368 910160321 771141832 874502973 123890527 601921006 834506621 911577772 794786546 142693860 543437576 266411630 672088189 392957239 450894244 869489221 670989236 492668775 756432721 5219258 921956931 84671032 760996608 637924019 831271095 351594891 399110072 57200443 134859515 65638041 652318268 77979937 672725037 249195632 679377188 404211019 76455041 353336543 737364216 998397080 758438470 748918240 660217701 63424329 919093129 743468677 163820178 442197401 563776676 568561472 273874596 784361118 899697278 233800287 826895222 340268593 534787710 910986951 918883950 738851749 922876471 639057459 832175881 994073920 300668158 490078859 616331512 99831751 613745780 7061440 923121097 779539130 846078043 443054489 297422370 993974071 469267856 239826101 958382906 880741656 259864699 776813681 895443744 867829728 892461171 548282270 971094446 214451999 632703710 62316601 838419836 340371221 188008579 793202085 68946244 391723183 399936236 193081838 820316946 379561484 92775576 548151803 999075967 535860597 39002893 381091038 678702909 54740231 263332783 836425709 905934340 11199697 899375276 828990466 893307297 689218822 549498974 415033867 760825069 926931330 793278478 980523025 710486801 886181372 186481918 807733517 237876952 902767859 370732301 219791326 457199185 73487996 752719803 272885085 621563142 688880227 349594547 811583663 73446615 334147998 262592538 681256055 767515276 223982811 798187151 655799937 316541710 365648337 934846837 885001642 903465292 989136355 749906952 32300161 607455914 826942624 796640532 728382335 99476807 833439573 329436169 527009182 658831150 750416359 200623364 725206427 956402056 774860936 37395179 615511113 410350729 138449250 804177904 268353029 777681785 36148229 824329487 286122138 689867631 590634951 139779976 814371962 715323679 500926964 614908544 283408609 442028937 886659221 739808111 851084950 426365869 990168014 694601969 216215491 104281145 873671634 611275208 904615358 316146164 312641760 747989364 735404427 338706258 102575240 393055326 997838177 279800724 707294229 907775534 1281477 793071009 576866575 996914392 389166120 457061916 35462032 907111822 477140719 583871654 784350361 175798681 805979893 810239555 332767589 218336575 82343115 230004798 524586523 804159104 53171217 432539247 326098726 761482857 490413536 234228726 63850823 737981963 316644804 18688233 879106536 762908024 684907528 842350169 254919684 998686648 995637890 160095613 713567360 726397020 624035673 127430339 342431610 594607286 686539118 276116447 413637216 969678039 674667107 577272377 784577926 284692329 557883736 295510026 464981662 490615737 358016393 807583777 154013091 694596035 954777327 584770806 357633695 276185324 697134598 830144218 39128596 635032712 831443468 161929478 627194584 324538740 70885060 686460249 594800695 637314208 53097027 430482592 796076857 808573296 105505121 642585431 604324691 942338892 239694000 465476478 589852528 736604585 851426813 690159637 958245491 620095359 240854335 364119966 365025466 949966374 861736144 582516730 619981522 262999198 306368803 276142976 798395536 892319998 925304163 172094003 153758366 677029421 902747524 333650454 865196239 747627661 457558336 534658951 980849054 559585898 184073575 754306992 824922389 832765769 690105347 862125107 729180705 830440363 939966300 145454487 809479629 308095684 618767539 353021300 595604159 759732670 762612121 830969042 14151182 725199838 670989236 162317974 832294771 961075705 607774856 754536142 856138223 553440141 707427600 968245001 527000038 971053094 207952384 449981875 21171626 89506484 851604585 756306821 924222827 438789329 956502655 909474225 296230023 777784152 48808067 877554344 679762056 746343105 132887049 834907301 980972829 438006763 747241379 42854336 382609770 774967196 482376519 356191317 642487415 798402365 665155084 939571244 982981102 962221825 830954318 576225630 861962882 129676928 707506734 477647115 806463172 539099179 602515314 173796105 309281008 12554871 413282187 522495225 322085361 290256026 744659911 141186175 143483830 294184277 545596012 936354417 839379946 402921196 335973780 459879745 905058556 385264254 982617968 818202988 673669308 157125065 903640237 840767697 33046719 830947087 767351761 741665817 323375752 911368625 933353656 682501181 417117369 152646530 849048133 739849017 149960842 822736276 810748260 636147361 314365118 304274115 790011738 983437853 721183079 75133563 330094577 446285518 384917709 256553221 721244139 633425345 238265145 817500847 508398365 95616813 885616469 122187556 939275149 670989236 925620824 944332263 29442300 512923805 396776033 709171320 194290588 912353326 814159426 556000232 128345830 682331831 568919361 208975389 663297241 295734421 986994473 694017690 218302531 954677526 745276395 549763972 808088560 715226498 583059593 773075632 597231544 678882976 962269952 955131675 987622541 607594679 968017371 826187178 900452530 644946862 444480672 137790599 601159646 139156609 659910219 714315647 825627409 851179207 671713549 919841869 664886295 58102900 746051888 798995810 912106450 537878549 395881774 396469045 595255904 703045539 704552695 675161130 939033052 330162924 780033773 39797126 145925344 974549761 733231533 745534453 665597374 786694407 152770740 540259901 180336285 539707509 869313797 287285089 341129455 851727403 945824204 698295032 830751539 95285225 205083321 926993657 272396733 596106039 957164147 898952888 759780293 537093842 464371597 793504623 686730259 899834654 187659200 743287929 686836987 925902787 284691989 901132988 652042842 184708834 844455446 858051752 120195849 503121904 179635593 139476302 786970265 143977735 969071298 16254401 694876179 833841204 353692179 604642879 440399728 65422130 926801395 545069510 190477555 89692582 961012300 389477500 360452057 937183549 330630261 309674160 894985354 773705068 515302161 737198965 280357146 880500398 873756824 221786718 769270691 142874035 343841406 205069726 639718619 933966429 336392577 646035198 700133922 298119960 659638415 328591510 105824076 544899530 802300036 295020135 31405811 987560498 706892273 103153536 273236173 940568891 461195105 400696456 181517151 682121244 569073992 83147162 752948878 151314192 996607580 660140284 513286313 221411159 964334609 71153141 710595657 196689987 893906469 259317950 689256976 806247216 78125405 440604960 733067427 42590001 121856176 170910470 893211762 127523432 817576318 796559522 428467121 375163627 31602509 259561423 288186766 774132884 539701769 428516201 740644283 109766102 544338579 79546930 84693191 609647401 965071443 807607168 217091142 239510625 904526346 231795369 631797598 752252487 687599503 982043583 527972064 757073111 86501192 660907468 903242292 747440971 763366620 123129712 919073557 984508023 820461783 464388207 662880213 152239488 754739111 474561774 858864023 594940935 585647177 52519121 871213513 127272068 906175718 751539625 994532236 704957745 304205401 367104626 711207305 43803575 787262575 627958596 259663480 631283621 978370816 814681286 229991944 373611950 196279833 516566154 450139862 529045542 344624825 348978854 944890289 826036319 879790195 722342734 874298242 323217716 118911530 838961855 699573845 132274465 740000710 788630494 919719319 138712939 22597391 794312534 201773887 757154515 477375943 241135782 240533273 178108069 796054244 949534848 424482371 857325811 541094092 481145701 703740900 238553302 515770520 700437638 150333604 735816899 568515613 532270232 881479246 741393378 849920816 315314468 764217606 571763121 110107042 946430524 733119156 734144337 798863304 648653196 598519696 675809606 28746859 915908415 740394784 360368074 624077116 983660627 605192373 82784945 384369891 414913287 974464545 806017102 879914601 818969884 293331868 868111408 683109917 395430752 119042611 930852954 145571787 557339802 377493121 250740413 264294575 585425188 926652388 400913711 897804818 911723085 843260369 923521638 644257566 465895103 291458490 307994718 809347647 473729467 516343087 52775065 197869738 944596425 712672894 255160059 599642609 767530916 130076859 707083184 916124948 350718494 884114441 834690741 831628090 383809608 875668119 766115013 457838460 978315001 803397287 746856979 781197943 545991536 850654110 866629756 642876836 7215326 683065910 886491735 989526593 260618177 750607751 980836444 743523992 807277917 756199186 970422283 973685494 830538623 850620643 133216926 674450879 534810463 737034680 691765498 78148406 962141373 757594190 18279448 882272020 865893263 974708954 803769715 869781200 826091548 292580716 234156656 734149989 952573741 507822701 944340358 337472723 723047158 227389453 732371172 723605016 891024309 279842288 863119710 961274697 940113888 738495280 743006401 488790951 731570556 78132687 299911255 849806593 610198562 455589151 359115168 926892652 167998074 849780173 677920971 250686496 846481260 552526872 946080147 407562652 138501493 810944528 477048790 597780035 641613854 670989236 892133967 930070588 470204479 974106738 544081449 83945083 931859071 764915714 475787529 47235023 735061884 671472970 680613806 214431247 749564574 524935631 85017407 462854623 214888587 902618542 368680895 794385102 143946730 745643277 85298015 208344294 807993071 226212093 940327294 964464387 991378144 714248533 770302101 301861783 812418874 426704511 18910301 958930907 786846365 920104291 379750880 929897344 996564683 834736031 182554553 603897971 670989236 804130149 164715621 992247922 379567860 841930745 509182415 706895785 573008964 878883919 308875242 572234707 758508088 670989236 14238017 477791150 946229662 858630691 827481132 50066561 510005593 48803498 835183565 44649482 391805832 58362382 880663287 721612332 499187899 144248681 288858088 283196639 923241720 877060488 289950928 207489630 931885288 782615898 273870966 942763238 524013075 979014908 744125216 481405380 670989236 482461409 901809245 233703851 354681050 746831870 912586319 945250147 876747909 909628993 211258578 492420457 508341688 525406880 396103633 266269722 537273784 145382460 923782910 644747839 872238389 922478170 151907435 521102222 170580685 222201665 719571321 206180806 441155169 108890466 808032587 871647022 937836580 665146111 164363937 255255098 954113250 807328711 647265189 777222115 795423717 729778693 240777566 534157490 707555488 908818201 792821737 840953387 754615402 866545371 347066821 267464058 584267553 813853312 637489356 741105455 959903034 6369953 811818474 894902343 78365397 759748305 780255751 466491664 114006169 800708796 709170808 937765366 735498249 184962013 943850062 901112928 773193156 637841442 171870984 939962790 171038484 523246473 679025976 275641425 474587884 310288961 868996960 163047411 33194724 216818466 265264238 242319304 934255544 552081652 680614639 762342907 301966400 811614132 600265227 706399598 719876602 492057379 255936228 838808051 170925335 701634756 752692537 900125075 293520504 793821339 623132977 520799931 678187169 703536984 932320942 840500434 972462525 736958255 819585104 968652010 291177176 187601944 949311480 684185816 954428740 291253602 830382782 860768594 22238174 848129104 419480541 261858297 714790196 858670989 951106772 37133629 678694929 853536563 977774163 399719633 749626755 891762599 723861976 897105904 183253870 764639518 464407863 495672089 178276006 136078639 483338007 386657351 546454189 195169420 902408281 54722585 694857747 981936702 454887331 730161409 642270745 941260460 422761653 865154610 839053780 740699088 984993991 213137820 555702403 87577741 590228716 995736680 70832936 955420552 593122120 549216221 827045946 277601714 549104871 41538798 64311923 695023026 500088753 700861800 757282793 744413469 754830471 675478629 938351071 61592229 67826694 267964245 89365921 937142244 698296829 931024784 29884202 858887535 665361447 32762644 250383172 580951814 633441465 356598801 457680762 53580944 75825025 315326461 37580330 708597243 961210873 724440408 32523021 820601610 808515183 941261624 475116001 924320871 718248224 226568838 205981735 358727120 440893319 780905806 919040370 728553850 813194318 687636107 615537287 586270407 31380657 850715991 876612660 739190730 146736405 941463510 342715522 798117697 209004776 354614532 731689360 572198065 553184683 588233989 322848887 764433901 203501107 82828283 356399962 874423097 324138551 670989236 856702318 719495542 340218918 748763484 957841803 885896875 680564981 709647727 454957024 209534324 773910623 779863743 685474102 824095133 639351595 348655845 911903340 76722803 38644574 578644237 727564505 534744474 71314891 987718960 788774962 88414692 562283831 547846163 680863143 708573675 708244562 768299665 556397081 968987343 889311911 755089292 877939864 76406451 846046123 780470151 218900617 849234817 718685973 993737767 629709243 762361477 697117604 986448867 767270892 56163391 693238631 802977724 409561370 351732669 27144720 628633920 471059872 709854562 170758608 884409458 622342344 581688524 790303699 850521333 785525900 635143014 818052165 928603205 797574776 190830152 664012810 681229143 951344308 654829066 163887876 176674878 949466086 583916472 562782353 775654220 84478602 495472861 974230533 677485753 546722505 97168561 721462216 755264815 593268118 938123104 728124699 694185462 801207606 157546985 210190224 710501384 488874043 833714175 803433585 52795463 678901246 539623219 905584397 122087279 776545531 359397289 858373692 707552383 382441773 630258284 734251995 257063860 841417936 964260195 779974574 893115697 56876561 726469111 837354313 573750438 262567558 843320443 925344228 958132024 823407137 833640170 635908110 750755338 26681333 421349798 693105536 267817504 872142295 843792935 968792081 415431635 502502354 98677078 598426403 682076385 589680582 903893564 698509773 907772258 15404083 950031174 808638207 500789410 979349391 990239432 928258232 886405388 319991168 916055446 961242111 959412852 785811851 897643150 533009432 562256905 660873633 381435190 253074704 537673205 484530369 901465691 715559916 833196573 961452942 23504437 488953111 818536513 390897694 407408257 701293539 666582499 499567353 653194791 830357120 825630215 242081135 697676394 94351476 960656662 320025137 491894016 946320364 20907835 950224832 479469804 826167901 398050743 411723853 922053411 675989054 922100491 67315510 728918141 872587917 621356787 108132735 523336019 692930997 928843617 727436032 953893386 553975044 645444236 668320811 18057477 476169719 655213676 744929137 725764133 751347428 896948388 730238434 824183066 611084743 829692281 168586688 742225873 874677621 728720110 175314193 120796268 116717483 634067841 186975313 760737495 973598935 338322316 968406546 685954417 835646357 314459127 903212813 922783178 264753200 497855769 470185122 255778557 901373504 328113863 526900566 428122595 598880296 267303054 490772863 932546499 150317567 208384734 250496249 266526293 814290644 790811921 710258376 621341229 370106919 599111004 682136195 763268158 769723673 297794731 166348204 46210595 442378617 443222820 703317777 927289203 844677039 61660647 747538155 522122146 138780097 776180523 33944106 892844806 390644505 293390749 700573525 343163207 845793243 801230245 845402301 888879779 781868334 863418662 916145013 99764933 793397414 647821456 10769668 355096160 560647945 576466865 165693320 462352983 147854713 745097732 702829365 871419478 869430234 147970310 344503590 600180741 370343174 3335482 549032262 489746845 953991986 836421048 829759902 836894993 775654343 653836532 29594723 766641629 766367144 246581600 855183324 758181998 969010955 922053810 778328221 573040977 140626397 730211038 391315696 868631892 844912046 613740735 990059624 982609032 98608414 776742670 259502260 230739485 703879005 766537446 418141595 239193384 679878251 507805348 50604973 993485520 862492000 898491806 670989236 754689066 99319724 680565402 495498948 891970849 996182728 763482550 836651022 700771892 517913639 860371196 890875658 935326934 329208035 522903627 719699279 966943765 652614781 654769228 7621224 483898712 726098368 861494901 716687855 627486289 434398670 13877316 154100598 413055869 2070750 732503670 683632713 593401538 598828586 318001248 780441287 498117904 933113722 682898912 900083815 998068855 691102787 409291556 686287604 761151346 354643672 758244185 450080612 829485606 465657960 982631415 167333565 736925431 828136684 505020207 964899862 980367510 670989236 606818165 611145006 910689293 533960024 258458768 729355527 632971112 975184425 668566412 920492239 238443799 807350776 912344116 907891621 614219363 467964517 572908845 1134382 286408149 35963058 818564302 908430015 703797744 523886310 301100550 864765713 106324030 5690916 769754028 871014127 906127136 738718853 276656904 949491603 732049933 599860892 217564360 680167593 232233611 680796536 148561435 165791767 484691528 967478930 486807039 600768811 230240743 900638529 832610887 658522666 306786544 312597173 969865407 562563184 854521019 733402407 758597771 696278384 788852990 405554771 729047721 600323841 10450725 107136619 735630048 724185969 996209654 613425783 794226403 433754125 976680562 701726217 251432828 850732721 994713529 875704360 358556495 234783820 338623356 649531194 923364741 427924561 85182282 86378856 212814872 578806795 172112293 966176411 878690081 445118765 955398020 205654571 226356213 405427079 793298768 998828702 278476983 715407270 623793189 751637790 901917289 670989236 168062362 5327317 186081547 941462440 345774424 703041890 563643119 593156616 827337301 960017452 55311966 341719030 485119523 824046407 929131731 766737183 860516483 10308915 789053044 392575969 85861890 846371818 48758800 491503825 813516267 558383198 154525704 997681199 943071884 222968300 716721393 789972319 352740666 902776928 870716009 998636917 741487937 765867382 951116802 928925040 567464773 674253358 765498029 400640772 873615832 681913000 415502389 442333249 422369544 229541822 447760164 827782027 691939592 516674325 176710016 941012381 224630039 55860242 506026455 789725062 582862542 758494421 678934003 243999319 594650273 945597389 230175646 32786589 701620441 505948040 967682818 225766162 781734472 991171609 840504611 822399167 644401201 22186660 505559665 830401105 446411583 717888560 777464243 916172328 97008701 699972374 450865241 901632432 759275839 831625573 712588301 963914698 855439821 370251499 904047673 880532031 941544147 282468883 506110787 18139554 32402244 468596774 759795590 62514566 23087465 439077492 404424579 693193744 661300696 596081286 846525234 242003319 142681742 878120387 586973856 678529746 374083737 421493670 877888881 722433210 231220350 895312432 786517656 424869797 863720971 670096964 203457021 921896129 147848375 469211186 17545872 839261923 180365164 763263558 577188834 670989236 928597937 926662116 623520920 256924220 684286524 322906128 809962706 871171560 476073967 610628846 709206142 476368222 604029642 845969136 936303205 758791052 598252456 119475197 677679878 645475767 823411045 689829670 927909406 658212189 246803787 952849885 536511045 568684734 560341540 651752120 296100518 726370983 369962337 800348844 835738821 761987200 910010576 365855470 835491852 544377860 324573694 694858194 411936879 504724225 778006640 314753415 46307335 147992958 9064943 929453417 142708544 386319437 670989236 778677049 140432809 888089026 267895132 246064880 461446124 301543231 425266457 897150113 717429153 860108817 639954114 957219003 367230749 428003397 678479327 593021281 326831900 706373935 670989236 994243736 809898642 344716070 667824199 251753777 849937243 683898919 731991980 629409223 59399740 113515600 117464857 98147973 295903825 634073639 516462316 307328391 186174499 583950784 871316116 636229038 833639985 887771353 26785001 273483039 735306793 127560802 475925707 884366087 9782414 912947970 543228087 187283253 891886611 670989236 932766063 700187143 7322454 733702006 830491183 703774150 638730226 892280843 824056246 714360803 732104463 887135932 680331450 598961741 212534841 715925819 671755338 673701850 195211079 914076300 686422534 737588502 930006282 309380807 813385357 291080774 962943039 247085598 620985607 366659953 101065235 233353925 886730201 351384431 971107545 925353548 222738682 297091154 86352761 115563786 822578520 314457226 538664921 10977022 970915480 838164050 594794082 868582598 746116965 991422086 69919516 888225053 311182453 489628290 587246133 80791516 635761298 134239608 450046831 482724698 704553435 864760451 978085561 743159165 948009764 262013929 938709703 781874922 99992845 243774548 693801644 368095954 813346764 223698924 992212882 670989236 868843643 886500759 270304962 936309257 165683483 629526663 739342239 572031712 725369157 826036269 943434463 990503941 869464171 276394129 142463135 742086165 915762609 273257778 527681690 332845044 938225864 542760788 670989236 449617054 820849004 553323615 479235128 180944763 891468826 706881449 936380448 457689767 161287938 672202412 5965419 826054615 14129481 855373171 380970423 528767206 283389095 238872309 592106635 110822699 108894634 769695930 696182637 971206338 835748966 54271230 885121655 583610654 919819393 115216436 21611679 840714544 817132603 311079862 576444333 701800647 294311510 980396083 699247925 660722056 730618670 720178640 967667639 405157206 533797200 776222430 585439405 701821898 399774192 431396570 174612619 229584162 362128469 527273534 116731387 881381918 920200919 240644787 936460706 702425516 100061660 906399916 120933145 133956333 716075026 488219201 760109993 812933067 342610601 864086141 911836146 16485763 434972841 237221859 758521540 105709570 304633981 887328541 738814973 970331747 632713247 357382910 978798535 9377734 450664743 301893908 751488302 294411442 99343747 745895885 691999082 455415155 96263246 143854231 833869734 34114362 699210824 46152016 793345105 682629454 479916687 455347301 881836340 938132404 822664932 216707882 387709230 87993864 365654877 474732024 673778620 388452602 970283883 745291525 49985908 174970685 876823759 683575666 859444180 196369883 679680539 665392363 727916726 12552331 194076358 24691291 203883600 293910363 885196188 874454500 280527660 945805530 669866232 834544583 792322602 927273215 853977659 768861040 983528039 876367666 794466739 76258826 652290082 425552384 922272909 934527361 315350989 815854834 336930923 327856083 670989236 749739064 418815280 338047614 651852554 366107625 471091556 368921057 836790746 961192336 398655419 885720160 974280720 580810479 803444164 978234649 671170949 62252636 597097809 323931689 177640418 619116100 417138915 395841538 279091525 466482569 479955848 737686106 193744834 762472101 330867167 77512329 995629331 279458871 716540672 254375122 129575834 710098061 693151335 918744104 674142579 620309553 505091697 968025485 185828662 992325177 469135303 813052347 594026889 25843140 689472809 97190616 618683257 672035779 871484260 563945656 908544457 535441267 695097352 860826916 940347442 670989236 322220880 238451989 854993299 753293208 47299394 43203585 31074116 643486713 781792801 396494243 386817830 448417521 982006956 979001987 782433418 862155699 815019519 755507904 901080047 217005722 531237127 376417566 860076967 853329137 731185981 966254760 213902015 390104132 428406799 423102703 248193932 213559408 429768872 357997088 690125956 492159083 827845333 421620848 890566408 682507739 645413222 364079975 698840125 884240370 794624557 463935214 708694814 582421214 72327711 869903733 485174656 391961458 24726552 862671632 56782130 425549421 135371435 881692747 295127902 670989236 883456326 288920934 369399629 232015384 424863982 670989236 721292251 714380546 774677441 521872030 583040106 701152057 734685206 518354539 826395338 878867387 718116502 680639557 203382018 689399498 734324939 807691791 411230468 879315239 681489178 406392995 968344721 757362386 508378389 703166928 912255327 70064134 58446361 696065852 971121689 815890905 590506279 424538397 771858348 107541813 873407365 575472242 254188347 458919279 925350233 948096482 563533252 697666217 722393122 900779172 41610990 963924111 640566459 670989236 48268768 700960445 278037750 254937908 672307720 17256042 399954092 783684417 679558720 729590382 212964683 343845393 68652453 382282237 928145260 83626989 666421394 544991298 785496952 427265756 505196967 432710959 274544492 729936112 957789021 174226816 558512715 767210320 997010118 820908177 76197734 972680669 778313878 898290134 103696387 237453199 817195134 345783766 768943576 720002052 912715769 820967072 362232356 374299557 475212345 632669941 855707112 279382769 918103029 855815170 619016310 416093179 380775397 980939906 659525459 507466229 803631232 814295472 671697678 808439739 740142139 448359212 592540468 452260852 458375816 177326180 628442967 735914189 69164393 831359903 75132683 807415556 648406548 313732102 351103565 778295796 190593764 998070688 59007690 170640964 256884283 983475159 842636197 152823436 892122231 446657686 264121510 922431734 717637395 300774898 549629403 245621826 33129654 896003417 714043173 537935862 238546760 671378963 163779609 970513345 687320713 539829389 784006021 326924249 406473184 994619392 756789968 261608591 760406175 214884119 496290940 980140642 779596308 709133204 799358656 357430300 568359754 777987805 338642831 286984909 431552735 992841698 93971089 799768140 367641846 856930440 824565273 909331073 659950130 643697214 65418572 526173673 537622053 463040580 988145082 835285010 924089609 679440625 898621173 290260547 907070934 846931784 796141547 289888169 423289946 145385171 996153211 884232508 780362111 57971513 672289048 144424053 605924232 877594843 370845245 897774466 159009768 935077663 366078262 740849480 815085343 16395537 966079369 973976797 250932450 739106177 798860185 515430069 742792483 822540894 22151744 118911530 648448845 841031958 549987221 675230529 851135481 113971199 296197638 957897707 608459212 378034359 118386757 614465786 527576393 553786808 339541603 411696412 240831959 584885090 923348666 281376541 68197704 841490105 476921409 109238934 901051092 846246844 877419789 93132949 685042451 192519503 230376449 693047978 943603060 970878223 1259795 297859211 578258293 639549619 252903193 387184545 49798225 805193137 670989236 90749715 819158908 835777768 710470732 481987773 975092724 834639672 545824607 758128194 176949369 281679622 636634047 906165718 569705468 914295969 485635480 491405972 271961303 593335956 409830118 531850353 935863772 715732821 376020107 20386617 823199953 748844188 733303551 719344590 149835143 371340189 104893487 935476000 126752919 334219070 336498404 59675349 844109008 651715568 726338197 628402182 679276842 769486029 967982070 123634694 653267057 929094108 445592545 846154487 495669260 744056756 40948059 338045591 267179973 153298792 979843855 733820630 925702719 98478295 860830728 154789224 852994961 822565191 732476290 84436105 901147757 653113366 672918436 908877527 913989425 756179128 905294922 402868947 157384985 642923753 655054770 726580949 72628194 892738927 75784383 513269113 504114697 68428658 373956667 604329349 655878281 878966152 315153254 351666299 981859525 977276475 306423059 962696386 497057941 866901622 37403767 586957717 83376849 794408458 28041932 684935207 887010059 964732698 929774444 512512100 755764254 892545009 856688428 761929781 728724852 195642384 704540970 894510757 261790419 935488670 275557121 334834846 804681856 926677676 845041310 883918584 704853211 458853419 863577218 783736991 280762490 742221959 618523949 606553905 758325685 596041857 145312141 709722560 916268141 197227761 542796626 723202223 113203697 584322383 849937030 174729116 814443905 627745414 973701302 320196404 912455360 811942214 675807207 685081995 285944785 634147005 227823463 125953304 734090556 871663168 943191541 849182297 185347508 970178666 285184593 980726389 745456783 500617969 919171847 98941870 211464078 954811583 970922251 191551181 450197764 805557686 353973934 822534049 861505260 494335302 721809453 841191241 866256511 874575996 548433322 981871991 936242934 396487405 920315794 736251730 708712384 75378175 297399315 797946840 761357158 795243818 906913209 866032352 746014963 809064146 929370720 24962322 148825143 837841188 49506224 606870230 725188274 218665221 615010303 829699016 878080118 866250078 51446910 915989659 844702810 633666636 180612560 990503224 97661154 171723322 733350651 361074823 20241173 165175490 748471100 856301516 969663187 553320671 135439504 891887453 490364884 749283520 889542493 852351884 922205003 687767984 550006844 179395610 447295908 214920920 837365300 694694636 924902463 165717283 405522744 329712746 654036121 648500809 975879304 216753127 903918281 54616859 648301069 691689968 670989236 377615657 206471020 276506856 540689985 825631372 939026811 529463341 434472374 619246612 403322199 482144097 934265761 769054250 650205208 907844378 545529588 735461882 857916182 834923502 238805678 695498546 906766684 426416885 275477579 845670905 517750094 965996827 745795256 289818498 758507287 720220733 854732522 862423380 697522347 867931438 510126370 683118078 381400876 405289420 509199511 801141837 735134781 759133261 43294358 30575015 234009621 694103907 685363107 163314343 387683659 365276882 239408031 917197109 325178120 911294756 740372347 398228809 935712237 780010324 996136750 494694608 981468447 737767102 965309315 393466750 403933054 14250042 134017309 499800714 911192834 875558250 138019605 779160596 768792695 971999370 516613193 951894914 776210887 403926937 943035966 308851228 928143535 158427813 955506129 694609341 584161960 710563929 824433672 379856459 345657877 760742896 837368342 51168788 456815274 845616112 291736726 824111325 800759393 844988473 867884081 825497186 787394855 775641015 693593620 691003323 217682305 990062576 765587196 810135310 696626669 34723102 418287797 189140696 918865387 198268194 301112451 824173156 578088462 741700484 61580836 386454301 28316116 553527052 895634786 107311401 635739370 715988182 557559739 594557391 972786155 927739715 696747266 168096520 542584168 843693405 691318006 822946934 981341984 857811993 983426256 721892221 525026939 127922298 138831603 940218904 811921370 555119207 707956966 748720252 86989098 252652464 16346495 730466990 924471565 112350009 260842024 458194320 461350574 68977363 987554512 52526178 566132244 624634668 696575221 967052932 771890937 803621618 756077338 968787024 522598296 300885636 17063728 502233254 854645413 646493485 378848380 162206138 332876565 385173716 604914015 421281300 292517241 749017314 778222008 979525494 121021381 480389362 970749582 659499783 757883769 105614465 674884141 906046634 768023281 708048810 952520679 805773100 804940100 60008298 914053767 372050411 631109459 424717620 675220279 292766032 877985629 245674081 368424546 405938111 3723113 671646742 504452410 193923754 946389582 56597200 174035341 842274414 605701942 358045332 967432660 176600982 776438363 706389236 696622260 154227268 557921792 548943392 353323299 891379501 799094508 953286997 134018804 424673194 571324587 986876545 402449456 908435152 395247343 935793823 115013537 898088505 291522934 136506278 981930442 990229639 127026173 815497012 262473606 45085784 163878453 88123966 265503831 559722753 252926000 693021319 982321538 662251026 411422073 873986176 365219909 39537103 103650161 389452851 604747312 761086770 134889760 171618665 936102747 919500267 953595761 347970767 624486856 507123043 865646403 206771014 19964496 965669112 488144305 984197793 787124650 673052307 15460374 629392950 742235177 177456883 872448451 120371081 730467356 456706487 68112296 797383075 900799082 90988205 751163247 402265920 537027054 935193650 240221403 546313181 883494470 743955630 403506950 879047438 10706125 702371045 620354991 784512496 592445929 827711513 517313852 723890054 244316164 962913592 17672645 94663683 670989236 762952353 924170563 514865122 747736003 694155623 422378343 886061439 519889976 208221780 190966414 902985814 833988148 683211069 140093829 162935398 73114566 660556609 716638723 23155032 774491544 900801169 135361256 679195762 885854770 808899452 178325543 459875703 867129410 782544578 772675892 315425202 548354554 785423215 202520836 462962613 670989236 934635993 266683417 313604194 240848160 652949417 631363093 806570629 688402500 588010208 611572148 591690292 906767166 790584494 998607008 853878393 813287047 836865868 633789510 174322191 844885031 692638318 21128309 807697728 205599615 529051825 981419983 709624566 728594054 985115362 694416478 274143188 787635237 833245900 746196800 519257159 726199265 194291656 817195953 922981779 223537032 434514180 847462599 430094310 736201781 375114505 770704985 27629560 59933029 713971652 566406960 962718864 840005069 556388341 604882201 646985110 626188167 217427330 720958024 217208195 78770383 244183643 494090688 144887993 831883090 875357143 141749703 382788967 896060629 134110189 822556569 974127968 887833354 83011202 711722760 914191256 840087039 161835650 544332911 211638753 358270772 567801275 459383425 147012553 222989978 509568867 759169498 55015294 796300988 338948897 471065006 95792693 632105273 324051162 237480428 776008983 496601367 749193278 711957511 898104806 619449522 686358836 700414837 463179589 871672221 916491149 993561174 771485965 915501081 990169666 65486011 588033432 506002162 796383653 877583804 596247085 438222780 115672311 144416243 702170995 934414841 654407956 259740149 967263355 90805084 395429200 957522632 679167815 962907188 506029116 920401946 693478061 764512132 808889570 732524780 613495317 394884975 196962841 884978447 858223046 27613380 164681792 383296593 786825107 824093462 787315393 758677877 713408012 341367021 706713326 716139671 851666341 674293545 727856388 965201020 854250251 653637872 512750336 615250848 530442119 716458980 771949429 644480339 451733603 593183903 920696900 822459745 768954538 59782852 535630486 677315154 846758095 492216093 969204320 78774827 803584494 823733168 883162220 535681692 994413810 670989236 823413916 836170322 865758438 519768698 796977940 680525554 49669170 736825242 844589484 989233502 765977284 818850323 355502177 875081994 709075524 719911897 432709823 5460606 841983700 643352090 984479535 886066122 217569771 343487315 487261233 257310720 124842612 993162105 714537697 944906251 829314981 515208747 95259870 521861338 519092695 927773348 57850291 270474842 773657538 917483095 695338444 967641773 914117614 346034548 988744159 971986579 21325102 857844453 486976015 514607919 408917594 713050902 26840734 14190757 803353078 606071148 287581615 877149240 754149575 264238844 849787837 912008585 876265776 927720681 766594136 850412704 367381400 386971776 167284740 804895737 883059987 824286239 221269358 670989236 436175451 838360669 522771752 337107922 953006143 176500638 694087500 359039542 214082420 884135135 462237213 617081715 937985120 327984968 281897303 100399623 193032512 244379382 590720393 730905543 881674958 671489754 776930882 42271730 503342039 951241287 287032488 683888255 232145671 194387633 553963645 647463913 921011692 728738734 665752951 820053631 244163506 876606640 613746091 541466786 219470349 306282752 78183362 486832182 793009579 460924687 851180510 728834674 393761630 591395035 874228103 297918080 684512092 172976342 109983172 360752520 285235447 752103384 384280193 934299417 261186267 254426528 722159895 333825769 848240346 173656349 921279024 363284277 481878709 670989236 925006011 924618778 839502431 548022721 855595550 398054410 339917744 791844711 460920702 388022140 359958438 306846596 227971287 824605834 169553223 941282247 405919021 308652879 912550630 931478513 909586260 660534685 974927125 856775442 457925526 313929439 905286089 307472260 983753551 815573496 670799063 375663813 812868908 539206762 15408943 887907581 596488709 722203651 198561232 494137756 626144962 114841772 696867641 318779903 992007591 494174856 520869837 753211937 893760141 860439098 453732824 923638723 799596556 880297256 752601928 743173150 424462803 764012910 551440558 546636457 901232560 909213420 584867162 328319770 937661645 821599419 838679872 93228020 916132909 487186953 967606781 718506882 228999689 34494000 861134927 912784240 942577232 821468092 820318212 745425412 757795754 451679312 194073267 278894258 689554874 20115963 232419313 232035094 303559592 88870882 17296005 975709668 112940651 937812653 693564057 952018434 539327939 9025485 131463521 970074108 879762530 711997211 969493145 739546865 597479860 228703179 730420511 96708521 837334968 153408919 963975903 452810258 883912543 228919017 881042944 690033488 287999752 943096015 814861830 762830336 293188464 933077100 1755484 672356052 670989236 44855306 612524127 314458475 822959357 998413212 813992397 352206053 898659200 97440425 883951209 534511391 737812481 903082707 346681658 169628075 961150929 418745192 508412499 456545257 25535254 72683908 590514262 45675276 776297197 635095207 379844766 856344786 824256581 293825764 259901950 443342341 806340106 688508519 367356486 43840795 202340980 934622608 401355831 950742350 840318365 140251747 197592043 279987334 285533663 752234082 550836775 993561457 100400602 510500994 438662913 972041464 190546480 258587248 945348487 67677201 921208754 760850091 137228558 999578276 681576422 693134558 246489806 303324673 338491408 990359895 772839584 992928743 725139 738460874 695561267 779227086 121532549 808690953 804968473 226858971 22519078 833027101 422086730 732029367 84300190 327052363 537895547 713041763 93731266 322677007 530321878 215460318 962010587 670989236 185880614 964769792 749544598 690777489 968997560 519177732 929847300 471757721 316179215 842807978 54025609 467934971 201418677 724086796 167193574 702867460 900789978 293015811 129972002 127492711 84055218 238927764 924118450 751724079 765061931 842614533 907025309 688336991 946509956 709751193 15751218 535090759 21614048 625709668 171952857 375376674 460448970 446678510 264224600 745101347 962155821 635442258 265172707 923173084 326596055 33154469 744214495 426024885 225043093 908204335 475495982 920518572 988438649 670989236 3231895 65211362 636047465 843054126 782984425 238211690 525863486 688164376 15130609 716888374 821889854 980064629 752060114 838702426 296277410 97244894 970631552 564149625 869649812 890774207 978199763 261659681 733905111 874090749 575732355 845575716 784978222 436031198 914617006 216353469 429801365 445099883 22459511 26669773 848068180 996049924 147218018 408458119 481933362 732507708 919804679 765422133 211910746 846251864 509095384 778166138 796512198 18613895 577540725 733183823 753150552 905576376 866817385 882552406 942616631 143386517 177094729 204233869 28123468 295235216 918536494 32420317 738922700 695748586 415186863 245309097 917273815 330128334 784825910 956236469 210079744 649083461 97664352 59734171 942729351 108024019 737762889 827204528 794801400 190444537 272085586 772811567 978098128 941265502 939146676 487334357 773750879 524098389 23083095 946860592 671908007 747982918 267219667 969011126 870657090 225929670 504655222 258326928 849399092 965101951 961859880 847976444 681229950 969870986 917086136 39664028 985746356 984566795 155899810 766306859 983695188 744262072 726857784 891121448 980304784 399827782 912341871 211523883 397370094 385330232 519698032 691091674 978928240 740275843 670989236 569094951 89004674 941874808 373393217 737761554 893377726 607672676 9440767 715192582 704940267 778183439 909597422 660158054 681955440 40316938 950341133 934052061 983039101 444722038 155015086 845356530 55864248 84773890 957619186 792424030 659336636 765693118 155725703 776266565 993239899 127167270 809166724 810943039 856657121 659211158 868244459 898744964 637037229 69733456 227709664 109329111 96281196 618265323 221133714 97808844 577121954 147873315 415517186 696304522 938834877 860721025 851103240 856973567 732943833 888510414 36099340 247395111 681612181 522662817 450169206 673621218 131872787 783708842 116913588 385791449 919089871 916594276 691962212 311836003 297845062 764479913 827441856 964772908 296469818 361276009 687809477 407960528 952256807 336115558 355734121 794794899 710886953 914578976 264695446 619142438 581162286 910088842 995642343 899138261 775492548 286990656 868873648 543175192 705914334 191343191 452546957 708823336 932676862 5605948 937038441 382171026 130718610 695453069 423589603 848627775 822998593 663333064 934470220 128535959 345626540 686039570 905184984 721013011 715640109 670989236 735487620 586373665 76624817 810644121 170659611 607939898 784317857 862841838 786562249 781681302 874995662 980038541 52449481 727957878 668498025 217640807 690537193 716596255 766941698 736570674 403400905 69780532 766868963 532063863 121863219 748885850 714480220 12076139 678200983 530194851 999784684 293540656 309808795 577320368 287003774 287669329 846737326 967590411 68045838 360699469 852013393 333714888 654416705 375691360 11047322 906732470 895440207 174642235 165785075 826638642 100444911 137310799 758377717 385044314 152667979 579239598 894057281 485667027 990675406 156369128 43600323 270468250 321304204 713592847 846465902 934354564 635775934 694281589 800224569 361183514 674404198 848158480 57778667 43775819 957269426 410808279 64073250 272069027 438765008 969241378 847637739 759425657 877507300 670989236 425502507 162813785 356583710 547120113 821580079 725680269 157234338 836699847 424731760 15645095 769997392 520183157 911728045 258420935 683087446 513020844 835511933 113668948 569856986 630532559 350734641 754810128 466846024 492593482 773631528 139021325 827129049 885388195 435152265 939694224 396444425 461853233 990240397 803620654 979953270 731289460 501495598 592509846 263243233 389201699 729534725 936912824 195518465 135400705 264962484 670989236 389524931 270369856 768144376 840285624 864412655 714231606 417792397 828235092 776012443 343118408 44654127 606802339 465422995 173607712 278593568 227700543 398178314 972037713 944289659 9130841 650886480 680172961 412826131 422417908 806360692 986086495 430529083 695855106 396727280 93305311 672407160 908761884 699020809 479086872 861894339 510506941 151135608 922659700 993564100 820599431 16014069 752522520 279058083 26675955 489462108 622934704 118788437 333781530 170604204 528269957 206056607 819692920 40594694 213581060 598107096 196532976 808520938 1090550 118137569 455782539 471035359 435293966 471270167 155235174 96774046 593593960 726712913 27196501 998382286 615765808 804330380 258279380 834417845 208544010 760731417 458192404 309479356 888999521 524082164 761425903 900370443 411720891 550505149 838788337 613331309 693237385 907330328 790489182 301602706 931982566 381512437 19762086 947076877 431054966 742841850 961481548 673602440 617116218 297715199 776796220 888843269 334718209 750244359 891289086 666237977 766530413 605577423 869199877 795499292 815021678 885675857 755869494 11518670 434037400 485758866 331606715 270185122 951731748 861861558 865098247 786139774 539034914 695075619 890561909 976384061 533654881 806493640 887544739 155795029 410203678 195358774 321946829 79490574 669545362 681308041 946957830 23846239 747324886 944249795 365803729 952689123 529089843 938275028 551288302 822971573 835798199 298135469 717659744 747145751 835860955 357320248 179039207 689300189 796427446 822456790 999340561 926193032 902102523 600770209 43346579 424425384 76415210 563603646 734195044 83711700 381500742 311330607 704915277 688437118 900301292 752608539 172731433 482447516 289202320 31775817 670989236 435863546 830807377 705577387 517930993 732711542 974973363 843441999 351702171 256871345 200064423 133729661 678432811 169577744 780218632 564065679 516944510 847655224 783010148 660030528 531696578 281616564 584740558 815192059 451078492 233050477 869897956 238308472 761536661 990656085 989895911 962734036 802774537 720686314 738072823 759956458 153599875 455518529 820775029 216773735 787467086 153135025 213067554 786038233 928725181 106103015 850052109 444347419 515767178 973620990 115133351 492201632 943430460 547191892 791254805 14509309 118374613 275255234 545279062 797636133 704687224 531297734 613977620 951714466 929537767 80050927 612949194 630424440 405064540 920012416 975258773 532113274 29281127 287910862 778610762 147059029 670989236 886589317 670989236 903571530 830431795 717343332 556596342 222899741 131938589 794344733 713077453 43357094 778553462 497408017 740692261 649437119 808254934 670989236 765095771 987548055 723166668 206288205 626692696 888124419 174777388 181164178 989310851 809106338 849656568 675802437 540091363 422380838 642582310 821533161 780931722 426565452 989014549 315261274 55658811 352179815 258983442 547769815 197399150 978905638 991122572 958419972 836855034 357099132 276641467 696715964 778068989 47970869 830270569 135533567 856278077 304310170 690931552 964326472 998723970 690757520 695652823 573547915 988476891 548019700 911650210 72033521 881391942 306695406 573131363 921942552 548872827 935871790 118467784 210646499 37587778 55936472 685097251 751895544 85517320 793052289 674519735 886279325 846756633 635497706 676225970 674284867 901115865 683830244 464156294 714138679 144282867 90436963 647200996 702010803 41732647 691160002 275704270 318441057 520038629 263592012 454162634 709362729 183190231 20932734 248209146 9783298 273764723 883790010 548103876 859003483 867052320 6199286 930405303 437590031 951691634 234771451 738115368 997245047 861369055 690623478 913753740 807797692 517943220 454751254 697836686 98453129 762747940 775378435 275777920 964004190 860337567 124580544 649055234 794001841 790611506 123043442 721324622 937544725 146903687 994458902 729397795 830207212 768312402 525598054 357535158 481856213 262628787 567798712 196040721 904062921 656406930 359869753 461675301 843074755 811655089 291843836 697908152 839089667 276889178 440185510 700306907 744025510 714887751 30101086 383876117 165514362 536647137 912845372 891902179 32278931 763254763 670989236 51436274 737243982 301838818 394480925 251186239 695768185 821945396 960934525 267541263 566003183 318091536 670989236 806057268 963854464 146230076 66749611 754258232 194326398 855088750 625127541 138847543 582597797 883118252 362554831 632949814 909029831 627568026 506806202 729732081 840908625 963459550 255905872 912880420 840480222 478034764 807004531 227567570 194959527 126294939 865599334 853730075 619491569 670989236 588180466 740103934 815303679 759602841 980923801 779766875 739827156 950710734 863710650 985168218 558555364 754834512 844315845 725681723 921455897 817632759 823698408 722472722 923679419 777851899 478907874 575568583 923688530 303053353 101879408 936710882 482481409 814029799 653441292 449621274 515095272 850519275 381013677 932472629 965327026 241490310 76140874 432633597 818498798 675631185 21212916 845116816 184441493 541415944 838137124 905200868 585670423 983335894 710024550 479257094 770562537 897352391 213605010 912620665 262673718 864126845 117409714 834921394 844478530 975724310 816274985 22418145 209818710 674735714 945384740 970984949 938195139 760062786 683186170 299723992 389048522 742258756 576626504 805164664 632269577 503341170 181716906 918594715 97668567 186882807 794165624 786697921 735658600 239978467 878038939 90805752 802621480 931973712 802874551 939529759 341642690 647141460 184627902 230682113 134392353 323713050 811549664 366990987 540927580 302703692 112245868 528116612 715147622 449645597 368941896 496029867 535569646 645267648 263819136 704875293 245943009 368563309 981203432 431046543 968080207 761372884 974858689 637074234 946636858 848608236 873168426 739165567 302563951 131696596 944360381 974920099 902559215 645663648 314300083 365027209 165558159 48471203 48591672 722078039 141417125 910685121 410967288 915895507 422430492 853350312 708979923 687814055 185264218 612775033 807120557 681315280 234254890 763482852 828972810 721697082 888263370 75696804 984695758 347136440 670989236 191274157 802386370 781687140 265269395 476410729 689487750 168517447 826779717 805162173 750611859 646190580 979952392 68615611 600625192 329850371 663883101 846895043 968149822 253004738 939127290 277588535 953199758 828986505 819300943 164541145 685305204 795908948 925523597 521024818 189352886 719080598 189550755 273642932 638536350 623108319 302316669 939724374 582170283 997399774 718224069 78783953 169275901 696691074 685034671 310117707 32679988 954814191 143564785 417362341 934279700 152020746 722509572 599859568 427554260 797906436 277437450 306402512 928848327 307124838 231394773 21575206 226100854 984909501 855856658 889447017 663105747 654953296 936336296 704359079 77979422 650695984 962544441 430895558 761197766 949762256 763259266 829950189 513828411 962870075 956510982 168348135 381598771 18542249 187073183 842450795 748005865 753558394 578366714 249988597 904744646 899588600 780474230 681172398 150052805 164752648 986123693 854913566 746748624 673512368 131155984 748710895 493521893 921435584 231550636 525925021 897821484 128691801 682190393 705084839 427424744 623557873 682202268 120188870 670989236 736788572 992155828 477406695 869233348 73277605 894811197 734076936 909057414 593838373 654876057 763991901 903719446 413131624 570227029 919192783 572103913 478287887 793218089 932066101 937646183 787868777 670989236 532970337 246434291 692826779 83632065 986808780 17063555 686760725 331765848 64372792 381912729 799503717 389718772 272152608 484130739 706045864 343275583 783211834 336799867 576972053 330327731 781416696 116965832 703120799 802429606 955887546 656604119 818603737 335509209 967809315 258096691 808656205 434729094 293563508 232111241 37287295 286708813 706550641 360530464 990069173 812547444 336845137 376462142 673193578 305564987 395686392 27006761 448989735 166277246 969641746 991759091 705912282 9596286 79804921 133876669 648394034 449113621 999406365 758238066 692303679 88480984 670989236 23137700 861509494 873750007 200319187 448799767 649212177 574781945 36441010 897053843 664340924 667239786 898462652 18404238 675484254 783376244 486315459 780477568 656151306 453521968 887757780 358062595 790279670 56760701 130442717 367453712 999799029 207956221 458444957 941572099 529332892 318148752 710579289 596924011 862639374 163903136 861503174 619950314 277694134 259890227 740602339 905661249 353149681 81427082 852524797 503177456 547768744 717979225 563734859 440447767 195901306 966320483 980784785 954227586 294975582 217539876 443668847 970676935 12720592 600666342 950879043 658603380 809171689 966061392 490196629 733811404 6651854 212034250 741399296 784545613 823524647 907887228 208076834 142410760 123013389 671451797 695563498 785027017 459425535 85347605 529677571 114646823 239268846 530922478 42449589 106296099 296429333 901771338 73653166 970518840 196967613 70327455 769945291 523018462 955893952 946448452 938503661 520106513 418823904 680207979 264246314 130833191 861389928 880760619 748783935 545186026 939601152 967623101 956328654 934452126 140188070 341454827 341624432 689362271 812213256 738353118 499681000 625745308 754765113 771309907 111358812 379409127 817974560 60355974 809020811 846801883 163722696 726214010 548590449 863992578 183434531 58163981 380832703 49487559 932172091 219970332 839519482 953928506 996271788 766997762 575314733 38771625 881527616 100253414 815531627 831524826 101946031 264274379 985888360 426132373 440369249 533351530 101398257 21099190 617203099 344391774 399472258 222191119 821836053 321465787 805872519 70799720 538610241 68369188 863156872 452630267 287846191 725486136 756922505 981639557 260263178 227838263 209547177 244934495 836662908 711683095 785584808 373429331 537082873 807736526 531220518 471530262 717994513 811376953 671770359 731123874 920551205 915576001 354107056 888097759 794248306 653137139 120063697 118562471 757062084 938675116 367165408 67396177 946216014 214790817 609743972 341867892 744541934 670989236 403694928 932672821 593335061 347985117 877726975 670989236 853135344 843757230 42838786 861035424 611580571 969408367 619191525 802237093 930697650 574173998 634231433 229965001 776113436 1297056 504765122 211547738 324725258 754963537 962488100 204263841 599201366 967838753 379341073 307400483 738665610 678076569 715564978 995478602 951677722 100940382 223241800 163800793 147945074 743640380 386988255 347896940 832597784 727645072 851589432 947003737 101819453 563073572 538411976 629362844 353580057 575604735 889882870 967686490 560931828 944926117 907481375 444639006 88393866 753447960 547763485 779385721 734731332 934049323 203346617 980439212 133864257 966702948 635300549 659664458 728463621 401423208 788903570 638626820 402672177 921310442 970589084 118601741 941312622 751719085 859982887 581859182 904411338 944602199 890529974 103126469 510262831 916738342 670824367 229560123 927701747 962054610 343128423 253509580 757903541 546703487 956540741 888015445 596117731 31023081 329067942 285301437 972492608 838391264 741185512 145854103 813902347 605330927 501449113 109566360 366434740 397101250 332938454 550238248 83429782 860980054 991718037 785190319 287048556 697916953 828879899 936228293 891340198 861471079 655280368 502977981 678657687 907179501 352143664 383851450 735391349 802999698 999248108 652913458 370445137 735369875 383022890 216752277 997580339 144431039 352913766 975267773 802785751 890771997 410055547 794779441 590419436 458156591 759839215 670989236 987984807 923941435 51227246 594342370 49318860 745843160 993370597 500398634 773377560 383113000 947034309 800537282 775879997 182300448 705577357 715498676 719231928 706514931 891591085 26793501 810252207 251574542 759030451 909303976 607116262 709153510 151792711 797972501 730449406 731466227 436574072 146496893 199161058 230548603 989826561 981265423 370487538 780846948 20160826 880560459 415752038 408995022 831791697 187233698 670989236 684314018 188522732 970115473 670989236 881613852 747972460 623553879 802203538 885514869 80136759 732826060 348754291 732955661 311026595 603282799 648838748 114466773 199899558 177734134 670989236 130452899 897479863 447009774 708866735 500378335 679674215 475140556 156562713 402379078 954569232 633928995 821235258 160649395 412969416 760677247 975267184 755620891 785713832 222631975 149209413 735960271 666667116 603150808 748249567 988860919 516464374 472247915 217260285 514069121 843771468 994186303 753461053 341470849 601898004 704162273 499147494 895468870 285607350 797333047 730922850 765568273 103933415 978863418 670989236 850723883 993079572 922849575 997824963 670989236 7098940 344261410 856978780 912187062 436748056 304141328 68614931 687884077 787434980 196908326 906442298 818823899 749917572 912220945 339189619 338722674 881136871 615759742 23636064 851888241 759368166 604345761 558912455 750935622 281410013 969770320 670989236 733158085 415817418 390612138 349814836 98791242 844219701 181756613 592748241 537506185 520017188 913447505 727417564 628782628 167807000 880047488 777922361 925433575 623685478 732753526 545300629 131962430 508566784 969742876 348649726 429934775 350645416 719127999 809371734 832859213 898838787 124215502 383851703 834597118 817885322 724234493 441307217 942444513 334904971 655977918 167211944 731369032 42443650 979424829 594857371 479121435 349664240 416081132 721294189 691382769 888469032 914910567 433409582 722413736 717615631 857563442 504475639 974710450 670989236 857087972 216711329 725111923 731191860 905772090 115330855 153407895 894609620 21878351 337062398 173106230 949098348 531270404 371834937 992567956 653594924 673429963 108951737 151329180 962390924 337543435 718722873 560077137 992548116 120287788 368317838 902529483 756744902 105340305 962968210 835949095 579336055 645968403 563160164 670989236 76385540 731980953 688887440 27355624 330999220 816724109 952285058 796135800 815025012 942056532 412180505 961051266 900191826 315716476 5220713 383196807 968515249 76153032 899033574 440571090 837204550 641745973 746569706 970151545 398700922 278599248 66749364 382984081 685167602 747146386 825996273 560785648 600817221 800511782 757667791 929926870 249069786 799202360 897948155 666000565 302944551 504890411 784537644 748023817 313665072 834459880 882666544 775132768 817212130 431341217 429366504 757928376 985640581 52136524 983455891 431901218 456918453 958724278 743043699 654722099 893771973 780467248 670989236 373846459 798611507 508916578 10826931 831954550 688193711 967702930 593220835 761791482 51370299 16941329 297235723 930605024 342649800 95999881 493373206 952849425 685721393 391206943 323671967 70205872 680049841 518467226 450109874 137341680 204871920 68917667 602942072 362541050 957927879 667210132 20571528 941695193 886972113 704001491 441369995 9611238 708279342 363932052 950467556 844229004 513256069 251942376 944675528 794838115 698392233 598504813 812884609 652425524 143922136 108093973 932279435 892273578 822615007 830681166 795473824 287467673 186864693 747267292 141150946 952996981 272704283 764897971 847913010 978968521 829126472 771367116 750346708 743272905 612449882 389376710 357305134 497734647 936787131 839285671 287097175 712123670 674388552 809456378 122077120 469691405 265084307 802129052 312399139 777249086 534109308 810324835 940688307 761228028 700828572 482688618 900767429 838224964 927115542 382691505 658370152 992456945 77466768 469224453 229054122 719989270 676671177 836541616 633069477 680912797 581442651 943369174 924203682 671780920 670989236 592114969 486099018 759212046 753219611 902421317 842188394 557244497 998009109 188691747 875542511 852304847 640916305 646699314 118404689 805600121 382125460 107089347 840619336 634341322 739138366 330656007 131314506 650247338 700606264 69593059 641174856 808697228 508537684 611229078 341087206 83797116 526443050 965566599 335714813 236732121 705156561 942454642 862049841 774445781 878965083 303843317 964933093 223727579 693698230 799929735 941202382 57961041 959786718 116331856 714031843 917979039 251891956 749778360 18618831 198830106 754812119 754227610 48885628 948941478 903812802 28308999 292340702 690886236 783870218 867362942 331910980 362008782 851121887 83114382 583812182 296804892 903867595 568976532 983711667 765805833 556652739 433944533 363366415 316542849 841692331 38037200 3287030 917977430 759782122 99310640 855669144 174503809 748179032 984562333 278428609 298519851 76984882 930736575 825610736 248506788 728612426 905541556 737910007 826675683 23397519 100341865 828572421 358119303 913493995 450799696 804147280 529294330 857793814 769807335 252506331 866414819 736654013 797514925 13411864 565311160 431947849 789111832 780184581 641024376 482286698 723531608 256793664 199353504 896067184 792727602 844755972 722121509 835833136 138434731 895671086 859684913 993715656 984055116 643815740 953183975 906085695 686877164 582743467 31066386 604583610 372166331 783665463 430581094 765927533 349726001 57899519 712929781 899855360 289738913 878314409 876664097 288663100 402342006 211011134 372090575 431081593 452270241 191434993 276144846 950765496 263201986 195900649 530815078 387160855 163617006 281618464 662569156 906929950 390316504 721264503 942172983 997300328 332666791 647789933 751559399 748597937 55169091 96601084 893686008 882439169 875139357 903315142 826541071 24564535 670989236 975645117 854603934 688414743 953173121 992311922 690476707 256125071 731418113 701727841 37401717 293945507 581003473 71421585 357487632 198823406 780873078 859291883 188563866 903344242 440852016 670989236 160807828 670989236 998979835 471315944 755735850 958537042 1376515 207214187 810043141 672518393 222505612 376851856 970099536 969094174 455283439 572293702 655231744 475390268 693578019 872323798 427337047 617005635 305288324 60689666 954484549 717087693 836635190 583430826 997781986 275796748 881057219 816624405 242364500 238955562 288595946 971294599 914659538 28648994 821025340 198962023 768422461 675261664 401271625 430941359 290459955 315192753 705332776 820651224 406107970 306962782 932753192 987427719 902657449 461405149 437527228 802670580 196972647 598926218 539921210 819977402 145718456 876433151 429814980 747638765 369218263 906617422 420694622 72915986 710719872 916526460 519870538 683584495 396977198 718873958 973698768 783649399 354412745 171124500 319377508 619533127 924899601 921896313 671894661 215684206 217408779 929654534 557753637 697358618 978565707 604018990 698104290 182870131 681625666 869596670 46596176 695072498 983124612 949857740 148149868 62049000 727163277 218272010 100073029 746672233 842661894 770577376 778402624 843503314 160743029 49749290 262390338 790738288 788405853 971122322 712160890 560927313 852456438 887947183 485644884 841054601 380682408 16218580 965890193 981153552 876223035 998836531 113396602 929489752 243113662 116477158 914708832 697595218 864865063 285743319 761171250 59951906 457694551 951524332 731093511 593232670 733075914 151426373 984720004 63757436 245465546 882196618 928405092 914971834 889532187 701021768 749724676 845156660 735206812 970765792 175611319 424724203 462169373 946826595 607917979 827508937 773080077 139581842 892443459 975946532 687374520 658666212 544375448 700590529 836432497 343266943 968214127 639238031 696934106 539908168 696830873 761900810 444926672 678119788 154660589 951921113 601418450 326406760 479373800 971664443 999387896 894300961 217562347 43517056 111912111 815449923 671636549 670989236 374381137 637698666 684364176 732662050 591538968 733106396 587307549 398605343 816618963 942367237 896235876 800905262 363290610 67678642 897616979 511283337 679270494 328826749 918563363 616056303 445723420 902414849 734980271 562144419 975841036 939092828 26981596 210365440 343135605 827115808 887493838 292535612 208415201 405337288 222381175 972517499 719286668 567745195 725331152 155654185 458845322 224605846 993366375 375902889 222425950 816674261 786159806 835059905 625528021 519778987 915108204 522049928 951640780 137322690 13619492 507920258 471803185 945233433 775561469 892960484 627901447 768770404 418340062 784940872 814947177 718932216 131265307 223401797 209833922 604221170 750551184 875841319 106421837 211527800 930805457 920393627 230462055 334319389 821529940 398047710 338804957 629145654 404318464 2855812 803193270 196902085 929987868 754072354 796912892 559371831 249075005 892948675 900281432 573562959 561649543 670989236 130556531 641076673 711963780 415945667 625518134 908161521 471379205 626209157 126477459 10497484 670137010 883470803 891624009 82609208 795137906 97134310 806258536 629871192 920289267 297496482 973241044 812847731 875487446 183454297 445351392 726444311 220352666 797729201 480327673 784097727 176109281 466121577 898148838 85767329 64460704 913102295 725781136 797191256 837035836 779744167 468761973 849792496 541442610 125053295 872028016 289340330 366028736 21244871 929268433 184267148 770056426 724907861 492010368 808379114 541905855 52752648 57067272 238362353 812875597 771453401 721848257 545833516 427854280 937531327 876002632 47239635 633186219 680197429 948204875 597309739 71195632 745121957 272224454 338703980 204549939 846285287 845691888 956114518 689613870 670989236 326094266 866231261 770415118 384510196 969801389 748715286 808633147 259982222 246788136 987946029 670989236 610203102 494717215 737043386 592503602 54682111 259787673 834180505 792416329 117326736 505873611 285783504 952692061 995577804 839066805 705442919 670989236 725344561 501909594 316454881 688067200 777683118 229925061 758036755 558208893 380698147 975462938 922115696 225044634 881847481 814450651 450350415 467059118 476288815 632367429 670989236 283162801 222977432 804137731 884664510 426552509 435370189 871675357 766911539 979740942 230044155 797725384 925939108 531358501 722271069 576794891 639526973 89531557 608102039 445387286 857037158 601136160 448550876 410417355 624831460 943159744 785009591 287872925 771469023 308198456 977023319 784743983 555520177 908483589 912460295 912027583 706876910 579948320 442671030 12621887 178924211 173888049 989006422 205059121 628886815 626403515 139614851 670989236 220371448 792672351 442211944 891889074 887856323 893491592 119586716 947885846 220000053 578279883 987492761 798322303 185249537 252901328 949159554 325411760 746671833 450287882 466335767 749168974 745201650 178601504 107754677 814002262 352765827 244133138 788096407 120783622 996426591 50288202 954431483 189513035 703012814 94415427 515603922 789685978 951300673 514954572 803229317 670989236 617238671 847632764 568177278 820110769 816609619 487430660 617797348 129268327 608114535 969737065 888439614 272855759 769971523 715457068 752717824 482233956 674190199 33285019 946823525 84172238 947001489 318009466 986540586 727311232 744739417 344584455 803249840 694950599 404322542 505979037 701207856 295920017 915291979 63220434 438065973 724434169 22637256 916372031 156776069 659555645 677534353 385389899 688404931 856691092 901545575 808669843 210451134 385227167 900312767 338967748 551482280 414418652 834617669 685330304 493190688 215586732 601508489 756591978 759642256 310485613 82888343 822752271 837407246 411466279 378655183 879115182 408997066 876614079 189907114 130946755 800691989 786220901 760271449 937881486 841443832 428122006 169399609 856046647 298306942 390357318 701622991 558623263 418942691 612389103 138470046 770083805 596791008 445208950 924573513 918227384 960658847 429762787 454139925 190698523 468854957 642036189 438631627 866067688 942402265 8072823 705372247 883416822 394491278 28718899 932842342 949983301 699357301 428528331 59621923 731580508 742797731 974182345 728424531 251249830 935026593 547711986 249707818 962951266 729561254 828789634 92463191 739162432 850611061 601051401 935071918 76125273 213720543 352839718 951146260 747708645 688632196 762645710 62694834 965330796 977318582 345762790 911409767 957524804 908084408 30824122 170204795 691669471 684617058 853601895 467424099 416615830 371605278 755806269 286435669 491138573 690468066 420825481 921930166 556036318 985204580 456676228 513211838 470294230 463613745 482227254 485871464 854905373 484187840 694435689 531024374 752988387 792250115 221101176 845495594 972721093 594643006 722160054 830997451 952994770 187396560 762524163 793652016 875821810 696172664 133005970 554643480 285283421 487200761 99921242 78715255 672467292 774730156 207769339 342864059 152191137 841492058 154534459 902624308 326260609 624319429 365650326 311491419 877468332 380312070 814763530 725832815 489444885 788012135 283785160 162773320 482640597 637460611 27094489 58432637 359422566 68904593 195410836 773013927 449122191 347950311 204562563 784896573 21191587 769988874 685164615 873420294 177298718 791560295 906211341 738062330 559033280 680100472 808672140 855297335 979851012 391145204 910797618 769343886 704996381 180144730 650484509 141042892 790728432 884406893 786235251 540881395 455707871 822451734 623614037 344980379 913656865 68819106 953943907 343551962 887211214 496974874 1983032 212634935 773924101 963414244 504834498 20899358 16609231 689586691 530158509 488261708 763268162 65369945 741289865 738504430 761325239 795975770 293714553 489161269 839710164 161837965 643769247 707445859 840146630 832767820 879077189 517129459 185493609 972966073 684488638 928199156 670989236 833148576 535329664 257708403 320899257 877915025 426812425 927623485 517992405 952892246 414780296 880816713 45021828 447045570 741825321 839202026 297020977 7407609 975508330 858769924 813410579 994182879 319280433 961497355 661433718 862751675 946768576 332993571 907512812 428314039 603967236 330333084 420682445 551597143 969786294 392209092 3330285 725227238 619784493 106970127 402100705 356148973 733142332 772943317 515000354 346473274 165473557 253520146 94007769 320322621 750374542 697564586 64955952 673486748 889245221 994061615 256485999 863669549 34481667 443989767 96070820 339200873 902716567 958865082 743101558 714407785 679181933 68380094 943013081 969206524 855000006 523452484 276426009 825780975 707411172 486124168 239376524 26337007 396365272 762069520 273465859 987815167 961485157 938575273 809428631 570738148 135031365 902193324 735388815 790964022 896026246 676750146 518237378 937777348 909036278 927443334 162120983 670753819 992960426 804732742 407557057 408006008 475169732 271384493 870368258 509677208 895968928 725168471 314999152 843974282 136817461 960000420 457488937 985493237 637423326 714826238 577765761 566800265 91358703 33323191 499919752 683885708 485136950 285420787 280220203 961187714 205387564 754810885 673894488 764774179 118191688 625910773 800565503 908972350 754923444 580354752 900983362 969640446 670989236 358806969 760463411 126959049 797160236 516679345 669685170 666079414 840745745 797592644 672529362 798399492 870245068 85226370 402242527 751315371 874311175 707570148 696987006 915686482 360004157 627092875 206589923 34042096 549685221 382555191 867849235 317064282 992985359 239862572 879869047 817023158 522247579 897478084 510861808 720960314 643809110 722188713 873104484 664836554 753377553 251240822 609909691 794315051 835618257 284141789 117656954 678420926 864559933 921664522 595464852 361976500 881539840 218036253 969354594 752860860 98396912 892082287 17107187 4896091 832691696 196773900 155614441 538120101 914769717 812526756 583706970 553033972 802973390 831622282 750571646 680701648 771472068 556303138 586623248 713066884 151161319 989697004 533021137 305791245 152976420 784856473 731680709 540229051 782950169 576093061 741376538 670989236 435341850 874661499 850905343 96333937 941056736 929672542 52478804 702464004 949011167 72045238 460856377 825233275 969899336 835297846 911023406 845884843 956785377 579185343 355609251 621629310 461554969 819851549 762893884 874677301 374816181 561645130 931901316 749451407 903853853 300545344 405933028 915306461 335599822 787356634 88276606 889122493 761186308 711861981 939724491 404492371 290762761 134239355 927870861 488884780 872825842 579358064 38550249 130032404 751576029 713806254 559714067 170348411 518416578 327781989 767846721 868554622 779527126 864857625 361376870 670989236 570173077 966983347 660952776 725361202 739869574 518941853 684230033 75145291 776622910 857839974 558474902 885030684 729908179 421379743 176098380 113587004 953119868 514892325 800207904 987684644 945279340 684611797 507609493 459736171 23181976 326709631 83244548 717085236 497339590 863274001 609391677 755748634 732937827 546795406 968370497 981630501 108335213 289796815 597201711 128760052 611125567 980341833 559062897 29489344 617025240 509721146 772483815 912839412 171628966 856526365 230198744 161661583 787936224 812797283 204285063 825226071 704732390 501859780 793077274 963355992 868247570 861247646 32919235 30696086 816414790 453128564 78796717 336880929 519153578 937675144 53845569 605640945 227520397 759612382 206783864 879801430 881602932 263391484 338128700 952648415 719940327 709952890 858663896 751379922 224719116 949239768 751268937 352545550 787681828 822059063 714309101 707939679 617971018 660400372 60581742 921965777 105711537 520698761 331292640 576087820 326955067 153835633 971282899 746663419 375025870 75568316 66671285 860520119 104232927 294479030 252277670 678810789 411599803 305269186 735949530 760242181 796774923 942049896 959684028 914748734 933358740 845555866 788075513 772252348 961947319 888088515 858613646 272782548 903121783 865432419 396754293 359679618 197677332 455147028 944774588 187597015 904283800 947518743 740200334 594679071 958864633 414436063 560353658 222250294 438263351 77340594 666928540 117857147 659300785 356494813 40443659 801737416 781646638 774103175 499308082 670989236 895698148 700490224 771073392 483975810 921703190 287414597 930194253 281909855 709695655 797312894 463113330 863040403 694571834 136503152 157757625 249678419 156741672 670989236 797646480 732840054 160034462 206879737 517557271 344558664 560936507 546755341 876718103 685570634 889541804 101054835 690896675 928852787 997204514 954285954 893986868 583655899 978772640 856955740 368335434 761170223 169475846 2068347 644870264 743982970 468718894 915174505 261863132 998726915 307792943 405684796 905447746 433175619 818766959 483789399 949278384 589598064 607642230 17493763 646023050 353870276 9888806 362037123 644785202 984697992 291207676 592388903 678961401 849648160 970437151 730604706 740703916 160186612 155877974 508355291 351272371 650326203 9598073 806649957 670989236 194773904 278307455 346012612 2470607 719408225 660728827 881737356 479349133 854535266 225595986 726685604 525419496 180772477 897062934 853520665 722447831 806733308 992449236 995384117 34483405 343308191 805472431 839076131 897555986 551346322 310620005 515157520 742156357 783331587 466163197 823130848 344675921 801275188 709903100 257355434 420467469 868579870 343166718 291347120 388403894 693787318 681141956 690471025 519082944 162390714 979911246 164408948 692457542 300546016 849872592 508367075 710412366 894211785 882459724 330988871 819286944 670989236 774006482 915262730 927443544 731596937 103230905 290803297 16024601 866614866 804185608 97042871 791872467 966895897 897634474 188170437 553121042 654009154 695291244 286192389 914252499 702880760 408043279 97103638 504534534 385245158 319857625 85384070 595371122 252394844 651949815 983481293 807309617 503327850 853696369 466409992 332316342 261313487 684759989 436320657 5829972 146269822 495279959 719833298 66234476 446677965 861219560 822753732 3416673 526754570 734347528 568313830 946696659 167280168 431578635 815163986 538240754 816839865 923556223 979932344 585150809 689074736 565994152 491867250 990378476 997576900 782452139 7862456 394551535 102652136 881530324 811932811 895330493 746116010 111966217 962354939 892806857 990564189 66835823 901270136 978201307 722327364 927638664 492136830 116758843 817263458 647181470 697812701 995527902 829569585 530317624 901704523 269765824 967002612 453560702 113248563 547870442 936928574 957263663 693253555 281475205 917188773 179493986 807321803 980006349 40486522 653963779 955170788 819505827 140279948 605041690 700035448 893409313 810865567 120612860 485982878 999003487 990705005 594789908 465674184 334380521 858000550 13584377 260540292 730155595 874860695 907755633 221041592 564277611 804379519 493570297 559444504 880312244 112972719 144438500 780883566 251345922 914609179 678945444 801806928 814923255 600108620 835974223 995121583 274480240 892892296 860782018 881472783 696707773 412990780 67308611 782330765 252281706 728212414 866372002 911519658 699441767 237026300 417667365 653712072 87616874 430230834 754105689 764011770 243607113 452408504 910933061 26529808 346001602 204257699 998709845 784537327 563767514 726507799 804954794 515605227 682836330 490678305 927047589 266644773 119834640 211538922 229622473 827441105 932721236 48609868 438010237 870087538 813700846 869799581 434143879 718916201 873079695 434181682 791747246 987562885 545266030 835193418 510234947 569063008 319967750 623128455 105097657 403053815 868392731 658016656 724700590 616718548 588393604 653560478 821427394 136944434 881156337 779989946 148760088 847750201 239777441 991620206 952001074 364480574 536192777 971067970 146480575 266081515 851376891 913546886 784851501 523748076 731456481 847815213 67821628 428270091 451547898 661937048 370579067 632939609 137563857 839367283 827994512 931837888 371811466 3171261 141225252 305982201 780450442 305696308 225962122 618569088 569995741 376786675 60832983 227730778 714583083 183240234 290633175 931840077 25854702 89209429 796690024 622313134 905049589 426143069 870702808 833846267 828720554 237048493 33649200 969633600 659552426 472815065 68365178 804930288 987498823 864835731 32677111 196238581 482192499 206098800 948603492 948180056 628446362 846817472 830063932 890723539 338094647 897986061 504168618 650939006 491375673 277862530 577662831 671867832 86941473 988283226 220676029 275008200 734455596 615732425 832691101 780096880 938530712 633773049 953979700 681495944 113306463 198945176 90181150 314713906 971014727 810989927 778548219 742929975 844325610 775340374 601591895 306742433 605210307 248982927 390458455 341567140 870050027 744960255 705929072 222321556 995534963 980803398 230895487 908222263 173395085 279024401 851241005 864181865 500374443 402533721 572431112 969643012 689953624 137357860 694238021 53450198 241649302 906049105 970044510 973448567 291892126 743257803 588502118 255844394 752377999 823412069 238675657 263241308 978072096 718710190 736135075 993816886 768091270 756477097 37695243 965282138 873875430 727710982 985588677 813323314 895267301 213366118 785775779 867799519 942108223 418134025 853139143 879574939 848315656 952852896 574050774 771119761 103623656 904226361 814309323 714381379 796669775 780472237 886755078 763173758 756602948 502153130 355249275 558207544 619603874 862894313 120930448 249060654 961393361 743409897 794160778 878481363 613485762 375975854 978771488 179318603 409899448 757675103 581300887 313565142 985607740 94529841 616900211 485740267 843233800 473133158 956729772 719361128 848527153 170144554 895738407 377596306 63799238 676597901 914181133 981467782 720959504 611439819 97689836 870679210 629051755 119112309 192607044 362856871 638800458 400013986 593065369 204417147 675277373 722680272 82201211 258345235 505127094 348276378 64599333 58361164 393136879 58289600 903789163 897009731 942535551 930376150 882129363 961688033 767921168 80677186 686584623 679633638 828778466 792174660 581161311 541647456 491704496 964751069 319275323 883912852 778353137 43212510 396395683 456938293 876669004 894844917 129381185 122002339 961928332 992015903 997497228 409376280 202875861 943410018 11474838 71920483 928728478 703587629 595827051 355930465 439277101 680472623 918366064 487677792 779909887 548204660 688083853 591437463 918133149 303614464 631681717 310906933 256187132 751000677 595962102 289480738 529373269 587092358 729187467 84266608 957490190 644256132 992392347 868343274 276252068 106990890 749706570 855395348 892301503 597157165 621112483 990223577 200459827 734502042 261486185 213988227 878237596 961228301 733945129 917184429 998326766 362982141 670989236 871813094 860495081 410912551 163262233 320355445 493456719 482004245 819361818 356777490 7291144 555034052 55701592 533701662 948315413 514067726 952619242 809850367 87600825 519837141 543105411 796349431 290465037 879394956 559764397 738169695 449792186 87168683 966782656 314124011 42095143 651094483 748566973 89199126 800631017 471958491 309464592 124340266 924948232 973809175 447659394 735696155 862253617 903440980 963047641 741261002 853837780 325811246 283048021 750985239 847970226 377891200 994467718 727349986 887808091 900994163 157337555 916181033 808117182 244660586 62207542 33107273 506864748 366224720 33813759 862413686 899230051 523492929 741742659 876408833 978676510 753647613 925662518 273881115 411080932 181910770 465048879 363147494 810057590 956366173 825851599 234267842 307928055 122967178 945520601 718923315 97425386 321916456 896305545 862580554 943063693 614792450 430587888 740609953 989251629 933528935 166138043 85450647 550433036 908189563 513561698 958997157 784143010 935117337 441177172 68023126 627070826 997048147 77928907 970339915 735994374 523642415 626110906 647925428 948582869 853603688 670989236 920118114 178595442 836102672 877084233 403564524 387161102 675180521 535657935 396226994 53565919 895127813 10697697 665204488 708820798 170514697 49268776 728983585 248828717 903397120 888610149 224230665 981050803 973454331 929180337 257663351 646917124 737695494 169378346 14654946 965132646 966517928 746970861 746668853 713040938 559484946 502246834 639321611 981292816 950966627 982474915 854302621 572364065 745591795 707494360 671037918 145633094 43797574 799210462 670989236 219253697 433337359 418422751 998898973 950509286 406365644 927873217 259372492 2380706 792387594 658576784 64779052 165003918 143057066 877831836 313524774 585116221 823933647 33297476 420434908 781593944 769547249 549210202 415323444 285974643 701742057 442914088 969530891 950406305 36011885 142633623 152372728 872611818 713850370 260887298 28566186 365451293 269628654 311073269 983717559 366915697 861357534 963080333 134275994 22601778 874215754 60253710 599248206 670989236 884344295 455300115 839103437 769658262 961017922 847915548 519961779 588752523 50619259 388199706 431065744 75740063 602942641 552371154 29458643 438953742 870524207 621766009 940582350 788089256 894033113 901092043 355635971 738522609 766989426 984843684 943696159 625887594 774719546 976163220 780692614 799837804 989301075 971298685 743112135 522480798 354657514 738447668 132577653 792619635 153859649 130897447 26831739 326556234 930969770 330134452 133521329 817382567 588530226 697950645 203507074 661204369 456667131 749311338 116317031 357061028 33667275 874895606 876317145 640317118 766221267 813950305 115858442 853586354 774903809 797595140 940059500 3934537 541795155 3295206 711358289 708575543 799158810 800475750 782664566 186911316 694584590 203533219 292579025 328373554 196561232 552495920 419922655 724810624 935038936 951400058 344679469 920296546 702404681 784921885 989683834 73293173 806498054 185807467 96169289 241278919 670989236 736220758 711832047 831737738 65087393 215845677 709575294 284896030 902337158 594072164 762240248 439231605 253613110 954206011 591817899 548590578 955091983 700204589 761562118 803862435 611807566 748973732 487629966 965185292 996909205 894819585 744201717 856052201 753008854 340660161 987754157 794194786 355355247 447813753 455082838 9911213 283666622 270847745 9576136 564739505 107118585 878668095 988551698 475960848 975673830 800754174 856006647 745522446 827219157 848949720 228638409 909876759 774521729 772673177 636396808 760796334 455423606 262510122 392853433 94400483 280181547 487451927 870172245 162742683 680946568 947998928 682394544 294678147 888042028 426911330 638027444 340999859 193844246 524134291 423308130 716695617 68434138 333307504 838358706 419711175 759138493 405994384 911110258 457776063 868542800 820016062 710020609 841455853 991705737 354617447 989597512 271519733 741827933 381390634 711962360 411031611 961868416 236105226 62649289 360203664 21564251 171880412 605790584 278696391 115994315 737094069 384699637 788979576 993676952 517344536 44829778 958229473 236465276 111547044 670989236 580833440 774779704 3003920 113936512 681874848 119754142 173607830 49303735 428409897 441222193 547803981 412011669 699303919 417493881 834587637 942114031 214450536 624539570 319375166 66724546 270754042 235405715 563537124 941788584 426162272 655348720 587914211 182070508 861171588 833177536 604104245 411267499 31647880 648531789 492021545 820829235 166555605 919017838 636637967 515487128 840122176 984431808 756595774 862157646 289343351 84126911 913772257 673526538 967425120 417672829 851342772 670989236 631693212 740805277 804858057 670989236 289673921 176363856 293184434 119472374 573932501 889362988 63027871 435546121 710278047 774164684 830091208 487942672 877033260 273675330 410411498 680377060 664807956 98336755 691438622 676320929 686394837 53943933 129733642 350621860 231293789 399866365 160237877 868966921 677937604 809800148 970192787 745372369 961318999 388240551 761718645 933727736 281866740 459549600 142929562 44416578 685234488 289407716 892857415 897195320 728649928 87076295 783595160 462150735 650799546 733353795 408924473 674414382 795422576 960936873 124623327 355024112 499923995 989688817 572057552 580890000 374475931 400910198 703849127 733903724 39919204 739029334 727474050 399447411 50327955 487955461 681162559 307144666 402605937 781253523 770712485 926585970 605591292 450203613 802371828 351906464 117944764 951825098 226665125 502831308 805609322 143138392 997743725 405331208 881450119 120289862 775667182 940055023 11970325 739340900 456856814 840360018 119884001 138833365 753545565 621031776 624179746 89699150 8255565 913766847 175638495 807090826 293502232 800242315 996003736 594827909 885540216 202334246 488940902 877238671 663337017 189344223 790043204 768692648 162006642 488809204 353943587 771863067 922379436 916752336 887027867 857048384 269185073 212139512 938500766 974176523 250211521 696715386 996556639 349023308 912762637 361810350 276511901 867909170 827856676 910132350 869182371 453742837 626639357 769608238 333212803 370615581 948920424 72978321 183361404 24454182 222314911 651590616 223498544 834333475 685537405 761520092 216392557 962237319 26244551 834870443 920914076 768694122 247772550 504184544 345454557 967805272 578450623 885127616 27763362 165861672 815216497 933069449 52197644 384334126 722713916 867280321 820123974 581940817 507962261 340523511 46661660 903936802 98278083 654658850 926590012 444621674 94193 961638243 904218370 997167918 168336846 678581311 214647953 904900825 203217999 423745126 260867417 928048014 715627869 458652836 978883578 471308907 673574461 242214298 137744577 900572586 599453193 565244012 936669761 641400310 676759644 940080159 833239954 325883951 412356988 11942380 787381155 508592764 840175805 608661778 756826002 614163119 563874223 856031574 624222408 492765161 974479327 670989236 513035475 23534840 434254210 117725315 591368476 111048003 504203150 289398261 524627516 488042360 803916507 403273625 605110408 612004743 271407187 606475474 662830755 953883920 219551792 866213681 756913648 367854124 512870596 455762635 926767583 663263308 444427424 565767056 57356637 402970177 849427036 868526967 204587145 214306458 109003690 653022188 268371847 157171552 438801367 553179642 56517402 536939873 91438823 434786963 62765367 371903886 43730008 893634327 524662714 856789285 832109651 897700096 918260094 81935813 199667754 700901685 661955294 841422925 824759711 646098841 157060966 752932609 117223253 790680665 977119690 644761277 734300831 484288522 938203375 871217628 921733492 350552860 3203327 670989236 170967671 919820759 502267140 797179242 658844642 69207384 727432180 800748724 55747970 773534113 153999038 237880933 237249169 310616347 979251671 601887053 309995194 968005058 704619325 840136909 834196233 201915595 599225679 14112571 626337119 816292815 260460110 831061531 430644548 727653822 254157662 45535839 934153247 757342490 895884622 242219362 818552565 146214802 772024965 991873009 808699686 640648389 85980352 62654342 651454417 715499494 476284863 953877669 118489431 126204288 372933905 984647470 858281761 412409859 882853965 8940465 753349381 970036120 758147810 784542229 937232653 273745558 494409534 722153840 440292940 362804648 768688213 732733934 612471668 124144238 129186504 680535037 764029777 318348592 689599746 330916987 447471132 676186013 521803031 831716577 598235967 991339659 494978454 744817266 447185763 814476939 797297172 875397848 865102157 694040085 425949874 4279772 138069449 877264404 831317549 348101456 12609761 304410173 700579756 822937819 688663708 949551510 534427323 932032108 676517881 941151158 865164223 170866126 734202362 698073697 87761848 204013417 520718436 821742107 791442791 111428473 962365649 217060034 933525811 795389030 332687112 808310586 195916882 640797938 114698470 915396199 169109187 956094118 234093006 759986512 782885050 925164575 890225073 895211105 634419455 817530657 881015141 630602698 767732224 791226497 68387304 61636012 223451612 654813548 828084729 761040837 879111475 940410952 662517930 727881083 871823339 400359987 683590846 614217308 846504039 672965295 618808175 207596750 438889427 123033321 883487810 833073806 820819183 214974141 744358386 621816950 927638888 375363579 948027012 947754746 284702430 27078978 630456356 317154756 808603038 945311918 473158746 735937968 882437714 505776232 477603326 414194628 854827663 282820317 820562636 853197212 709343016 82327110 941047885 718979453 139303069 592424953 904087147 265703479 810181095 438722016 191724535 490487505 316496156 785065197 854433428 707458121 401370208 101435363 934790104 272670718 543490927 455440965 97771537 741321914 41204703 292271526 621690580 974989779 410688228 743170547 468272729 729685430 745300120 982119525 449749744 392838659 670989236 488337953 975455634 923209725 352587453 852637717 677105754 5212653 417308128 751037077 208266699 972928052 893017347 926176376 490539013 407641262 684347340 920441613 797710376 992830437 911250444 932753506 739288022 389461809 815342742 647390479 887509188 132962906 485550433 209781553 522539292 383616282 103020162 999862827 735843987 454569714 285991858 919054335 133284818 914594430 478098558 997458813 686424499 178323557 932364333 915509909 737628773 519948495 55101681 338171650 285031872 318662942 307581523 182082533 996989712 368287058 874948027 103965976 383829738 996273304 834888383 813648262 622705602 586787998 863229066 380091554 262864779 750407553 855376213 811422474 974315850 743971776 559217366 322151227 540032638 998017621 266759769 717792168 470178933 966686358 566264723 495690161 884471935 933068234 736917367 944444024 319359984 840278521 51935659 699210086 909776831 319309850 236049296 748313781 818883201 325990635 476218210 231832744 674939712 801701403 691173946 996702974 847754147 733010441 340051782 719193634 697465644 939702497 235911063 641899782 240496150 726962271 154951175 519358016 968116162 990459248 808173494 389612240 740304943 169826197 896479479 812856390 880471492 534600795 71266332 391786363 877543995 351348725 607440336 123603374 66317661 799772661 617343967 708618737 411803847 800623274 441828996 902699205 904402876 250196889 903913533 977397364 373784705 977830138 103982994 439383295 822256687 962699482 225448003 881477899 719823765 138288877 22400113 689033891 61590019 209008179 66283497 458175416 917842656 377948112 749854160 425602266 207465146 864573489 114207188 691686590 90784587 12822703 80198214 525686090 152776829 914994796 346617398 297464690 777470525 792139221 174809361 181014124 665301638 975323193 383990527 151436336 538123051 577808672 865576032 649570843 150297126 832987385 492827276 238925691 405990263 282523756 505315234 402618692 884924398 187895979 404678645 86644552 301668304 564640966 813112183 956525546 722555887 881091771 988720447 315357925 854634176 995248252 969407071 25470842 633806731 808765882 815904213 174021466 754038069 844251961 774439046 727416723 745917077 273305892 565573303 155787258 654026632 335864795 442393026 296922585 88657564 798837258 434639549 294273018 973785250 786380837 422414018 817315102 727259739 733863021 809483123 929081762 642126743 889348483 716279407 99750325 530851608 92314593 145231969 777326652 814944178 189794555 987945771 452891986 250468195 871494222 228059489 869496736 731243405 157361765 408373607 471558544 896162995 290524219 908651958 275390323 649777803 59724972 52250725 699082738 955264563 213417881 596151864 776678101 835530296 306385418 791037760 875641693 479216789 66463591 750791731 756882057 967131017 826054987 953331541 953507301 640740034 90644337 786748935 659174788 509981384 688034109 834563397 719146925 861590780 656567211 998541511 447559905 674197195 315532755 588255102 204007660 857596755 743369716 754687775 437323427 889087760 100045514 62274744 521430741 255923182 924220913 328368443 677470983 444756385 310358410 647856680 628899621 238127860 885497471 25319648 712238086 570311900 918903300 706551260 858766360 961258169 921590017 157053905 272961709 100760241 992697825 728703823 10866373 594619517 876740558 249856218 707367882 687085904 375323954 841718473 135742556 979641313 468441032 627013217 956180140 812896790 999341491 388267690 821679254 865331939 374468504 945865123 269442350 379457496 905914683 916344380 866963777 651562066 413697623 879105151 419580330 933971678 895662342 266941758 457960665 878290916 393000117 714153996 645159288 770237494 149225204 963921607 771793146 663925915 116183565 133417482 730721655 645294518 749278305 361984575 135086885 795956327 525292169 61829513 621472836 609873540 651940615 393449386 575732621 657171308 817950793 799157580 832381479 907759582 990061218 694556436 309447474 730926291 817992178 86584627 215915208 683561587 552561407 377684946 670989236 87140275 909746804 131813915 680433846 817855763 373799103 105964014 688067535 744380674 42114260 563752776 798081522 765300484 942133343 899723320 775051756 713209327 278569331 548878192 717669941 331682008 690340307 131549357 701792085 935187412 871402723 751569822 937498671 831451284 560790466 273591418 424082974 881149335 137010967 675087154 755417247 536504806 910839896 271051110 762985375 977531196 780003367 974757675 139790883 914265469 265895178 658896935 903844281 960092458 124203769 900196763 789321109 674021762 948795239 798648548 229717689 353303482 823241071 79669400 989881139 670989236 896317219 209861775 127987260 736609347 844112890 360010928 675709583 488733254 982003544 592145014 15105963 919370018 74557489 884594902 121169139 228894593 890352025 715707455 385142585 609995663 196490713 176685943 839771325 460330300 633901691 986379717 401879527 922328743 955468901 669367861 827787681 866060760 804522854 66004106 272654322 307732251 999422323 406318629 705991201 821261242 646432518 924943198 40795240 839913293 915452688 465554473 58977889 488402008 384363836 474820495 865386775 702358456 244050903 670989236 893164510 998701828 879999146 625730468 853350836 649215182 798518845 120460199 937846769 802026620 976691945 821106799 470708221 173970968 844217482 151347883 797649494 446119952 748003385 789774157 253329863 182202173 776691538 632925609 365160594 917989837 682041552 816403204 478806319 903838288 562967125 970023858 591027470 639764158 828711831 228478884 709567861 984579075 91791148 779666478 552550991 870922527 910828547 382726832 748126205 253407419 757671340 4891728 736709280 988497558 694165718 395541994 564898039 867992283 858141236 688844914 780540976 302998279 845005497 972115927 989571304 264956357 849712289 918910173 52906258 788609793 785516448 555997216 916855519 355290710 949856439 232431623 315775198 698000880 905554468 111400728 315280612 74747548 576628864 210002252 493275998 873601611 354699637 982035296 503591786 933150792 150543961 176279990 986706391 953773716 861786796 697115528 874042717 608875130 326775603 703262648 996550652 513195236 18209360 908813449 18695977 104578526 18063841 534714152 422617675 911114559 916400821 900953149 912472900 772748726 238839697 657369047 985835442 938717590 153497728 893837298 689365379 491970776 145360085 46622055 454966878 646933409 373393150 798835925 494856375 244498653 828320732 191333438 873658421 288833305 356230396 386041211 932157587 235421626 985573326 825242958 939741706 782354143 212400952 950274784 448334620 863121338 146670207 848889948 984549756 50446848 149336329 128312379 635714635 924049885 422373443 584374764 710947027 789864773 236798427 401332147 881035607 975952428 319621746 982003015 752081282 851435107 946032444 800750620 654427123 222699630 764524286 884349054 172150462 771540094 794152957 826465678 632313898 210745167 571990441 979169229 940751064 276227649 959104075 766597561 724525792 574223870 51117382 307547124 128772557 844860320 709752412 703917536 824474285 713649484 905959624 80342372 785765802 18884308 491220935 409254126 86427960 852168279 392973825 140593535 908787983 331461557 887394362 230542883 118900428 869463357 638039343 760257494 971148749 235481928 292763076 858488088 551227688 677650934 817162390 709285834 789839302 615101465 454834798 622294906 967064914 821456871 818697318 836301042 159306750 362337286 340583695 319586 303014159 794353081 787442010 973534464 808996072 925435700 438192652 616537964 516381206 837625195 819351664 550061732 792325494 780374655 918933288 529937592 901427472 704773656 189627152 935550923 57501302 652526423 734021534 920645061 996348842 200366260 563749604 341106457 632495754 606033565 379747707 718278379 777435360 347203776 94516414 425494297 809883993 245866499 847654894 639473807 725407871 118007212 197680986 897637146 527535002 196645737 758304480 905965827 771949072 848803066 68491637 891866974 56377011 968408580 743898267 939719581 999276288 320862222 299555802 443373952 445119101 943072413 681194397 700223057 228595973 31229813 24120820 928274168 542360339 347554590 799678074 914775988 726316130 222898693 591934760 779986066 709300570 236080553 46526308 426616135 427253164 513358391 329908483 896685871 114157130 871662578 474627434 626831460 633502318 398874419 338441574 763436933 857454021 267272611 772656721 489236980 501010741 88537988 322367651 429465541 327211284 701799017 575553736 353832167 137748858 807517185 835647961 707863694 721169560 789507949 188621424 848026248 100275469 784036305 998108690 549780457 331786485 362168399 571717479 692752802 801559520 160742234 329929048 42745267 670989236 966572074 822900512 165663805 813136277 890766247 882668282 366049920 636732415 974485971 891949038 185682441 926765002 555446006 422955401 682541220 455425 329956429 83619377 245293204 44465041 720003826 979988015 988020376 121727994 364023775 265455213 341181801 948517523 320757150 292692408 395234621 670989236 310768142 846546231 89723839 133960520 439477010 34057405 898448621 695528008 746648631 719922515 632047279 133652630 441113676 198459314 343875121 120026536 202932048 441394270 341001446 793551932 807665163 698327740 712946476 871594637 710192205 762799083 732256800 577419911 968649184 160331317 391069826 871395090 728721185 151291597 712520821 212163730 491050327 950824456 206364108 625570193 765805442 520736589 936889928 968569242 683684964 999203712 969900499 979572944 433486189 76713482 804307529 646535783 877286370 875261350 751952713 776906150 168613328 765302496 82536289 926477833 630454472 884674086 370104563 768370705 835686311 328501229 128491308 675566371 588448559 170458693 762723436 346109675 25069789 998225703 810531563 243441786 78444027 450422032 688250959 187884416 815979817 676608762 651279870 6236634 965423320 817759154 400152841 49170302 372296886 487079378 86048047 207954618 818839923 918655792 770497920 378734749 323485128 435938399 488225618 740362172 41720920 627047492 606999854 694991034 693886694 794237288 882969248 777397599 398126541 775337178 43726808 654728071 94898158 955020777 457860555 188593855 778328483 299093619 377005072 63898030 48740343 785224008 507330421 208024716 744089937 958104959 626778773 984129109 113790726 456650514 534935124 784576944 912381814 226028202 527879718 318951351 822221842 687534240 748344258 563748507 505858582 688749135 171588674 764573719 202762577 544228173 145250691 711071383 510898697 793979977 338420128 992548583 703757233 901515971 240080986 427430566 389508679 517162257 319031733 849401579 352362081 268171781 557246890 498579834 595097503 76388034 637130054 292650262 11195493 565853075 706804666 614325432 896325365 767904247 837816492 964120479 485172559 440621873 971846804 47719534 720043729 546206936 929128501 815919899 894448768 995872559 783352144 668477154 423186230 440704827 950309208 936750956 446966115 829953087 301641099 901843927 135864753 238059619 321168788 474325059 437411332 189861126 920445746 600188696 321316376 670989236 548062195 832513329 847732425 617310642 151360023 216774840 920876967 927032201 857090697 143746111 220764530 87502556 639581993 822940451 839081373 500672873 564095722 441305177 431052248 53033480 126880009 868606853 959528615 94406146 563296524 836200617 824708205 553097599 289747575 699845218 463002483 747088160 7350736 283633397 917033062 256037641 382961437 999274890 88837288 579020009 357339529 173882891 652594557 287187014 771405668 232243507 742919314 982621238 746377548 58149656 840968297 346132736 761965265 248441832 712879280 238788445 576172128 322423688 514324285 356226703 670989236 667923554 506162283 656936387 243983289 950984403 51445509 858472133 643129038 442551583 438339712 418863329 544263121 383965595 904562169 432380681 665196835 566602359 98862330 796382835 587124314 203122287 359562416 957080757 908601956 451464995 143733209 689605199 376635764 801957155 544349951 823067491 747275940 670989236 897358937 818179798 722154807 250075988 619928111 242347719 228521420 856431935 475419517 329950229 720637689 53432092 532312878 8880721 518741125 86280382 211203050 269951300 212099254 802892920 714232181 713902302 966796901 317978196 482058211 409325438 573277631 253014694 157642247 48996053 630801086 779631467 952732411 283489380 289427730 694157677 491770479 928489083 907029408 696965976 699326240 26423884 398093061 44924291 337439191 276359079 825404984 643637081 762474728 931567725 878428932 708084744 711305168 38318286 346860770 91703950 663545716 307455329 952254553 767234908 206679476 469740857 886461694 485061026 655778063 433864389 670989236 537400201 769522889 643600547 443045095 931228081 193025654 330608873 957278927 42669318 328441544 939904724 348875485 999298974 883411177 782626706 614725508 103310520 16671196 255170829 936850303 869081192 907034229 123433274 487553876 145248358 793724890 448449284 770005981 383880392 802384705 751178297 80460538 731404433 38981189 654720866 864081363 844353276 779507173 893623216 425066564 908479231 758349111 182605798 685296687 139706570 124507927 953398673 927414803 245381294 641279368 634106915 94436492 963351615 299259162 557494477 702770209 661074079 60864975 807157428 650335807 506201403 965259480 731936258 228262245 640944001 993664021 986753988 753576478 691337268 595371649 828359571 903983726 821866637 716792713 148525986 78099623 77849371 954828277 764917956 645503573 511222003 801566021 860241730 346782035 763250247 848889494 798484104 262289982 642871430 912587059 893858089 698931185 442809770 683883243 714164008 670989236 527919341 135409001 562417365 623086267 938254503 706269002 824231978 71621253 174090618 81299872 685834959 933083506 274079554 73267411 707273731 592072144 435710123 618298693 980388859 189643479 35915964 329486904 439648352 981428080 730773323 765483460 766762079 737010754 822683312 828018300 842073348 920787027 733700669 266259035 264698903 518745170 109203949 590864953 670989236 396522334 996230345 356887952 82161510 379504418 763340688 575661923 982410032 890709922 787873394 915265433 771019762 533049244 880770819 469210940 46190422 441001356 938096868 822574121 445464713 830225750 634225198 12875715 670989236 703885933 505731694 699550088 122238805 903501315 768594284 709880733 115766830 667105508 252844007 744038736 782853951 290194126 815771953 196626132 757431948 924424669 828861413 440785010 153221227 173069707 807730130 834204571 906991466 698664565 589879274 153080723 750524489 110249244 37086231 558911806 851505001 830563090 715520291 858288064 846347014 941462884 971680417 507360163 444890586 850961063 141218962 711109709 851389430 610086628 814067148 927235668 839816934 859518139 798539208 513773727 782400744 863086447 723575980 405937338 994465001 106594309 692404719 497006244 104052844 727463831 708964705 957895750 938260445 760536684 300508851 773354141 150524668 426461831 984005011 289512501 725618138 717722155 583474001 989994290 676184498 49248348 511832064 400404726 557912860 372752555 298616147 946188167 796806405 809193075 730998383 660773397 475629179 970426086 425048730 977880000 875018834 887973020 630791678 139787334 635388111 533162618 764001650 691702536 74894234 293658596 879767671 886821204 797098615 274391381 687684877 48590087 976926191 48823381 261039435 85063755 17436071 707993375 972926674 885209307 840396542 313506281 840203982 254285962 794894479 820243733 480924584 708626675 591389268 717561580 196423522 861913630 718850646 1793958 585296686 847348335 332331096 604813611 831120946 843449835 213375134 943940957 375338251 620689128 376073924 906305132 977244316 734854988 400293683 148665745 951397612 790692689 483171348 734093730 774107697 591339970 503684732 207684523 784200105 532719904 367563098 778945525 309255390 939134400 190373314 670989236 745751517 280153503 733284242 133011939 703807649 850651315 878066281 153940865 335831035 848089348 451819995 980051741 841725980 655522314 694866495 670989236 199966776 369922633 2107825 833370580 187238531 496285947 52185513 964603445 906063927 112563891 410149281 178684448 663089303 197743005 966428389 64931000 703459923 193772924 692834984 131643122 917713538 548188071 65249259 113452165 946076674 549839531 992087306 700379938 686614152 736469237 255202829 474731111 460750460 510316545 912003223 43201655 856031706 626842684 250973633 938699820 508728116 661997423 559134094 64543399 233954592 903339554 734789937 787493122 922247833 196521870 89122935 896687749 724312959 683565515 227017855 201860891 623931876 423124296 711509970 249343642 412931391 274982351 737542765 870872280 621822319 760678613 672614394 403388112 650741765 426004283 820238578 955903679 236200872 719522689 484979042 616758805 758955537 105184203 669012527 882019015 841608774 168936335 573794175 809175401 87992507 874155916 793062855 780293134 102004841 575733184 229993086 331107725 559320200 885789512 447072060 905132788 580547280 771892132 103381135 764078969 726486970 779270606 889267768 870749674 948676389 947730991 160336253 3038014 994107116 668367616 659916659 788717064 939078389 651543146 586346743 269627045 792316255 160171906 53512713 799900279 865471044 95013918 648338672 583726828 862318816 317179460 201533520 856201078 290366573 949731323 780057674 862218166 167170914 649189651 949851277 110624245 817025230 951068028 804290085 804606215 928998034 749377670 670989236 499009290 392876395 840716063 877872300 740173971 820740618 752804764 924664880 107469105 578448243 835464711 743799059 710190247 817431418 814320616 596726084 673993561 49496596 415693834 582983598 62923181 610026796 645339353 520586141 124477637 452699801 866800155 89737184 644071520 567094297 414017401 252834370 931386049 900834317 695745861 426224287 961711581 727390042 785982023 693243392 955029277 268136335 981391489 915175287 446809450 677119147 380706122 196116803 853291996 479846990 316904471 271814782 715969917 956608035 696768640 107546820 835539172 213399511 562511234 104341902 915266746 384835821 485687082 321785435 857392346 152221466 722705357 764702642 222367790 488924239 851702539 286463919 670989236 164328826 428973065 576387103 879943804 875825268 600907439 26015527 166768598 793269590 506412764 287963597 749848501 977326029 978801654 851432387 757442593 247452176 789681289 488118200 558513949 437208056 632340387 872046216 746876954 313020820 767322288 448947836 318312994 856781331 294452030 417402802 902020687 345758931 343423428 817354353 983169981 213720080 756413868 608248013 838860590 553838525 341735236 934009293 31454004 772063064 537499584 700312659 172135779 144839538 638346304 178053882 865801553 93048107 805035815 806514662 809045909 681398566 604451673 312297107 683140162 383465492 237506777 53859162 963814229 758117609 442510793 430940557 846293114 287287121 991190143 110154723 949979289 670989236 844959007 972268729 585017337 830256213 343188269 80400165 849331970 46280405 636274275 222600209 215080160 840969714 304594275 364883605 827519750 868279181 961653692 986911261 57881282 218235547 937437792 818160922 809229307 866555602 68388220 304808214 598813670 810740611 465912124 723754705 510261129 719330494 964388041 513766871 409727144 991853753 694982423 761297894 862406379 908292941 972825470 395213377 111768861 711731092 918474125 130170102 672968909 432796352 730662108 847907972 201775410 968334636 926947766 930521715 294809254 774317010 810529598 297784335 524692624 692950746 935841839 760094582 523073011 670989236 685298266 683110938 756381689 729263083 803946880 469563400 249856087 457730981 683122074 102241978 695536065 675089926 866733386 165327718 239250659 868520179 207095666 829179476 503424682 685336576 354483946 92806492 339598436 758663096 877875260 34068630 655711015 766208614 666476685 217125772 736126945 610049531 715923169 55759041 750232031 256667229 878925774 997042467 794707691 763529013 227694790 330351202 532958390 569023257 64307532 542762516 32036675 705965501 860381903 17645753 398635002 35183170 787818731 747455178 817708677 207820512 204647946 911476040 984118829 375620613 815718051 591128766 232386795 535780928 949468222 377109527 864383638 371263973 896930234 937933145 87125042 681387100 528690282 416226102 732296547 417338200 765627174 9840103 674638329 473784808 116061984 550479258 744958920 987015852 759992757 79051737 984161155 988533255 3335277 283837212 112946504 185829541 809094506 704777268 691307234 540601543 193948650 372852121 137453054 687192054 917016104 149353745 109169261 464665320 825603102 49035558 761454267 202196012 489641752 205196845 794836152 925263051 746432584 917232201 399085552 93383820 407327097 748239279 299560718 619339824 315914579 803119570 721012972 922749176 34643088 954697668 543536276 37166545 811358034 667119699 837743875 543993947 817615188 978501027 834585747 673759785 547691242 909823182 522530306 36790800 748293004 206549476 787267491 292636728 530343169 691980393 452845149 712042883 453092210 775334562 724179842 36078086 733075207 721398680 445715633 840486383 493086955 391342791 263728582 836019697 834996286 718499303 209309740 30795699 906360886 161929317 501035517 669117677 621325174 319736198 831210282 839729884 905342860 172211248 840687860 234003895 581568094 78659954 550748646 665313153 958385536 835204815 659322589 896398350 199970053 462595652 708351990 75954575 103502260 330968599 702173100 796410090 944449792 872858330 989851429 785162479 660840833 824536185 962721903 474725500 117196565 891581331 632082501 950622449 995242768 299165825 939855730 417335937 330911557 839541969 742511123 666047505 830322445 759287324 779342923 48558275 733747702 945997113 787784445 733737178 833274504 298984181 923126909 758769764 682192850 739764999 931511240 61704315 153779726 775981295 603731003 943274779 638125105 914894998 892390213 128700387 609298085 358728874 573460464 203763490 927155343 199000159 863206912 727121172 413126262 324156325 3207732 7110471 696410082 896786045 725992630 344893092 176012603 414234485 574114486 816104729 720299094 873840895 839027794 501195887 665521830 83442384 985941672 670989236 443466078 860890992 156242208 68352119 195109009 627636698 134900268 9940052 491966561 740143154 643539923 185769771 414396050 908591740 377995619 159357443 733268948 939766770 143439138 722510443 406757035 286704293 261348975 955241836 880591842 896374733 72070286 349104852 756795176 528867923 179377229 854264069 616922299 600071463 143764819 295014298 316900549 417527155 787058645 772509082 452878111 888899724 882253273 811437419 199426344 711693227 693810088 953944839 670989236 498353662 884197435 64616212 13406025 711681188 650489727 952234049 670989236 683844676 853086224 39199907 841104805 750861435 785978548 876446946 870068330 348565367 909792092 187201801 484420500 871984288 440428153 561742460 52980400 13452787 70925892 905835960 329129903 486241111 944389761 823453861 605727906 941629233 333557879 705007018 651573993 625313293 689831807 946675852 997011526 650388652 131987170 430862132 900086812 715475617 441241160 576810591 642627826 400475955 652610796 961458193 112838778 726155143 639085266 90532064 791232803 796819230 344163842 746649209 521681521 878281218 554003899 618097148 532958863 940242691 705097405 268887294 781101497 285405345 805576991 82306991 960759327 840857198 258262827 303116068 224480715 500282713 768069897 830943668 979938444 675685154 900466633 926959434 294662429 381582681 529124065 280909910 734133659 807712711 307878110 741723228 755193167 158326914 557671522 194133943 969622595 804095440 209147995 877180063 895044246 540459805 63728259 652482004 999509687 910792540 630923318 737953128 408749291 382788376 283593200 204593009 108202550 418980307 143347459 177845981 984633572 984626726 449452327 831511024 262938689 857930074 884749123 276539806 221766688 758550433 322041715 628220167 565659658 900702290 499302462 112344543 307826310 880265620 813140189 880136488 968934360 562590120 581644602 66647837 227587447 467997011 893347096 265127707 811454687 870527955 590223330 653727177 989777840 248087201 616945839 420280656 420649576 742569731 241417763 711246595 170189166 410407555 684304149 652369300 740117830 932415141 516736054 859526021 807587346 928250935 571285170 164567247 330496536 876720102 870606295 150753393 209756205 101406671 758620997 408078287 276929989 404537048 650500909 269548830 836897077 932532072 710020694 99113326 928976124 985552918 615430205 304886104 801261872 304383209 988453047 450981688 964491694 157695487 260674190 683587450 345024076 417144933 612653691 865175499 105941580 468684140 713051682 583703357 262138829 855840755 791809126 694998461 675496430 81696559 459114516 988636617 898873341 382197295 769510150 120602766 125491262 755612574 736718591 228552503 942819910 962264527 995341348 584223535 891752874 18039194 755390545 925272122 969505094 119527123 880415166 845435064 977737293 70812867 934263595 775304780 851244527 797620754 779383894 689371674 565327053 750795790 166857815 746100910 189448390 829742338 306325433 762409131 865984509 591536010 837678220 746246190 119977698 118979689 270533813 63536144 372876471 558404347 457783299 92714305 436457001 133180536 227506918 282687775 947606484 826501566 769773090 437685099 733880337 834262557 78754358 716951919 962539197 937522053 683660523 833766064 311460088 534818777 670637322 969527999 605438963 278515997 557671853 350592384 969272782 960068680 299250808 786108505 383964735 576377333 224095851 839550700 223953335 560554039 51625220 928556499 875270372 747633766 972812472 137001188 677620368 704136927 850177964 654665496 313552322 197013162 34562022 829982565 778221703 399666537 699479503 471407103 135467440 625518314 968003705 644062878 30515465 709246570 534190799 350202491 1918130 353003838 656777080 647081657 697184415 155493648 906775988 772250808 224613148 226018109 11986599 323107537 228445352 303877649 413552538 860699664 793260146 329210737 250942504 904582667 419756876 847896418 854429062 533384618 326684132 424123782 678775185 209878103 316599370 459426301 97602086 649831599 566827100 845484311 932775741 414751621 627395719 63984053 961810959 700626886 327370599 822406026 824798070 383459109 7787385 490472397 788272248 257198650 412984950 768444107 784038560 967988718 515773384 308497109 259935994 97462268 40804030 856482727 622268274 976952736 772014628 961406284 817008554 529997492 842129222 632044176 515348085 818260497 70070158 562226463 37310383 338104231 530294980 153183150 751208345 875498700 886617901 39962693 426410245 713879769 798680312 289440617 730380528 138622901 305268021 670989236 778646258 684304274 763022440 288329730 824727983 999505218 848080127 808003963 724465270 813740083 543787590 244789332 191683739 119354651 675459248 452270837 310208297 770415080 124012335 959340165 53219964 744051704 991748818 193477602 872633275 915398318 640209098 756847393 853496423 758795277 26593408 691177208 280195512 237386367 951569145 828098432 747273305 354235329 510713898 279294301 828825955 796494620 755930193 696939604 494963280 714456553 345174792 898969826 959366132 100764086 355085108 459968552 950131471 366841285 431309860 912562774 464568504 658003476 661271030 421055552 967627764 447697446 719107203 236931830 929604447 609461180 276752679 501327339 983398925 936861359 652457809 822766835 584517461 721183064 547509673 343856065 326008931 993808845 410158775 803660102 981355160 821102520 65272896 168097689 846496297 635409379 178339298 638040054 981378882 808999955 91820191 646997138 985973495 4776996 228987000 340016009 719343922 913831283 211473688 938850832 459405028 435040485 274976209 329984677 975684266 190830975 540719738 742045248 169218761 198177872 890721981 37585871 185834652 716899834 910739667 914977993 48451561 986534968 87800158 672818204 283961767 716033051 766380647 838043216 157992361 990319936 513280437 677408344 49442178 721206791 520590908 679627408 553337643 652280736 935681782 320169638 924386307 630336299 681938507 721095933 152668285 959491367 974886746 632300195 903433140 748118167 85738837 257730661 83208916 977029083 825584130 641807854 294513388 796352526 535834216 883391469 679823657 217960097 241704129 91760604 213788538 52601272 865631032 69120461 230719748 25058829 633630875 443927867 597560686 64218320 973729923 544739766 682239174 990923495 632286510 957382329 437875376 937376679 752286309 766795717 145131509 669589893 230459304 824460480 221796685 876826773 819068856 275608596 74081928 397526820 434255047 874140738 335754649 351625314 991549417 588840408 474935270 505241084 372134164 860600145 14442297 374297616 128012416 906336743 995880964 880517435 722428551 875038143 171032546 751298602 881491698 690744040 452680169 772197249 849794798 997274990 932176092 644010662 536910467 742797212 894046462 247588583 543135439 836237590 907388744 807598392 711158337 649145044 911147916 766719676 181782601 890311656 803256946 733254773 998768492 588756704 715576794 73294857 662033449 998488259 880325940 85211794 764163333 860334080 943618108 35413157 561312682 505848357 301426195 912011130 265750210 842926606 87730458 402604658 940653827 377213685 623361355 906306783 361951724 628618999 761135285 301626361 91496919 282399746 926786041 685925349 227841039 964253125 567292505 896595050 964520742 912937503 34027040 914329945 830561889 610007399 904226142 309432366 875304596 576907902 919327612 998381003 179609485 395277570 788097945 555011298 398712111 282798548 257437421 661592976 668514219 497867462 718623840 120712545 106099315 542295331 552153255 930497505 288926295 793167475 698959424 408370206 291161452 787480988 694327393 515591099 528631570 323276026 738279938 593841608 210283238 720135114 818998269 164592517 755109910 863335722 955798562 233791787 904580292 428784298 17199983 552523975 861630074 970664015 816729938 255705156 600047006 720778278 465331108 894528944 606812541 915128106 32485037 303831991 740247975 815864764 991265938 772779313 891920193 526981669 672477762 943098513 451108934 336297885 998984850 138433234 1114667 428781181 762307980 928029333 435302253 917256896 627178547 748613058 757872596 948081191 468010161 670989236 797147431 869963926 848556907 439951938 830188840 107509588 724195208 632256840 794245737 133378783 786105470 769949347 688403797 11567428 812053988 276722324 509347327 224464184 925269817 844301313 27892202 914071121 659782889 856798810 527897661 929956841 728426336 487285339 964384412 702752439 935629880 919552907 886892726 452545857 607433349 734760940 356680852 278711095 805191046 468525306 245339638 806330785 839989485 784535094 587502737 58833165 875090388 848861231 944040237 741398396 162880586 930604074 121494616 303326204 816598393 438459404 791808794 910919302 212415841 980375705 798104594 908873202 974036182 135898493 912797707 779511715 156760095 910488826 677237851 771950491 528615423 140455716 700357000 130947672 371651479 673556763 277159097 961501137 303606259 825108669 615439351 138421335 375013160 989991842 866686827 698665198 660302412 716000158 648810473 735059203 968447339 939231394 709041700 232585559 459260772 855698317 833786177 465252847 307755568 534265043 612834673 708443408 901317854 821810960 285154245 439525972 707535258 75032608 473388862 284145241 779278952 840982468 890954432 903799282 280252741 990929208 997530941 650614802 398776094 975714790 926918072 616665020 557913162 520963779 654181999 897076810 556729660 225682040 102002421 149698153 807310507 536065167 216137239 535819449 194349707 780407956 920342987 632165083 409429060 100636085 558059672 189584947 402127221 785190040 715637396 928385878 823389340 203549679 252447979 336608879 863679257 357069509 547356788 875779437 524336364 309072183 886576107 590388742 484629283 625687594 41539548 861817302 846396605 846599417 736992149 818320362 886094844 667933350 482873824 50940658 277407039 657006434 312981042 8334031 983556358 162296078 670989236 810123511 683838059 690261237 322465153 211012745 56970319 381970019 864017904 524262507 32403118 780041914 491806367 738579414 705121671 110658919 511979905 649122872 227650092 831596008 718692571 692390008 93206552 941880782 557918712 669318085 929326003 714779714 656393402 765900423 337639741 689696881 166814938 198780636 852517798 756897565 708535346 396000739 237057001 795548526 103676917 134075533 955415147 886153868 320156980 518617718 605180337 178604686 914165722 347876234 38864108 751975987 223571588 847237904 346629192 652398319 955401418 124436343 178990579 699881230 33703219 159527272 518078201 22666328 19896335 267928303 848660031 889323983 589379867 225779174 712926895 473547273 819176682 63263849 859544673 7714037 932381150 670989236 117812415 499417039 473457531 363994505 838575973 761154418 89314445 530065366 752080124 129771796 967590531 832048288 82802696 56055408 564090466 511391338 810761982 460469795 721889834 909847540 376909470 285447385 661967815 508681909 924238378 954126904 957158952 730864327 537530450 620660437 328939409 725218615 554497087 418363334 977981054 419701001 960813913 199877703 496870629 853097385 365443625 155982682 523390343 956534765 530043088 268280999 934576104 788691673 123714204 409899809 979662229 693574488 849041191 738089853 711937078 605690819 177132684 566699409 966581132 76362604 277389932 707623288 829690880 762759300 82141999 925161134 472888109 910059263 848557290 918521739 104888198 532430664 678470414 636098992 140104676 347316374 244930639 670989236 340749121 754794787 740239806 487515226 909320681 263418452 880299183 914323142 505697847 748834601 120035485 101675066 948213595 699504952 379456242 666925713 818856406 609845519 8327659 235486027 987422784 861840134 354933285 752810470 703180343 407426912 850084297 359937028 518535621 973288927 192160407 10333358 239990149 72097942 145639410 276472413 35396413 861169280 790507913 991439098 948664645 606298218 775070379 906935132 535312395 143427373 848746395 567963144 909170513 264653976 253802449 652006201 948067033 82648127 818686474 26682797 460943784 220309834 213894992 935750910 495145810 733363186 867646617 19072627 862107389 872735936 174890529 800939491 535171648 245597631 548980025 234084239 818786786 753366332 312321033 664250643 322826106 876265561 923401436 131997932 917955041 50038794 909311083 593680368 606613187 625077603 824840003 700175648 33982359 338039826 651498401 359298826 274313412 14153054 556754088 852532092 768333945 609944009 452049124 870209689 667898749 434433719 750330412 879918726 955730602 881524434 790390724 918368759 509646796 267619981 996032371 936154915 771480807 192623810 811946153 706117514 772917336 595276003 455374562 370406758 529007113 689501649 739765797 23982361 722716839 948517530 856349353 794541586 799845756 605922548 803578062 651345636 697389455 754710161 371666097 107630686 898089159 985483663 956395056 762877030 783970506 463716602 801442859 391756798 687605007 53093659 978814566 982164558 944595830 127952894 891423349 880650832 114817074 832865909 452902778 798621994 181697770 274220773 701903707 997022549 877354002 858155327 932757018 758753167 130214679 875510030 851669966 9281184 672372337 959618951 970567241 861102945 985481109 981871771 767210643 743758042 816972157 777744128 152088497 869029399 344509225 232544890 646465990 870202464 474006914 247251405 708367691 984965790 991596911 875897525 920887962 145635507 678486139 847666935 932686754 912612116 855420427 753158746 923529875 996364798 868381415 639985479 561619791 638562923 717168445 864302733 634531436 542392288 415395157 928456731 626068035 879428150 570231928 295494149 790163225 935321077 893440126 951938870 864577569 759896260 723569935 804178838 249501722 258467839 140708884 363617064 837447273 95120675 121824360 720042765 884844509 172659600 889384044 330890 348342010 874876832 29324823 870797674 115716695 165295618 729502361 562668546 680278305 934197782 602278933 195734042 453262661 814045974 781860025 691902904 246649937 762572078 257589197 754545217 216866946 468805519 155909459 755313474 186723898 933737548 837134296 166386121 80572191 834782688 720349607 959170347 926755723 205521628 202494565 604255524 773526277 397895651 185000538 682910736 51118779 592772982 592466176 505930247 676087496 596807746 753304790 335170581 839104040 826114267 610760535 123127915 934180471 726639789 941835773 347715565 417802551 853853895 786603890 916356607 952677080 98684070 975530191 259606419 677081921 609528297 287897935 27372622 963683738 879317262 531731233 671500114 42263874 287685980 502388934 137214913 882882722 690397500 847651547 655058212 861493854 463287354 201845438 919406736 684610481 884635254 958844372 734659983 972854481 979541971 655921154 815155916 775985711 743941106 21031527 906375592 961468920 955776511 758776484 844888529 21829460 751701296 826064647 924380936 932565499 604247203 83177847 665704469 389235459 963138549 892845905 64785471 294421936 361577154 463779616 308346960 340563894 351505363 84716811 202448432 673909394 667317388 936560643 679471595 880311606 826954246 193711905 791318762 996577138 296592084 894845292 207413242 101748685 7155533 260664517 137088342 715770569 655355991 954431527 771147033 648716529 2765640 555107437 674864721 107063237 829467146 909988414 281598392 225734507 984533734 283499753 108273785 899530628 701363771 264838413 916366321 126375876 988416480 843922120 109694502 32627552 902576002 47043375 9256703 837029010 434548855 907484525 546569842 713337069 213490222 820724676 838615635 544460293 589347377 129524743 315707764 904538185 132305986 833065344 340372700 781877009 592352020 452617383 699949406 906020433 371971735 804274078 923399052 133911607 665635979 384643574 88028317 854990756 752030749 453942350 543810206 905644208 626330778 744455708 718702049 250580969 211365180 31786321 695849234 349347968 376074173 873725377 703785024 656809281 828058183 995705318 975800171 615945818 112803943 336514277 591014835 895684136 7566566 303253002 451265795 34045900 995656774 646550096 365855522 381851326 740675032 643381580 859395387 147031513 905066106 657202104 471868351 834810830 482007314 347555780 184401659 319193794 736944259 690353359 976729710 852913246 702156015 281869309 902843788 950472175 710029665 734130239 975674599 592827924 888935019 843097165 892885603 526637797 276343339 216349395 8177491 228379319 705092425 608338620 277770866 235368788 19026671 315542379 869563162 861041000 232067291 714985946 825338668 838657706 670989236 847617273 741008805 670989236 345587544 40624285 408319246 788279675 423985871 955750532 562844838 919704317 473762101 444266208 481524686 175549329 928230467 296325879 715729450 85202528 715924952 954082626 830741830 515418457 561878653 957170063 937654136 79510480 664158857 112947038 579507517 335658906 652812819 843012758 631353315 828004983 670989236 550958712 616441244 993101240 663505414 170253453 76596664 696016642 858047055 315563381 868221673 671188030 531966974 961165838 877744324 785896098 825069390 714832639 615292876 970491608 295712783 927505900 710687133 208887240 171400064 58817528 406136904 561081210 55583368 488918106 921224575 188969355 298883520 960608406 671182640 547658664 498367250 613862607 918146963 361462814 430254278 269137654 298405294 80152697 708279302 877953639 153976150 794055500 939985455 724452483 697058816 87792292 738824142 194650737 459037726 508583795 787859046 773537933 872472320 939703234 99980820 206356559 518451518 883260230 222667762 983786037 452332748 751290296 153059805 965694085 188030585 895860844 459576219 251996604 267919439 643055658 47280300 7123335 974948583 34063685 471962683 939056128 2260440 94625286 396942460 98577322 503055392 833756666 801084757 388318135 90440353 769974555 113659467 486195014 773426594 239559943 834444589 675927275 729474121 391057208 436634529 818005096 379934296 775166233 280670266 601669484 907845811 384513491 807976832 119663366 617422638 490285593 279077383 754758419 866245925 549474862 784484890 982598560 146184384 524803959 191283672 994427127 589167414 933394584 415471142 836762306 947049923 679410866 440747350 676185785 707082185 856246038 319277520 691131613 800400308 642130436 786666321 66003464 92981652 888019589 958275245 181226564 218670960 228516113 112103377 803404609 179857969 264818412 38641596 799384754 305022304 36258958 998715925 921598404 805628395 913776988 802100475 833654409 387251793 894715623 322350809 818113607 318976319 821105665 261165477 983924780 877230075 112962857 440545000 29400278 928950937 308879469 645409819 557298242 218719673 942913353 777273999 932534095 913141239 984687116 439562651 788949677 996149965 906893187 798221225 19078630 938371197 755587741 760281159 952918986 118735654 978166020 151421700 734621620 692502499 855708120 619393470 715415355 743048879 391187220 66886315 466213899 903845904 755273661 898081976 603412267 159145856 848514258 851651632 550795554 221516332 7849362 119718752 437078784 365956141 214433888 949341788 22804864 672043479 695140852 805593351 59032379 760248515 744601339 800418595 600720661 868882116 125607020 818236330 320018769 551877997 808953055 853499018 952882115 189286781 632528781 595148544 707837504 372488712 685808399 367971759 556147851 973477418 662202880 116347108 621359365 904525627 308890337 103930942 416526006 909209369 943864745 619302984 826720608 916009153 94678127 861678757 274574373 4046750 565334994 392002473 912964954 854804829 904145637 893586863 402632924 451940440 719373438 729611817 812110401 813922529 794672804 107030148 920719933 465723103 427655911 814354227 989439584 208682244 472909683 801976543 539906613 999087049 462818076 722382496 819312840 536320312 670736576 259833523 509534872 340313516 148846016 201513211 779058947 997560606 691674579 585047089 878255247 911029012 338947339 773705561 901750818 323760618 387753258 790536410 304784208 913090652 553858191 500547606 789690021 982908062 936009648 926171683 97131373 714546913 593253497 857016957 821542358 994174368 681205444 173312370 716666491 819386855 280997116 774223821 757984177 486677618 438518005 900904555 624929579 756054643 958542918 756089563 734893089 611262926 788528684 858522655 484081707 392194656 186193834 825368989 214645863 617889823 720948284 871411043 768153286 935993349 567210828 482793387 902102159 900275419 234236408 754505581 676205125 556517411 182177098 979998908 670989236 374641709 898938573 781196862 823588721 702775608 896834319 838676094 218272099 804449722 256623444 596819031 300974895 753367031 794676751 731015390 27696676 651076220 366442124 579679237 205238447 349146149 39553060 372974649 943314185 709985503 754200190 51658026 384264682 271390544 781301264 693276139 116921 512531329 881328456 764154722 954083886 993360127 270414465 670989236 825914971 185606280 510290477 501917318 930696952 363600502 999332448 216398771 935901358 903629718 67116077 10979197 851557887 824767176 879317905 560057146 797798918 409388837 940261303 819711140 879235997 803459263 847458868 501220531 294210564 238552547 949260153 173391457 775100907 812654776 382174386 806236063 520916432 691222936 101955698 407393191 280396482 879311330 175413836 581529443 614051394 29492689 799184617 884375649 990959081 634038198 680792089 280394578 992924221 784974257 818386669 119383701 86372660 669100924 640157871 285176415 274860216 103838184 690205944 728048576 247840872 537927125 355817080 957767892 586022643 53461599 834872344 260872855 852217573 610934838 401192627 520759798 420067010 980961569 670989236 886359658 952042112 917591773 237420152 988399957 217530912 604589919 525836797 69008707 309832023 875302473 424412954 42666557 386367929 176908735 763726416 867609340 935103910 969420289 956048687 690131619 896040797 732682154 21465778 270660329 305311241 836309068 788278619 202845586 784993673 231116742 434191564 2470687 157633252 692839564 657916591 854269221 915094061 875537081 138197246 205952075 24635593 23478322 693038132 365460812 449582252 221484924 291413649 609519607 384153326 768189286 209395750 269791459 725819193 486714213 731042185 457341462 458659484 696147677 901452590 424603130 968803132 130024771 916446593 136213880 742035252 204663313 945958164 758141547 742444005 898771134 690358288 905862181 315476484 914014388 782502946 723462030 587989924 315187368 997267489 331409016 874981193 818207005 928411005 949890143 543016938 137882917 179101407 580217852 694263992 440908628 672728267 479362078 8004947 339377728 275812416 288008833 993115519 811574660 134843058 841181963 536938932 216823601 716013167 394527429 828293744 732278845 826687619 828353949 994153997 778941367 606104654 800455309 866029975 549643084 829120164 882866481 249504992 446693791 521247526 960843651 681421073 644365856 787156252 924099324 316888124 991209853 707150306 704832861 645357429 703476036 281649443 947700229 342235081 945120515 392346875 293016275 351658778 484796012 820539148 307890762 541367037 344899538 195442747 368089100 318296678 549572503 871578637 945857702 357107550 736985606 921836144 612157327 432955665 43871878 935149886 46152945 603024959 793302088 835344716 454509566 15135448 150762698 626457869 936492508 831872814 859392224 811151030 697468850 825157020 825270053 791827460 848231610 997769231 175307030 156682478 827316655 475873948 975977592 751123539 27949893 903665603 525403784 948161359 947361716 836108143 639135730 833099527 192701371 299643981 786768727 66328474 934190192 885321342 428559524 792780134 452972933 256103294 46594738 803402892 253698213 967315633 836007793 607190393 687460298 45195340 689947919 678900283 736537625 653563463 573672088 710746772 21507499 14004494 677535886 598003965 300984502 942855724 242107036 147326732 701905553 849629378 616892845 318852094 755336012 146392552 245208736 408174682 392006346 679145111 266152754 803097005 851243881 659137704 853685383 885587062 987401672 725851876 827919976 824128601 679447132 76155545 545077611 198558952 252921784 468687573 430849654 22458518 819760577 770157494 279936445 446947741 723257404 887388571 634184775 453369539 829445736 236398358 796224634 704510804 992475962 193233869 906414218 819540638 542429735 940227352 326535345 979212697 711708070 53130103 927131259 171338693 945115692 702563866 83567753 594133394 670989236 671844073 451851214 879422855 77317362 905600143 645421285 728644734 132190599 734042117 113321423 306732108 712757333 308145373 468324662 202113777 775255996 966133426 588476254 720158649 894598581 591585861 858675479 327405070 901974934 317886459 2959689 717088332 579995637 70089550 326409279 699636154 875409430 801106332 552981239 894132476 179286951 149630815 855914759 243328223 542462120 793539909 851015941 240225308 981391003 670989236 792615158 245740083 914286162 34471534 603729854 332451253 259033671 305149925 998769627 542455716 695791044 968004829 532725151 707989196 972158043 672492999 421013131 135942483 818248581 891133697 496629152 850701023 91310424 961641740 380735969 278748963 556890947 876709266 381845989 922538755 913814730 580728131 115315148 253528489 694618235 51722002 337796795 392973710 991126658 898871159 610465520 670989236 606075033 989924426 988859381 860873339 992880866 169203614 179607274 246680775 969623488 518390342 661105741 761834063 970884808 596143500 615438477 763520862 122132998 549309992 883353568 793465580 772989873 991085710 800880192 288558784 13933998 557091265 787070192 854332179 846771380 595936710 734758530 531834533 924410329 506812310 684414656 719703979 778178524 175639910 270586393 256242882 281353784 677275026 236461912 432740100 331945414 380639203 817309763 999181513 794864487 846558299 78734638 862451310 609755593 943247852 672647880 317526781 140166413 469750793 681449241 457636103 982578215 571350563 847230333 348054021 578915477 318550075 645311430 425489281 610596509 159228767 671684548 220729934 483351458 820053008 66450849 849589176 832188964 701999667 926930306 551211109 921085719 155936491 925247026 14835942 817414501 175801688 207046910 742351237 854795486 842223820 479171631 937719475 816162733 435740692 570414447 910857101 629111236 826201351 596278413 404286114 77500714 236115722 737745905 492473484 897628270 290320921 954962175 737178236 755322838 309912598 335942039 645261805 322556217 47257383 397092290 750598074 255452955 22398685 189033412 641198099 728520723 980643722 719370132 254834143 988524227 747011198 984853901 816719707 148253963 743147361 17914882 660476976 779804523 670473873 813435600 950972926 800290305 981340588 916793812 446061066 941359397 890063175 761967448 16743378 960178700 605069481 432210917 308633775 328268855 492449018 613095872 372718693 529845162 60812725 39386726 145920162 702588588 531275974 555991039 730002360 943390151 51549847 971665337 832687609 892526824 944579239 882827921 749695731 417263538 629323887 146105339 418505343 43462662 211351582 410361631 900345819 984751351 848284647 304914819 951874841 783677669 373063289 865829411 940083126 696144347 114799117 569358853 978332798 341034189 163906946 393302036 17274588 830971795 389677582 859747979 418668979 774833723 98166209 713700585 506896849 653631325 880616770 518150343 703303333 380379178 696252995 281473597 198528616 169931411 409828440 730368692 364928098 389091199 805544899 528773669 477197310 328709847 851083735 653565141 59800668 424608913 801229035 983939934 18023696 946130897 105049566 184629510 715038980 591630734 904523258 112589444 546819602 660564163 321853755 671237523 764197573 176896046 819031397 735386891 61557740 662027844 342671677 670989236 408384597 562936012 548981938 445381441 620526791 879928394 753484621 810967503 832149201 478223891 55864409 377762375 844433490 272060998 280117516 39889241 244335737 364938056 510608044 763860990 2216873 673593894 955533129 398108979 823573019 202698259 346003673 839622281 422148294 687271224 530517889 96469573 921702160 711843054 616008627 820899204 907853797 500674784 914333790 118287465 288201397 547752825 336558181 662508546 929438357 676856604 10348292 37612800 858749427 190970204 420553252 311150391 361073037 500971025 922252696 509328050 573149965 408909971 700854187 27331807 71648844 248954813 479379655 619913431 694118442 192575417 280900255 670989236 272388562 212846153 199506009 851535970 45093990 107083476 947155032 996354708 970563216 451083365 784798746 719415738 452290904 774932506 688292013 913350186 902733473 947530032 771710793 506882094 171019442 911397413 989468331 610744782 524496556 284087567 253278695 610374124 294520624 324376077 952528224 993210293 414795419 987781323 908315287 864794480 212543178 387161707 855589983 727362120 237892141 424730307 424767168 271733605 315880998 256896745 428655165 861795634 669472462 35678228 177647221 617210182 961824582 825831120 407418239 817622118 308786584 189300689 879802146 917284227 80130810 993127729 413341585 125521409 413159289 163857253 660658747 56691782 715875370 862667238 367803875 268897085 103891422 47349485 249525939 724556048 189735811 472131831 222933801 64096852 161489155 773837201 918433138 701641156 217761095 948896660 727231817 469257007 148121029 839538895 835769049 840333386 248882972 225588240 233397075 381348720 893231693 564000108 703538343 886558299 524590017 998862875 822291070 527290925 90176536 8653032 228983521 946802434 189128765 120149028 851728528 321476839 918281035 311018354 114935969 611553610 574842181 875544074 200338126 542064096 506362800 152008654 25204530 431874175 584387844 992902772 248402137 568694745 788787743 283332222 273773238 982283493 715389778 704981891 494786566 859702412 536384285 15087698 683761831 266332479 648120269 573791840 707212936 289077129 866320778 667997476 265436620 707442689 504641582 270538407 467374123 956154540 705608850 968349869 937891411 751730333 121023201 585884450 348431617 228426089 719013752 954616141 481180197 921931383 870405053 795502995 873749057 481463635 190753502 753112908 898835940 733634178 806896279 925306577 987958160 901218146 498325776 178047428 246030176 617107568 492786330 907146366 798121589 871813009 12054983 829468434 576815099 309960655 226371842 921861812 842220227 205895278 689803338 445270440 988738178 952943717 892823799 457922990 607810096 968800991 898162313 518385357 711487020 206181197 787880751 796898251 146221209 836099318 998261402 967331604 422819293 640093473 380152118 827389634 9841834 211233421 977770041 778666586 62950515 914362424 351021102 536408473 501632065 814369186 238981745 605270890 47803745 401127900 956958150 982261222 910482929 751444060 462370942 741538285 895697702 319029375 689314337 27066819 942467367 834888079 502289906 606448199 466917549 774882752 517574745 794808149 143040358 811541214 798835902 43712997 881791053 119630438 310849065 137788767 883993227 637360990 332912816 331282771 65060782 999748385 807754538 163538898 507705087 459460816 896639635 10046598 15070158 167667264 634293054 766221736 949490762 650419590 776913766 50017907 145692101 380328118 271599860 358871895 752559798 296727502 334313596 805137780 305298739 797439380 287533813 508828659 599144234 969149100 716788979 537941885 728747942 873148264 806198479 981877674 555294326 121181479 266393362 922704193 338783871 817938037 785339427 615994938 492265915 482876303 6238198 622300769 822644356 42475253 101914957 980259490 798754485 842114801 685692209 60025933 212808085 690475524 678469646 805293403 590800892 56021683 678931604 4599860 870260646 800331713 701877931 789617845 679918067 443203286 206040283 980668965 572886691 778023628 449094939 248818506 53271150 13384814 756304067 942805664 860572837 923475483 901396363 798993877 761727155 199632641 992548315 691561916 678548269 927612951 934314963 646255364 559920886 317866453 994318962 65125539 45519544 954618377 408922092 807838904 351658705 978324657 86958822 399863171 846155151 833014834 834396251 855718355 684034667 234864316 848319314 817884177 106481660 726964345 707940720 262205842 938141763 821417416 761895459 678265823 174874615 511787567 567700561 673467666 295628834 142322432 967577417 761025647 927347974 339334171 791474353 875354211 490933781 445275188 380193442 951862140 571375087 225665195 872263756 228628283 913506353 844644138 457155245 421914855 857470693 407048748 517963442 306699072 453312483 817140294 864084982 483042987 208912082 911266608 953365121 139512952 930562005 318908093 624229618 947435172 949227306 127848738 963315429 631224064 427673683 379247937 769273277 17948842 770991832 947979650 137985044 284866663 964860123 393745461 197845885 670789042 25494382 271463353 880774502 302759816 429311156 809063803 937987525 876188600 964085665 889071723 737851231 424126414 582271834 720722909 302027393 107457386 452044456 931468218 349693661 884693200 352093909 863067694 935550427 442618806 879784314 916059636 712888215 825251201 39339063 868847501 996899007 269988979 915086125 34959914 880765389 515533106 787984035 435423633 844113792 719472988 724825033 688528003 721843100 430026213 875024413 481545061 590126721 60938900 679192739 387057830 771882833 715450297 877755086 435280166 435018220 152063246 544887211 209991426 313010542 979776439 668806948 829800151 443624079 826465839 520599514 27293845 288228317 937538001 507056421 286491628 660289414 819293224 127174243 784580624 558347081 728419818 743696472 709297630 832781907 609860761 343526992 5043507 954717715 267691435 918769840 230310529 593383155 243149886 95289464 185782978 803622073 957497318 989906476 655730433 297278464 12038665 43479684 752721554 381264947 616869087 813792926 212937171 518997439 847558116 887825745 400099659 925667350 689490910 763998608 348274623 171758233 235798885 827502466 952729972 679590379 215364762 990125129 400963962 15564313 917260415 613235681 693390680 133647694 716645396 620346999 892676787 943084607 877112185 669286602 378914225 236089953 682970689 769040303 132682907 250417076 2711164 727820805 904680792 792289616 725913051 406523246 74333678 518013596 402025373 812316612 855505451 851679211 898502852 650478876 957103226 603361615 950781193 365199290 782756906 158650660 876260101 945479399 723861664 417194819 894457362 526390279 593932149 683798417 749897493 617789064 390447715 843537846 960022778 842070778 264374513 946976442 624815358 150764274 907795314 471923645 4109572 139107694 52193012 635426043 706967855 503381333 74834626 717141221 8356494 85937480 348908385 661512583 321839940 273097061 732400802 953615890 921629809 294297056 884139110 355600316 698642335 866345135 357867857 977131834 904036169 89185554 352425306 411823230 737762062 688813051 987857704 670455170 668207366 151727843 956580445 509239237 586919822 525940044 828854352 670989236 370622064 941589900 944210436 700045621 714256824 615437279 955851825 693724505 236456772 821134760 953475784 250406655 224929542 873755157 189527410 310138474 746604414 862277193 446758775 265196371 205860855 769832842 804943082 510244076 744228771 754598100 979079180 176541020 765583218 329112287 892039457 989134426 697126717 867056888 343303105 581255498 674736793 233816384 985200212 841804374 511134168 184243812 168085293 812892001 839940357 174032321 983541409 721187738 990018868 473782548 754391430 991323817 439746913 846589605 465465065 946040258 691455988 443372803 685733480 423685827 699553027 791883216 171399775 707568604 682970908 817837919 192086883 670989236 420505657 820920024 954834822 998255744 132085775 299940137 482167708 789602870 22808569 471546394 902392207 185838427 999048125 800480003 219073553 818955960 150880314 189684464 391623616 769024769 924860326 302580376 107941039 453265269 442700915 831613201 957038821 559713989 150926522 826249042 723551868 499974184 156609544 988407767 444789680 376622391 208605493 253342282 665147316 438043283 914832367 990262928 800279222 389082800 437079627 214224629 884755952 993784969 449277038 770257686 269236621 924361389 891996334 805194668 39305090 835996536 802762744 651542270 630477104 441248078 817969565 611926815 604109507 980401749 867518088 542122485 984730522 156197604 425761314 785197074 728449547 698247390 792488213 557542359 316443152 919601851 2247511 692983511 888743145 494929486 845748085 446723866 984211071 429052360 805871014 846649742 203600667 949852420 880562173 469550378 44739583 785676886 723975528 121480261 997132734 290109679 357532047 894403886 898540144 167148192 709415260 511471811 952338170 466079406 840724236 722184805 247997853 687944815 21372942 800667122 469761027 907933921 807924108 180442617 675907147 956632919 337347467 640688253 500940913 957807069 559000601 75381750 890370946 467220969 30316814 906012216 260566396 758817922 993545501 952964635 31228620 632647123 470451857 259179516 148048880 95337960 386454919 796830776 762403232 685588911 218648234 423350434 722742811 864734013 555895156 854427518 604896573 852341852 739557816 194237129 564415603 353327498 893168380 670989236 744176483 206658611 768758226 196470131 878354142 976886289 119338448 677858117 678228446 659352512 702143649 277006790 593435353 359645841 468028567 930161185 152467125 638984100 25986012 941457766 724070192 582817917 267086564 741158593 903463012 937605344 587803328 820427669 59809920 244572021 914879698 953553015 464241265 459164835 750873193 928302895 290549629 683279042 886309629 815948759 503379455 42595412 787922646 900047950 756781755 269349060 970832889 265025325 997104862 907832672 464633050 944707893 982393323 174170069 936088674 959730196 496206035 262983933 848813461 871416595 843322326 702252907 807000119 913758517 290154671 407794080 202483376 723611421 44288971 897822801 97108754 800187701 599216545 382725169 769671141 544604363 749960936 147207906 730163166 844245724 149642705 420973333 971765061 566338915 798458578 474842760 722574887 443646430 528659209 7862540 387419251 288670462 46830762 640596008 4902025 193759821 4356650 272232484 854286214 766468393 225225786 159037795 986109266 670989236 999944244 919613816 460251252 670989236 976684418 511131739 671259848 961756865 518220097 960243198 196116085 818879681 504396982 927073121 96991484 758796826 926602499 681213074 818257019 506750511 834452748 139198251 666164979 182035708 555760210 8925213 717686615 996917502 813260444 226601799 706585522 876053166 273410129 340297556 280882372 77311842 129702902 211489685 974534469 450199847 868635656 226131802 396064353 484350997 646939877 409443592 848114879 672059712 920470969 676152026 758337351 653612248 189801467 610426020 656846643 466204408 205680192 683785979 278594900 841916494 112874199 522318513 976688819 848943725 280659315 320166234 985852093 222402477 854044687 305463358 732694484 638070778 332558799 963350079 386197772 257663527 878834547 502047370 621883336 769623863 765791821 81380867 305309418 277447737 125448093 441478022 929968691 790264401 687314914 915229967 911017968 856375075 739592515 821246244 850776651 885664035 287163920 986340128 192072740 648124923 426648207 449461745 723704118 960102193 459016643 814956062 3791161 699363339 961774246 953840430 501260126 881455134 579430670 242152042 877582270 984389609 783565712 713343599 881643975 673141768 276427905 765484901 206482258 955927417 227474463 887675769 613423767 820005044 814681301 994606242 820236341 627347156 596686556 43052744 96851979 217544704 232559453 675919102 104984671 296768965 142843416 944858873 225844414 413938382 332129056 101663171 463458457 872329971 76972071 149726752 876928325 806683440 654043328 721280725 664836703 358537034 319101599 594110828 555078615 329743502 867829627 707635883 946847847 87538383 855214113 596705542 971392030 833073870 730663601 686471810 175278768 532968250 120053028 900654704 773169751 933436150 567181498 470419137 258251602 738421854 955515941 320147163 215596653 148505452 268516854 556189801 778781770 825114302 204881081 321418631 733313847 784039035 723445886 846849908 323927457 807194366 795596472 974685348 86200060 252754167 650091452 864815728 485610933 959759782 860088084 875701276 28403466 752403247 962846341 710787086 937842247 894651138 847980483 291353424 951085929 19418119 46357143 670989236 521460612 772358237 827032285 605359156 265625125 849553796 338712304 639416216 913316638 755670468 344056460 861659308 920644066 266650652 670989236 683673004 968906972 822756515 963750859 52173581 553443661 967636364 801953350 88820280 667367098 960018223 497318489 719065776 282146555 952588342 976471984 319118966 605442088 630850159 585209155 285328601 704577537 874210864 28752628 685752364 26215371 800260460 139742976 414942528 192664802 340081674 733587704 698017432 862359069 886286016 743822072 335996104 122791852 904255968 265424835 754066159 270662950 397709950 670989236 755551991 788643001 275278646 292875747 445869255 810972428 96363536 548224651 617970709 159644916 978813648 181779705 717036612 734184248 211369017 568957028 946737289 517383939 823614311 893280490 453582303 64891077 615207554 121534059 886927357 8021105 180618870 394741657 936416887 261650730 151955646 146678620 395985999 673196819 773948064 753315186 787863785 952304007 815565039 916498027 948482004 181339070 461586463 354924033 758597248 113260029 564956792 492569218 941100424 508768384 240084909 867252793 690110092 714696449 951318582 83325948 10977454 998800621 453541511 670989236 95556187 906696526 278789302 880929889 298935421 767369573 928960413 817378288 664144590 763950272 750076155 861974686 652538542 97377303 744124277 224685401 938620257 947675983 900200760 713325109 995860715 758394916 543262538 859377109 295597178 416839522 443563135 937671468 83823849 455105667 680032161 679008638 326097415 959111673 51740547 372274413 908859063 739955975 887725146 232473883 140276499 12056458 467451599 814311203 261919386 40659877 733228341 716744526 796996553 932612122 716844786 907468515 980859241 457749361 279522615 993047542 107287167 841075356 198816201 522719421 782272576 10030567 631274068 778775851 54113495 453377793 383360721 141648747 615288307 973763055 151618507 207261341 607345779 835813764 373656349 443365692 377557958 688908351 209573513 316981146 743975718 232882368 334720896 2923943 924399599 218673782 816968713 802376278 496181099 683864020 440788224 734453393 79026989 835758431 782472271 992332939 976178591 883644159 916916511 923533504 67567827 401255054 744335102 764214926 80538642 817524145 664110922 267606447 834078598 841649302 958252941 871513156 273738621 199886967 922263752 593605277 219403937 71333246 159915396 861204150 187373150 756013993 795274451 873576863 241870544 619682591 456644069 55070844 72055750 605051795 567241397 933939321 780280859 386638708 844050880 936218399 309664107 80684550 267492550 900176866 890970743 193025530 265506000 730913577 977681451 925561822 40557408 498025582 404675201 768211775 354842630 813928858 40714765 288085569 997156754 528575039 643722917 694414682 629672562 210621980 612230526 342507661 444601926 844710091 605873105 939197809 17768329 257757310 931007833 590179539 321153160 888109415 685743542 356337028 562258619 439297635 18005395 402013758 867402618 302397113 560017162 778256576 996059229 991688034 715760515 680681597 985744681 773685903 658125604 808519706 981129345 167219655 597014898 913416251 665077138 422000243 131979746 737993135 980258506 548266221 266933590 858952390 979144690 28394833 536769538 945796990 196045253 759350584 706674161 696944464 859576610 896254212 236825778 995559361 786514240 183496469 191760090 278413653 934650334 713967191 551166437 387504325 645591226 520492509 55187824 757600262 181431683 243595757 627835762 487827733 908915833 752696882 171646351 136324298 831126710 807241679 889786994 722408271 972315018 854620170 795013092 738258581 795238948 802175937 165623187 298586961 174958705 779743174 136584403 508079596 846498573 691993209 951550849 79678778 317380833 488476069 212326370 673968553 982651845 516355484 143851776 231888369 944337488 690026370 424477445 141732407 298217636 873949307 14231963 536868491 438356050 739844874 346843759 896697403 655058291 813958059 756185836 284639519 768580592 39559905 856985348 582832666 670989236 852433977 992210230 404163532 998703572 522017183 214893340 832763800 70859939 636895691 304771078 211486300 109221346 424713663 716545736 783118969 89284584 882266308 349098869 781040667 995768965 978072554 323939355 50311311 911979749 172180542 321863865 521470415 693803795 449862146 646452489 924293831 456777677 135675251 645270033 789794899 812499977 887275972 90695322 646300593 165367884 980427547 233205271 37822855 710920722 849620514 937817467 711085089 607245532 986281402 790042435 779252168 782524902 176479610 743683668 928475291 695823125 692503039 986366217 507340970 680140238 643042441 605404412 353604092 855178086 126163309 24808027 607568739 933200157 569166323 3434689 818336048 312530863 409335408 727011540 327569512 984399947 697465317 14963544 630621736 982591599 154772176 695482018 549885848 844629997 315014287 203802406 718957821 746682518 694729197 912388095 753632604 748091655 908428264 816486248 101467154 890151057 428359605 503306167 854214392 264695591 483558643 824000396 851657666 867424624 718661318 992200610 811574490 69609874 939359475 495366475 890556962 650401946 752541818 241051938 413735508 301556160 82674643 868329155 299746323 724092957 830626247 396749441 449207497 33883441 270426168 739577350 752843575 764382564 374079696 795032815 846064520 693061294 815057542 122972424 696284122 433980273 801213857 942606865 305428830 75602396 589858601 763998056 285988414 440421207 882354495 835009800 670989236 626940592 750025954 63697564 897822407 834539348 768105482 832157835 196457774 39259777 589599732 675873391 584970682 543895675 264723356 284538652 232623650 252714436 842234595 828347842 800778707 519872869 777083126 546316927 599027674 330276673 993798339 454722969 356520150 540915935 672671150 518093645 888030713 981842588 244132612 799123798 422649543 402686370 775247803 768615943 652799010 704555298 777955644 958381521 526199148 30099940 702847156 304668750 734370719 718570222 738893627 775729821 371850259 24345926 386720565 638677747 877794244 873809305 953494718 562044670 319579120 919095631 234966608 901551022 973752261 889374899 482675302 61397232 103059524 888608430 637193987 836165342 174328665 737428049 753276924 407105635 746919926 476136403 416213706 897723745 543085521 772572800 70432336 877938116 480897281 80109182 194350052 633710305 736189962 771310214 440323445 297929815 719891458 634256111 511701383 953818340 332332127 857732275 977576669 925970100 924335929 256028845 811174383 849239955 797370416 198874089 399897319 412800744 421062320 889062542 769435058 161113908 791863451 5834432 465631351 823687333 164627744 804386754 557095317 906704380 731370402 255461715 65760486 946348338 702592879 639688414 914561553 43947942 508432408 530331848 90967524 677675239 382731461 895578727 298718446 357240123 770587911 895274597 975830181 734122597 294452561 963415649 670989236 7841601 985676108 809311942 627139214 505284250 389795372 461524562 581377140 778127263 625264434 717116520 429150158 515580855 375630767 951267016 127399075 800429091 782101768 779795216 796033402 718571038 239422816 152593383 456651731 129650325 617711975 488301698 689488983 606442610 268341613 662350983 346524754 951549036 796990485 871139097 788639179 989209390 890990389 386416265 401209082 512104944 982000823 154409882 851593717 893210447 699687051 421368735 378775402 810956637 26368816 751598524 916602387 600865202 923853008 855351917 992559553 441381882 15331879 526491489 490409221 475053017 710231121 361926844 288651452 233751928 382004910 605255382 822830354 872787373 172840378 843283552 780834001 581608655 847391467 474694720 813568010 669252775 836778971 965049493 317720076 29430307 743513569 153093676 277841548 746290667 848175646 891532980 519137672 546414020 396271901 890807980 462420680 446350474 187679195 790359431 336316045 704124520 895980458 981162743 774915362 789404115 673642900 670989236 588238552 766558424 538630864 845501192 67737204 476960590 692894050 101437763 277710111 995917750 263720609 671174438 476976193 218873931 237793694 367328870 241207321 674664564 636162580 6275767 76581971 936246187 864184796 819041595 165221487 401730216 972799373 821171708 276363521 80771623 753184242 943452048 966148428 703305628 740290883 554349774 777773254 740760935 731660983 974508431 860377707 762598312 835703423 982247309 67345475 726699416 53708648 693655485 481976161 105120656 481343625 178028169 845906535 252641537 800573136 116081602 736681797 673231967 104774749 321710066 777472270 188032248 482005336 530349534 949614093 165314529 606143469 757336074 852836331 165673994 939792114 551583332 691234641 440252134 182806680 842428996 965579807 40540485 742679207 393384498 808834472 169849031 95377938 778863540 739765983 583837176 515681887 293649617 751441838 434045370 185107340 117259289 270855482 26780326 970378491 52650871 45700792 324872792 608976492 244357189 963219202 779609177 744936259 245733172 880845390 895950343 131090925 911313372 99486689 4573519 126251559 395499650 390627570 993720825 866888351 824954667 984338804 640105089 740809314 818528602 704079646 459891313 744551001 6798391 441440947 670989236 530549692 322329975 890267219 917401912 711707498 737889975 55935436 775845600 859340166 100163052 966752656 772987326 955210032 737321104 670989236 833517679 469208752 547891571 17941307 947591772 868690935 265161763 670036131 760470699 954886125 402364675 333557297 271940561 667226383 589737243 658890510 698192470 349841619 881010571 772008109 467502328 995661647 404644975 190422776 846505598 716777139 134420628 884668091 648160948 429301357 541466088 867619000 344978698 691707525 999866505 471057889 872632629 727262425 409601521 926612278 341879213 483721863 307963873 950228011 791616003 16766001 572423788 899011993 956345438 229952104 843414481 79902328 477759516 834924202 969646090 914205281 957316284 835530872 285695973 87672379 538808490 887015409 865172793 426787828 911507379 889604948 889706978 306807739 642649122 922954714 466561649 947532287 326329790 777018067 758609034 193553609 21436553 729860960 837736533 769280214 755195736 642680376 882282912 911376714 433831651 972526432 269111887 767420756 357486853 887686847 735415318 751431595 763525579 627234707 76262548 753017466 921891525 122848560 599768569 123424546 63119369 718228060 315103805 742843385 256813219 479023684 921716832 136881676 946547354 259704386 978552989 65147348 316402770 668251055 887884531 671312917 224329979 689916430 25673347 881198846 512677532 132068934 299008075 805672150 35285235 729904675 752274341 604162501 951913933 878279057 916305188 837973986 219983632 178896084 940129800 408544419 889594290 749253044 933450597 770024198 89319479 840712857 617055369 92157313 342725960 645689249 826358879 507589169 490490163 589695695 742887712 773896644 719165728 313999207 45611594 183805410 358886500 987369086 171618029 913969070 895654131 644167776 876710528 948844976 692993103 477571297 499627264 987874498 414236703 604506196 380579054 456682020 26914053 737324853 716359525 658556593 122915088 641648082 101697230 721989730 947916350 54161183 126229651 801644387 739382052 160562601 937550509 812333085 670989236 946587171 366986858 455153383 971913366 315703789 771151417 445735935 615930466 633502082 356700567 921920746 162355817 761421189 245193341 655888080 821821670 512803240 714619643 399994887 480402985 563671824 215378223 197833631 26184098 857258042 902125900 594770888 693807457 716166034 530578102 23278200 920507724 828679796 753710075 337960686 604266191 427589281 955181026 864240409 437763953 870651888 692861581 794885188 809042218 781181677 349436817 883182800 773993954 310581295 401185571 676170335 872750378 886001389 353821737 304116166 970883996 791590442 607225156 452208421 882578349 552403588 198371284 818433597 530658406 644491486 814086189 970278058 592511197 233425507 381795971 360966374 487699145 822536375 13236130 305686700 380968700 722053401 958154831 910478950 802981663 687887564 947894974 715259816 193602463 808891620 530178744 377430324 479024388 462683220 786285594 122393753 220549931 454655167 832966816 670549426 965138473 617819200 703778507 683765667 906863614 116613702 606203407 569020797 425049787 995017806 790340261 74615447 43883098 141174483 875884270 168733973 750517781 927818650 684018456 976511152 128330110 850237570 659973635 487240421 902422671 137105681 779794912 928754546 183120580 229083934 40118576 740706319 343974990 869001705 802610857 724476378 852280711 300081480 988555272 907414121 926733405 589905243 558776960 56154933 620518593 302169371 555945716 757579166 957652188 480736795 346983626 445567685 10295161 755827491 389813059 522883948 489371581 724167546 806825873 896399800 886806797 991724610 382355043 670989236 862690944 781016639 951115641 688829444 103218402 877417206 906199064 129520198 605478258 804656544 493788350 703833890 357338303 238870168 435720399 767478600 893324318 783627579 805904112 456277611 606154756 300041853 679471733 473384587 542559068 642566093 893000400 952658795 924107575 849395869 795322173 516890897 68468232 735712521 923048798 365928109 715601841 742531487 979407779 543786743 758918239 863043194 782586068 53962568 782373359 276500239 616776253 176196470 491716216 991030704 739186244 879294933 60317427 765331512 867254198 724813375 465608750 987868919 868957627 721845594 855528528 374592855 375281941 997506606 279823024 408607730 841751863 843825290 857519701 61008965 871365711 855269445 93681198 355395897 569436381 772643229 933010042 691378717 703872526 557011352 459522745 630696965 376661188 574770922 392917662 4606963 789923168 289824875 638302375 328908261 670989236 880343233 699571441 787552781 906224233 399450310 604294335 937857462 713901231 755203334 820250170 967421344 945974513 670989236 727628246 20363990 262628685 828325987 122829458 853557443 475466525 101075201 659084236 17685221 776759426 838391733 881887674 351472847 754853243 913551853 134816567 274211701 861771123 833557982 755326855 749262657 144941690 727501399 298180488 10596254 976385278 849075502 719637650 733691548 701566460 855438267 94924049 905432613 551842616 432930426 582179934 945503073 972072587 135560696 718564966 872211443 330666800 298068144 979395653 758555025 454013517 420609572 898692885 321614157 406048198 186024603 978728478 350846499 399053169 528094675 565668047 45745506 320430739 682442857 713563463 905580325 985717617 21040912 786207162 932386365 737133921 514548254 780277412 464054516 422964773 519845764 250647713 747953740 264070362 789959489 908629540 647864218 533823433 740875387 961296566 298295918 302516820 978202745 570182788 758925586 383484000 365410164 936109852 843490240 707955257 929487140 202414736 740864571 333832513 729606221 476652641 715837008 795218771 455326462 703086751 80180786 471571445 786380884 944950150 634522419 959447340 745410616 191870156 492163748 951734892 700117748 721637920 984184562 3307126 670989236 758908504 2390233 544949715 933256327 959559804 192880272 193146000 969821717 855617902 674331286 329567427 658200713 294369599 422050283 23959165 775769682 759525912 318856312 242301454 889735130 998119368 279123306 15194005 218897078 952985988 809915397 988601400 355013071 684461732 423030838 670989236 794712856 949152896 446928335 782165957 963753041 835479848 852635813 551205945 129804624 627204929 794355250 109848505 734035151 727317319 637722317 882740076 688188587 211108885 669604748 601913643 332691788 978485348 958540658 608141421 33971008 503614919 324385494 55145514 842641245 448805821 824037210 248287790 426484795 844542419 677864043 496204168 151094886 552863385 822205527 850525031 784065649 670989236 980334524 401165621 676709249 118461485 690355258 761127365 381147526 827153789 810306574 786511075 480612947 470636295 695923209 11977457 80685773 169824433 605832224 600022087 797603169 803071974 861888693 23342659 801096761 766740707 917933951 495997567 931017736 760302289 727247723 744009722 308969441 48523268 142532983 891589226 935829785 946862959 834296944 814795213 119847906 855955209 670989236 957443298 904860302 670989236 38901295 790429837 39794385 367362130 727043439 947177367 111898766 695838961 751669020 744429981 358818584 856688396 915699692 525553823 612098415 23961399 856589588 910052315 692163475 753682487 959764551 708264402 256148664 286874815 93912419 763555815 565652798 87347796 702298726 296604466 997105011 949870674 883261891 748948635 973995250 304407785 372736424 221695555 895106119 42738784 466559224 562578186 424910286 393772619 738506902 120085158 872146168 195864879 648007836 921793628 841268312 421772923 380753282 793066800 850349029 221137039 979434475 750172434 819106035 897409784 746553770 161970456 979541728 782714748 552870136 325336654 627182082 50846321 738513292 400956497 707804246 961525411 203870347 2421818 183225413 872948568 35890850 516922770 111794330 800544227 339728180 447263480 994151800 695652894 34422400 716079164 434402755 479324214 554020787 425349402 362920837 679979419 211071363 829879562 752798911 85277435 973512374 921143480 851448294 235618173 809411633 696304792 234072937 719185891 36391581 340809022 789327001 896378509 798415287 324693168 682308740 297434337 573533112 248175302 748167033 100046702 428918031 797702402 554822734 859400994 785783775 670989236 729397741 260912561 531428437 766123263 6951132 998629206 778076958 776297332 195004443 4683319 56850523 336975006 408972535 929777898 85745394 473376727 61689192 756286596 458528691 450500643 964072006 819906962 878657864 987742419 740397049 907110995 720908073 735415468 952652103 714175616 661875284 518002188 353311947 896992627 145142421 278955994 292797546 910050015 952817846 476909838 299034482 805823528 802285196 76338086 862975709 400746065 776605207 425315466 258138030 713704598 943927489 116875860 984457317 957945443 263278194 332249196 122502707 982271168 802402655 693759524 674515779 273880417 674034535 469414657 673309320 405895866 774447789 970831433 336698741 970095132 876253377 329473561 287520821 253759613 888947828 50745833 994751120 336903104 816469784 129915229 117423126 894960284 307109111 793899730 326978997 310229070 913464699 777731505 261486207 828222905 805756074 798007335 344425627 278173351 788361230 644225892 885962686 936887163 642466841 854491980 827135461 682863504 454589786 720183908 673467145 275224318 992865499 97273332 165507745 462980475 248625940 487476449 897246139 19365153 212080858 543930661 277283396 142542824 772490948 980158607 245026387 926875362 260059600 939599721 649261098 853865703 314590756 378480894 832395695 161524992 749029623 882334930 198904252 547724676 809867205 766169446 141913799 344338250 41715416 261102270 254941265 349181214 864582485 767439940 421891986 702588462 877386882 541415463 235422936 812762990 806105181 522818210 702535541 407683394 179662049 680625804 379096551 2918148 961159897 946626754 657276715 176103322 791277425 865156643 735187852 108442555 564907858 61294905 70433795 985659124 769865636 842531362 534760091 46524714 264560317 503343240 810377844 824342778 834773307 768376446 12793513 573566502 951725882 718071189 590552819 582152431 723969589 721441492 269106157 914168759 567564399 917259719 445153352 120894822 436808337 442717886 601705138 258078263 286550773 57804684 843774477 750597670 31329312 796058158 681893295 608062330 686506235 950491223 763574244 970748561 767503954 565772338 658038457 431716446 781764861 455250435 618028296 865875322 114372522 662713285 917712345 541021846 123790328 354667858 134376928 155186615 766063092 799005354 814464187 785519151 981507257 2327351 451534909 324235831 27657328 385553962 256434528 14587313 56658133 810119621 195719494 24959699 555059473 857982838 980567256 759369634 974319170 978096057 171803901 952411674 157974606 754442974 105441183 943940171 961302942 866236800 551591676 759619202 802184742 172574942 870677315 53964649 83271207 406250126 646756896 737428399 15652715 602787569 993848300 968001623 104908673 685104867 932456266 889288002 719189613 198864863 938512053 946394234 808760649 804291373 769489299 910605859 966087954 2404616 401634983 799434231 670989236 657610958 96427563 555489013 739722043 157132453 811748991 854695761 325659072 596924979 929257784 854157494 605146637 872505108 693652448 53388917 721531748 895082170 91259043 931907761 174104350 984315832 922609565 234157428 810408079 918424539 664680608 793957027 767988575 965250300 967876113 610290690 548902130 478970273 813543655 463025234 706913237 836834310 87925859 848228216 689352519 230002913 686449499 624541687 916842854 71230098 143964529 991439770 885857858 505649501 771828823 864583793 329811994 202625489 726839150 888742821 998128410 902714087 563418079 97497794 505985021 466328237 572705226 780212362 673838463 539463287 731764918 972108487 740458948 685487902 400176353 109227948 478945115 697492442 707632570 436388820 836923291 860331840 636709321 754432690 661960599 282008522 201771182 239978306 79997444 867506477 760944507 708604205 794718026 225660372 94496581 854249410 589973914 690920439 975836759 493411066 882288699 706119173 460663633 354457538 56030905 181580565 670989236 844516565 938766630 603183411 567553738 888300261 11620398 966376753 890057086 779064597 450844098 765102724 764855484 842404203 883905298 757855622 732261926 360235057 214397072 483879602 721555892 888350424 768131271 796511782 822222511 663570031 887441456 238033900 683927444 318429234 489021501 833673286 988038582 896304746 885905294 903313926 756264536 828805852 114338266 960687885 802235799 743231881 987946742 802260930 861965490 872681561 888470706 680258220 771452563 656632434 214500094 157541106 498681758 160588728 294106221 704735136 740299455 456080358 807318413 87061116 331644816 194407450 682061774 700927469 399775526 973595122 670989236 687035831 112524173 730117212 155914356 248632209 783861303 62505932 721309263 690623476 682764799 809765668 849963040 621966136 886858830 426496210 867396530 865507871 747456574 923049256 306535012 918431119 992973497 852451890 586757032 893192864 686565494 948657791 275645475 135162302 613056409 246980586 20430119 863058845 464038408 153114043 72091222 447542305 828490392 473764422 256551562 881256594 183902710 992334012 824507737 15029756 315251464 41334138 850967459 977541341 660167947 886073487 670989236 394756242 813066689 140902620 57065785 169204915 783051395 150995518 841397352 202814636 865440823 401215188 865184752 842598653 826378906 728069538 598380464 357421646 458882597 441755668 462135036 737134939 826074710 837420280 967508175 766838042 239675001 690583049 82810798 647847630 813290250 928181054 604902936 917581963 268805458 893402168 562227126 104656087 184065770 826553764 772396643 745933846 265758023 865451238 639531010 840004474 544146526 832102069 670989236 439585076 551587711 24294898 313838270 991132409 348320726 302964007 904372265 909830935 565287006 801568906 700205406 82640206 131286900 814132378 670989236 447462305 881152983 916904940 836048903 77367599 572800555 797924743 757020647 920489875 822076626 133758087 972555978 393758433 717497701 128291588 1817478 701034060 463776314 729633768 107077434 877051621 49568588 538715130 160905686 701843844 673735862 597554325 739898771 236443925 264186287 227382480 938741868 866384400 689474946 877466811 716864291 618498094 781313550 785283020 761287824 684111452 884632419 731546375 667363129 147887162 319630239 846342098 775195045 629578597 541539269 768140241 688296908 857123326 742149917 470003531 820087731 357069113 146698186 881943932 932831084 670989236 298306385 184856529 725933729 85103262 607677811 683889937 878390614 994355015 466670278 700692076 876983099 389166939 994610893 699478609 846894088 755482056 104266952 824540659 800844896 941909717 898061568 776087411 741380615 298992247 454552819 390490115 815239160 841031799 896807574 672871592 726442393 46182513 923937742 799838922 733517749 884965345 235143518 728287570 479848548 915741363 284366123 874378405 792044225 467186789 883903434 261271316 374489283 425761280 890045027 193890919 915660207 780932795 682550121 996042187 273062381 431849265 814320256 295224382 921853621 606200153 980657996 648887386 643905860 899749949 875763489 942703168 881007157 943729138 847897526 634123807 369477191 658998438 700164381 921847875 708995892 908729583 255618685 895070921 719203387 526655896 938423524 426526828 400739128 966784639 983908270 738877196 659429979 713080002 749508474 142069592 788824484 59134425 917997087 677969809 794950438 868963526 212005865 398171212 141070631 717200235 876767767 869761557 590075955 410774386 715657891 504542275 464434142 296701715 983330711 842986340 534128254 891484897 802128735 948084353 230948786 491919428 52814535 528545860 257746297 725233325 721784989 300100007 151530406 283484157 927800896 562190760 670525056 746236699 122678669 452361073 719347373 34060897 990314843 812744564 798371271 549668176 219189387 371648887 766266000 252482214 695867636 567783677 414160425 995469796 698383363 912286072 736157607 877571942 248412235 812327971 374831259 967645969 788347397 985668902 935777098 417595070 766167886 591211725 399001715 769857002 816181355 640711419 820977897 362562415 687802945 891228596 812594303 502872520 118571040 917870061 943568485 719834451 93946661 941435572 581099483 674905649 215850130 534735304 874589471 786721851 509479859 383865093 724309434 886689665 300598846 656510859 207072168 643605583 715042024 615337871 496750445 785728858 715747485 37824886 724462037 5995653 466986439 172522647 350703143 840283234 290227894 1192225 822015336 649744095 701622012 360499269 675840410 783096415 842843602 487358247 792972565 884573469 801031432 915708978 630888631 577739179 939751935 670989236 943969693 673874894 162407775 10512164 270290809 229191201 65225917 222499837 332666134 27160203 191095048 726046959 339441793 800280506 143764081 224334186 503908979 887641005 32607867 674208022 424425339 821535113 841579549 747520609 998913370 378478928 607285196 972965912 710852183 303099227 891893650 604470223 926670991 242065855 609259787 863706014 162537408 327458734 655555919 954811976 950849782 679681236 311954996 593536437 196854404 748746547 830501789 712906659 5525065 632796791 715002068 804868896 707408564 831997804 309969356 453181789 639251995 497916802 127600695 348710846 712932246 894972393 327139314 866994206 367962733 986447378 496056620 931316499 426464666 64764357 653521001 683133968 139228065 17429624 599278250 639428594 397102571 392056739 694509894 342941960 947872422 406792477 909749589 193068671 289724249 721457627 625210673 105625868 578939119 888218575 112859654 828598810 62742091 670989236 923606362 375396768 609226810 173669734 942364429 399972597 641140681 919251793 670989236 848381088 850939896 940861766 865816383 33325485 323574723 893407060 464760052 678810199 343448700 673854284 616838423 399361830 66968114 848765075 778288799 939194734 911736979 908893644 183853097 552443659 696394756 791462795 500196076 901159605 617933509 228531106 629565312 775933150 285519182 445661997 666634546 872736897 747314618 928677539 79335766 879175915 28333292 880426590 721099814 682024845 416052531 46017172 427808320 260800503 880039690 441379097 459349812 375997671 975092018 117217955 885976068 722864149 388057260 159704791 903547911 703455412 774372185 861837772 807099841 463339854 723833055 882733637 624875374 922525141 986486259 495338458 698889969 823536359 963800334 980234320 838788295 192400071 140893655 272654633 869007887 967943013 825688989 687275757 829797327 725188524 220754602 724997607 295400342 969665729 902245472 939541481 670989236 799661336 712165822 371812714 364744211 603937396 765980889 919235402 884417416 191262045 819014642 351684094 873493083 217266507 244003105 803799795 291502338 889744312 383315695 797634248 995744968 50068444 663308638 490752500 925820552 519633011 873100446 855459649 802384089 746205272 825465720 990150017 893516798 426477422 800511743 229154293 150057403 503205948 601536173 120796447 698149208 885643741 898928194 935232804 738025611 970069122 504950547 646076570 663006954 303746960 726279977 236650184 295198262 552228429 721157965 504611353 563598029 419199360 974753095 841483876 582370815 955525741 38181970 822721526 258279058 411766112 364993391 530638740 106831908 907702066 55777649 832725449 937978986 158176613 548418740 785796421 876031649 580729579 706873068 628652028 717889515 390917282 839209844 63864265 43336772 492367941 712012639 610270362 740363491 831666665 473947056 789824948 704387298 424873002 129865910 117377613 186407843 383689865 267677150 715774651 508400703 787777057 945422719 209977500 435454056 948529289 661904615 382001168 98015874 309005010 438146147 441915762 60700320 303913330 400177086 175864565 312467910 934291348 983135345 670989236 850613518 10978235 910951117 829568688 940741986 947637485 624425567 48713520 274140431 982115992 984622621 706774374 677220657 917621365 123590938 261375043 126830566 278677962 870359279 445873141 197348680 332622488 264199743 763667240 187276766 746846641 670989236 943483137 424825897 253249703 856822371 766520255 970695305 727834704 80382754 187342786 481956354 946287219 755842435 828021915 754600707 647814309 447225641 892653303 227389975 921790299 9990749 805884473 91835407 918254564 905498109 961929024 588725448 997616586 467047826 624428172 10860912 819316308 875917601 406961872 150150639 247897270 918553848 637001266 180685385 641007880 868879400 689260952 730543707 640201796 138002610 406000449 48987112 666163082 266523273 861674694 973283116 670989236 433497499 694183948 723335784 551656521 549110033 144369140 670989236 5270516 568801433 700503322 136860978 218819068 338034775 887158629 865324391 342651467 639963194 979025293 332471654 676838287 989896870 897604865 987284637 809678619 397163414 882903770 844221110 314668451 894662108 693735246 416968734 252419900 838752935 27624924 14109747 554853464 196696582 990750048 933806341 217636954 4242600 648053107 293674694 804738212 225905143 277684699 588322944 814711575 374509365 439508277 924958816 892037255 749961613 23048050 131994695 900571526 862739420 670989236 815028103 200028010 912552108 72223363 670644443 934855850 875820003 803226114 409548711 939533019 739150116 604736766 793849999 429299520 426847027 945553137 220803024 190902242 326360517 150414366 800745590 841450513 949582335 676213587 884867305 476327013 742106290 8125071 182430372 127526759 921116843 670989236 775559098 915333456 777345919 561775906 817512074 278668683 927748669 224706345 897793185 776970415 534037553 428651927 736675057 942488040 808550653 943675115 899307971 400690462 104692894 703073237 329876198 998504440 70111395 939810556 282760203 351891713 215704289 968265754 686464434 997221221 925224505 153453317 920269002 910952590 789338951 378571275 784836308 210329885 547201681 848585314 705006980 711697581 905053562 457927109 966564303 469792502 880935656 853362740 657204554 502434470 510603716 723259636 187864740 240581202 530314586 895094978 802340229 701685113 729493115 565661812 498001227 365815441 263252519 620864538 940434362 529405904 965925237 709161414 291927774 923591360 683718821 712208041 904642705 574606635 609546427 891552651 234926510 863676760 814977255 250845673 751554093 845283664 431508959 762753528 878043646 979987632 977320155 745730583 649442810 872096139 678105654 839681172 717490373 896768918 929793965 243875904 519743346 775941187 670989236 47636472 844675901 553268244 885442226 941290059 31014631 767236818 310169223 617916410 839392074 504868704 100510881 720700068 487866360 962732523 81033459 130923278 711048390 595372886 476713007 813765959 915241577 109824930 261998342 982204198 904831878 524866565 983710268 432858443 194599899 552495639 15259005 681930076 22888799 534683447 976058701 657797465 819613231 613625907 670989236 570008172 856795882 876372942 793102911 617195403 697741087 198079953 600291919 983443354 741597689 481277302 748996045 278534377 397976776 331495231 406938855 150159305 966832427 769991276 853396043 884912914 163517440 344978466 899927418 398064736 665404201 325135322 939934192 97470411 253052774 929293400 702229790 699882178 746138526 434876325 735708697 959793897 877619268 234408279 923591962 191628968 483885212 959638872 271607706 737638432 56604100 519757003 14890291 912357944 937879798 81929346 461432390 910286608 338383817 120322987 680813141 760318174 195316931 215010796 398358947 869178976 755574107 587746513 852105659 273389915 965822770 632993769 575088807 796107002 434680754 293791730 285746219 819747445 661314264 999452350 103944048 729759704 819993640 757921068 785951530 160128441 972244704 248553893 801865920 920193770 87104174 392379376 915183317 134056065 666853378 510973805 884384131 740135539 953714870 885036775 260855741 432590446 828789611 739528497 725938501 763550783 67473977 670989236 840298009 443551276 188317375 630473445 696325667 10205256 887468979 903226493 248468521 701441673 439930823 491531595 959034172 850465254 897550567 682795005 928702750 72479151 713563309 718298578 571806370 695130580 910678599 251165495 974879438 897169730 336026169 832583588 787592742 973748848 696356957 100731513 232974061 682775280 394765800 964038954 509980297 365771292 8530417 890837339 383988772 553045895 843957113 32130705 756357768 11557471 949860508 235228913 73730292 834981121 702805775 571630527 799950066 282527163 888887543 915668657 1655937 587056967 105710438 730609328 805571697 325108112 780293895 489630042 322118021 290450424 790025318 342232119 979475895 677823626 837261924 899770649 240777145 350626613 690091642 732385113 952217586 350533216 928868968 398387088 106342588 516792260 386977028 936268175 234067694 965010659 938683496 670989236 634662006 21286060 981237415 970403316 670989236 292207956 494492837 796752362 847819842 277155767 159686853 808636823 479563861 521822727 171237129 645549456 221945043 598484402 953043267 715220340 883545609 364923399 802523730 678337653 132877314 55934434 731515741 344173196 346082998 609691523 510734026 365751900 916160908 331530081 822909700 318771974 800404335 614136645 767985793 501671387 999498836 292264465 849344349 459707928 842349022 685964598 220759284 138551698 578754222 848125351 411249753 947838311 780598287 593428548 389375008 759596601 194907914 817713332 918055093 850014832 640269933 499844284 124379533 685253658 806354880 883605973 688101900 534649919 739123758 842801545 971914391 47063856 924748059 805898258 881675678 482779048 800349576 48653703 927417091 122472528 811681266 680976092 391515569 259670079 998033147 524602587 4880770 829940786 949688482 714444383 292057557 213983334 363120395 54344064 188149409 735424396 921242938 271046603 513903226 926276000 977951102 323637282 747843818 719884615 825812035 641319524 811545883 673648772 143969405 946605232 743960907 811244217 608633791 525054158 860426713 781022433 731223065 859110335 972450773 831314240 250738222 23032535 855460700 829025566 426645857 783399527 636038396 361577716 646368647 722670192 864400542 700892786 495751909 806930748 924550981 493717096 813994038 813720006 621563998 846301890 659617026 711576262 351622966 408756094 876000525 663720226 339437002 749300007 739916311 922907503 899118435 230859499 946120938 791562653 168138710 602792802 902850178 66201879 926117448 103903245 439127934 490416596 670989236 500617104 116418114 547402738 404981953 938960227 881664502 868265365 822018577 832521402 657640392 703896817 215349359 63676963 727649850 752501363 667014010 621001948 717575837 173600468 201327258 716669168 685066147 172549932 619491543 975890516 85045093 558573893 818821314 224999277 894146689 559291881 206913602 850950196 947138389 834951134 815790854 387710836 885671639 714534204 971237148 728620391 700563960 606459417 831929697 411885123 861160399 947361381 987037989 199141122 130040815 767956935 970993944 46364617 517278632 489345778 823001131 888528369 492004358 71954407 871237887 212441837 304934999 907477587 781875482 833838756 336611310 791903067 724798038 670989236 249720836 263826020 712899689 817882688 911473029 985441157 63673786 540553682 574447500 675410669 770622722 679796252 784167280 880199632 580391565 757392925 20735182 23254010 307822902 919813691 937364063 717243020 39684990 10905238 493391051 943526769 762969539 41320978 160985209 847434946 670989236 56701066 759508104 396750312 919146739 256412951 685022096 572290081 766590639 58421104 31362063 991266448 143413811 968153644 297560328 991619488 79198372 791422936 719174341 714720768 257403837 790515522 514748473 837162103 597392016 419681897 742849643 337892443 979152508 563919653 757854473 310391707 809090334 132942348 6514360 95933317 361838610 759638166 705168715 77483434 949648463 683038462 879270695 892422070 522707757 822391344 760399904 396542034 914130843 849395443 20289125 167823730 340500237 911444303 941831032 76376618 102708499 981452893 250317487 852795101 1537679 374947565 481406382 189202852 32021402 724427159 499632936 115298494 31805282 839005653 964353921 677605524 411763465 964588829 859444216 752412577 958373365 918475498 824078506 61736099 325364307 557630486 514311078 707206438 106489199 513311026 101797540 549359341 92346971 834834758 64392240 704982073 91287007 120847217 717251195 224332351 195314617 881247307 679792601 736166152 291884606 594495533 970728077 806760062 35093369 837091507 314073852 898631740 281029110 852136583 618168304 386524022 542568433 59402053 556677577 657914767 250525239 882914302 639876980 907575083 157789239 879184874 823747224 568717759 983935173 237721506 402627618 941824786 712224003 881906732 462067959 652136297 833362428 411613370 944661861 195106931 753140563 365010088 100652436 465089459 676216970 610172063 808457275 886826493 918090020 834604070 150642177 872433902 851329317 418340099 944830402 246025915 132209456 799917800 197893926 210628745 82089020 891649416 293942186 805167877 788991752 372717007 993201620 773939748 703795779 84549905 282610653 671984936 943383689 897654429 813027075 767210826 942712527 470346022 165650433 670989236 670989236 510764565 467096499 609736975 480933802 616001739 177164959 184361112 743681468 668252088 922488780 720683751 302409660 98392922 747574350 744663804 638908638 792862425 866562416 740824251 305783399 672458962 744000770 756707573 368863319 855801715 942953201 810634891 553937401 735950864 950737516 440813388 715791666 875094971 901057364 114126018 887328910 815463370 364857116 992524722 476651689 4000589 78727053 846956168 910281624 49933878 676299276 745824805 807569507 251019499 896166626 721921877 721291950 166604118 808924675 27739440 441406442 975267883 809737061 332018630 241953318 67133573 935204993 728392204 405495785 169554111 698193111 110321883 84577852 101662582 205993964 716727486 729728564 965795821 663491477 475815476 144593723 259586951 772352956 882999440 687260174 812942985 859248735 253443798 41721081 262946849 639384260 69075455 612786930 6456233 451211878 985610668 928917283 859447330 967649409 205541256 659078678 777925910 721621682 653532728 572516209 906024484 112812132 35341294 728274470 778321560 383648050 466007113 754308622 148682415 695570058 814892848 871936722 176449136 854864588 989683427 471309422 444970062 982688860 318753732 567311898 99891151 846581705 835998538 670989236 255744943 601946044 943274909 872295090 881716109 905044675 460627288 959884813 870599735 947673794 320518806 826872553 912213289 491310067 960252049 591206049 714979959 937759294 724003468 909638398 4039534 326787206 952546657 795293656 954134261 761477557 996945704 774300650 92079749 442629592 781176802 585710433 805335148 625042140 870871808 209455406 479193685 935250412 828583566 764596886 285061968 407950787 843502231 670989236 83216111 470691492 983920476 724947285 3315306 74117995 564609954 713950420 895707665 834288930 10975057 713978063 670989236 556382858 688558765 335136790 895563240 887495473 724741636 897857771 255331730 86602905 79774715 787289541 320235011 122733180 972680379 590164427 954878099 934150697 794947151 715795193 543580660 131892904 635377047 958531925 367998641 831924446 14662396 759965684 598795316 658571632 339328770 742503780 800285372 947368168 536475164 404104183 967424783 648575560 925113165 464394820 987660391 930725426 240524359 823744796 866228471 618166074 32858407 174363513 720863465 275584923 670989236 822389043 726097056 156030759 167239935 582863929 911836615 784949682 842154817 999184174 797336028 887826786 236286134 829221583 687811606 527842207 546275586 965431625 656408213 277029082 419867079 327739566 810175013 777899818 805980638 648295422 939343555 119660755 788634468 699767342 976303904 912083311 291498580 805209819 805218711 955771831 874167302 971675348 816566967 462224504 748217680 122325840 491769429 43700145 273667930 886392070 169089784 98288440 745448234 991711415 644874207 230068386 951293434 215936620 748480303 767312685 801129921 689203885 64199536 486740977 207753597 335776670 63809907 807603084 707877386 458662843 848871314 171845829 918542335 775230177 552838629 76647775 945429437 276733975 755946536 793055062 257788152 87962555 603746340 641220714 85063180 614819493 953781727 629574619 298794851 900298427 833861343 992569984 127372065 745301920 670989236 282804471 337272961 978548715 830588873 747867360 756672602 110579983 726421940 869565985 948899712 370587188 158445994 515473215 253652642 113275973 127514685 767633274 925861221 171907962 707382691 808178517 687243215 405924255 932978109 81340911 732496114 915151833 6565991 730771202 586363751 96972371 798540756 866377643 309341112 604954895 244056625 805214975 959040962 753735242 719580924 530591929 962890065 325435485 583472946 63657860 638911066 260576404 850471503 172438407 65766443 458363051 671331074 87998860 357517509 949841892 815059741 314200876 932309110 728222954 508498728 102555344 771037333 904602237 370387916 996796901 715663030 986415383 21182955 590611456 168411772 555292528 223268457 760579964 887835048 203000241 302505511 179526526 898282004 722022162 917362852 23013708 887139954 830259978 633516631 255590716 223578844 839873700 823347540 990017126 671980971 410742479 863006041 927132881 721841310 816038914 362934554 965454231 288518071 974608820 883720058 250530133 557377392 95594588 263535199 993267966 309054144 909720317 889052715 945371311 190022659 415987968 834512162 783965498 125383206 82243394 610380472 701849908 680632876 977499137 656107316 559404409 253876382 230082829 421424719 880428329 546824137 907862515 651726535 331231421 877124312 675140360 668969532 913459199 973120925 307726763 381878975 554176285 711083657 529075722 782496171 851964216 774146870 766079368 458146544 476546612 381625495 221220611 94465335 864107008 832234161 879329963 890532943 956441644 221270041 351889726 923684647 544372963 678405416 279816437 342119459 554750912 670989236 922864317 895446846 941891883 707477458 894301944 161565439 800560560 725255842 827157457 407196574 754062057 244334775 951836474 802965598 224934923 377665001 11991883 927768915 788519609 866324639 542328573 936688623 998892024 8840684 76237574 269704485 133273290 66816067 84750477 673658886 650246853 573462800 987951991 759467087 197555654 541126309 305073130 748509404 906097931 580138507 758729484 759307927 287361825 882915310 121572888 775283844 131700940 727882243 54377661 216722102 745886557 570683967 777501152 674250573 386793532 541195452 152362432 782653433 239870912 336724782 30626431 723899718 726096290 135319998 96301171 623321129 108360192 987183997 698877316 949636490 130620948 945107692 838096326 169333199 863970229 909644609 842052431 381250805 867073246 922834308 793223883 238837067 619823196 692746787 957206250 839143510 722286508 798476205 484848478 932512342 661941191 179019350 832599506 296029629 776602335 862513921 712046611 749474007 70130622 996370925 763768788 986599800 759432928 101555169 427885290 81687070 869610471 746131813 626164451 709825357 729736148 888954671 275277345 882656138 843176730 716682091 637236611 758709879 765489968 692846134 252627565 44858139 588087068 319406607 788868721 792184735 416302657 809044262 830574515 958797280 754100693 117997996 931309171 791580263 800163738 47798693 78575508 582006616 650828034 168150463 695240119 397207339 680033073 553064 284958570 747886752 383049862 516314146 709286625 818635120 546986147 763786791 790086285 52112812 86499923 93592864 846832592 5892277 11125694 282308205 495387598 387225341 794341703 785580458 735016992 674788324 758966777 257693399 774242730 413916697 352021836 879631875 806595764 798063716 287168607 350269546 812786662 318436857 227669765 688315870 682681127 871961168 290130844 455449799 806865618 826417372 813392855 91771283 646014216 470704261 901521572 697621425 970825823 837349689 23581238 161178534 416448192 707739043 973403757 268482300 408393587 328235656 185599149 861699781 392299658 132836166 791814369 728989500 820674467 277461230 223770159 937845576 836093136 283428295 837760986 868534898 80664526 953482376 690424248 503612821 738734171 672717933 954292132 852367300 709791938 267129627 715212373 543939997 841427039 764261377 984760209 3106382 469872142 670989236 943789637 962982537 452908693 693039575 807129078 857374560 729429892 585840316 955681824 711806583 190211323 807168471 581808879 86010918 86256228 642340494 942312223 514958772 378576456 531338617 150583220 107647656 887964159 766979079 701849154 75006419 711242778 670989236 51719571 161806252 697937696 936169796 983914814 716730631 488691548 966054321 480583685 773426455 206282969 730720329 379652082 524079242 670989236 676401202 440461106 788761202 939330731 308222495 577233202 56925267 520687690 616646774 958010480 442027326 790462312 855978013 608385301 561152918 499493526 153269830 577360013 175725453 262498590 728863650 592177574 670989236 337103186 307827065 951462585 569987632 666311846 896223059 764540176 939424669 836550652 399958728 31261812 604290949 793545395 601610688 160059210 647934656 780530476 318355151 88508106 307920927 113995176 179075993 857381420 101859988 289105368 765339133 622997725 529267994 98022603 564915157 763069188 207689923 54169408 442386921 969858584 211916923 767011755 223716542 891145595 653614392 372003073 138012651 125742237 90006571 578913223 115230233 944797916 757225916 776113632 740288275 911797659 824016135 506872035 515722225 534129169 203306657 361133931 963027617 225765272 670989236 957332479 989340374 867751867 900098544 966220308 845104193 978489199 359067633 188576501 725120395 141335061 900739276 980578428 339352794 719130849 155308481 677425237 616100653 995105940 397842168 384726705 403978839 632843636 573155066 760933796 288030354 256038314 969667117 920236648 894163972 792453484 865336559 550774720 906933109 139736342 792845954 968069199 630090814 692610253 954135116 207178744 959745393 576000303 989499599 153673937 590698806 151643132 217503326 76885089 981192011 696231419 491118919 547037262 879231087 646353258 407459631 804027192 732798940 324987820 565937294 732802292 234086989 283546908 393607181 13451871 494642961 791500866 210083174 190340593 423408044 118955645 129239332 940550387 486322015 382837943 704853751 500990473 638346184 713447879 826427581 747275454 701207353 251022362 291291509 74897245 16932221 705782986 705171232 897983492 968221675 945973580 383369075 823717851 592915552 381557768 225787039 302235091 176172537 776304305 919458866 815210110 56603646 677085402 32653474 150769526 687006614 913308511 174363682 873681859 334208114 666370827 539156213 321333814 991221246 397514852 830636909 331729370 180050165 774513867 13906752 770068037 560618164 702575167 776521039 303857323 698438707 845024253 731888486 973727559 626197418 864411529 949998879 545200342 682392121 758939629 786926389 314730102 656797917 123905676 152547617 888668411 854568872 662788603 867647959 678057767 537928977 575088011 705988880 190924471 547336374 241856781 956873636 521188312 990330885 493255941 128908713 897871862 572417904 543447840 232887475 784591084 684315896 659323220 894907919 960262274 475872332 202075029 335874354 26756339 406748270 769281934 443604659 756402093 936451401 823479142 889027582 338297088 703539578 130759678 915393816 830763233 401332424 403529545 322582786 435940188 966545970 636782938 680682625 679094731 874844983 847929934 408158229 884582739 793782536 484446216 861638401 801018838 881138109 781912037 257147641 918915684 815470965 713583205 640868332 294382476 231794726 337104970 203787351 36133394 403712870 985841490 966896453 850405742 276912959 221086023 425813946 906153586 489463837 543686424 233990290 1203677 996072265 859567276 545916921 765049063 734763078 979742537 636205648 40561987 440626842 929641612 576682520 57038870 980507885 756625375 830035896 672943437 901159242 218884208 395358919 943483497 745993765 799558864 36441661 116074994 276128024 816800298 670989236 591728841 376992110 780270479 661576800 985861212 519822429 191864562 921300645 941206711 354333373 419056668 670989236 594408976 467856166 836543295 854548905 277179360 530491944 779378687 473571831 911499715 403378119 454444526 891382011 271581881 969974767 849472594 804859070 952819667 927651547 677770340 783058361 798797672 906470656 869030618 864669073 744392951 736958888 796238803 3720224 627057412 275284021 226390794 551076840 813037939 261063173 73079152 228275005 558061502 804065968 189384418 948774322 750186990 441368497 788011586 963553567 772169956 552555353 778116241 673899530 754054707 510837729 553411771 69780291 477921566 589766170 165205941 478733690 710072250 435069977 763354096 742675630 578105743 784140916 143840901 860341859 687919880 69580316 145791080 810772550 856473113 755194791 723092052 876158869 952087126 239275385 727684663 454537888 204760670 152142560 926066720 733688159 825322485 4974252 935587362 793468238 392818555 391412856 757060402 485545628 808321739 145767093 958669705 885387434 844287858 199467719 775552307 566593707 783570781 692330555 287426686 767732481 533489127 468187080 103494010 838265547 124038264 576772515 968695005 645731359 924393098 855343584 955777166 935781637 140122137 464898035 676055256 994684473 427393405 58330909 594365661 670989236 75441120 471590856 861048324 813761591 599901286 878226838 681570305 792255045 338324001 682783792 82448368 699731806 507868801 764400110 130927764 788928578 429266640 708505814 782976601 951433509 795376701 88756779 902399615 692379842 262227180 856341537 305831937 475511328 44939322 642600471 692310765 629589764 698232996 708435234 939505381 17054413 23705386 976476288 170763521 969042170 157393100 149551357 168877400 779405200 512734811 242520935 799327526 971599946 216543320 914348179 868134683 831683889 902935721 849343989 879456391 205709045 760901440 246651433 32815551 663037223 816608176 670000473 878757370 164908147 777454186 981338280 671116158 56420378 591130788 920862781 39829769 756899528 483325789 598172537 348640441 502918430 801784494 814072383 884089362 43728474 269846613 91792267 316012898 788742733 979097419 912924361 653180492 742201325 955025259 370369343 688257276 182679097 993627525 420345893 646393438 784930980 769438193 588727281 412641129 406268935 148243529 946287082 671991441 788467246 937163692 821394985 401135359 603473312 602511984 998865704 868183914 557085564 757721959 857716847 783616842 486211010 850850072 687743870 710645674 716954946 840356495 899340954 828778593 546329486 106769628 919201818 68250905 441866667 883251593 660038026 492931071 672786282 922008957 741688999 158085762 808955122 165789934 693305221 25901105 744860097 550741195 414729317 456533860 918635018 149171908 931294632 357461324 504012460 87992019 786364498 518871873 119423447 83586441 958903618 762718623 711818298 150393433 905470685 873773211 889290800 602524603 544553644 706455986 770385639 681342253 463994172 710142703 892223785 840407290 646305425 830605052 846761637 745314228 110851365 302063205 711999292 344267693 162448007 644296003 644289548 458100312 154312213 835326469 841430387 843796421 912346350 772001758 431479949 369516917 387457770 387376091 362466067 912107071 184093488 718968082 228769944 920038654 893875971 312421278 464474080 846225436 123558299 208544291 91182785 973801066 896758299 940157425 220203344 296505578 482983715 660127993 471684608 499001147 629291739 868845554 629906847 908272933 264522052 138416436 637776796 3118128 180889701 57249745 228010455 355781577 259317581 589830867 122519394 976171146 407638850 968047538 789064491 750968200 969969518 906637435 457217144 757663916 163104219 467061813 951644677 591315721 205097289 820206809 971594616 36762607 778896535 905582763 722545550 385561792 901550813 300353625 217304107 950912018 861958797 733760752 913691362 882912074 168568267 353219981 718980432 78382901 943772741 219037143 871474643 584906244 536607126 751969948 310582964 536496451 699993964 766326591 742861553 867663350 746122542 587503329 493576554 530033735 209911530 397440382 284379606 817322925 939887681 116509811 938940733 777560774 648873241 939630839 18970734 402916416 843023005 841532341 915536556 241441043 96225309 813877647 668946467 519571913 90523155 783755134 620448496 181789806 714387585 423035096 773716456 746179163 321758039 520778383 945434482 774320956 729663836 948501204 710338221 398988369 860712954 436628497 877426377 270811094 761632239 321429073 505186786 446278972 287160463 222657112 990274577 993829558 184564247 998812916 943846199 630562687 965710899 824565386 12029318 4472216 502906291 184769328 80575740 907113184 573449965 940892819 773558185 421640736 930601106 183893770 741103140 330389592 719777273 937150443 805448386 415663751 245948600 768019188 97916170 551230138 312535801 49209984 359737566 706119605 917510645 507179830 351559579 788097317 482408467 365745534 252750954 316346098 670989236 672418794 715414662 807316792 831496849 787209094 102887901 309138858 257718490 400398011 294563768 151582218 863640408 932377887 126072185 749158161 677896127 698994654 233898291 180549862 909378333 734892130 645205657 552223831 944916166 476971589 397195339 393517049 957563826 674001007 874361850 14437361 979519361 839514197 804942346 898343198 820103495 370715101 756187626 617117656 536330409 965127215 768910818 651701847 953248747 298524557 494402998 278392679 676063553 670989236 666418620 845383924 748116525 840180074 183904240 849392751 484744161 407389350 60638897 418519309 703605563 46213130 650199535 696380104 91092527 412961417 402530509 619457061 162387686 710327864 505591807 552472386 934147554 466300624 837463427 918943254 249571887 771911236 744532685 911487149 760454803 731186453 756802648 28887084 605973448 33867297 421085300 741071433 599750996 648605124 843467531 359595668 862388799 932101790 149882492 259650570 816432823 817488612 812917535 719177566 678221449 87552123 984038266 761848142 747785440 399608762 876021045 488974304 39641307 748043189 659948738 785853594 955802113 753488588 539642158 274844388 954178252 907138607 628566942 928725727 268523014 884219495 589134860 111883404 692654486 439096667 389942087 662688685 669739480 490851443 841470014 144140044 499684047 467389715 670989236 99747949 859312457 906341069 611275087 793375633 888926219 930093768 126051129 188770652 566475906 976002465 867692644 759585294 148490343 467124376 9126562 654053950 280832713 873470796 700041021 428188969 861404514 697092449 405272828 802128410 821310001 22177059 886193573 781223493 990141449 487993982 506433128 811334550 818505723 692245383 255980753 540222919 19445992 148658996 765413019 176098527 514897988 168210237 71722282 896866117 564986392 709606908 129052027 955680552 79275052 619264460 946078698 181622613 791031762 402001827 362405568 726143856 505018193 886198929 730404370 244660390 795338947 853548870 16315374 133236951 998731264 820111066 692385490 935912058 834520357 81287293 682358849 381922727 515846735 63468669 982962086 918922882 292514002 165545542 59675788 968684523 658573813 29241240 14997437 543304058 10620877 972946664 872054728 949872296 920842722 217032233 692998212 346322441 246620704 976691656 364231594 827346128 368906520 15653472 77363254 624077102 395597901 33673129 444707171 947733820 774456192 925763065 400195533 145033893 150390691 989693137 12368001 357059490 787543402 539094712 988542573 778917315 969354770 572708828 180957055 700873647 737413941 571998715 732774770 769324429 63631573 260432074 556721017 670989236 282790237 786110276 516599012 715940858 604465426 814288837 350654936 748668793 561876154 775848600 11191034 69747040 607949949 366714036 178486757 855685517 587602694 813639468 703022121 62033639 331164502 568509697 497030084 1616618 216336440 874922212 161182772 336786871 396860982 982402542 280300645 792543061 713362224 829941481 883936126 551785652 683120030 965545084 38774330 306040267 811771252 983046612 305860765 160251301 702662518 960634646 347902309 363080585 652124665 696524981 845224074 867020927 16513430 97132414 150911852 206028959 543074346 67333764 190833134 986575146 726041583 162136622 826299089 475962899 680923687 353273043 641443530 328793717 101617579 828117069 897470499 396007183 883852298 907237707 680606062 796655619 972697548 594732907 634031555 683401147 644718977 743041273 619010573 670989236 926590434 841798888 779651911 584815590 745161376 694973606 987543091 357723691 422052012 277705285 537122083 538727898 434858518 722169623 490547188 729726107 834747664 617357396 114032195 694311704 857028197 199755887 722029410 358375959 155417689 871455265 201043626 440579430 732126776 935243285 928119449 366391074 998723928 848465054 800267991 716282583 813852722 670989236 12346454 783915646 103709109 646885884 972315248 283697533 936385696 104310397 314086237 701965106 967546096 707380440 356656217 871932547 852658373 1934789 268719966 261776566 975527754 690994346 828975151 139334307 911608977 209525349 937866923 796120394 133682142 24262779 642302946 999925822 999256513 583478433 878446980 880954705 150501487 235619329 707805146 834447282 580327087 336190167 714902557 75282710 489447826 913878315 995175941 728532344 741999576 717256299 815881423 877405897 242185050 583312668 984983613 727859469 767773152 409172776 72197764 489412885 971676928 634510193 760074514 175778473 966642295 34067188 290995982 8551273 676100695 915459650 126383820 608512231 371688713 114798940 468366961 436042082 949636412 462154712 904262101 998482199 926469226 731048229 674436180 914885098 473729147 795984839 386589829 894755159 771006798 848980378 94553684 846603182 708869302 677906325 501030514 885438683 921643700 365784364 482785923 211134700 786220190 331010693 620023152 820730388 894367598 612253268 982965037 298419582 729121353 213223800 914789231 732749488 40364073 70381822 797765580 874508295 840746201 445942278 799618027 747852405 934202632 306497456 739940800 129105428 119612478 803437645 896035361 479173766 914237734 143527569 536341446 785196215 806653198 149755018 699157997 203830234 906822089 100177757 919606248 592734961 831134535 49214743 193342845 685805914 623843074 823706305 614623518 357144341 297171826 274438434 723672472 124617587 968900154 888254921 847654200 400744687 782499660 357008465 983297375 362209569 677985326 474277408 719519998 971219106 113861277 389651255 670989236 227293132 582104992 885319205 822960030 945202109 899555725 831196240 79821603 906608246 537592183 952185536 473137156 222951042 115926872 841554058 334605478 6175921 961550012 339453661 972402551 964791347 13738988 645943356 768696997 90938691 721146577 539337526 359122986 925988928 442267291 340652573 66577897 961656586 91558736 691092733 354887207 749879687 298186413 759731257 185973850 362315982 984861757 545893062 259661223 198579301 305942878 184361104 874019609 828043456 610238996 444653251 101653242 82884595 157295688 806988840 588457071 539688576 682681232 562574794 668603351 798473232 859581899 114528880 843080987 954288657 410966637 606930994 936615880 157183196 239382793 391619054 750730786 73513215 960065910 438455249 731083265 881421621 254590010 771225933 941364574 819132200 836977935 182821149 924403264 235954974 680558899 782892104 824417558 851440102 439895083 964408626 877963642 424903806 906468924 248467526 44242350 536857976 987108693 582447212 796579659 407574134 865900088 762130032 718345547 712176661 835902477 47810829 563271761 387032861 921489567 919807873 498410324 792528246 973394306 404872158 698177928 679001735 435229598 777827306 557228761 471760739 738376396 811852264 787902665 892979649 354900768 285885491 898165916 915689294 895501107 763155140 276464357 26394162 6462798 688759336 758195001 659713858 99473091 772050953 814994759 913004049 350700891 180367791 460429979 475212835 269040380 581640897 924295692 680463883 792862305 957268115 843605911 549455710 849517062 441378305 525096708 424558533 675652124 924983033 910102691 844206650 958839146 543855371 925104692 724628981 326067649 688337955 734478159 770326113 902415220 693381753 122116991 198810142 434605126 20433723 490695948 66221150 920246159 326224953 231329987 901363725 226915463 827715830 925913917 996871899 531242117 261464837 865081398 936360945 989906678 944615842 479011075 726111538 407695955 171867497 267641229 807086550 582923666 896944774 97544137 575367702 726432079 564738832 823255895 711277351 815820644 824322957 711179892 817046684 374745379 175293824 381715690 717766845 522945171 851973364 789891053 151712994 510123741 951048207 651367396 939827529 560269856 795199412 521836757 669810490 773723901 966109612 814471797 117028708 674283051 400327683 340650558 688534185 670989236 517462054 889568698 685170479 789934130 311156434 881908073 813184184 952468782 702280904 583937117 194685024 778491616 90107070 740834242 777648828 827584390 699737492 834405272 194622443 265565819 857203299 100682462 8970619 701842383 543668361 979221170 920604599 670139649 741352711 926216099 681891847 520129941 362724643 750323041 854565615 881432228 10729891 99600589 510646126 403899792 809866064 779203573 706548981 707660514 944595230 409704797 386727342 879456641 306445392 689447360 584799051 328160231 915202962 163059297 793441634 693899954 934757881 810106972 444014730 905600504 254652805 459270772 829198182 71678609 843984491 812516374 706023317 746904269 533558407 637621711 65810625 609264101 61928488 876760518 493870825 636428961 521969046 833208295 982035320 357470455 999785164 79535419 691117668 415397981 276887741 954888266 712226407 143750951 268399290 59019612 97129434 881179350 853458582 781812853 57642034 734673585 949756233 699681164 454238916 683430709 56806001 138604873 436984115 432154719 803833334 318527368 244454904 927813400 184439099 833712777 201041725 98612085 990668119 289143887 466204157 897330014 938610299 946387243 947326448 911786883 917552405 670989236 275196276 788529375 887552919 579944560 70971297 357614167 837381152 870070288 662979241 234388817 702979130 464149039 213012503 786028648 820797784 288645035 112317465 367155291 725293502 835848553 977979802 747437690 319988909 661379385 821294266 300778316 271970281 936077039 855720336 536532094 478521998 739646588 982816982 541327564 931613103 974920562 605394679 998782273 191330806 22138541 305084277 767110577 369962788 202505841 519454258 190367066 241860121 301095570 292003781 916112067 254625963 528499428 971940720 624544920 572830384 95030537 420937736 331492239 22726243 830868693 707718052 196065703 945798660 244131461 764025340 394433383 322079093 393928622 305338625 864265797 933326628 131700211 191069204 434575565 168382298 685795836 313504722 750500908 839698410 443117461 575251305 665999834 756579852 697728241 979608365 600540034 789062511 908874545 613779441 935398934 321790824 321948175 522246715 919740814 707853864 454137550 29330885 970332136 47344842 930495765 723128658 819880373 265104230 505028324 456121682 956159517 929748086 976039276 346564350 883767682 627763363 975669537 785527262 729683514 888799224 826297953 458217542 197390920 697023150 714511344 359435381 30641176 554905984 146581614 966963741 340077779 821568882 675512533 157303851 458271054 846430710 953164296 799029633 282347192 759392083 645949772 826485003 841791353 185500161 70589374 268296500 802359688 324190674 885126900 898443985 782528083 194417392 366703208 382401106 47956930 306570338 78748868 936302038 506990878 774972025 190992114 459545102 815666344 931892750 843153976 19904534 876041001 281966993 803557704 980480731 272705306 616818436 864871802 647972876 224637801 707913326 348887446 488450503 423350058 858771240 997214704 484191734 384701254 304880624 162509161 741656719 853718278 38657914 305528438 974478202 192764610 439175771 299763725 937449061 811039147 934613352 677436230 799175310 934472289 797209212 889928821 953213206 724811003 805906223 293668594 24443910 875363484 855858144 2630059 876405867 820041297 135023243 674226282 810231099 760858359 172006569 684696604 931926431 893323380 685782887 497184813 824557367 807781181 15561014 620878553 186886561 446666916 439815496 686272930 766753006 957079922 488073473 670989236 61584381 39158746 736007954 389533995 763752010 69116225 198952569 293562065 924746554 918207991 819697618 335691462 900250233 965983240 373265855 107264187 996706202 947794374 136659608 368508514 735529323 705954160 98487049 96823629 550568450 939009075 954857780 855337588 118746701 657385548 712465290 898155102 637866511 819180150 876106103 707992485 63679945 631701038 774472466 946836223 409364758 930054258 381239256 141343936 830065621 459361093 221620653 779321926 679571694 949707549 41324788 428060110 670989236 774571647 659829077 863490473 2158928 975418835 849710433 400137898 549920500 849017683 516587443 179773144 777555213 962747974 109123322 540131703 385341872 762183082 765463470 841696150 121410595 907962382 328151776 89920786 702331826 956662218 935343955 919795552 873809192 985760107 703925842 358157200 268805822 876542764 796103429 285216121 348564825 914514067 745282744 407218303 921815323 910240534 567283616 733084773 127682182 565754446 731023292 746375383 936779 635232578 979098165 865691738 791712041 917584081 697808440 794584298 82041676 316923691 928419972 558874088 69113222 727936638 20223529 52081262 807438814 356896539 756599410 779842917 810245606 391999559 750033097 524056968 156498983 397341580 254026488 434491555 989629875 971165158 993987335 971003707 801136606 691702520 941674556 509993188 990733185 287301815 892895361 79785084 110336337 129929960 852400108 578184700 292429903 601937498 803837500 15028567 808435612 622313066 951496569 991127384 568234155 348554712 895503436 776216425 380565193 3573118 675626533 94001448 163825317 96506191 925451134 4865904 477601600 847024087 799098929 319504691 748462119 749723891 84068388 997476832 411572377 792769335 126447600 897023962 201356047 756381287 913254353 815585423 599550704 710224688 670989236 236926828 851126612 991536595 727042780 181207190 840536597 670989236 659755121 803363665 813197595 953929245 271781727 777988437 566497043 992686219 910283407 417100274 635336892 954304436 671013232 644044283 620618667 399545798 794927059 881872605 5322571 308705376 45730396 223358426 651339013 419046558 267299067 297272902 329319958 861552651 993640064 612890324 910011545 946457931 416174665 649044770 998338936 982194695 966835044 952682086 447390978 147554280 793477817 127789205 950376020 755729273 163586698 307610358 393785169 394372440 76292909 917455565 779863076 739899763 751563533 610624569 758392338 659289921 981529875 641642240 262769144 955488100 969610225 217078582 795729816 343056696 141792240 789825990 936515039 623171653 847325322 991225711 337642875 421593885 859527814 763845229 637292434 284567561 721952380 734499442 303294002 796222564 700323964 824153664 73724285 972847731 97444526 370538712 788362427 458893678 695465109 750186577 950183678 6542182 137126102 903936881 984445951 329402575 372450524 49748485 712245641 698774943 294344063 218237158 393119578 15914024 994426405 417293086 968063035 843809492 860234591 552663309 823435081 806680851 72915498 771109532 938616658 766931564 712462690 961789864 832234345 968412180 936390269 572895082 596198989 867241675 982314082 106038429 174609903 345534372 750393887 947192935 278711864 531839706 909516705 380907681 696237833 236098548 354920647 879689765 568221980 206142009 214083766 631699507 604689903 349281664 841540298 181531555 567986459 145363333 987125929 919935906 893400694 715089926 146724951 156064278 957462375 997189272 584963995 123968348 487177479 376287281 854983508 567862331 284164329 241451486 927388043 148137382 627122682 897668334 786584195 771251143 734297417 781153504 800988299 853367741 483996700 220306231 772914767 857888595 954259767 305392200 192486202 930598238 661603950 235101579 865638567 441626928 304162678 836290364 109696748 176592515 911126476 779556733 7104901 904884852 680242205 66479718 496459085 81399244 955354181 270953946 765337338 713508781 769834434 698235521 810601225 384189800 285438443 705348672 937639565 637310572 835302226 837380007 465509439 568804619 125042844 270594576 766412525 597825523 924235206 696725019 29709505 625753729 505287672 404090566 179422556 556244487 782133927 873121445 741735101 173835684 745247881 189809921 838915262 916701026 775640042 514314976 862455716 372425423 423787737 842206924 698003763 715915245 710958822 36158397 988886556 59727758 538468832 471632728 735435485 727292992 862234200 580636656 918860225 902477073 988475288 958393794 831802737 294734581 381028431 494943684 199421751 723029297 902478501 599004964 855341386 244272198 932396071 668893536 849082377 359816361 326904004 293518983 716296174 857722884 880410878 861228544 174301810 832763309 846676897 938348626 868956763 379074732 402001747 941674004 31596149 688535487 520028422 162322918 682940429 869290821 54138826 256080660 172216755 971798503 801923433 709295537 257360747 832071080 712474412 193851011 374358342 431877077 798511163 925686577 374335410 705775643 707965437 977187717 255847210 671242543 632915882 975328822 775726548 84334060 556244265 158821510 944322536 934820217 442720759 122153361 691096778 972209593 778102839 815729337 667581004 198206947 557568968 353904344 595091142 942966831 656454913 86440699 978326549 581357293 158321095 864807888 127463653 515650476 645432954 638287943 677203215 920710460 821546705 840880414 414359117 955983934 646956448 279480355 730140814 498900713 136273468 692417381 166723372 508132823 622971457 83846518 427028059 442784684 425032582 986336209 127315868 633903992 892959492 679412744 95182285 883913219 125660954 468671917 482354139 721909734 641187439 160529175 625295388 158350396 924793675 784409961 670989236 771619691 995347723 350887591 892404396 790269335 11876335 191622729 286624297 822674479 937966036 560455751 754114186 533809959 762743039 981516079 767686416 823982247 122397123 888396611 819501384 701484772 670989236 857901847 410285549 523199231 323686741 787864024 752577509 230013726 314263832 357194277 721565143 531953225 696263273 518469859 909819214 38929456 681008458 277392161 18682633 606512521 306711385 884924887 652618228 579214374 200827026 812657543 571918768 911873435 704373892 565770050 908481510 210641044 298196370 603361997 959614925 926039478 674364535 534524646 736972088 183582460 504120725 896818425 904283116 41739114 670989236 671540006 268422174 103459996 540515197 404944946 871434407 828723048 900647466 37406364 886816807 127876856 448212606 820883044 456730151 975781677 159647509 459401459 936532171 963540397 670989236 741113919 4790577 670989236 127591247 992487919 30335635 499392270 292132409 990440727 804663325 843174182 952378905 697313411 745285068 138457193 406008156 576026823 516518951 227589579 813120936 143519001 390378972 525211063 670989236 773842197 77097655 428289487 273834575 769851253 572526664 396317139 757869567 322664585 930228397 369382922 57820242 280931633 564443472 648627726 296478868 712698632 681264939 794103027 354730827 133935836 933970292 426568192 850716224 844204570 401454329 147563284 59634270 984506603 942929100 873640362 113104002 877291643 270259621 584533653 964838225 738611496 883633598 619737534 517555931 744429267 855053907 849308591 657890962 780743537 936544537 700239888 71448764 913798477 501846061 26496058 653473494 333510710 130785696 756271658 402763701 306069406 823734558 461087398 498409207 989127444 584304414 979187477 411183587 814397628 954636610 88424428 670989236 979142684 824775775 354658146 332273455 39554226 720434238 422606642 558459185 357220925 952159280 2642819 117332848 915767714 922063396 788401028 166149958 975551501 191741589 790892571 691404951 145299971 876736906 939787470 899355124 297836771 889298927 165225810 711023061 762111676 926281205 276758993 700501940 832414483 718445333 101682355 702146695 997587336 893949086 303398868 678472083 607968205 786880583 884166386 839662530 463923489 979111946 511804920 900951291 316630260 698712985 658502345 1098786 941058338 734106855 253150532 670989236 478247168 774298428 261682717 396674707 505190711 704453907 557504445 921593834 315891051 426579077 901593808 723391304 875467517 902149039 179008874 670989236 876058241 411928022 779689784 904126463 57204036 135626166 568048381 426056049 509533964 926911239 553330936 620451469 670989236 798271551 293219757 763305164 571757782 962396817 633060813 810890604 972222396 404421779 229298497 836849206 579996451 453725082 989361231 817245632 413792046 550567014 723007925 950029254 991267294 852195482 940380691 493250737 15088813 780231410 736356839 32054133 182218150 922789711 37138809 587528122 66645859 836220428 755880214 312473499 723830863 38078708 669329143 617900029 834515604 320547163 737290162 994449267 819299036 807302449 35485432 725023111 177282939 86429571 548524428 662905387 421024852 962091796 434748595 986690128 600697662 890922911 131345958 784195971 773799714 119692058 858445269 57523958 972537435 439394215 870582839 50686642 745564096 966054782 99308452 511267262 512834434 1973529 797151731 825305316 327108428 643248911 738806953 678488870 91880861 752250469 912094079 660145561 879947905 853027756 678669600 106903669 951948547 510516050 826751759 485902531 355977341 955679671 485281 385517467 654699264 396119849 307006671 831778615 186947444 814152909 679630833 766969327 261090917 835569842 904935000 79646074 964191190 265075354 913223008 81916481 135358588 747763053 947960905 287548219 859564024 479225882 15664122 913385595 679192208 505263777 723089184 1008483 754533529 869199787 479331120 698894387 619112633 952468914 361653220 926872289 811845084 537160112 909509264 993631563 535391669 951589637 361966420 723533947 702136555 925649095 144306068 497666525 285301083 838188864 755251288 511023839 891257275 430949765 36737183 716133965 585652252 52436802 946463551 328090421 205597277 151729630 643925237 702109774 55550919 5504269 689767524 153380075 704182128 896719287 260279898 848056204 938005340 497205043 970055304 85911159 969196051 783882538 855788618 290598001 436811331 940549670 862792305 602729585 226834237 226896673 67524924 374853911 891997336 14533375 779893603 675896010 930166377 7993837 840221150 113361289 48678267 937218705 343221470 227719804 474285515 699693187 125750518 652136373 838779256 635379470 678340702 824443583 78470585 691837800 707929214 421165016 531189897 250930536 464533122 48957515 775130384 824762437 385641423 214570952 301359610 530816084 302501159 643159432 326386937 672912321 882430919 688977124 487829612 939977733 670989236 772649353 784966585 730902229 136014225 102944228 314009352 234530817 41328191 894830846 858959711 679657725 991484920 681108232 473196598 454711180 299369459 735994583 904267484 64951991 591600794 737183574 252065162 956482498 864551120 909382683 926398204 913048845 786724771 827019521 222351821 264353891 116477127 829347260 969947875 847988450 900052817 226341197 861986354 217784955 860737564 913453281 751605360 921999731 851722187 170645404 358771230 274688100 380846730 502563711 860434023 593783028 933826091 37031549 804548486 964118417 266852082 707195608 663441380 515957687 872132497 185926746 737278542 646959282 88247962 747449247 933100782 898933613 520055565 894678876 931408554 813432998 42684459 782764734 372488308 183442560 738639699 783648780 481338670 201058223 431182403 669285792 895813134 291632599 597887983 96924628 690876173 873893075 567862107 509507484 492009036 439343307 353056095 510073020 760696924 888931475 945150678 185386684 82133515 107489358 748080321 335544829 752632737 446640159 367941665 101992341 75594430 791651859 780551106 725231180 773251758 670989236 154650971 954679896 605361683 320110621 670989236 778680521 366363735 596231316 24802725 60662829 759150251 753406128 117986163 890179744 795116714 142081896 292788100 393330656 521282435 600799573 906267605 913538821 676705863 987608715 29684395 887579484 82349739 682174902 490328737 766652780 288900020 99544870 554236523 670989236 467558661 689198439 858774252 966368530 525728631 886227634 28379803 747086678 524068987 9115769 833279223 272627367 891612676 825684314 704389841 850935743 852589453 439436422 747810812 99312290 909187833 489432010 629110829 187605820 872008006 799684203 768678512 903796826 441232509 552231573 913604242 402582410 827016321 444295682 145638512 679945698 721880000 855619178 598106279 248777538 438062318 457824202 262921885 773178710 817552314 915220907 513764383 326657617 899078416 541708956 273763433 444536131 129754604 798455225 757584675 595291261 167775722 973953650 986674659 495484325 403414544 818287239 824121370 196731516 934065344 138828268 459568639 922488956 291301083 638870311 833525190 460426034 845876266 759295713 907192489 753034847 689191681 383001632 662057590 881674832 772596403 554300155 651584026 991223061 485644596 186398008 769373237 615292789 332889632 675378015 515975522 35532872 279816911 844736955 779478397 622162944 898437627 468813237 742911494 369571302 231053281 728377622 564313894 989817335 753983490 86489311 399651675 554181415 652036900 622132593 669812433 937575506 539507812 558686927 118006621 970079793 120023504 832441052 792129008 957461030 265091309 375367945 891389930 407530097 141972439 754189431 117572789 993956541 734051849 796795616 677426657 177353481 395949667 18141128 593924061 688679994 60505653 876427157 969798153 843919388 504784605 765406490 946289823 785387909 380048816 834950656 821943915 567367671 670989236 526988803 467587250 460125563 912736187 798824905 831824674 543650359 475594785 503398700 396799820 686475906 336006550 246747244 406004013 724962861 164889480 670989236 709531789 998051517 446843392 580018241 47081514 214107115 771124143 331163255 504975850 819523291 112254223 144541271 984436032 320056723 425749315 315165297 803223003 682836919 997366909 538817422 889379461 184361322 947891020 149525153 411654045 815801415 381609134 686646720 945153900 559322282 481917501 235158348 22287905 806242718 829636460 903658528 767517848 575835604 372383198 796471333 342891169 638770633 790643166 600646020 885874283 331872284 773254501 634528556 518348144 502537337 535889754 221578483 824959053 600403202 196605261 369286453 434444289 854655377 727513949 883012337 553387286 834629195 772733616 916768087 724281723 325329094 438066024 453297969 104283905 88457034 450304663 562851758 250669392 389990897 999414005 113294529 970936609 396012736 933444967 797261508 225321474 527908452 878540169 812420584 779246381 924928122 670989236 433079962 951823876 924241675 904060415 24017972 925486920 923444418 354102933 855153560 471930988 312532277 907485755 761067920 930604000 295142513 883397207 789904358 710395847 670989236 49665308 818970856 766659156 233639098 553201772 609345383 800557027 839108448 951060521 143534706 182100019 592671864 926252672 52455911 882145290 998298605 871747094 701111014 542218537 707295011 105924107 237831966 713413791 831856318 561644330 19962489 967090601 72517225 191353833 230705284 743536532 729302637 897935002 564849378 644368318 728455808 903724716 343107080 687730789 300927417 781121671 708457742 716721137 904891710 644428261 176730551 847547637 746070419 836767166 925042257 640781172 216242676 67908802 891981767 96763208 646126845 674742965 692052493 750313279 88955561 235263293 706168538 58062715 959576697 786663017 832573799 311419711 952970772 224433251 695539722 871060699 212779930 908662952 826166790 916810162 859480712 573769869 870565389 167515428 859999638 446627600 892398194 867578713 482642124 488738260 457211209 918263191 106786814 411304924 908118831 293192914 963430049 15906450 372266674 630016398 479222369 773627248 957857547 499558989 662540586 696673960 558463454 572199989 638881480 432424964 699059517 914757135 776562848 166936154 693613905 138247495 891219170 798806314 994466191 702626281 943317454 764710304 795868001 650867579 745797745 769798944 360491047 788687314 856223754 487329244 858313468 866615693 405147634 982387634 797483594 651252351 272387726 626435228 559324220 736962469 385988923 682313882 361834326 762802114 548675757 926774095 681067730 787005718 151248136 531795721 826517453 670989236 741507050 548534810 864917494 670989236 585917432 545434390 787417410 921739110 183828150 566992569 92142044 916700942 880258646 726871050 591603890 964938247 350327704 719454385 179811082 808696727 983399998 274542489 136659182 414971165 468844400 277380180 691512382 973213581 560996468 901935308 524024961 167614017 950655732 927921725 798106079 3256754 683993132 382797641 656286235 805640491 77416078 567066344 20417561 126119919 101776182 984172155 337233956 947158687 803586384 722229545 1573565 670989236 382035335 696597390 406125397 887080115 540615695 444780915 378464818 604665893 955522331 476729996 294664818 960976145 250060469 487130666 883347761 380013259 709198905 695451761 694782515 475680089 325881682 488064356 968321227 303268333 305237657 794692163 307692125 869037085 640984571 618820306 927986976 791053365 863857264 433908041 673144668 492285339 938209900 13435346 497488595 17042593 243875502 751889665 42877231 928507769 951230307 834387570 702330345 597882556 835874947 317342544 956780485 235333103 78224623 351634409 3616829 339946941 736856816 737557036 418654143 708927531 684404369 877807195 728198594 35084039 751138996 712660112 217816919 735801223 59769791 252801873 125615854 915909284 304275336 560359598 619948272 236558141 320771713 197578885 847437915 653157665 154154505 211758582 566163260 955478032 718298527 311833437 46563255 613033549 50031064 873387987 530714805 237217198 463230581 68539878 392899041 959456572 246449313 44971123 525303574 810516044 294244388 301675109 735857166 954618286 829738735 495830031 726272204 991606363 670989236 581726862 867842431 910121656 572167262 427508205 197415955 718526396 824791481 674074113 727799968 607381932 665650999 920016735 843115614 822268306 111608384 744121849 146023840 880806774 345443525 173058134 883831665 690521229 926267515 349608190 988737330 727783025 218370884 203905059 825894617 807200796 421358485 607813155 608074283 737882776 146902040 881085951 769642317 940926350 172661955 972747706 938963965 680727674 838840461 193305605 851504698 85437872 693421698 993265424 449295265 843408149 207681403 748733208 677575531 723182234 260745020 790407891 936674306 886869948 867811435 747837813 539433248 675723462 586836531 620999664 725166473 965189277 361135555 642154376 701999113 194111312 495247107 979165186 631577802 790011755 774922170 986306797 791133798 955800478 864792390 954937200 918850475 433388890 966079452 307061705 113542961 773826392 840461476 692114800 945281518 147183083 948634726 863020143 163404888 118916582 757839597 608195272 713120602 676417436 812672645 291699702 442270539 395465433 966414899 646271890 497734688 82544378 670989236 914908801 462947785 219646026 622843630 903322050 34161226 587126409 250722318 848168453 903931467 469940673 909396919 966971629 706044196 201348578 995960143 705283779 729954285 621417991 768595871 656467258 830928112 301916813 943834214 231077699 329019657 510185889 711379444 670989236 794616774 997120394 721220619 558558794 276065878 17886409 936976036 413715652 698927289 975385027 989491606 20737174 51381446 690278663 482973469 359604985 469935025 867905964 664730168 770266909 820593242 571051574 580095660 933365933 485774330 694054679 675892749 566476951 961542325 923418504 424589792 91002744 923721292 929478870 925461082 704505919 349887301 788356507 104243905 719053119 34634937 83132482 891344811 671793379 806721492 878135854 825567557 659382314 951623095 61879028 208737172 731544159 993029926 702409853 904797871 840406833 519968505 976474422 315591828 208203004 830344359 302173945 514524883 914198587 811100013 398239531 946302156 893323162 89596988 340037416 730085880 937360478 637439622 456873312 501837440 743874178 749302600 333872505 622200996 698167108 991713771 300081036 393817452 774601729 557685338 23438745 870959790 954637128 177399566 561706633 290859916 670989236 892119153 105516840 548398168 276763744 764232646 673924101 507420761 912958325 623325898 952338632 670482230 677678794 972729872 875292427 347597207 219458702 667638347 704048297 931114780 805223450 394832894 948623053 793022188 509816368 256352205 482591473 86730837 934030577 739100759 859682724 732218001 677150915 629208389 63766931 315830588 329160435 787901318 417376422 281293442 965396355 477520711 791781140 522415438 222022083 300313665 128422383 789345320 991098617 676570879 4414844 532728000 841405654 769864708 128572896 885895944 767767498 848399947 734568160 791056991 670989236 798245267 760394330 462115577 854865043 728771727 713023155 951290438 670989236 999008088 293943558 847191475 243415696 7194615 837532057 545280051 35813779 670989236 764902628 51625338 18193098 135857695 164029674 398404112 768701797 932030952 715933557 7888323 67982289 776418970 999964514 342223193 822331060 844666859 658733614 233238019 836950627 600416670 683532876 574960539 687451345 682071508 673120760 384173558 715468509 679072571 430863312 908742373 994188726 881095408 177124040 749771463 474712305 490880090 846260843 554963156 808444966 655546148 549550800 851282946 376010353 793472924 558748328 379485802 755450040 794880438 740896253 246429665 736278842 189496582 790837347 901939724 431968850 204494941 825862037 749383028 752851791 440592772 575798526 577932939 831535672 180533353 792973538 116918489 695785710 107458466 408108731 898145479 841446429 271480670 990286413 970741192 183935199 700564785 907258247 164379016 689760511 674685648 767720498 754975955 889918465 255113006 870988442 613630895 647177790 337376108 975893821 672581439 786578079 756141365 281014863 961458217 363502894 420686008 530353408 829475677 635390551 219528777 833563065 237177390 719030893 888495525 5923986 655939224 627366679 85635624 730245490 883740918 843279151 247354915 38943331 983905755 372109641 65041455 787179848 94359548 574116022 207253012 703766986 860845408 778403992 801043985 233724867 582466467 739061146 101651172 124622061 626536755 103975547 118264067 972390291 483356718 978691489 211537651 984286262 491394097 815656002 267699995 933656230 710689248 389120285 741405654 821718193 542706196 420028783 944356480 705488985 933538261 470377611 99754254 573042616 479748932 988780893 333584964 304527500 977943970 878440684 741541672 537427537 885142724 926349257 207378841 638780485 718257155 752355124 734525855 846082741 288870028 685659936 469352186 958685951 809354611 559147325 599332121 492355631 469566975 117198428 478810552 579394178 488375717 550856440 699154525 927562062 891331433 722901050 670989236 288044040 153850192 819854075 145124130 954789871 866930115 951475798 453188510 715349090 307867978 793100000 982728 855283018 336079206 952709950 448382215 535604509 765374398 506038866 260719488 956036180 967319335 721178053 270956901 990756436 411575680 585437276 94981551 850901043 984846731 321038388 261911618 670989236 935653336 670958635 891276559 496226094 957139392 878297936 68087655 995275668 893962535 25038171 236657043 981323344 889478227 295810273 633991779 151818261 707004170 644620541 210017066 846225575 896413153 133893455 567892940 483682234 531568637 908593452 824191343 483691762 877492592 778584000 822515751 904689256 833012329 533315497 67269666 85206286 919490767 384778478 443438133 82602790 864957498 736938910 536538325 810846899 963378780 676039640 151161846 961994075 290057243 536444021 759464495 725006939 334349311 838288719 120504268 776413998 653357806 921225446 731508625 41552432 153684364 703319747 937506928 814511293 657918456 548222842 959745507 405845557 152116256 730538754 103288073 703884472 708012044 516547424 960601041 881918139 824189701 297623583 515343643 768225950 709052822 965212897 246804917 52888723 552574807 670989236 650769740 577123458 445063116 205408996 589387510 746409399 365473167 955581350 743366495 71786677 922761533 993239187 969513034 750177966 577554584 842447786 614082948 422263609 294474570 877347129 732040035 806037780 680397640 486042378 990755303 862058896 988207005 670989236 812030419 143030559 282844374 826862067 810565453 807555763 568295284 636910121 737566868 715304579 747913137 210500927 804031436 971340616 172980601 687929922 704251598 723370350 428099259 453681284 242038752 529163707 538196447 953408299 135987076 472957281 910073529 91328959 968657516 693608768 377581484 43814909 580413481 679271025 897679963 911497373 987549394 226607183 132722659 926880434 885466048 944877403 766518614 734008265 713003363 593917467 987489156 188365734 825874719 688242294 793919403 892681239 95080230 15530612 84217653 872993025 202665220 78474827 557386917 560777930 951716240 895891194 996076819 785062506 494092223 835019544 74427640 983766287 289121799 845510546 807898625 843476490 592196986 990465107 694407394 730033232 693485790 672780476 372790075 944493881 442991754 850508224 683962309 691049550 806682312 942190907 257243825 538170274 750562650 673413323 303423033 951397109 704617784 984941059 118160389 295056608 783327109 71462633 353764779 823267451 401444950 675277614 426788757 603346381 301398093 701960400 100452185 891345333 638540397 19241998 727134028 681793683 966116965 834760249 722854965 894866586 817122063 407920133 916041779 568164299 783340546 788387271 58345205 196546890 956517366 839345033 425045710 901630455 269334854 947296538 545325408 974980210 835380977 799570722 213834472 541213711 726150626 720070343 474053367 730781026 947012272 292715421 6807205 792292412 829182440 866889024 972511718 863848469 963428741 957899717 190281846 169102813 713865105 575912784 792153460 888461916 672212078 691222330 700213450 838191313 827300736 865096775 996950881 809345849 400730693 227333931 566222985 94334579 803780528 542769394 194067614 743301284 712262932 918842750 553668827 294050962 394409886 861262100 183163085 841859223 850757132 962137092 783413661 922293883 38868276 340450725 680857741 926754330 940998841 868364669 980387270 819761537 813702908 284905348 920667318 986519584 123336797 768635797 454773688 825552251 472324555 880349651 775895485 796208941 3466611 683316704 780720074 697668344 32608786 507316251 831541491 944644958 507567396 202453378 227757151 686232307 712787958 341308042 162732966 357699216 790774929 817514296 383201153 917808399 712581995 439951326 150495351 743827938 229567158 888127726 601350694 900756306 694808750 773786508 508548169 896677382 362078390 374386723 364149860 988603228 236434173 252935408 683076363 404818663 638359263 653196227 943886462 71669036 983005543 606497077 563110725 11545057 924680313 820684057 454239155 520672088 166282220 26222347 521080247 357301751 76948964 707822091 926282840 520446112 592916804 723096951 447226575 481928640 51228250 889239475 935437171 11652967 479138918 228715102 329625894 591054814 997374055 670989236 960206315 802539931 833834457 847402809 881181851 216522486 910551941 547758037 48321385 670989236 584023947 417392628 81313011 501522913 835640014 739362426 721228433 64782562 810310370 450094138 937511767 596680074 674746990 864234109 784757170 862889646 841907563 732406472 283693564 314936924 647151444 780524700 206402469 33574080 863135082 187363516 483450718 901102978 120789393 342711387 553378038 921267443 144920292 862706821 910304391 806042038 67029139 333034210 432471827 50169301 262137034 485359826 739493917 711635769 122998007 955094140 658206786 508424782 942192079 882090157 351155969 980558879 322014030 376060984 7403007 724931172 420555854 748481797 21517441 113289336 600537930 197806805 743804534 965928937 753441906 789428874 260765229 118482589 40605614 786839113 185553036 916432936 980537021 872887985 916198217 916924070 296832034 325461098 757586518 936366865 862558191 228271477 488140538 108167174 688366429 737852951 895783799 53247436 800259229 172041177 85833212 755346087 192063896 927901910 22148860 456493643 890209833 519188283 848260972 793228391 866216007 631880490 896983651 916256405 749854799 339486536 813379832 552082260 885605994 201009336 632275474 674528445 347408519 888252064 261820159 521205818 861223553 35551127 970510107 96315598 887454280 928173958 228432261 635575562 769992219 702137188 955101846 630076214 136482025 517688126 727954028 517580632 667396888 842624605 4392374 406548599 737417220 393577502 534102770 55777180 809270592 288632103 845025163 689993317 794580273 58035111 561435781 204642384 531703452 68267069 740177401 874324898 842454906 648225400 837829820 956645075 277492798 810676305 815564475 979933035 844814579 924597805 201446382 326993185 838308490 482763381 598140047 61345592 257132628 838083784 462634616 624194744 891508929 192335478 683750375 141400301 239384567 492370176 814237317 120652103 805465691 223043436 68527562 458571300 162754110 928786858 569626678 428772182 438419239 225778227 865058371 244309771 821070006 445948779 456076813 521940857 675773500 684053687 515732979 148470180 868638591 723889083 460828887 118314736 352885782 775267830 48872359 858411607 973303040 257605580 584174235 578959978 215633717 874201581 835570937 606656528 207409793 446779438 767032209 525105001 222212150 145696023 936580524 825498358 551748438 631430167 719179742 772198610 906254968 719555275 311994453 75776312 761209277 731621317 860198805 702287737 147945122 348490846 726827326 755434394 906895930 334879957 874193832 983899547 762199299 269702350 433912627 693534096 928461246 756826137 430119050 847714867 731129396 873665636 30010994 825843883 883423512 398038906 799898686 959668305 22086417 994060218 704898868 115618152 530185522 861573846 861036586 260385321 481469491 230970550 124502426 269123570 691684608 679994364 509459971 865959342 815075316 179069723 165181222 219998933 823070981 992348904 828670833 514873916 45574860 561037797 237566305 316675322 674705456 128720528 454279086 27148910 329071538 19319117 800206612 776660708 884048656 914360689 450438539 650596077 977312588 629460654 125497214 556590259 800830950 827278236 680053842 529623097 724805661 524286618 656561300 178900018 182582861 671872301 758472542 965990199 804992868 199493243 223899093 931770213 703497076 582436047 304126068 789997233 705350203 90118375 684003824 407306317 890621056 726295805 929198356 395949341 391915329 768432773 879175907 793989475 817861145 605043261 921195460 273528487 11407898 93558763 552870364 867232197 578980138 826887602 53096119 714899671 790737695 670837602 494645894 139001414 973715236 812329320 57232807 530718456 722566228 494290203 829595021 654515448 747429351 820752622 862106879 685522496 758595664 920834516 987436600 522404076 646617798 123487888 806600748 776963856 31236985 875467724 514170234 168145671 870261842 488071445 599716577 772701960 6500152 853713527 754445150 598263737 769375696 929835820 726808021 121518350 696677397 46849053 825833546 70483396 950107439 972493839 867187266 767953195 691748161 977150312 31771464 572028360 910447356 915350963 791658649 974098495 220232046 238885264 4131488 955938781 229724549 744721271 204217477 903635790 112637205 976648154 894860508 454254433 992401976 284851758 907357559 880595819 751294171 226267567 476641718 212594969 567912411 438596371 951562174 175498295 497897427 716616733 600417662 391754289 942246056 666301292 106571197 795506970 483982211 460386168 249942295 402270 798692850 788540158 886914463 377079409 281837791 747892115 868354118 758482419 810444512 973150605 524040744 816842633 358886129 418472047 639526404 904576252 154917233 632367896 890850092 672415071 681624878 712273654 37578978 682658111 832104089 685858510 364695449 106239132 732179590 296175755 35505126 994608900 779243549 149574955 676884523 364270136 864653575 622888787 627595582 667637378 63437588 894512946 526708369 413552715 733268443 271721888 888262550 887742637 742525277 720714040 744726843 931783537 974966276 144422204 954276887 767650467 102874044 823260310 500842668 769938816 722805955 791851505 948505985 754482752 841319996 715296778 869277237 74413815 724653886 778616431 516368976 837245714 480111633 819636019 796117906 320531320 748280616 243323878 642774942 729151469 333373729 728192832 850369871 708722946 209882060 858804357 610123527 116303850 783339830 975203709 757343346 264150011 278471585 525112624 564116767 811269288 842010496 757577751 883552663 54657822 670989236 397779196 226888979 477476451 135372983 721601289 963684343 255684306 558009397 121797165 368175355 867727119 882100229 110525278 998878515 163066929 68603389 833552852 923715816 819761589 126463620 902092997 417347169 675016646 709096961 761818673 100488913 239039873 914869594 559986569 886315394 847586659 130710525 324483456 701985389 866118258 459736555 964873915 824779575 253935248 825790278 250406730 432494067 682444475 118576527 122768225 6349227 969019091 190445788 296923899 343566337 747363566 91687788 661818918 725408039 657137320 401176420 46311423 64067213 164088719 125776943 65023210 670989236 300000392 722184011 882150819 491800750 899257209 860997033 466756825 999081749 512109927 492803748 451121217 952940669 336731464 589826021 940245787 38371653 715397512 952735015 293866329 262974677 36160700 539170529 519167372 479083410 372380527 353469793 421546690 585947759 952480052 749638694 723384815 972738242 232938067 167806748 694564990 889203697 42980672 351960193 201669212 121497760 437237946 759352900 677667389 960381179 113289222 804841090 739051640 892352908 763476241 399352649 687414737 679907184 533849626 428587607 380785760 525203740 927006947 978173265 773644896 959908494 861845575 54351006 809192144 670989236 682945018 910715445 821553314 239126969 834523770 842821582 630353495 933926869 367752013 705697605 182938213 196483101 219754251 546032824 965028155 183652465 581504672 914609574 398062621 557791441 65055038 973395689 938914859 516216984 880282459 777336499 984795695 954852076 181056504 991366642 645072484 347056555 804204549 286075166 352206737 823126847 255860148 939448519 341387242 641245021 601297701 155962429 190468556 905254565 955429246 790350584 54450828 364754754 902013626 865171345 181777041 642365853 628915623 772690468 291731741 684934249 835894987 662772666 427123041 284666285 76519564 295312104 782836812 955740704 509771698 474320341 353355309 755723913 855612080 534279405 530294730 216595774 837311328 740736037 544114826 858688212 279777343 813847309 674995392 887562587 372220645 390934878 797478724 793326314 521189815 609455707 229288141 863212471 402985005 889253372 987800320 680075026 833193986 944761897 535002784 755710281 940022156 429202389 143602555 34711896 676292653 670989236 641511478 526236778 850592918 866332043 916956100 901022080 8221143 992954976 681547235 241734953 785576722 800820071 903783830 641067554 619836061 642249313 357086184 798046725 482695203 134284947 713840967 947654384 322570574 595681076 972670166 97184055 901696208 17665838 979767181 680948441 768649972 546303651 358500836 797654774 821410193 403669149 748302775 823933322 458743854 773838571 457387684 617627786 651424058 188938657 156973070 172195017 857579771 964978137 991015641 628882631 160449178 819244179 595511401 783298133 902066620 740785250 656973205 804128764 36335426 335383192 769451639 441864855 338050178 596256278 775426884 398279804 820129830 465186863 337674041 2364189 973387455 668459637 493395710 701121462 863811382 785978511 271029510 941272820 221594793 749048044 271205685 177852839 558009146 736787737 670989236 677677334 948469990 796185429 803099089 785383318 678511781 996485757 811498373 840927082 810260393 311552811 345524224 670989236 972839578 612120956 416754170 871171651 214022394 728468083 739219198 897412001 852154653 941941959 135727473 978848012 197323511 154554255 191688544 239088579 545247095 589571773 714104052 822573197 741879482 433368958 976475980 287594164 1015259 978278093 594532577 601595833 234914918 311130881 971168382 478117948 934926149 123523146 971486703 172115856 968515346 718916664 568071454 519602514 487525461 799789417 523450853 222777127 713681381 134523780 484480626 56534481 664901632 140607744 144603996 750354 826067804 310092507 718386922 933656856 100405813 776254710 51438639 516031361 879491376 793959019 561355005 867928390 45040870 772464184 843365227 498283038 111767854 352499400 85885555 712340173 891445828 109601716 363544929 6327974 764275583 198028948 127161902 817677872 482380210 242129064 243701194 699428219 735440934 925359374 175176441 723799905 654056844 681853398 866503660 671012554 553651813 380852212 276558065 574119762 892107374 913285891 535420346 483955371 370286432 703706968 823479871 34826682 818263438 343815485 602926996 81146458 518326024 836175020 477163138 984294608 594617396 772070824 25572655 686187468 918375934 741338275 387022877 706816207 565894858 816488558 246972389 335610914 792273554 792583992 431638579 245052291 155659790 807852332 973636596 641169509 418553606 137253464 51589745 857696830 287256305 871185577 639147924 875747417 108180172 213092079 902207343 670989236 670989236 561251112 590283551 818999464 515923752 594905925 711699067 958084806 97038978 987620545 943430337 823249957 850707720 50972370 65267377 583788994 910087256 642937067 968972503 176034245 200192210 351691335 999590292 657178174 682046377 282197000 748952465 245326485 233314647 724847597 824468132 752050149 813729260 186380077 977355705 375164312 354153098 986593100 368730208 895899607 958855357 350624472 875477390 953603566 727931308 753922745 674704560 51559678 824363953 103300289 885632365 670989236 716510775 86088133 165374502 450407500 366884958 751566217 898911555 930389087 861448612 779904692 40739186 72200145 665252116 383820441 975488369 326642645 712551751 215218077 779725247 353463888 746857763 366447377 628611897 283889651 702308583 139225480 832605538 898931753 590745651 735480347 89208557 314487013 988681764 77902674 57642887 684715262 853623859 943059831 457299819 926367654 53616874 502394239 560256055 855433353 977164143 110358379 137767660 950504302 791032751 522549438 761240253 504483555 887125758 841186202 585824372 137436539 853772537 690964139 151695594 724421463 670989236 260237017 691476664 238897012 992847652 230316331 538088284 54547128 699127030 443193703 26979788 643567165 969905321 912012937 216131867 898409026 234003153 939724768 917296634 664664599 278653660 150573475 924656469 884776213 859984984 898686847 331237990 292612846 103527623 369753913 987956134 686196175 616700622 540885859 102968744 72535655 996877379 956866799 659532110 749908545 48257139 461022249 796389163 335202432 913774328 186351291 69674810 700010270 214025427 516078550 420514293 930076490 866571688 870702131 633580991 533092540 776176463 556287952 693382903 693119663 762495534 543594779 285063344 576666643 989255814 842536709 686841836 195200241 583263146 793122534 807865027 938296167 801561981 966465311 856978818 884641861 553188181 546710177 910803184 130837163 652722052 846236655 367841999 861018675 114865075 990546605 868525384 823789687 723001115 984922026 122455144 510270872 722680417 697996498 166378350 703322994 855683823 985424192 229778184 670989236 464608710 849984626 115063430 909240773 728780948 922490706 878234470 276487264 145650688 250886739 806512307 254968995 686452704 537199830 879361101 367444939 730616408 949753148 588052033 956741284 131970095 910743902 957214398 799388850 937596827 739456291 750065228 955146285 497266355 684395200 650452545 849842059 661612944 989121034 443302526 799557149 843370309 266621399 807632350 983591950 19927523 695632627 289806067 219614249 363368174 145175049 651666940 219572331 745903949 78122073 335328474 808261205 693623955 783487821 388978998 904114409 978205881 859413432 587040252 939135345 386175014 723670033 499525918 945217788 979804466 549119609 53231991 513031208 823432231 721592175 801126962 53329013 83766361 614472342 697939945 569194183 458383114 873862960 24630045 876207170 807983429 183107674 862790315 715328044 841373095 426845744 833297342 776514355 966506336 459815331 975024755 341183917 959487199 345651116 274285309 979619355 539777403 724116175 154950665 857885599 659372048 949343429 567441858 955248702 875651515 679410728 926746264 897756121 858790477 101004239 777140626 380862452 859223237 744838753 556405726 759915513 670989236 991654961 678042265 738074479 472753505 363864071 235038048 466560286 531144676 96366048 542133886 147937642 346614749 27627457 108762689 673147353 883993032 50640599 713696492 729325989 99023950 422651283 421486475 763423914 705294452 964621412 20611980 889906475 983481644 711089857 174673407 104429146 670989236 629826950 709609343 306280194 710504529 33715975 654587327 81315078 567919665 188970465 759763631 516937041 820335237 607668461 790128888 762418182 27702572 493608528 131233716 534499341 914281344 983136097 720309736 373789552 451498242 119013228 865888170 826518965 997376022 991361948 206348617 170334198 772803336 822406461 886118846 275302418 717845337 619300908 324472720 921434846 295298394 881896893 872486883 396222000 805422328 303265806 869185911 874609634 953280993 777670386 153686102 891275949 826808915 846959547 886713877 160421187 212519099 522639662 938454676 999597358 623171422 939841608 583231157 756310546 670989236 745604119 365698288 691350663 475344284 28122605 923730596 828882979 862690158 397924914 552756566 753901677 137163110 579836704 916014162 481311011 835769316 320790070 260049408 870276192 788590123 417085684 372458752 807068343 94384183 483565673 734316950 670989236 810641553 951428307 285840197 375528479 632717658 708508274 828761773 257882414 547501077 145413730 797151579 323702828 867072847 845533353 743712268 728208608 114602895 466912355 947561633 284785839 92104452 911108319 774288374 849647580 711057517 879954779 727716510 821158797 784828975 84554456 272890737 662245501 199518978 473615563 211665039 718157312 943960330 847133157 81687523 739879627 982898581 521720113 517025031 958957916 925571349 885412738 975227227 970022919 721706790 822948695 429102352 516034285 786549408 870969532 849191856 443253544 132831576 820556823 827130427 822840075 871594126 465071511 67140363 906371467 375986512 413050841 563796291 272927238 713880283 19394835 100844522 238145291 891529136 986095220 832417034 785644832 871666174 441761848 328338407 953771565 488144994 858033351 619559266 506013858 11178065 954447241 288922984 670989236 864535376 417775752 891831000 230936360 620128289 991902941 406220150 557274729 325448536 879590006 979305595 943559834 712893619 955302330 844812493 652790341 915265442 25537050 779559864 976430329 476432023 938234957 953867997 712755791 939362308 501572643 257835740 621611697 737059343 720933001 195308193 732445448 986298021 879177381 338549509 699247205 714692121 291069159 981081416 726214625 832072173 906028579 755115680 299045489 746993923 283575197 195696357 721222153 911293974 506026950 961340597 6758582 156579823 699627533 822167301 551758027 886563400 653929091 511840765 786578309 380731264 146701079 760308678 800459035 624282574 890252630 99285276 98476580 409214235 457455722 146676402 694797317 60272756 802383225 562300576 510455242 186588889 164751668 762461584 434428346 940154085 754602969 421560250 956301021 31190087 865257234 606575776 707945349 680085716 562166304 53608126 871904458 359712089 63979198 268962228 567542570 829720431 738454455 403336659 986620935 905804411 643299215 568821110 670989236 985955950 838029694 944619569 176170782 147418778 30357144 822286749 866883640 323463818 629595888 655619386 673225261 994391824 984337928 531861920 703646300 759873834 225880894 587677232 555156466 751651883 884217305 381740101 431505192 942568833 971597616 69308924 42278881 746533808 851868424 874332700 468153494 953416624 301483037 966117299 244654292 699691317 358492932 79204293 964818746 304947116 493018587 700595229 879838537 997800729 351480205 357494694 14805683 135141054 213118625 127848763 167005474 137332565 515358513 704795345 70330890 110738920 401038499 239484840 934872305 861279622 456307251 219514238 985145798 442922767 253202441 905978391 963432950 878991483 841320658 922013555 946098939 29071671 236362150 19927075 993525450 779466516 274397934 987392623 624832611 752092147 61652858 817861435 199306657 860126674 747420816 74323069 333933816 49557165 665949879 563976200 199057938 438487742 408969961 924694464 66934621 954877599 802678212 172703485 792217632 846894164 232235478 413255324 880407216 998695197 884050284 354507 335043980 860812315 764771536 154578267 733639549 544265268 913092361 785568990 433343832 429604562 699940269 863306911 631292089 323530355 832102756 795941037 221430624 993201870 988839987 306142936 945844305 992189851 14917605 892357133 906269229 70814207 306136065 117101028 583421860 960454736 574422209 404487280 314564850 670989236 788068042 547769262 940007284 968902723 507351088 721413081 933247838 510266463 831983845 652553991 470226717 710827534 684698521 993948495 972089161 292687222 331388590 362232714 389081152 731639500 147231816 196611699 82766734 154639731 114824739 578476983 406903374 700446825 859515085 748112007 745971046 860238102 877235950 534822591 12085665 879801226 457606848 334214859 287188089 786945807 370433974 298625690 875338179 706163524 997756411 27935649 733175140 737361155 113731510 731640412 98461035 420997160 902033964 97033366 125006237 605058760 523780466 686051982 195885590 932836747 201858661 717691517 589656733 710751630 59942233 788428087 382306641 375821256 549989497 899221826 549133841 624286580 747245947 450234788 874277682 335942178 696442126 360078930 838831858 523252269 213195680 907354115 79392555 787401064 616344569 863351676 673363230 123723983 782865441 285294484 281987690 458287249 774019054 285231616 746484019 998994198 817353879 756278272 603206044 826660911 692290467 970966945 506415839 962627886 713580203 793386221 589335330 788207322 740249886 962518145 770252130 483104017 229286474 384634115 704560439 861412867 785987945 988003822 475215007 298615220 852413310 91024396 977597428 846754464 694292745 813000371 63461752 913480108 274741743 5433647 544701299 462400614 452754529 704348030 828878255 742838487 937283400 590378215 695182919 911082356 897851994 910511651 188530235 947350119 405895458 999556206 410632657 138733658 297503513 780593596 104084109 455999012 55352827 66077841 561063368 935210812 574946158 859679975 347649857 853055669 556346715 12084943 917257654 764935527 106533304 786960088 657753015 586495086 908573453 476714055 348340303 915346273 159977238 738985514 794261567 338708140 859966947 571454549 239653805 237772207 902052176 995648641 288208475 814791785 764907411 842050999 882166061 969687437 862939877 953246415 434126637 912047411 208682517 33266684 421079039 810394617 751750053 815413706 273824070 236027150 253217305 926837836 426025781 494592854 952110998 91900847 900428703 790079056 672774308 935768461 242215959 978740049 882054307 388213060 577140944 1597380 345449614 670989236 887120476 141477715 737490203 523248745 722764698 682611460 528355551 942750294 84215454 954578114 968024647 367310082 313846050 33942236 477539172 606553236 880003291 946041673 860492145 387453469 819845444 780626868 692317524 615132110 347432690 957470445 346306279 663114814 690289916 301413463 721053782 9297509 284777563 795022113 39072885 766988434 351085877 367578168 757513571 758546935 884705470 528790140 460348182 181346223 918159235 178898526 363706853 408783782 884629399 988621544 726945545 968534941 593174354 975299782 842855755 805688008 929075270 652717081 219839498 414163935 214178594 80261800 924920590 373615774 271018732 322420993 684844976 267771801 367584630 451532982 67995003 892208350 895583578 732291367 775338776 976505727 500276779 959535631 945535107 863267617 600554261 785562297 41155843 678676063 415235717 992685795 670989236 899069397 653209576 426548582 716720355 492482817 671241204 733281504 166225053 295418855 52490965 990461196 670989236 130289967 834803757 704059580 930184327 489010318 280575884 931746346 7402500 826177300 856864300 670989236 836194040 814818219 811731359 527874348 155650946 364353497 955628816 597776584 593878103 862121327 15472149 2396442 897483181 755416288 635113357 97192491 823586603 11417791 914978451 23521210 362816516 37147373 144317810 761534551 878267527 598772920 373543086 287675223 16994959 413734670 111268736 410899353 73818530 324374234 729319110 938356503 148422957 690392971 894600419 628700932 889932222 25976538 955452542 726692966 270686830 994350890 777170711 942393213 171223482 7727425 278920546 962364614 953178128 313794012 441790927 46281503 912099814 886112717 597153694 747186390 203676777 589186205 304972202 628178511 847184478 633683236 780732867 875784495 934480171 859155781 732324515 990542142 428034645 983457031 659580367 584229438 385092947 808290315 993911545 214838857 944071923 747777470 394157972 17457116 904636226 642141313 659519172 107949902 436897473 977928281 896864190 681406631 670989236 265467230 385420649 910302134 777776363 161540015 218131278 34333332 579468895 481180088 685934229 714786400 649335410 817982973 814839250 121976519 262805964 960706592 273980182 694382965 787884097 844272474 849298033 808577395 790486484 830355484 694866658 878410632 779563683 30722419 790479405 410604487 788657945 147913583 993478563 726609642 901786280 846051809 670989236 795089938 369922473 933363625 731953683 855638786 424115326 282890283 796198768 908800761 231003046 965288924 487300525 774217510 16627967 826017706 978585240 944135428 59002471 31822529 114889308 878130003 74705673 924662820 989122936 574405535 907532752 331799824 717171598 970521760 482243392 900954843 258305179 902647061 691698261 489051891 690743468 671532419 942650481 76937886 11563497 938458134 732835077 500418626 820849595 969078941 774259669 288764287 928734308 228918858 868953187 874943516 345226894 950385903 933881462 994876801 747093472 344672605 757683671 853644469 812688270 415776129 959330193 545672319 171870021 926415303 760517262 803858172 609782213 748456392 724856492 678783121 199484655 862255328 454622032 23036981 229130711 978002052 963425446 881238661 68150840 422546731 777463907 492822000 745387758 359890189 646740708 811042095 158693507 713466962 193615900 767725999 308566405 52811883 558620153 254458902 419579775 716953747 785752535 940923705 244602905 758546439 6703380 79483327 764712831 248493615 689015336 975582006 217757344 993317729 751108055 712101520 995476316 412792893 279198065 9418752 462822292 232949801 513200555 618336761 670989236 158635315 861573897 376800207 505966985 781813717 336186969 287699000 429710888 718371776 805647144 611412462 885353688 708389467 966044252 637057041 694735813 706219934 286937566 760665523 785421744 155875401 678077504 886307717 71531896 841299319 357335921 742167990 140011538 670792711 983902317 852054557 692610341 531182082 363050056 629699156 624712726 776184947 973600810 923080201 770944318 76726037 464629334 728291192 951649286 743358959 909307888 441002 462032433 253025249 856832005 750740788 696212588 898335678 314041503 807397711 829046514 378487936 810277484 842838282 296537886 374875680 830289841 264061003 962751626 106834044 382858157 26415786 92216941 699359245 78681228 147914190 504948349 901209806 810405018 744940068 708743812 697642443 918852822 826369256 47315841 863697620 953102068 896349245 253852098 149850553 481549099 65749516 288727560 628113960 314764353 25786823 796337893 346538642 911884581 929144887 615737909 893412648 311817146 974890777 956586974 543569229 957627485 964863768 246123016 930261753 580924302 477633386 709139669 143897158 811782791 857526908 336854264 959730406 670989236 538122059 28805112 773818256 436902731 37739626 180045024 304954513 533197862 632215908 250863147 737407084 717523527 744064326 117558036 93322166 284566341 627412415 937238759 821115303 823769820 888073052 758003992 961993115 774010985 827255202 377277931 852608165 982956881 608468707 813009339 328978609 509203778 276750594 946580179 750493506 982354572 496305845 825579800 741448190 857111400 879295858 762204914 118404600 207580180 96760625 40568244 619945367 142728518 902373696 327838619 675505594 717327004 456503473 300316936 222419061 625878897 926773387 855303557 869098783 847873585 813325475 12889946 894157459 593681854 490752605 372642702 768405515 508347835 825937986 860109622 607506113 291316679 16981731 778117495 995731340 953962340 298612813 979825796 298907601 141450828 522241017 934769060 168877188 746421084 423662285 451295758 668575633 948381506 797333405 873394979 150403052 84437415 618947338 738503 597433256 370518601 704842829 228209194 998909457 550894374 670989236 752117122 786275342 794194361 812062742 857811847 906377736 724018081 949734696 595624127 666304836 674985240 853672908 683224718 939272028 474465203 934908573 829376957 847718129 944042295 816764297 559083897 943351615 935626300 675988491 689684360 926987880 563296323 610396134 736395561 727782747 982835167 482969266 735309333 845857655 790939913 232519339 943129725 43116742 228366423 105794656 725935832 903271173 686053129 95784819 282808794 781802920 968060336 716207943 565126471 201588291 989264428 417214592 101593926 108491703 518079408 921019220 339329815 981047842 373950580 461235607 515579899 695678583 167954125 657435234 690059932 889023352 721972530 834372876 71539059 750772995 740251409 535672558 592698839 932392181 576779138 832386483 670989236 258948562 911964431 150798973 962786152 242748061 112369629 498903024 774949028 802525049 696383166 722332222 532095370 895510929 703922054 441251706 686764834 512666697 679244893 986742536 604534676 786574289 790325543 860730643 303039145 849724421 254910890 786295791 449897049 529878562 85437580 792836871 114855691 155665549 555609521 85412072 811554451 459266420 10005477 705153992 831960041 995927262 71314331 292370855 122919054 947447060 360672651 769520439 507857661 189676285 673351772 642412152 897435086 877282272 423432687 470017195 695840754 316889222 806845200 153850229 23093992 315168525 200678129 32220509 934043319 918344715 864464643 850132652 683298948 726006531 652379461 715796691 840924883 711942124 764778264 735544998 750178342 908257579 21348074 916446215 635737603 619654494 203551792 843761022 208069934 997922143 807395623 263616361 702534144 12460273 797877214 860827137 602447959 403050360 87529325 408828848 1362100 310419551 986562788 944961396 241476058 874708218 19924403 977157688 142944983 341281931 747419120 741896929 769202680 988188770 124227180 322864771 858715957 955506227 566516799 731744144 996047704 685372435 167913218 983541791 914276116 857440273 670989236 823469649 663896955 569660803 388370432 373540351 707802613 778459637 388784909 985322179 224239127 901322700 505587182 941978607 888684616 708201246 881533976 911859678 500162781 924628388 678276451 915529104 355230815 724274701 774006405 415485726 814821003 621625435 728311963 848429628 887867017 503366763 960420767 891694381 750565286 432780796 752852015 743634230 695373288 693207732 186926582 481151431 841854312 66462422 969870111 946402061 655537590 901515946 943749240 28714161 729929746 877136415 984627443 54046815 922892589 912537099 104165681 789028173 888472588 672944687 926433862 75834282 690586614 551523006 969340399 535391935 916653993 673690318 895288394 485204938 482550223 951713385 656679107 996628342 105865784 662914839 797588530 178927684 88765124 567600645 24194781 673565543 411748019 15105093 757568896 989323966 288134326 3795217 175585452 765273272 259358028 727302031 909891430 635552959 294688458 703027033 889916981 870050021 983947194 278019948 973372966 563836228 769644843 263160592 140893643 762790217 688005243 845836386 720728041 650072650 403114875 592037139 552851307 470062904 487286297 313785977 142727095 534044756 568023520 339016980 275522695 634639671 703713844 426434873 883329043 992703088 700967111 650288258 361005422 955885887 126807567 227912268 785219822 935433098 155790728 967253413 751553614 445981464 76628694 940728962 977800536 946758710 671865017 997109692 305014635 964463326 543872362 822542377 934886689 666332256 984687314 945775440 29755873 930144348 520302806 613170851 123413481 887301166 605924419 817556337 768589238 42543800 901896292 57767412 724536139 916492160 679685528 45518763 692924690 740063027 798282257 275136196 726356037 912507275 716238990 797492102 789308068 133085830 41118506 895520170 738553434 183300084 648427358 725037630 32977576 803879512 779678957 307586072 284473201 495329430 720228412 349722308 972242197 745233142 11434618 514164207 704933644 769360545 904166794 705829011 711999092 345807217 813757104 834800821 595906946 262274388 314917823 937609997 289512006 619004824 547828558 224267706 378571568 416329473 858181676 654273219 694549782 504797085 772240533 812106726 276641021 37209243 929146298 987203956 810357678 598219089 615138932 310255534 714658694 671920166 222077404 574698684 750666849 494726691 891891620 305306186 162511589 62018595 923699834 354546566 907247899 671582063 481130390 886213713 364878954 960773953 890502063 887745093 194745909 514456200 795507560 945964909 333268859 184450420 483964873 935424789 738671191 512648002 882843648 437560300 24271685 124058347 602608160 287753095 725506536 74708908 155307329 212285424 475805933 506479199 570760935 353491174 140655492 946374370 718403214 32531733 98182376 812976744 109126735 540241260 715902975 706791389 793800108 262045546 57269147 270679842 975061528 847194021 37722915 223590710 505851907 590165021 933996841 361397172 419166781 798813843 713468881 891682223 213537100 25530715 266616112 117339090 123086097 522008674 183196799 340222117 934811695 729384867 486261245 855584659 215247493 890571336 720622473 128813139 955105666 988023096 616682176 823265076 618065092 981080825 764939354 969216041 467767662 820727902 358753936 445103367 43770274 817470904 374448004 725172986 880199260 811346175 570519224 936725598 797857650 31940196 551259964 121155299 980110940 946465480 992111587 723271126 341852934 749991804 338772633 618910024 178309180 779636555 757911600 698691705 314054641 802945149 463034272 818007065 944509957 283549474 402872236 436426308 543560534 124161842 594210822 400769359 585831234 253825513 771458754 224955392 734860176 280547766 689057431 677760017 171318077 644328948 766206252 826678638 753028966 435540137 994389707 979421996 670989236 1876786 205882034 208934883 129389914 141760808 43964818 242328129 732600912 900120234 698610224 976320196 548169746 899924218 459791515 17969754 268890177 772329018 671307395 613319872 811589305 723153836 54656170 631024900 903721044 397203590 703694128 984700577 727919249 836492552 753731127 172854947 385404197 299081687 944370173 930710303 925488127 769588439 168730852 803368234 198973432 18126920 524497770 902449418 486743994 289850168 641790992 974970175 663886734 295230718 734477002 778092108 740352491 349864308 500529494 604318933 259699762 739921531 584488050 272980620 686872712 669056253 610060780 806954889 34699497 148424216 701569213 166631604 393729035 476958275 73774029 746601737 723585097 214930276 359750125 478989409 944169981 982880425 670989236 752494213 473723117 679566927 719299685 995463365 841868800 517627396 206761331 28670217 557692340 494814002 858024990 113282191 246125465 952747824 706724710 774220576 352616417 670989236 636831610 904517664 459331419 152469725 305450662 648352481 257930151 242558669 39191611 809574814 955146218 853879141 40095033 616593716 982078057 786917024 486279106 764965484 122823986 579784285 347183315 953723402 103540903 69791420 106729386 221567538 839717324 966936427 633760911 27967610 117670463 688225432 262405699 568915166 438015633 670989236 67654882 863924238 211500717 437685774 203078801 670989236 905294121 838503907 781354183 179465365 538495588 675518499 982804275 347041058 770356908 781241382 414853053 476503835 852398459 363326689 897314535 966550278 984009340 896127787 138626538 909229265 3862708 774809452 843431083 859827262 694480191 129898798 430699656 144675497 230223397 649576753 657015647 37024969 699139909 909334601 602524200 806251640 547782840 878841203 64786796 17694633 715706914 968041997 573792329 710848433 343775259 738692574 478506361 804077862 166607183 878157079 524812796 823160919 874196575 551301741 964957000 864314987 251042343 640455784 775083182 670989236 24627062 180687541 563141066 732865301 48501099 249840814 741892365 907200705 698385907 712517429 806780306 671159431 918227511 843130724 125701093 833090223 647127370 413460833 933916881 698189807 459888414 833560357 817107794 847203255 529169812 285874648 870779039 185691284 723802440 469415592 545766874 353917898 840743528 65845503 461026686 842211401 670989236 582081393 869767467 338809988 961441160 810623121 909485338 515020024 827774954 685311185 962791260 218366790 756384183 314074153 932618353 594796977 160456939 874607172 951385331 38449298 424827602 959935273 205587713 314392510 835220538 629435247 602973883 768837744 561959106 867083298 851534455 963517749 863889618 643669888 819871345 975591048 398209132 401671847 991076470 832846331 293369974 914406704 470174381 867299201 940303028 993011718 971886087 900116593 74831119 307058343 450112976 941462383 864195631 760510000 628797030 116978628 354737615 782288949 572637147 275367057 710363197 714476397 556884342 966141139 980922226 417763450 219466285 731624986 675246450 29519106 442528836 507284339 791048342 960774518 713026028 518832699 744927974 761892085 744495515 817492118 881727798 840829965 254270069 183791120 709148857 21059941 702961269 813497728 784173497 248728770 857649069 698544088 386760574 193589756 595250940 796609181 482232628 293394001 902364894 397681700 624153547 720027067 231396989 802419221 404364062 956599185 855105054 783927110 959336207 252008169 696070075 213045048 918726902 788108971 864008365 932849438 64608069 614729148 965975583 306599100 292613258 107708446 578943277 734022153 163839379 446962353 828312058 474059961 837947998 137973928 715549090 500699430 514190012 497967197 887959556 263964118 740805859 320719113 238796431 791074089 317967225 944860248 623951640 952739684 620477175 716979049 24764755 70366954 213522983 604815257 617719410 566620551 374954586 717075512 939590288 126995333 847193887 199175283 97419003 345274244 672872992 141106947 733024193 980669497 187813526 715319149 998011276 69426581 488480607 98036208 535594443 310240266 251946225 489470922 675714009 624941387 670989236 918385650 636841307 951702090 812907955 60353412 533994874 676087517 957196641 547200551 670989236 928480085 323133140 211809804 829873073 559936553 27788480 335711107 543704415 899834928 534676513 539270833 952836590 548273282 893072919 21183502 257319382 387769496 271966530 87575263 316997596 753580648 75136509 453299400 675302231 628991880 610446030 554926503 232161557 910190712 92492068 896377676 864831435 685445075 963391972 836014030 430615092 576656071 205317879 824961123 812280721 610230173 350521153 489719761 588603517 132514740 439761318 944693913 367000032 195825050 174122227 819474138 370805022 933375736 918171176 205602454 611837043 772388944 875291802 214147914 747684141 850082071 666964109 845823165 851474258 649951342 908613320 232624427 115183 954422907 871028826 778059007 670989236 719996938 699945184 7116552 269257790 66307390 916838253 212154706 405298548 596085902 497401070 607243687 836717312 720287734 503406705 823141447 206806372 897282180 542784372 669222956 110919952 801650561 764640829 99231106 598123800 777891203 938900436 943238700 981424877 425624942 291642007 91893888 436158981 319008484 199501629 977148858 205387855 378371129 574570178 806234542 278774498 937622342 926870899 815280361 429358887 154706534 884843150 701325690 460325656 706920012 866525363 314764365 681120200 354524730 484123780 65722986 976552789 130440659 153124048 704274856 248034371 696418089 658718501 41366632 917325518 472046390 667914393 261565395 148163389 157499553 949183307 52003661 885172561 952951590 741239241 25001176 767894305 967377738 673843079 871382717 511022603 714014763 855338480 765602505 736710193 686679183 850904394 980351742 263857795 915387623 979996145 781877060 113828874 770520286 387152086 478529968 834795502 800465486 460405411 922614925 644850948 688408325 780684213 234375405 887746787 347730319 572652179 784780121 6366233 772869241 687110603 310632288 47182470 482188008 193203373 850737848 770746786 151903724 742809434 152046310 909656558 304040020 283312116 716400934 189940013 956486629 327320459 278135759 993959510 733386113 661699006 621838968 926644596 596660057 773400147 346540886 670989236 642292759 936885853 844863066 384454301 524315903 949207010 719299228 889364531 48994380 925620878 713468357 210312458 834339082 532135364 874330612 741907987 923504147 954391193 233830053 732653945 182099330 811989447 670989236 888608687 169761514 43796758 356428492 747318774 948668699 112631498 918880179 762620230 839048598 670989236 984294262 470651444 32478142 948193040 479954685 373716514 259888332 856931900 121708757 975996242 704429070 928796251 674109007 708236080 73966598 673879146 50412171 482996360 196679483 855054396 898283918 713194118 812716168 342685111 966960884 234884177 439087089 882917016 782230727 689603717 916475551 727171669 447597403 826257023 159764345 35924459 837922824 531531655 44420934 834770445 157075489 210771130 274248265 208298894 32153238 698758343 840888034 773016258 120868503 353693609 342358315 351784507 165881431 940855604 196290425 14909386 654466013 778835526 701669403 457215304 61345353 466187720 869294657 957496548 905217032 776750370 307165704 912499059 377792430 599204371 678976005 409879808 885488437 614713448 951225864 857936477 838572159 616968017 55131324 424692277 826851509 983591420 938785811 521373222 420180715 92015401 307393007 629980933 452580811 925299909 730259429 977099746 836463937 654094041 731341657 729587451 941271605 426444855 754362221 755837978 583933994 483442660 926855910 958573352 199689854 351015908 804678234 843596007 375476925 775878612 91601083 477825183 514889360 925622949 954844619 162798960 899084238 652590317 779268817 935924030 257774733 66877962 705262484 713810980 686489739 948819562 767311305 258381080 831829909 812862606 693057807 802518603 679169123 801045470 48818614 722846030 642657390 531045177 872658223 884385638 60050445 839610581 51379 638599677 353972202 962918997 423661414 670059489 611411453 433539123 666852820 621587225 739728497 730507536 679650207 766876797 388040575 959145033 955302611 775767442 802377404 1121430 5494308 741014633 158131714 705342058 672990423 894907023 777945565 320569339 270751565 734789775 698829958 980766168 443277089 965352518 895474638 97926796 108784724 691074675 192967582 207269002 968981973 366880332 935828986 756081956 756662514 909704864 147470280 130728830 850536722 155488896 110586858 92555875 170996802 261107649 56838215 278012501 624155465 841352934 658301532 508872478 888507166 216273329 676964559 701975611 396261365 713987518 879591271 34383203 817637259 878752619 884254894 90797529 533280901 908369715 755841880 245062454 841420346 13827298 372899992 984720331 687044783 362277145 123711625 287743208 221980058 750295576 569431167 545693082 728803587 140558001 737844563 156031652 798500900 793190415 738251783 507580871 935066604 900198676 612464642 314138000 939386763 892336546 199431311 679377763 471984254 859152096 702404882 201679198 421752637 386207500 804935967 878673482 802432847 385049926 842070548 501680363 260086963 191394294 820014342 787071313 940767172 958614681 691961320 363467997 565190941 904417610 723428522 935436204 352755872 745656075 439826821 59917337 323935019 524422939 940079747 221412081 816850595 624889466 60999754 114240325 721559789 967077098 376524144 230486547 110056197 375567942 307463616 385593409 732068923 920112271 637486566 259817603 770247987 811947316 972133835 275515109 404828839 163656741 425010617 889548780 496033844 670989236 670989236 425670939 97077825 805419038 760253553 340718848 95847356 16324432 938447516 897582405 820985033 962288479 823794264 288375073 870708467 874061962 468987413 926385807 114019831 852004263 985729216 179740443 861157069 888537145 948668471 930214560 376366608 820979766 298282724 361737158 968114856 556527560 925038623 876467888 992203581 672962958 10075083 748172366 273651701 908723506 988784716 589961731 825210159 210487334 914112756 853058432 705026047 77060052 721615267 163244476 796060891 634371565 423022000 727188653 755957883 793022879 838526984 353665777 925976477 911207198 822819179 969615767 95454078 833296941 134409705 792149398 352175305 839555619 752937167 600471980 967817764 323927243 900578769 24669857 358054019 158251721 765692845 740992933 855276136 508006357 62834613 659201035 913754751 507197548 723671984 542327345 338641016 736626035 828239105 796212849 145046580 917771917 86059903 321985933 163007799 78757434 172409118 950744552 916508504 268585034 917246193 770233162 588531707 700776820 935178854 622999164 377448442 981590772 912528734 201306757 872583481 819111212 706809492 583374141 263728070 899954769 927827244 709020025 271144298 231365463 714747363 670989236 190010274 719149071 525248138 914371758 478938394 45471476 871416226 364561633 685700838 801219835 699970269 137646078 53074781 148842802 822266630 765321163 398731014 886431662 678054393 56351972 840068271 904470681 960892448 998683323 850702895 881497159 52628404 28722700 497805203 983028052 706133879 49846628 640954866 717971676 562216733 47642711 626080236 153490732 162706375 654759208 132502115 4459096 583331239 443255095 984214035 739443953 760428516 371601684 728714676 202243670 212335460 393841897 572819962 716189557 564226758 672421392 805860667 49907750 340468154 749864306 766975742 781921439 209483828 110736938 732678665 297768193 934657947 394900031 835084120 515157836 9510285 718171845 338433408 448763050 57433371 796101721 790081594 834625299 376438547 776559404 515851609 984661598 119340073 905172177 119724173 158803444 239187957 790509345 22873196 972556219 705285424 702546595 349021868 55453189 356013391 998100974 822085798 441809431 390540089 771948348 873935094 434384583 818379122 680376032 909454533 768101759 111913165 840642348 439168469 614884932 5873163 576819960 320960185 814850873 4106835 802439445 670989236 237650887 342352546 949949172 751613946 237662125 790216720 901641502 675083763 675068464 648398244 924894834 804876442 689860815 564150255 469264646 287533147 556452982 974090004 928116451 774726069 490461093 493784335 928787879 226864309 149058890 547728653 868961443 684308688 534465646 449863709 929695744 927020854 784376017 168142668 812603033 467532936 214162187 59800379 561676039 233666348 788379413 965397685 415963574 319472783 796920013 858690784 173780128 983371123 1827408 605809162 692727095 991697816 479368982 356060242 451779067 393231387 308972579 979963893 800604476 112496408 650369347 285188398 972630356 186728233 348240299 779450043 795291339 909769062 476660684 779784621 766182145 450272223 465671629 146393856 933083991 733342042 848323406 821990681 772804535 836651876 324040227 691060375 866709049 865682648 704577538 740913398 681058092 77704231 996696893 687983243 4838626 207379086 791705228 904966402 739762916 766331303 939318968 934623753 853886042 11544083 897566704 256106529 865604948 938527410 782315817 905203149 886197974 462914802 880007788 958165996 564938221 502736767 703145501 864518886 886870529 228686954 315120967 397127433 464336757 773057154 701909747 650582645 435742195 302773764 852271519 846191959 921403993 211274502 567107532 845234447 47290727 749368166 805273978 999436447 930431434 898337257 665802524 291072423 888650153 728403830 288528487 840558151 236297594 337337301 951679395 541863864 834994808 199221620 84596632 791495380 166408881 692601253 854571983 107729046 314504317 775657402 721900988 616489957 101204542 905288814 799899551 764740880 702495469 865476040 256089261 184668664 142287822 93392935 745535167 79657094 974696086 761429984 946006319 731714290 255037705 239768867 493256723 378639318 632102201 661996521 108489077 653414162 528586185 783295196 854035004 179077034 142352893 254868279 7734944 413948850 871071912 570456617 548968676 59163133 785765061 648183670 731450729 274880867 821332052 888423586 219848267 723245754 726217033 513644618 145201362 849989652 629665303 937629516 882088069 70817514 372160818 971067265 288654456 227713610 987079682 670989236 671008614 386531324 623236877 947650589 670989236 131958384 670989236 580985410 595875969 281615965 172013220 884637723 927445166 973555257 463428458 968569035 890698433 723075124 972363911 323266731 684495235 555680514 71245571 834317537 5755745 13983283 54322873 691086942 987801083 104992306 853566662 288679227 875007923 968889889 25322780 834301849 710152814 916910789 721734614 854852848 935920450 692730464 599734436 372253633 960670877 950218337 301051938 639655734 525737248 579062587 817688854 295107160 929734401 917037429 349745037 740811419 691735770 507015965 797298028 547176802 114321075 911681801 381611370 178355825 281647044 783816479 320571584 984349651 194960278 660549207 241669110 883213349 935276179 997747566 711271341 787714266 97426476 968356112 865042277 376988035 736895397 938657722 706503014 883489199 855081429 939654568 48254717 941631121 672974435 757132078 741943478 783323122 180233559 790296481 917099057 826369233 687652265 445721119 670989236 919261861 730482310 555677205 666067288 989455456 215637588 314489500 129759674 44709315 358745331 972633334 394617998 849961422 583138261 640126491 555761463 376633563 821214149 254289893 769300418 711683154 916897546 590792861 332076083 333359810 614226710 945968788 290114096 987889066 985118737 647304695 785737706 939038222 363322083 190369282 587689748 30260000 438591073 496744899 361817550 968804533 360974389 312147747 762316718 75613083 190056071 239157395 702881532 758042590 43956487 848535609 442449425 682531741 191856896 333429836 865549548 712600937 927138163 385540869 620391104 638219568 33396293 993714583 434517572 682315239 872721177 338098271 753238470 783389710 889062194 949372189 827174834 764122574 98119184 190148908 612387176 793867718 838895808 395487992 472853839 417502067 553217430 708801221 169876923 983899474 401704359 180527707 941069084 335520094 891815703 761954742 907887362 298318967 73113624 670989236 831270175 891879137 707222208 946029864 775652549 393728203 659520196 923375610 852354044 955149057 465305560 876512795 775808375 875946973 979463708 882104076 19863982 670989236 22311577 341676270 670989236 310347289 926361544 398085642 249883723 796095387 939031876 110080204 668489429 577557005 28753784 531206809 210319391 544669531 127905470 277484342 629208188 812708223 879866365 607204687 200279094 445361902 990641586 497713853 436155589 800721653 921002075 721912026 109971015 854283365 387234476 303291469 783072687 358308303 695510997 749102987 671088257 719092738 185334778 206779689 813561893 461568646 797697771 914549869 271456879 819067570 974975126 44261647 92115754 800406527 739913567 128119811 742332128 815699714 738322076 422206929 458534525 673791672 837827664 271268075 156939220 876188052 68407578 372191490 73272318 905855400 804753744 786519086 692415654 718307673 251442336 430455246 781118228 955262415 872693329 815198036 102842851 60288713 281172931 491076919 982469813 698503154 826363568 684673907 515215935 408129728 759689297 972890067 679813719 726028767 811422159 481481113 46567043 662421482 787480989 20775335 979647695 53211887 110318160 229901198 368834353 776322754 995743257 573639684 917873144 610854155 760849885 119030477 474406983 831348410 502858733 8344474 585785171 241023194 164211892 755424426 46486025 223067436 92292298 970468455 640727624 893113347 951050939 994573140 122551432 923395341 791135315 788394922 711459955 218752339 770275793 927520320 687808998 570066286 179412431 458645388 855414183 131167331 13127891 861541698 176706076 604529459 478006086 534608244 776277656 235912343 803206654 613949331 742671926 769945274 789305662 405329544 693438705 729257156 785392793 915455913 731743442 989235894 898622956 712257932 702014998 212994831 32723135 476865856 417223992 870021762 699658253 856808806 950096226 57108474 606855107 952515187 877653766 651476025 891018220 186882949 339729398 339666230 931265447 304872985 886181287 214774411 880477800 229028331 564174211 355380693 941363543 3124757 686856941 789062731 947621038 605089623 244723335 583105878 821989009 12946380 741050437 984805676 297147688 562664574 434620048 589935999 991486012 769493967 605205259 860877370 878992351 933760896 734084136 973826212 659508237 354752074 619936545 794831690 760085154 304254011 702923317 30529994 195559837 670989236 969052946 130759434 969519416 972247742 679254929 906986870 557599180 166273479 251910265 433516372 135156316 728001578 33595644 568316053 746460523 389435581 14707679 212125227 888641095 695978514 309642885 715211760 793189909 991113886 152647612 167086918 491420778 808972062 242054140 563733312 753454608 431657846 670989236 587756063 460435475 166896773 800758382 812792687 718880120 364859684 693257190 915713533 727623459 916025139 337722687 690301932 779439026 77542104 45266649 410831876 109483579 789756066 699757221 772576152 806832074 727551249 785767716 313935302 738555243 99149138 305317366 363304598 284432854 175137427 353279217 405038084 236851596 930464394 783766451 889093335 990118403 965295119 352462769 746264012 83411452 724099008 761022241 769735848 892621177 369258013 869227832 909022854 279988746 910512953 400895733 569057095 709886338 964199910 945537986 484442532 258479420 229331956 236235493 852781050 68593160 452896136 506592795 550266280 46713500 464965837 208047656 907062811 533327621 472821475 138217971 240918457 796897047 765149957 782629754 941621134 730168273 768019773 691925000 140719490 91786286 54181701 274892002 353038978 837174661 959866622 593023219 686848792 394384220 547504085 856867237 844886891 770638163 985133735 148204799 868682826 21078611 635913651 735009225 819604551 9824271 791835238 326196837 287190581 590632855 7072732 827651271 42236335 899996840 954475988 2545324 475286374 175563325 725108484 893807147 957486445 170478894 814812374 668368596 68414376 444261763 778914015 399817462 746997236 645736174 779308652 975110872 916330707 519468393 259959713 847567855 681008686 875926061 912595535 721980526 659535632 746849666 288952094 998197059 310383004 126759145 706423804 791758266 691097288 479325678 898823605 964341615 681944386 384035397 888811266 649240840 71082418 443471256 34697924 184840920 829374639 699184351 232427384 492854809 798175126 905725707 670989236 872836765 106319708 612939774 753745531 126173236 888161531 621511631 853796440 880048138 969700258 836066692 994132379 295576926 875165014 586633115 363692978 785098360 758709124 368266054 483030001 861141658 939942914 319950163 362013062 720676954 560031123 744140168 640977149 189516476 333049675 746845086 795969807 106992017 473176223 784082637 613536933 313095512 972778772 868441190 55724502 484862702 746311188 199944575 965995761 841165068 65921046 90266819 807071501 153409485 23113388 285816010 873479967 143653009 212581462 836725008 832665733 922787064 798615751 391314658 661910944 858922101 232009257 899157965 164006616 823279477 184597233 753429693 989551581 330512042 276144158 449884202 11154704 793944616 801137630 262481094 784500704 878807000 458683994 845639346 765033287 748523406 727127502 513378247 355601298 802589308 686232739 961191722 386453038 731690089 306495279 862437278 242440683 72785668 171842049 482598387 402080548 882392582 721443630 967906145 985455449 913993401 446098116 423373189 272370168 768110528 670989236 978684011 971740800 677018364 819573713 759147908 417960821 97864534 89776190 376647211 841700640 513350500 815620192 162401659 552362217 220711475 54508622 108859266 983047438 659681318 189270555 959440083 541641598 11836167 910288709 748260298 780718376 155561863 701889598 132348358 930866913 203619935 600231487 761606507 373940019 763780410 468994059 976809346 412380607 684572161 913439028 670989236 109434450 75403470 549554826 896452157 675513229 786937527 903750888 568462869 159795197 331025764 887408375 638890976 801563915 427887715 119445211 729041177 965407966 476848003 527952644 346737953 90919238 56829596 91257901 26331795 435056778 949330444 116461163 585781481 339550748 713251909 874012973 964654904 648735529 914342181 679001711 842091937 832773978 857835989 987428510 693613484 860298472 692265580 996387480 311997290 429950942 28157775 376142587 306088118 214934907 756031208 279531340 330135923 719231995 349734079 218606531 250871087 715194287 458365957 885278119 55143915 656020931 568104055 312340805 755310728 205189585 783097792 863333385 743212090 12059766 692439222 921437874 278391768 383940191 374708996 530263152 696627377 575156370 659171711 525258973 688809233 323777096 676110325 143448299 318016328 927232838 916394436 906853434 240177820 142628175 903928985 764534189 797800174 807096965 484715398 328228745 905426624 956564167 392902798 851121158 185958738 204048254 789446791 957450239 536625903 230852553 910513273 394118418 833920184 875490419 220133639 144776329 640276579 80637023 838619341 968338266 471155983 408908870 239383675 852481130 942693966 254452344 744646121 503902963 738940027 969379545 15463787 998716653 522919953 109879358 901834242 720440939 701694498 434462009 758810021 574442221 423079275 507055471 277496320 272025041 373655379 612497422 335613351 500181633 798737859 972512196 428387016 968607994 847853703 275533378 921983070 537113582 910835043 344848974 924941859 485759103 163893533 8731604 140449675 323402643 832487958 883673809 950719587 48703085 145359608 216484145 994685924 938265645 842293310 614402473 990369637 828116450 901666749 857047035 420923853 826970107 575444850 264013556 852380575 925154278 976858916 489006817 695776778 621634453 519289855 526017965 724618401 839926718 738485198 89068871 577540945 310278017 928008824 881058358 246876885 684160167 903315559 743348055 877572544 53766813 487196496 670989236 357556830 495696593 933390237 995239474 998071502 780188513 531893610 297575229 663483681 785388771 796970307 337803263 909432450 753477623 970917818 15822829 938373941 815195622 688421323 591331597 30962391 730622718 910366892 974397692 921816822 961456302 995961674 939293030 122443864 65222591 240268663 865468792 173739199 634188542 195346160 205000168 442317302 627531949 479466702 430322875 830736709 967036923 858127032 630899456 771140398 792618707 505430263 15492759 495352604 151290499 743191891 887413770 996851857 227316333 929194211 588185991 914930734 368287225 923759915 269213131 685140250 171512980 19633260 855399035 886295408 575073068 117224688 586177830 424054064 943739503 40879005 272750928 162982977 295865151 682183296 796813193 215614673 78205952 808129029 757846114 101017998 840133743 753446963 610136866 930478952 861101679 322742810 700540632 450110789 512713076 388286326 973728816 101544987 128752653 484918998 692623893 150474191 151270566 777718515 91189419 329986284 101156107 930571639 449591997 566212990 587434147 942109611 586801784 332160470 886854728 989816259 839693690 227514558 769146617 383174089 979069549 336196540 193506499 813755905 853036199 407224341 814702605 946915766 970471192 913245237 756910640 953637556 727331949 709957283 426359400 884705397 707034814 911326644 934129163 738734777 425514204 761627350 776514816 589263524 985463575 940983027 754412912 866681524 919781123 832508005 729942046 810696090 998292532 610056067 689687550 985737969 420810421 891624450 704954901 529438241 984947260 806496810 696019421 518678718 738856317 444224226 985077135 465993250 526038838 914370893 501176529 295414064 968709966 94072071 812702026 595741953 190500799 731969300 928079886 760481338 217090292 301082365 643468833 706274076 997181599 497159893 750128754 26432511 383602923 581846645 985186046 930824245 782731260 754693432 770741497 404879656 772150833 713739733 789804501 847817283 662746242 224555829 371081582 553482325 537671591 927918187 848662882 956537190 187882886 409782436 898748060 361089778 835846775 15431368 788208887 140276849 743397655 128256224 985877820 889523482 277403276 672712964 377050312 880026641 970693992 835625605 900414264 692963649 904921698 824102430 357612833 77808967 32748387 409177887 577912877 46446214 671253171 958390393 182516240 496197189 969638707 991850158 58432904 615883124 489317620 619767572 322745709 900189691 542797990 39616609 116762808 364385037 493705215 996530939 356393410 718501456 715549163 402960391 382506806 670989236 984486736 714453671 795262178 100420012 785243287 483726890 315615111 203721422 632526246 721663110 756263340 527258109 729486151 760324605 905858599 734499405 227055006 401675314 946973200 768097013 491320463 979459252 28366184 994287372 551365936 192679951 157644054 784035883 998861015 996640570 477029241 132003583 115888735 56163804 568777921 500110292 532839199 715224032 94721526 483960916 297415469 371476 671035811 753352293 646472415 840904543 744606640 994981094 662052931 653080187 915880562 970586256 172408143 653359895 671592970 722663224 202045584 109893324 676861776 663210598 898587636 204729634 513805535 942495316 247932698 832855351 555281784 147445843 787393506 975860633 264782132 783746534 968202733 151074686 261519241 236690220 573337441 968432469 114583571 857292479 480421073 216482583 592981777 647620079 862788459 47120832 179383901 548343523 965876244 859159858 949195329 471513991 944202533 272688469 336425550 716123752 200686775 640783679 198194467 784292546 981016193 478028782 169935457 882953921 730325067 761473363 58669338 882276467 670989236 102170974 621009390 756303009 420781248 162009653 560118960 474371027 407550362 218867518 49085470 812884675 948691461 457223537 257974092 261310282 723553648 296585342 941305224 152712318 260790983 265298526 105749097 916595841 29980060 362617636 174251021 28905650 899657288 914361230 272196878 890876833 747016705 766420674 485717979 179332735 899675981 716785558 205315950 992718307 928692277 693850206 347725538 600060478 806288332 152148421 458832043 236091566 241646971 343963198 796217389 743503791 344875108 7227829 134503968 394821303 727581753 252690298 279122748 648294822 907612854 34234036 1781487 686806577 584432414 836580383 984910634 168166837 512962534 48813296 772636645 946933060 903339309 939823389 741312961 959638962 946170771 292455466 796980530 427048206 688577106 941288063 340754996 368620603 150887575 664204476 702651195 670989236 720311757 165522369 289974473 44030055 36600166 729490193 991619631 950126689 681847764 267576540 41841940 634897767 935454841 687283915 827033883 442321212 529767451 220949449 219979136 709042012 877630577 720125268 899679680 940439314 28134544 881878191 426475261 530148879 904570937 685485799 188422164 846450063 762392084 726933634 893931371 442933506 90971943 348004307 789015447 805649983 60899787 851171690 588997290 186808588 973330027 992930991 848929075 996523222 906311895 796894046 479665667 857656870 58094921 1333786 827718717 28519114 710897843 621602458 881179762 929069242 853742815 615808860 482335303 929571990 754968226 298848710 49732877 349677649 670989236 111235133 875315383 813280950 961205283 862015034 80656448 751167180 580204888 816528835 70472836 909531370 686141116 2350019 672464137 775028620 491247820 942414993 847251963 109047398 489732307 757174636 896058075 669486890 728292214 753775888 416578332 82524044 837173146 588751364 701879003 128503766 969006158 366674703 732624117 4808846 946199316 671063472 814291385 189157486 49559127 99755329 366104732 77164877 790826403 519333064 991026054 235354735 493416986 375534306 504813426 310471666 168785263 854136249 272536613 187611707 969504109 238568168 456275900 299572216 869467844 771669394 518179270 676692909 178956402 783452569 176994464 420383497 735016150 892443581 248285425 984691762 241288001 603126274 601710263 813460336 910556505 595443587 686798040 740774634 995971330 641926581 834426905 847124921 286293005 939682059 850765442 696445383 843700943 705999544 688182122 893850135 946704604 181608740 64337046 613660094 149604999 730021792 699203833 847362964 540138750 178132817 902689884 675494388 927932172 118962358 123789523 813046693 612486768 671453479 814577079 409531644 851388712 746886868 537911537 914204959 453379205 125272784 809615906 162854254 828763281 125040703 786612104 909389242 333703134 81265317 899710616 236428152 929550404 749113054 788765695 867757180 80713945 290809940 721821799 154494448 282912779 51943676 701338953 827727529 105534262 755266823 809312619 242872951 371897835 125987433 670989236 761530892 699559392 885751242 608314984 704409879 42416731 792967576 923962556 263985568 494357540 884116736 688760422 376045030 697069302 351997173 130230751 696545834 988247640 708093935 153684263 282620253 947386616 849877097 703290157 929905209 539487865 736598119 244165841 238791105 846026343 24512596 706169071 351832294 825929421 30738165 67727138 410012275 91680485 152226404 476965848 597078280 889830160 916377287 261005406 74981470 375017700 926083403 186503864 200544322 441660201 801081870 826658522 902617549 360568412 440687477 398040044 771738300 439864089 98782314 526822907 996178503 544819097 546645516 319072221 82510562 937051251 533985060 54664694 89767304 93129375 523797388 852249864 838656592 856733011 366752805 773697898 680597070 573496383 400946010 932898 865393174 653091002 284018779 161204165 765476792 928710635 877272259 141335338 574975728 145416749 750331402 73856357 454848130 970814020 937249865 973852264 408627023 646201891 350011543 949468592 995804671 85980406 908773956 753381004 676211829 794214018 607499818 954008220 91249839 737986254 972519510 799071439 150986004 950527542 824691470 972605773 712984797 970313559 840464569 967913639 969234287 696923757 393689376 586933473 783803993 948834036 384298264 978917169 168278077 246134273 370333428 918256725 530870110 633591241 713962355 73744140 723098029 259433180 379543745 318314852 482560495 898669916 192058034 742163290 901979246 359245072 323857445 773003862 229235594 154932506 543713154 750662724 172057527 377677094 746866161 417621220 842834835 918950080 856337786 609223577 739213565 759680606 884489142 837257383 671862828 546939276 679385904 892421312 722528542 806265200 898030672 926387967 871585427 480688695 696829625 823845860 46925988 189684646 903139060 547527237 787328813 328308764 677937617 846126806 123549956 580768168 386669305 937474745 80460022 660298766 779236683 717661057 232983271 615737429 741827979 999690270 805323652 811890829 457511055 984962992 976019173 859996889 105964453 448090452 805209419 922060061 239487231 727088990 880940323 991336985 871460869 73751395 814463418 820031490 669738003 426531359 765615411 738006947 349439927 829558874 20828026 81041522 317856855 262407661 879917187 904321094 529521291 306298861 662838544 786716212 983041220 840309742 676463078 312864512 568590791 653536382 22099689 994087960 442489713 724594173 683715609 341254647 929601237 488223626 444736911 433806948 431781929 390321938 51332306 893164549 686012532 779524784 675545020 763959067 952133336 180791042 765794513 787166805 992294888 268081669 252410279 351462416 71422583 863758381 676291986 564936056 745651334 451463699 792672589 791350848 871659568 805735941 5564726 875478759 957770799 708811784 165140866 498845358 891973924 823193607 777417247 853808919 690478386 236196962 748265931 876377900 841719708 192287325 835351867 705480866 648063047 876578576 788050596 385989961 247704586 852982943 754805424 832461092 125331944 890619356 669387115 767096046 983782415 837787284 673351562 877861858 905889518 440192397 582641337 808155233 95059987 884523735 284372735 739952117 808616753 298974310 849821937 212464924 932911799 356824069 401448180 200036539 921721584 738744917 939519614 469035766 485865914 243111306 785236683 984787065 897144794 114123727 641742907 858508935 152947784 986518673 708694114 95456350 669991571 720949127 883265341 67062222 318158250 283622433 925986050 105412999 730622957 987568299 992534697 959696050 780874730 170728596 701891844 23008043 722227184 903336401 371130838 585403469 454923035 743710454 895270656 691959730 205856512 884401250 874517123 837176398 571570877 618110077 237457587 244878889 837440304 258633438 838231219 785213047 214197731 969628485 797963348 77605473 232928588 850457873 603145807 757243202 493212875 762185110 751101799 415176441 575073287 955314898 865238482 674442217 692762210 40305870 400175055 776029911 115874213 571176723 70918252 609426434 519329838 682082457 751671739 684002936 593761650 903362761 719317083 741357304 712605307 483692116 981192020 755076924 376742421 345813873 73041565 962498892 178604191 943586418 32004069 849512933 815444851 872514500 877890922 694034464 480570660 21836768 597375706 291170074 608261727 893846607 742804105 978922715 111738423 563058637 450658967 460959592 920169216 850380411 758899809 222469908 265582213 622316144 599418300 707143190 101121671 842876804 170764316 508169769 130759809 795118423 829011456 711129078 297664281 731564046 179990919 956778910 207299798 624760509 677860477 151048549 853823920 974178930 636494542 825420311 868257359 955981830 577575528 11203127 219920319 816130824 351341482 749349100 750232294 903573584 328298348 583033090 951467897 263635228 605642061 193279118 333859822 378520167 597874873 891890948 293056317 756366181 756368439 933140138 671185876 11657099 563537460 259898476 170663176 793528604 205486381 382440486 775699512 294886173 956024601 785237683 943024494 801388329 685385713 979346591 81260520 904106273 838231010 866765261 178319969 955276528 838529812 803544098 683809693 229917579 539917018 757779533 64860192 473170031 850234256 671239170 740451080 609218202 259078532 896570774 601929621 984162063 815214790 881700818 37648410 990716363 262985111 788512976 791178032 280019320 661247224 840803902 852880297 777127834 418483031 940488897 348792578 759680909 399411093 18225709 904332162 433716393 728293256 797664146 186217971 774670210 851707786 288815277 620001513 104770071 70473463 624457732 360237191 959220702 117447764 2531176 235098130 993359903 938052434 564877784 870674987 698181534 469230711 794458841 234472057 519540592 265218004 728324249 737413503 521282945 830750658 220504989 429345222 620566757 722561914 431878650 369379377 330112014 182359359 579421241 876058334 879995162 787689482 674205466 978003329 611717059 617654391 768509954 670989236 524824530 134433944 770182811 99293796 190346891 851451992 95342928 761926216 67809220 850806704 171911529 937440138 899193152 433830876 960512760 248014534 909988447 57213729 930696032 45848609 292611019 211854404 698645353 785568744 106936142 928738008 909084742 634615213 489655380 880474011 670989236 688883246 653941038 896406387 826588712 916119633 587632356 885473814 842794141 796910165 934305990 89852935 372095994 699337796 776774979 754692953 899668903 997948660 685677329 967029873 687095516 685768996 883885550 556362801 800213523 789930856 956457793 736693140 305539610 744903300 113734830 973252434 870574781 812379843 896836148 670989236 787413176 466407486 718954086 459121784 112251762 561204792 449139294 770531252 752236058 453002514 910844465 118932384 164723598 909414803 348699451 494281972 87980267 990422881 844770931 491218197 542861551 983336448 685992723 245414097 701113277 342600452 446896239 74581688 341198557 456519745 851775106 577536615 893609815 816359419 204309759 712026336 927987966 79469006 972601731 764208781 522872637 742105254 940146568 78744115 919994699 37856426 308783302 790517769 146425079 116476303 638839811 75404826 634421883 155320756 578401596 984172048 145796131 908460853 296166430 574951615 687783577 448661617 113817102 612586182 670660000 735224180 642488399 880807510 409648499 333828728 252184285 109390540 366919222 627319680 740035024 696545685 903249157 275204634 783635418 935939234 732039262 288850433 939022991 281272019 830302160 280655780 532742720 337618961 896943032 628737453 335025454 665868786 670989236 468684929 564326964 941259131 528948600 335720910 830628211 819216753 867167188 19115338 700418614 544150862 754343278 747187056 565101326 779449884 771252788 788756344 970577329 845599889 428057361 841811832 329699416 783532251 864058450 840397642 460062089 670989236 48552606 745941683 835393172 194577000 39774732 254768124 872391656 827610479 27264727 154725330 998356226 199370788 309041235 978237124 482266437 845462479 236987360 937993770 301311706 433806480 925792327 684019052 474463206 755612868 58803620 104660255 737612449 909624166 830666099 856350027 976642107 365487641 606892558 365320921 914808543 500297220 292828432 864808140 432781985 373791685 975378702 501933707 109717878 935347562 696755937 655181966 428701311 997752187 758696409 951319305 385027032 976595413 374088403 310981747 50690712 509305352 914712735 975034641 700033444 779726886 44868359 36952712 360268540 942276192 791190182 673433170 104589456 832123371 101267226 164329064 909691538 792720796 520206674 722072460 287813600 220297257 500682183 294447221 904879821 962500600 808436304 875580509 767378382 59626550 297512682 521565624 277022553 148918534 270055670 968165288 495452482 622870146 373696588 355519969 448733021 712687299 156912040 808740390 91087273 818413294 980274605 105921806 91711300 335394378 696869867 438358057 14845272 947552629 96598364 303118903 688754130 955115576 772807076 727868333 990463542 780354921 433815856 653679012 748710746 790717687 843087375 937432173 610413106 500644803 983914429 830013231 760662628 964341972 903818127 725202758 251896274 460590378 212950755 27652146 929502551 923978115 253993880 774924067 989116452 670989236 819981460 437239280 527021621 544597213 969573226 411193046 869129561 851675952 197487931 971809277 743450960 690144913 963785159 199301216 673492941 823807249 242730145 942623725 101947007 931350660 885242451 170602321 371026835 973574588 277290177 792604228 766485413 598348450 51309820 146461226 832429842 584928421 842333548 980421441 806502949 399405090 189375006 349699185 587786516 252025871 382106062 674462071 723173001 238582836 454866631 221109997 237803533 424728811 187458726 788526461 297576862 814754415 930320781 314304543 652945480 337520397 887916434 879164497 834375726 111557126 451773319 941139930 985444561 880273429 950925717 323413078 851108604 877718140 904620322 879115330 670989236 424724857 954259426 709444410 949687923 688243407 106802955 882525363 850859841 118578990 972667737 223081695 127419009 17965220 343568442 827568740 160156482 574772863 352363515 423836761 974347003 46315997 395401715 45308634 671331318 569552847 802598602 868426283 220391560 897016567 960761499 988532718 996472333 123314970 436562371 335348407 982436263 735972952 169678111 373974310 181685744 182839333 287813045 117556306 848312067 914217137 471245451 168154336 406857139 897461335 219876810 250460978 79701126 913035317 474583702 901372925 814814824 33639058 714545349 411305731 569752176 956786896 444598510 282987619 772924574 977464671 887037609 906129784 824770942 460103944 865475027 337040784 514867926 945506466 123966916 529231425 213853042 940823482 720722618 371475041 795297985 952922556 741531398 170089199 967376128 213288880 142199593 865429528 938206658 213179534 803224723 941041687 955127317 971516927 871518724 972100588 909237108 691630153 876834786 219246617 67891020 319602617 23040316 384713217 297282289 42114364 170417521 592730417 862389793 970819149 114725946 96975197 911283257 612347254 719420150 987071312 630287519 886109962 241961230 673677691 280733060 554338138 100625470 744073164 809892735 864119848 935455175 46432944 166670935 979209715 301829671 947493238 941577504 237008741 785795604 969799302 944213193 840122836 844519188 666372934 804173689 523490592 179465707 369360283 592375001 684536434 480851946 922593295 675234910 670989236 264813829 382320561 908411402 957505248 162043934 830359317 734904143 950120239 667851374 196774774 937929491 963867611 475010607 302759362 834741798 203209325 579638446 188304942 346750066 537866040 747823167 122779177 694687541 869286228 833393155 635408626 687454850 528617859 526344607 96912071 296059863 976099435 982139824 880533313 831389088 792308141 918921986 336577213 670989236 725881642 826638866 593837402 826704227 854352728 422989333 983719488 899054250 685627225 58496637 669387380 836597862 860559117 414169470 670989236 70042575 674904296 908668586 942010339 319652219 725155797 879604650 786881922 386365731 910261827 700677630 255653210 722210786 964470858 256485819 37625779 670989236 772574635 856896648 711876169 740622387 917052474 849524819 356397977 937228656 885357545 826263201 435835217 387976981 946415628 867528113 213643395 305366497 744116713 843027386 199423422 269692198 151481610 490129548 102728614 951006762 939597977 766403132 515458513 911748252 997532218 517003342 974227560 736723787 987216774 727259680 134198047 739893977 255383243 394908832 828875635 833193350 757123511 427810179 232721822 954748356 174259262 779541987 66109151 946513691 956324956 935356598 828107162 380242293 358520894 234498158 942228106 797704233 890354000 869724303 738552446 740371218 526806252 555031967 739660119 949293607 932389663 864989181 393755101 930664626 937218774 297169178 430765567 447257806 254933807 870197011 375593009 958275722 543856765 501538820 407424399 413191257 951539750 362931505 45422046 702598799 899805265 473470714 832478409 176096220 258071538 343315489 512050184 706197018 936938620 786008707 605264235 869556758 876534165 539811481 180653111 621477242 239048439 521488242 720913368 712933573 860437298 746795337 749234994 558533156 614409260 888059207 483483158 213586403 350336950 876743218 704523220 670989236 882052992 689267490 504227740 44716875 671477001 977517219 761924983 753607806 189681339 329729019 210003792 337386901 145225349 732285359 194446961 77059608 919049162 511074049 794081860 518668718 689863929 51320976 714691609 894386132 918117172 420169735 599678237 85795549 731347783 298641882 422716586 653009326 770044556 448502036 510597761 850349554 797201123 874789728 952389965 433546435 414234927 845069583 102297057 644078912 905433290 945285652 961375254 733554802 59830755 784725690 825356362 623515394 803949998 666667794 912780704 739889205 752319437 117813710 843877688 946226506 922892955 926467584 710934148 364986720 375264074 93445173 857864885 827611668 638269512 165281325 852560456 919173395 911017588 617714486 334109884 331740200 839533577 226168738 152923275 866674730 832621176 680820453 32815151 710408776 782456822 887545906 811645417 359246471 891677802 696180822 978971132 695104520 942498040 112779623 962867731 433832755 684825456 920869115 877175267 132036697 52894692 782516782 625641357 68869550 652448108 887886142 653858803 488306364 934612403 851264563 783455702 341879839 81502917 465426380 675540597 681930896 731094323 94199867 468223007 993596974 778271398 648910062 175374461 416151869 361448473 77413285 463484637 870149723 423123445 710750077 799647089 809503794 819301422 886723133 655661869 417047031 855866827 728404215 907939749 856589785 728961524 872430105 956927711 637000283 453930561 854817828 563790574 429572623 121746098 90600639 498987783 168685664 911830851 757982158 479160681 26252127 707507674 11943791 28033745 732355252 413459711 977102488 688648190 579112181 900254782 765339569 812898842 946320231 814449888 139469227 704386988 682524982 96650841 756802857 363193181 841028626 356649650 673450772 316649815 846170380 973549114 405158365 80462263 670989236 885954038 474497773 74148996 742693471 988987017 986581837 693926457 706248462 350860158 927351263 993021667 720153679 830229337 929231094 995589532 900691549 745645353 240640035 98855522 459694971 855620586 200929075 143139797 93672049 143659417 272052114 355911098 893002698 180876946 982380605 922595875 719633680 628607515 738086825 844400974 930589281 972500896 949666126 921885056 615269428 274680859 678550273 670989236 358328774 985278083 52853150 544228385 837542829 919744015 826933555 700457501 984142226 532989623 79157182 987854000 730464609 550614075 891297532 555818223 392403681 797375658 840086355 250870401 267598370 982423592 632171202 855025160 761709752 673062982 670989236 403034718 191153397 979031135 953778669 39815596 658827377 254704069 860071349 692363840 899676894 720091967 771585696 790181157 732634683 742366744 640382138 128314054 920141783 790643003 696792049 801362764 380194052 195307317 956243539 951077397 330145962 153653693 936888603 826389523 955642420 973348243 747728882 693045466 688720116 693954291 344555526 694824186 773296381 240403624 843726533 200672456 831465929 210235414 176728265 12440472 390377996 764393513 132240258 664008560 908438111 39107249 307940261 789980566 414455660 215755170 490453654 889678313 778859635 987649530 372048350 587969840 933654681 315436541 524885414 801009771 75094901 786353577 909201348 342801745 953987411 670989236 821768984 978176921 850518572 218140689 693997735 646361875 153926600 843497594 737248234 467939857 352285924 642050435 698515946 824632734 521827200 21554951 722086572 643139697 872402096 901784074 582322876 776977445 404928530 972981125 993830172 671881181 855026301 848744536 33179029 695087443 45296831 746336920 690944461 713104025 392906141 819492805 922983087 330386914 737355565 427020847 682176069 975258351 877033350 182938489 700979434 903439787 735530050 615489718 995588007 280467078 804136623 239029449 376873888 417901215 696269436 260337494 129565698 738017018 588837927 616190426 642580603 670989236 967510742 846059529 18294516 600864309 971912155 670989236 799575878 844890516 636319919 862662346 241654217 878005297 706370388 670989236 888434892 852692821 834814655 563866350 394372982 850923780 941848618 720351453 808968829 442815845 534891766 556524786 621991681 750247330 856579785 156814254 99042234 223776050 459366555 910653028 799239723 230545106 355474645 611055491 703905212 690659721 897452450 464888127 574861299 530879589 960071357 128917067 768090414 178396510 414982812 929534200 774789633 981696515 460219755 899709687 730124799 670989236 702354637 489799684 144301804 687292648 781408214 232692192 694717742 968741850 238485590 657347743 790658539 929757848 434835066 992261860 520623251 321400772 885444854 537837340 380340731 27006147 624008883 804506603 679187951 74375994 244166078 882654301 889008335 684098295 132127967 918572253 25630521 378343044 479418790 486636049 385025795 592809855 333399672 829112534 599239061 359107435 836838273 960452478 961048447 250935664 201188351 626947798 648137157 989827659 643644389 622180787 920066373 584627530 579362938 778140217 15831470 776684494 386554195 877502336 320546035 676530607 876836656 120179169 195486585 17303273 954095479 980334387 40823452 586870721 868478419 196410593 884944088 559405552 983028659 939778393 556344443 642089963 959597727 688932718 38063989 978365021 841872817 406436882 902197326 701036355 770216324 849524720 308304450 711277074 273752628 9816492 926420039 793196812 399354586 796173807 686020175 977443209 141602652 844456365 985358235 542371773 559305484 575867127 685443733 47398217 889355189 828040024 600151979 686341361 863922704 961399217 405410304 46728107 66225457 491880991 264472096 512981795 900686187 42060060 743406435 759022171 431533446 462692733 670989236 116280044 95173165 952624597 716141346 884903701 142834056 372298324 267696108 220782794 466592069 786108027 422535493 744849344 140494549 805365272 333838750 639610571 841266148 794290731 423372571 841700043 486372878 111018424 792142753 241835367 265345344 835733211 622303436 694387680 869475042 748282647 789621774 814315406 951755991 420595480 378378471 831952971 26093887 529451627 20117033 936526457 955018821 56887777 884069085 851000820 782443819 141560820 959332636 104413062 242257690 882371352 496657303 145948400 670989236 81976416 178025482 565155640 491162016 553312149 264536281 171092533 810420735 223866255 974885232 874440742 525236011 802475658 179710418 385556922 410597773 684719673 487189739 635264904 972547307 870628585 92789041 777809906 489554662 391017375 647054199 850432905 632853428 5953486 318521558 569310576 888137506 736064523 694015395 651461105 673387750 533014520 346785759 904578715 169965298 705904535 277010474 906986036 881536229 629378241 185146767 121966440 830957967 721860643 526513762 670989236 878890207 19198057 533145624 617224696 794109736 715747689 33951993 904976692 676294872 708861948 122373311 477296034 895272977 941820682 961785963 99195957 337176567 628353 928678218 39956449 812188302 347909695 90820377 976183889 894786296 869691131 696351369 919126189 52886028 419374691 958202671 16889876 212044796 435346483 956966400 771416687 722413904 136543643 122927263 226908329 734169107 279636115 317411589 888936016 341076585 881779274 775538983 748787049 357918758 202885643 513198175 213387465 859247646 493707280 364433511 875804204 510936930 673899816 152007116 701715627 266915911 630793064 984373417 220881506 313838600 456234982 87262978 794407882 706046127 712201858 633865774 335881330 789241274 139208887 758257233 689125707 228504287 394372778 299096510 958302843 969222689 870817029 999697307 728984496 796844141 443845534 119596659 875068788 337266006 660360235 759972177 793081108 983884025 991531888 845922746 786851098 943525045 543387541 877085169 401685058 951215942 780432251 326142258 297447065 451359858 441581822 746197287 129631340 58355176 735920239 666106656 385193724 77174847 811562698 963898237 423839863 913730455 955162015 984935341 520032327 218330676 507085092 604968809 732318638 742416083 733638615 296088970 788080628 909123756 724033901 699104770 562574948 989214949 920184181 970522398 168484337 375287959 99395481 771590902 774568620 425699792 626991892 853390431 399878796 972420694 806007111 232462714 42107195 848563945 9759322 141329814 676804029 321133080 866906306 958526675 783459879 459885141 766063708 989621487 7273617 616083797 997249041 117391760 657486515 789724109 423390136 772358881 280180417 944467015 349845794 495627654 546972883 899810601 140989633 921219803 479717294 89563710 847279858 670989236 901763771 132044202 570415228 955470951 89606749 590640201 474572867 754319619 811810149 866276994 154329205 861385964 963061966 571619080 781838560 323003751 738321862 190107805 918174676 23557242 246358833 489264983 827015930 620673362 263168508 496262943 751768773 449850414 741687023 163529348 887929876 826786843 707996808 930058017 680859696 924737171 980126289 913315661 632501488 712602889 431973136 742458240 802842327 178621934 640279447 425321934 109877455 970523575 881679733 344171150 809976384 439735877 790418354 134074652 45446963 967157169 466495553 37352268 795681670 242299416 488303346 685150988 866301612 850527740 419434988 605281781 381480249 728935516 245599224 751608752 603436617 11770796 605827508 882633607 66904746 472450247 347470826 441877585 961799356 294874716 708758920 771581895 769448176 240486259 647586216 746244914 715478925 904003110 302281721 768846554 942277875 799449941 204132375 356919545 642617349 855786413 93345397 380898736 996183656 385131262 522087798 110006422 913504665 535840812 736430999 447577890 811907254 694445317 670989236 543478420 793508865 867743884 997944499 14384269 944214665 256002756 790544457 122931913 650423178 575648095 817626154 697897355 526261329 268531717 234229626 288088172 70544520 626880114 46969326 238424388 801027942 51097153 129869770 830110412 219300064 193706726 13360884 272842989 894898058 278115575 495807491 174448830 75902710 832865559 546464042 225667187 499880205 863587070 697807877 691270682 794356292 375631545 956055804 251548189 160319802 858658145 791730024 672345646 547913264 670989236 977552171 654782001 695049748 213292607 880987787 644687418 743388818 785416792 359404542 513787067 468745386 16271670 911646199 586323385 490870183 109419257 760313671 399789008 680934688 396818389 302304427 739672893 911889994 801914082 692166469 694981529 792203549 829843812 334268587 84451757 402389338 914353271 896315929 293252713 400811147 949022944 602323483 266360610 709660175 635618058 806660306 894449414 6350934 148175194 935338583 709700696 689003448 666841526 545466746 714026212 531535390 805420703 119733051 682797426 963041258 79288290 390153434 670989236 911499821 636326769 976461479 588573927 396174952 768744800 764728356 431736430 158921800 718252295 620839213 936191512 811698759 288640545 378529834 944495526 981055265 790289717 724752935 932695393 824714512 646591828 852271458 126237356 474525858 39653601 220917074 778113419 225760215 582819304 652837351 382762794 745243842 841547361 848368862 856519227 454319053 865136275 338248771 422664567 995200714 520637070 956357010 46983501 760155865 921493918 850870206 904496013 786079111 146728646 73679236 518589714 347749306 114407458 394417764 508110985 702192528 138892875 350069834 696734519 670989236 115151396 686982229 803236404 670989236 675851356 743987441 959304106 998960757 903311001 725121536 761051343 660224731 992686944 943278486 624081023 139155423 17643628 834033242 286724011 107642739 70525739 890154995 831877939 299239401 406971823 670989236 771436492 901397514 326233913 871293156 320459850 459449616 443845688 975117932 850420725 254968817 811159221 327693341 975564787 561914108 81240488 395224567 979655420 592392458 398303291 853251279 407204516 616894140 773584394 856392344 981230426 196939061 994015541 307844944 306487839 618265931 876945144 582800954 311742652 755650186 703850319 313465221 376296238 692328459 958514150 806114836 688214378 54543840 268692824 858424247 200730128 405565547 207239352 841193667 242118049 965073546 679543940 263022668 545010938 853106006 184613560 951228116 361234977 799790627 913378493 982490987 594897962 904605416 688943527 309470345 670989236 266302051 203155699 529300236 976494814 108673626 187282450 940350117 920313750 805784959 231304172 419754896 395202300 154676857 798706367 751865516 350888071 975502904 802367939 780095137 831553660 878092201 866086483 991081448 433736839 1023451 760663709 304342882 903298407 46955968 890858772 845683509 763560226 973030517 678539873 154482202 925245186 409684902 720257754 126667739 977198236 686382735 826763865 924597742 831693144 825727286 109874061 528482523 207178216 362394163 755198224 448335925 230448398 88820051 66802493 769925919 253015238 142952698 143054289 256257056 898208916 405284003 408785874 335380778 748417225 530775923 679804075 74275529 742026489 968794859 68659473 346181838 438335350 888287868 641086234 620976049 196499475 607581720 639517706 348062333 691814383 793868239 903245451 911703142 887615347 82763811 673465574 314898757 119849694 621534238 994888023 581916692 878979659 831456748 811309727 38828929 330871919 900601767 72569589 931648920 925547526 579061355 873971300 639288001 848518122 430464722 893917662 907005193 130269181 343830189 576128966 495271976 556456335 731804928 444844672 977760248 76529866 103797777 945004576 83590077 240838776 947292003 766523779 841587337 968107171 696010005 471496070 478100149 804223942 207861784 863092304 818619201 776863725 815461657 746276803 756413890 914004856 828096785 290645804 302164633 978727985 258485304 681968288 756436223 862216101 820330638 614626529 754751019 734816511 49261743 922965122 982450386 836533293 65129475 527332780 392107379 293206944 302844407 984012359 670989236 528962444 824165300 836741685 160246878 743115855 670989236 101481667 129472072 955127129 143894187 826019096 561450668 222839873 700725243 355239202 489879941 462308737 658797499 682103767 245373996 902290595 788949451 860917689 670989236 275730784 707014999 862064319 991106891 322046989 719956495 146591829 603177022 782225617 803088110 939395321 281868503 781003380 134853741 465322235 235087768 652922440 895957986 871319492 917645220 330633023 993894224 90114457 979532471 909478064 914816861 927062698 99247839 858552123 739597714 810672180 670989236 796352348 254787491 306829683 741426911 320800022 594818423 713362380 286995271 135915046 399873105 727186661 642217781 369641021 701016554 648606300 987591394 765991277 541579600 443890430 343608276 853424355 904376143 868426443 794623746 844991510 872256586 176754954 281528515 266702038 172099629 887654044 484994386 867601723 280152908 756605124 455538751 730181379 694761875 969170492 863523796 683524388 756859351 727257745 985251489 827949272 49863349 195945005 961891131 367080084 395905899 94660475 996273597 628106908 734415305 967949484 721325846 949631691 646219873 863475165 797369830 824014049 775127140 913103063 530399844 58457739 408828446 484454640 850291236 469113432 920495876 778559720 990328754 72000342 980820751 549171989 894069929 613715480 537307514 626113696 674714364 963076134 670989236 958224544 400170092 826408063 631854397 840149838 38908078 712113671 981760253 700295381 500086448 132494152 108863409 807904681 791202042 800805186 799358965 316579475 510894074 779740558 620139140 417450461 176666235 708533965 755747506 714379305 846410302 877976244 337232142 161187926 820855105 975411043 994578074 954042900 776688548 880078518 714968919 772643294 279898343 202270627 895496262 797934238 119474006 49913599 171726369 932432452 246307165 280292776 213357251 648133293 860892413 912743490 293320425 678269521 673562206 842930237 894315277 752576835 146771665 398236565 638120162 863102062 859952706 712073756 831069493 865872138 32861845 158980596 176852889 321152898 400250270 359083862 252816259 525441084 952998635 594835150 863652140 207126182 715324600 17847419 341225226 512543958 371097010 123991628 262675979 975640029 350686048 637341262 928709974 613042963 268576729 271818531 796583776 168911340 841608880 966557496 448780237 966095896 392343251 794595385 245451102 722271859 966298883 603393247 947576618 197092259 739819349 73589797 971675875 880869187 894102736 399709200 518179765 523825896 910528146 371841738 707952082 844609134 523502668 636187874 340159756 888272006 450420569 831450111 655664012 707489248 755691415 856726402 81269307 902896308 860034676 182185765 904388240 385972225 69562769 154605663 838380843 640021086 92443561 855556502 346749369 469169484 455246755 936294199 824589808 904741732 921221948 702262418 196321297 329995742 15734856 406399191 773132070 487779699 599382562 985516178 29539118 487552137 621991525 187184654 6280365 774674147 692649462 941650287 709295116 806541554 726124158 865455799 807390327 454395438 307725371 324442633 433401864 431258417 412985777 796759610 943372986 692451785 824570136 771798249 787056348 913273292 830049702 127457104 365179288 885533497 919688492 387845812 408956410 644673105 766854005 785810212 186719733 873692404 892552588 581539472 947326619 855668621 551186714 793935058 733256178 493301561 54113866 775962380 789866357 782002936 820247158 948779319 801407976 803983409 998234338 664597527 533700730 129517229 37468190 778125388 719571443 595434255 218993561 858988115 697802335 99508896 946975794 997210474 827873929 906486385 745667733 192254581 281807564 829146180 93367270 367806734 815373005 481283772 994612366 341083561 815138738 825235095 560415929 72737140 889763014 734772069 982445920 800213557 812434755 835195353 428963144 595260636 58343533 485675399 20036756 152725129 863588344 55788916 690720681 953754836 10450549 438560596 833625152 75809282 826787909 851355276 694000965 849819048 530237371 994036197 18228799 301458654 967157374 36377623 69932305 937136584 410287356 969708717 951762339 42551279 861168620 707234577 17272016 137030622 699503504 502307466 987908158 854100829 105219213 819890522 967922126 729909143 734739673 775582712 931194260 929157140 901890420 743829394 84115346 842954096 810775869 484049443 948252917 454629730 592016323 883789818 442003486 980890967 559376834 313790430 916911843 712481035 917158949 170451066 483884297 626390320 992182219 706998241 705667769 827877753 764152953 584398724 784136640 499785973 808746232 174684721 887765764 147672501 463418465 652104423 65190480 797085543 981244632 831182743 276337495 840741431 687889170 860960864 291463805 858664964 688291688 468642404 979567982 291765637 829673468 526423061 598794073 372399507 21573381 243932677 254717236 623088945 95543295 131904898 238780055 852227554 855920908 317152469 213100619 953520924 69990480 723214570 255779998 334807632 422075033 649625566 885916868 422302270 776008178 171737487 326831728 730012792 877270984 144359184 419594578 832103742 875066569 775173602 501722593 822006139 585713134 286323057 697952008 952521046 60011060 83550820 215814655 381887184 210611154 647612785 946849430 944064690 653364591 752379372 814324849 273080495 919344765 96111714 924798993 892780077 799563477 772081182 770056083 696638152 683300146 254964621 470694351 657460565 144192160 284870230 743404130 731519012 892082513 370658039 670989236 461876472 976669156 853979300 782591840 2176092 102120300 950417546 591910925 686683072 652745448 561113908 870088845 827287656 640384816 755873456 965667897 728333766 833211544 386668717 518243908 761174856 847196676 996102850 388792102 769704381 704689838 280451831 79620478 670989236 896645657 871634741 232105157 292404235 170086539 672969652 72924482 679194019 255519701 627958436 600789155 660180124 827798543 751511153 881466834 802693675 921602589 620693896 718317789 926934738 153371734 991027952 305544794 840084600 719915973 174221939 245971688 544824780 751316750 26881109 611086296 547346852 944320851 287044917 34595641 742315437 965780650 132184832 911631489 801835358 247714600 919557622 488897304 158943291 995530017 812378566 926613160 934232015 906628307 529657615 910746120 80718950 894057746 736882787 198615445 333823984 44809922 509784793 247182892 296467536 701097383 182002884 731216390 111127158 622290913 460257728 559077551 304627645 782389757 140792220 519967026 511740189 395528791 341690228 837031337 906855050 600679606 345519914 981259319 135321803 896651858 184493193 148170499 792988345 691812709 516791529 643336374 639363303 137775362 808176760 498002486 861176712 334794154 190553294 198169943 317851662 896829253 919404227 593311605 372160208 750050043 818554531 670989236 890537001 711366772 766449890 661416287 150060753 670989236 412786732 616205163 800214082 884615613 474812565 490129647 675709678 22766492 246878448 312191228 459891835 355894349 9338416 805640459 414672148 885073084 772796807 311890718 574636968 996257233 735210228 898574134 468229232 966525650 558496613 652001497 526831988 224381975 345759308 107017985 556956334 888592132 865508402 898199209 953570589 16568554 610305927 949301756 869950821 686044108 750486687 507475227 351090296 794652110 998190551 953375244 555784571 814242666 731839920 797089913 750298575 993973835 523862728 874863813 737635751 53687400 655048538 484073081 938431542 492993584 969577347 766161905 790139649 450150348 507081143 423246706 310378064 999323106 683401443 585284049 14006073 997352197 897669512 399158519 257829345 428071386 878616646 693534748 456279753 313896071 290534493 926670913 757625699 670989236 454837547 733678419 811080562 75639177 432483730 863753511 925145429 731605032 707280576 796345711 553404151 293646259 994222932 426333569 740895396 212137317 893246734 45908742 501399773 618128595 678721097 667079709 698532452 339811973 788861523 95098388 482431911 560428834 861033037 905712748 62553746 972962629 886582490 866319741 850427874 597119638 211792091 438772894 822409439 468911256 683159542 673183454 385391017 458348882 852897872 889992120 154532897 899490004 426375049 959668481 683376220 831065231 849545888 771571282 816921400 947679414 542281076 812110679 775992448 729060848 171580866 885796123 317632698 622000957 970258365 460520674 445013637 621882198 694520167 860035433 235070698 871863402 112056802 884617589 675488481 754994257 77164307 670989236 722467973 937394131 951247894 756974931 820858372 673955771 146700270 663200960 915245582 927498142 944548822 842776994 683983448 797360241 830880213 412606031 103727155 586378347 810287871 340251421 792784220 962657377 670989236 960696325 921929669 708561850 861190580 350968909 14314093 997372827 336633076 714201206 869877669 295247991 734452979 361855493 975314808 748995484 732335201 804352878 158184522 894340601 195764696 437920364 48856025 509098363 617593919 774739255 83887571 699610745 620951525 626884692 698159942 697028354 935386905 989890753 512866931 672883170 883767644 720051842 477695341 169249124 957735059 398616959 848461703 442109467 693669028 500493472 361810224 595568315 704884645 960858510 283757136 670989236 804112435 841354682 773223469 828175661 885700157 488054782 691890028 228673867 697250762 333377917 290645699 247248940 271991990 993255060 15165579 29603461 743574223 968683314 570326045 913112851 727641374 175748648 678622314 77225732 650506187 792236999 41286572 913566275 337039535 498373257 837912333 518960779 961128504 840535002 766579606 303022225 736727817 772857575 460099160 625897415 360495972 995382826 885111915 292090861 53909787 777595270 953070048 75072224 117009023 71754755 343448124 150259051 318355690 183553130 849244218 563021762 992228551 702103136 785261234 291257292 134574707 233360687 196445531 218396750 220022342 764320811 594482885 784252790 976339701 807017863 939782457 521577466 676288644 390638907 161412061 468852942 417693545 279431910 353745021 66459517 823716448 50860390 954032085 259891030 671795466 869104609 686805018 288100384 958908242 744763116 404376739 475187557 476861815 480877023 297495023 905762746 945656123 165044080 291671019 287323335 694617638 896076302 103138687 297719383 932628157 71088731 8454074 925114980 13537618 289822485 321250874 480404320 454262672 855412922 431981968 869947135 822934484 820773418 992043072 530888460 109857261 229665146 416230093 417758345 261799903 609709206 672363640 604856512 994708048 970517713 887288517 728500202 854677676 717833653 490640128 538922112 232757444 487926546 806136544 199510018 42212500 823454955 761836609 230635223 746280941 944337446 103667218 830404201 884915111 706800436 152682212 924689689 186408648 728116722 18336571 45730643 282657749 154715146 808279505 317552122 862471800 610572392 323817495 392201965 976704189 670989236 27789034 999323185 802444333 731076115 892819257 786756401 731182073 317607808 515856134 12334658 870186338 205145869 348295518 379330195 570657787 778251097 417100692 888728790 875829152 845007348 647223484 826839013 955490518 863611814 597646052 348320356 5191926 714509630 594073153 265693483 988975080 249323475 889002834 972017752 893253162 731225767 502613728 695082331 736883528 848796971 487270044 362383702 336832309 905773104 595153837 494894317 542261151 42756514 109905594 892269646 859705174 634519348 969157830 299787628 322203525 740598770 968110099 107972800 533970005 868805836 403887284 996711098 860988234 292476719 840974424 883119579 716939740 474975205 770271557 959042619 297190916 135073059 402166272 918064924 692923342 757945968 569869349 670989236 434371866 251560099 228962816 647901720 670989236 579134973 983389146 712035225 957295908 391020560 802837566 904325868 984981638 199360959 701311780 963662143 852562356 695646077 40918656 330920551 959390512 594313747 922822123 287245361 562627924 834789027 823066802 854367241 993145808 898305931 89438228 142692446 250109402 729234057 215717881 382918 699464404 425094683 477095068 769058699 684692004 409918035 939324714 869291261 858966154 826265404 737156803 780406049 809110456 329630431 936590864 928850511 729512996 136502524 911599112 336186013 468021862 893181992 47289951 904797319 60764244 883038619 376695472 909585412 156886214 278935810 182567536 97308809 649705931 132452371 730594464 938076450 859536713 136532897 836867041 861085101 684799400 719492659 901398060 712644534 703779235 317346745 762272657 434820654 547032357 929996020 261399288 303004238 674826138 337415604 996602150 384839860 283100454 120668115 868523322 944005541 872992059 332262586 744579312 790179804 919319657 965533154 735368488 462057629 221528314 671651119 257859024 861340185 727327593 548915151 689929218 107021725 195076594 638795175 982402871 183605629 88950534 40692516 815541904 79619133 840341688 233401397 910021581 984530348 571390667 673684676 494392230 960062366 686720222 671522698 800829601 536032583 674116022 409965682 833948915 617297183 104373641 124370661 735178728 130451880 937451837 822023938 962204223 969821917 943280797 775351698 526185 899994916 214695880 586272317 383746155 539276355 963130499 963834544 958380032 536064054 155809706 982610692 782209612 863120182 940519312 89272560 802737794 682157143 463972830 761167170 431392091 758231390 105001637 944482650 786693466 944298674 49092514 305877011 533264168 960663105 318532698 842196238 490123570 467907177 65239095 596382706 165075378 798548659 315547193 31480394 106773011 788760553 936529217 373121704 948650811 790173947 508233460 767736329 934438995 606533772 693636041 769538507 234271812 345974868 354137605 781056377 724532100 687868467 884281392 875594911 153361516 126029621 398289037 894558687 221252188 396404208 601425818 847226191 761107686 962640361 654387299 966852351 794114992 234658066 217744223 720766595 66895483 963649669 914532893 574318455 423864973 741999968 146332985 488461410 311068698 637393259 926054186 902059481 964018497 907724948 274524295 756163468 21462658 768022720 185842584 771653821 787720710 473397537 18706235 531932995 393739861 296882000 800718537 91630983 603308316 116081295 983691840 888565952 975793514 862614925 571565220 802730142 279629584 252437823 325215409 697689239 72518 905851550 46916622 24815028 173953641 317691631 677223263 162934677 112805715 709060277 149869860 840248855 899516890 692099694 746904040 57383424 322568239 611159809 928341066 941360380 936080402 934090437 263258923 900352112 40028182 765252088 90407975 871208642 500299813 757927255 497352219 60818226 819340544 918920621 804796373 25554833 670989236 557368327 469651910 375151867 552071572 178276246 183629762 488017302 16438282 767603574 247651234 307327719 61400147 84007386 769177810 784861905 992636627 5842494 266575837 781648543 275606762 782965895 499580617 859398819 697118599 183908015 237338709 717095735 382350926 315218424 859141336 850194659 198595588 445012561 814809203 697426570 907978423 47899170 956988567 355039648 990417153 836658194 775869221 667937815 800212849 963747108 113792607 178494068 206343146 359191711 515522722 412265854 739968504 670214392 123161563 999932324 69491885 972290574 45446114 671036228 571992882 641163428 805751332 992883199 749477204 739644155 464555399 67349748 913768181 689569336 149823108 934413713 364646674 219355537 443568536 53477084 998939809 394321108 125089242 225540225 744675614 573231240 79014476 882827478 583595360 685293466 115718390 450041288 254614534 670989236 787158248 955610120 817556255 775029452 388271304 108561199 897694955 799642129 745059140 760996389 380571449 816075713 64616750 877029799 777196129 516756601 905518799 827774769 226196722 236039054 32829113 89421967 610206549 469141404 818839544 779729797 149828987 945310604 942630235 578643787 698594331 865362505 198594654 752850648 234829780 836640051 479338574 972799691 909104030 336796942 859343209 545671072 486329169 59184464 514919498 730358180 30861980 959222111 787951767 568662975 904539618 910882925 285323846 989578000 682263530 958219551 235980187 841889223 708224215 602835256 245252153 502567503 870750867 827939699 597900185 887365363 709427618 781971486 374116212 694655572 751914824 818262537 252878701 712858567 688595358 313182708 440736083 708106638 79735186 47284143 714199492 155286244 855045248 211691806 837671701 646908597 192824545 720466365 753952659 416538766 964397118 30291774 996701485 603217784 803297620 947659739 693471540 729157699 734102722 97186747 280451735 284349908 894046838 624882513 510608648 884086586 925736287 921799535 19680018 830860420 180501015 137041117 982938191 698891510 309028439 213039282 622631155 483777221 581999735 979627430 929514724 539805835 671260888 718958138 376627753 813977988 763621029 327904499 27404324 713886452 638112776 473047809 952443535 960580472 429580511 848197795 264726543 760055295 595470099 946329102 902629665 513643119 417292579 897030347 268968521 332751985 703826913 983821033 401726966 72423712 874983742 743572645 771066136 703465426 759871034 567179992 155710770 495458911 670989236 414415182 500758125 41529988 692570138 673980958 495153442 136484497 675091961 994004855 951786637 729563868 829941432 339919279 747476846 152952632 922504710 216713789 974196042 119590884 839777385 652251915 796932733 747007186 209723264 833060366 502569698 994302510 255738432 186288942 55216176 887507581 781987829 527729565 620490005 754427894 78309696 880810812 922601609 77575867 391975825 650458509 783903468 670989236 386307155 499473405 910159103 313511890 670989236 941335681 108462260 170969146 446490902 312667609 942639083 968369585 73620802 991922741 289198492 621090886 917046246 302134112 711885030 368252516 84006823 942038147 379293164 403935949 181924985 963997621 118297359 396048534 59709317 898275523 178562314 112766066 815626489 637092759 919330056 251830772 993635681 983470366 73343039 670989236 245410118 714691040 574052593 248208405 540210805 582280435 268842947 374517169 152645486 850392016 961739373 759267479 914815555 15848939 431208795 670989236 649122569 650541474 583945652 880984802 166157676 927242192 629668859 160206011 341226232 372644064 491095574 719802849 207775013 700705309 947797239 459743583 848354822 486177916 51789466 511050144 398349782 673108258 465880472 261931072 375376940 823922920 541177157 749107407 808548911 491969668 735655558 993536708 707923952 583300328 132048601 17697867 947895759 50411542 193910779 779867035 307544605 74276414 411867338 833997352 815659377 170442832 996078654 818510686 441142252 555906133 647802894 845854700 748923462 999361601 650459195 426901287 662146304 665294592 640690957 108322836 714721883 348649312 506936597 53526188 256137850 38684165 470300281 686169595 872881091 877594548 956363512 803451108 155530584 399406822 677548607 748197979 778193339 173116316 834613695 433974841 633081841 517595525 466901756 427642159 389714834 847433154 847948736 930034846 469568116 809210447 855682103 891448228 978190618 856058329 647748604 998958580 577251181 909150916 179029840 546115056 729300330 846283185 317539520 488317774 918432003 677968053 695715961 64654073 861600061 909395712 268852181 408283226 186974679 128606719 682063679 969666804 204394887 314475362 561422813 991922720 85783661 124678434 380700467 675914673 714795514 818205780 16262248 734723739 890463724 829482987 808732524 7235891 285650641 689293160 902207930 879367168 725669195 278547829 831332191 87927176 215306502 18300066 851308247 695155591 927241674 746469163 337989356 863890764 229230255 260217472 192106445 989166173 445483807 740166685 355404286 198398927 152716989 838551291 901307389 681036599 737016769 457617189 710251875 169666425 761732332 746636364 739337489 887157508 813502574 476411887 891478164 54977289 849637005 385422587 946329877 811753573 756352085 188494799 88085430 783223601 793875850 984200470 975588470 772248374 277046088 555729511 897872072 50092733 887933426 795334431 468976936 848250461 232633948 780571965 993737483 999242900 756569586 16554103 456029341 661603044 98044622 42838357 667256173 283768703 675472404 873078706 319887781 856059927 964127525 680855107 875787013 854331879 800937291 905755139 926659695 757375631 825319864 831801420 936016169 124087388 670989236 87144367 980828299 332465042 240620871 724654326 664204368 300148601 289751864 942108287 993466528 477036924 861893290 987134818 518631567 507272674 563612526 948088212 844283783 716309112 788812234 5942258 802807425 697123553 53642412 389922921 407336243 100710222 761542058 571068176 892802916 540065289 694143796 206834306 522535630 485490919 297703890 538342223 174922744 188173926 802120560 298473399 812419819 961163778 846937676 487258844 525332075 89934818 103494588 51414148 959224172 593284503 835597697 297821498 280289533 633337032 851493303 840119714 561684589 828584285 126295058 540293810 687794829 714195222 210777677 183083607 426714602 869062638 661502980 654638327 941299944 195702983 880058227 55836844 919168173 483315726 748818320 830636453 92537499 761908025 948023360 739671908 763908127 749653404 898276420 38456996 725268822 566133736 662494566 31882746 412296938 876998165 964383210 924845088 489533596 846202339 762592052 277198354 444102451 832559356 768835849 705562252 744016613 784092386 766452496 749759327 732781927 340186501 359583756 509107056 228298572 445946741 515976498 56660559 310458443 21376352 768127250 455561511 751665537 888333777 962644974 714685397 838418842 983580474 663244955 698724664 544250258 860439245 664397543 360665007 722017226 80288386 100544375 114060256 651093768 266695052 487414533 877979590 923053067 353260220 882598861 561749875 723140396 670989236 955064458 76597388 886150196 419689444 901285368 762028047 835467832 13850429 674291077 771282257 604616148 711471850 797621382 162014217 323582940 353823217 954005725 698511840 581250885 689924658 449748410 676317879 90062745 58260802 813325933 484256748 870153385 615495417 834560613 374582754 25521603 45723457 138509817 247257470 729703664 769325243 884504541 488277483 845366169 675484584 794786771 192100798 250327399 686573115 959872412 802793374 802578520 918591278 607920380 952906671 773160796 111033179 286378235 266075733 475141243 211019298 835670952 620859808 671863189 942536880 719536854 139156524 822742336 693705842 325891422 959046993 766968234 967739149 698900330 588609679 336298171 691828658 670989236 745094474 288143557 57217071 695410962 303685541 959648930 814395115 708718044 406300219 946641977 670989236 276603688 737074100 764239579 837272384 158976159 367333676 881736620 120982939 900340131 919601566 880387931 574572205 960062399 907991086 997000215 49013769 563692722 847255931 558752033 447655774 237650164 883760433 816154479 878101183 989363319 685829918 48735545 422877647 922497201 912888112 218202073 870884856 794096594 736713326 125575766 994775019 696061853 704215603 808715476 839842909 868607633 793451454 996133109 687584778 238032720 857035834 215472105 755447605 928495405 189821641 72183120 711311703 739928658 95860083 907471522 86652962 127701293 457392202 379115432 794762821 947886080 692390499 871166669 856445090 562364649 106917093 717649938 890296634 184195168 773298756 574246448 718361608 859726414 432481712 377263078 768103631 131511126 683409465 927182936 670989236 325362105 462798294 753303630 118007469 83652508 652683797 740875938 761035322 892678925 785749821 701648800 461187633 170516993 525383610 175414300 113923580 661766898 4693425 911661080 75623746 500112949 718974673 889510122 467216821 834210306 760705377 887186900 874282679 196356252 475554003 195904974 954756266 827440920 249241093 327257921 812212766 946808227 905604650 683063864 41069576 815685285 75436652 294514276 872910472 415726155 872574132 919535327 217215389 573908246 137570393 195657386 834365049 822053438 670348496 751755134 31868285 928606969 670989236 826657856 4330415 912467804 219562312 572293472 105548633 258178119 176739238 77728601 725458699 539097533 384536436 769755287 988255903 978155881 767267859 815869248 658508109 894694799 762113748 921932075 246440345 374158501 242399137 458806863 809450024 670989236 657760099 900003204 212167015 399638361 457242417 835999855 719061939 869252224 591595882 57561917 225828965 537370753 840374083 75714438 893518241 548031411 561262354 535076097 878695240 678615794 97010800 451801862 528036010 71748935 206114589 826073564 931497501 486522254 549856209 613544366 543969512 701597605 798702318 951035506 932848164 779617982 762783347 995173404 236979598 380422469 149582512 288766131 989824328 806644624 175029137 738911958 179466071 92973757 55678293 619107298 191592891 212913786 223629521 595247859 1029367 781897983 922466439 517893953 273368248 768299879 757485169 970662324 389996891 40994817 819927830 706354631 838352623 262573780 790362072 753905571 940108391 252061212 688250036 68409881 784294035 820603711 723031716 883997412 452962098 155259144 885352071 419218204 733257479 790822992 755107405 766845983 735179095 21454169 45079261 995114123 388851417 494143624 740160534 724823970 885491988 390835405 520083381 888807916 312833121 981274884 803867044 788677217 417000810 2309306 73109914 851221746 651346789 204559227 352094865 801082148 549719641 439226419 940279438 799195162 848382405 669831139 992807296 932762881 451963226 772780163 669470355 437663624 205291715 496948857 370116607 900225311 745965246 694400932 680373305 755042823 905005134 838517662 106460611 390922332 845653371 810872741 671346286 79567569 989612631 491125608 920714946 887351968 373775093 806568357 800372664 874470564 919883082 369649219 991005810 529823124 103646921 920831357 977028896 338926658 670989236 706056437 9517326 729159141 241438317 825799332 446447425 707018802 927827549 840386575 917159472 670989236 304831959 498663074 770269802 753009386 977629282 451737336 509380787 787836737 19500720 905003183 918144799 554155975 367208219 348169948 249278790 40041381 902438081 887403940 109675257 298670119 991881582 952381491 333814090 591491349 90569869 208371423 788903035 651356200 792104607 708755932 698504009 497353669 289846765 774666492 683069035 973912532 61346414 727409943 439747022 737270990 909175901 576269372 992796546 861150982 875807741 287627064 707748500 784930629 476355445 58997673 736376182 18881475 30343709 933462534 107824182 295116322 164738729 656446380 558889884 840710347 471272034 916106077 119430048 902325354 629232660 208086427 694012304 393555956 390796880 863499439 279842507 65237422 707140884 881343444 435009603 958084440 854683908 379633425 842188819 538255611 57799529 255222186 71199097 941579745 770794736 892209899 663051806 857544534 956174225 869073970 392587588 463202777 778630738 530378973 709546831 922995973 701985690 548436757 628301306 649548466 655482050 768537469 115106064 50598892 818063563 507890545 804670151 804765763 833420653 679448052 662149636 372938782 237592969 482044231 663618885 331570420 170166364 56696705 969628327 103972719 695609487 699185571 173210634 178661228 774019205 658427889 150789957 22205176 701078494 644025650 693466187 717795390 506951069 673962703 731554453 229312433 441119567 613070782 686320808 164928042 715114423 507439964 164817312 726586343 566161306 975119314 475133036 734946352 229995764 673136904 767671272 279919503 183265375 157387472 189454101 445536762 121041525 758006243 921867873 782270813 105205376 984312845 929900904 940949484 568168707 483788355 893773628 53840436 948314643 888531951 680344033 864151856 224748737 817508701 956826057 670989236 996532149 307099008 602244935 570408234 288881844 6035178 421427807 368832149 789062611 220930520 203557840 899374602 797673704 792174288 139521188 454003460 701297772 22985805 28106621 961447937 937532396 730687870 477948554 315692659 961680437 164425212 843841750 315587224 306218 555936966 785317210 912708474 876402605 839750000 946785579 510231154 267062575 121666279 202436534 453140191 760918660 712316773 89875764 631389870 894107478 888060662 388545615 847365337 94402110 249252846 369942642 666582605 518655014 67958424 735794007 885389440 688054184 829193330 389903235 824592433 532624791 845940795 887360319 272845170 895158352 797694262 526710528 571054008 373126274 45102073 777847171 158448363 991652841 778375634 678065924 960629422 153383853 761116770 292814719 405856826 738741441 864400988 456581154 362024292 369532135 945413426 483767069 613518878 616062092 947822875 65190123 6765682 309508443 921252176 753285140 741007238 497740934 860620517 601860889 618955778 857899146 214244094 106637607 131975348 173666648 859942231 887651001 532466803 847335563 844674716 316492570 31754692 86368551 454207025 178373290 742678248 225307968 261181947 208981762 797855714 968206655 668848660 670989236 46026527 526052557 889776906 979815398 715369995 184930472 862188865 8525572 380958538 760639432 174502722 180378421 364843513 342360241 527572717 485636407 4318268 231555566 791643370 834567437 820738779 962878088 726461507 965245515 357249579 103297323 705004636 243293037 527374277 976464581 985999472 955764770 975009692 870521853 953388942 379648060 830386569 764974006 550060766 532082093 942437705 662774106 428959663 118086497 720077716 46409994 653759161 992638546 807291187 734842709 787325183 49311158 311524591 396784912 507797597 816751019 775365960 292241505 745231913 455186846 644978808 824554769 875119486 708542674 764420545 964294695 454991980 750424449 76847401 168042280 721721305 770045612 588751852 793784078 277975090 130297675 379615089 440295297 112282057 961919977 803459096 974786331 838185715 570077010 349023269 554579587 683178601 33265861 203248994 888365468 290700960 319672284 212844225 8559576 670989236 224903835 833582561 724699722 905903405 233014178 10357619 66329902 590711494 970334953 151771839 413420688 831073681 190394589 562825110 923250493 607592462 369164390 774829777 152546626 372065512 262375192 974030628 583985267 468931713 129539703 331694820 95368798 531536747 687594418 127220914 67901460 461096628 668282889 935490832 785005330 168998450 972282725 917384410 604340119 964078694 115513742 784325325 941471894 726489176 819919637 498946435 997134409 912042512 951866893 952553855 144559881 256138745 212320406 816980694 294940888 948581917 819513915 182069739 749820858 407469013 229786897 152337460 301319083 242658607 672249333 255541690 461171575 467176707 938156002 109736942 324278411 561907244 998236984 671328741 705977666 989874347 265393481 373266192 644423579 80766815 276419046 367384907 8505657 158023128 420959737 824835659 712780763 755752142 881897093 600689354 766152866 725273241 699714621 144063781 807207102 686142387 736089671 996815335 502848513 880047248 612570051 149289503 241213423 506031334 877259818 670989236 166955021 762200377 983532613 885805662 796903343 670989236 688265561 373122288 952474864 815362454 715324614 545359405 903529092 232212091 616704950 472339346 189063926 786283902 811993093 569230609 242231341 843808040 185717627 940234610 744656854 816027452 738754420 239552259 580637030 409328688 294209302 744857537 897814403 931187410 834406380 250437116 785794191 809278226 525115289 860111686 196025110 818397007 670025369 909258211 927312944 997646008 751809774 827646647 157640446 741745693 955061566 874392995 839151763 682079067 886060356 477301938 784127736 123504826 711366024 824308393 959973119 347224227 68060711 264504163 670989236 117296515 948307538 820838319 589068638 27589494 66102246 987872492 847116989 241654614 57967054 609382665 839834188 259130730 768428836 978250294 827029148 423449072 479899950 790370919 145563606 631370698 262500749 908051192 875219966 215942928 600374282 932519021 940287753 737337086 793309672 276312655 553478977 583820628 736170396 5201793 943192131 572928705 234047512 213033339 780498090 698965311 815101514 207420097 305001813 343712656 613243002 908207271 65148175 736134004 949434900 943313342 874800827 624317325 931146359 966933515 67586029 803079278 244897602 899341281 936202468 48322427 688945338 351577409 400812854 919773289 946349938 29347843 813323597 745956535 545251008 911801312 26076893 891710979 829243534 850726613 471019913 136162665 882011685 555178150 869411686 770655636 773794196 394195436 959918740 510016008 705763681 933377551 16948672 293430620 67541305 452123118 763527198 3411732 281654410 899577493 726964868 102839102 18118486 751261807 165347895 753746098 30165599 101455023 198438676 10582616 814270003 667777124 511182639 49985177 883060766 739545711 828456464 979868538 26935193 701550287 756983420 985590489 710462479 238578666 749905477 939764640 749422648 140196483 104092416 877293990 602818102 822828114 682484359 894430094 801541663 454709384 470848713 244726521 250163185 358461596 638180520 483648650 483158693 540362537 656042675 786113687 795987391 937550580 28028693 90987376 514640469 772047085 968407169 670989236 370809785 502704664 1410429 969234811 786704236 40287068 954419950 987692712 882188709 988873042 962016011 830684628 783286998 808681620 807546851 841088569 993269957 843637359 327076476 758452567 822841217 835255999 941038288 301365916 22291443 766820361 732602076 884989483 6794925 715656697 601221800 797620152 66099346 496763881 866567664 280850837 373946806 761637420 456624793 94550052 762770842 938353173 724234678 786228136 794012011 89086021 580337215 21550741 472929765 859183218 561002946 998966010 768941625 767455123 17210007 535860300 810253771 644761013 600736540 937683452 998661879 771220200 876030628 909030554 591019278 426411634 514384380 851012141 6345658 487781784 299748925 838526263 876957151 31919897 787526049 960586494 470053020 973166066 863020092 737847019 221183222 105422882 726493684 753052865 74162651 971312376 403499321 835949554 496445094 916656555 644473796 353391431 771012231 429364949 69457684 334569835 943845916 859526390 680075723 516610757 998049555 680581612 719663221 913520346 841539297 21749953 492623711 245152529 68101929 208371821 746651562 698710159 961595352 776504145 844372262 682833516 751846805 257917507 998303997 699280847 749494077 697162415 611755879 775343330 842691930 906259653 933289308 651042618 877263432 345292212 547092227 14263578 825716124 445760266 946411906 737934815 305398531 411397216 901995558 849996469 236797200 699921057 808673452 925389218 839533849 671885827 985441225 510498560 982472428 779532294 420519342 173713827 864113565 888074713 551706742 146735435 164644811 171128652 808387217 940906498 918887296 560928445 910639876 669762346 139661419 570115601 283030859 192195638 587948627 698244639 854733131 785686653 30186674 113130655 403033011 855263613 756522668 834943514 894935367 740768968 778613492 196712504 982952389 329923154 298928386 353605848 357066089 32675711 676222443 516022042 334598457 104745189 575807078 634360443 733712205 713578356 752540659 338929611 913130087 225164199 170489740 790878492 71812087 881557383 325340670 990295392 947905005 960344640 709674098 796706388 935982974 921933197 661833320 545304693 794924742 521025276 773123310 150047397 978975889 715509593 482259111 31798095 47504208 691509177 448902538 820737823 538754727 767147041 340079825 571907376 85668509 678097392 570593734 294886228 127868445 801150420 739555445 826389954 449179018 838250977 945990431 996229219 808264137 991250337 92777662 39889198 956897475 193864965 638687065 224706382 726076204 753068517 480523276 245290372 210420697 802298055 284881939 746572249 240730395 257228003 236446945 151388900 433987302 982745454 286027859 345157918 53073353 824027390 804918971 282627448 94615096 983180030 792629609 812669988 857700082 809983007 891562574 388357022 781324 930979403 379774864 881788518 670989236 318466175 865657076 28079561 993456066 22274927 712408184 870630118 833222793 238148980 23459806 977099294 845266427 955228651 479682279 640301288 39081212 591450831 722894445 236475119 348348608 887306015 924918698 797294268 43091220 677601529 282420630 784857623 592203888 822617711 922678633 345602672 996876891 671800188 489802346 225649074 869543605 889409502 711578277 295840830 588079341 887944696 630171850 620075549 539012528 751820119 771219997 835679987 747892018 934966153 670129042 621990536 864574919 465335755 4533610 763506096 736156106 400556845 55723782 898371284 635072125 432335870 74070066 931728984 781997351 192446188 339385053 521729632 670989236 826817875 948514304 883733454 674237442 913584374 682037862 832733586 578290881 753517233 898610775 185989734 165293672 770684931 550563083 745940897 929262317 476279018 517067713 99284403 998773703 730236588 734341787 996944651 783541179 3156391 271166683 973474578 813189946 731253167 482243963 880739080 887172961 307394910 764850777 253377161 880224012 491108838 739645540 897912502 948948621 676731285 103055748 807370274 463229889 241730968 739782801 324444892 815193198 998175191 831400418 443528781 812678733 151397377 627741490 591771649 234890003 216107963 360763505 671543754 883610024 232877162 494259524 720564008 600255551 356906809 856090022 206586637 885404634 146356829 855900178 871752373 741347009 224630811 596791812 853191616 709913987 702879399 719575137 476039853 545172986 446134867 768310951 967164055 495313916 715249124 645398466 77254973 11406668 699064748 728478792 399567859 756246264 557730606 495539073 280007047 854710992 670989236 318379074 676168024 763907275 701071312 730995016 895341089 581784071 907228729 205831162 975370764 630890467 792882721 606437161 449901979 22743439 826330387 595099314 976330767 844923736 854271617 588847467 710440957 359437484 908915982 899457122 879051685 959769667 820530722 574644213 801368944 736328613 960455238 307362199 68542819 942890340 778210517 855595912 227307487 452076070 17911301 456515973 669653767 670989236 518159379 865996094 209986813 916996824 455537815 737750275 982761409 906375184 793974992 387073959 693663289 46122478 738839771 67677429 740283879 689184675 480177064 428508892 709788444 935635622 804082206 543581340 465076857 672985920 164576428 542446269 107171779 839715043 259890692 670917621 979240758 944939690 499286747 353280166 992299163 325598445 980415335 162439527 880854400 847207416 961872508 689148479 994529021 771813348 911429098 945355954 789713265 571087818 441869602 861093540 712709512 932976371 641282556 880691792 710176855 255730000 694648757 548670176 870540650 859837996 769751027 510516184 536138395 180048568 548685601 522672600 923418822 899861661 142100228 932256724 96516459 230135535 875705250 56712284 158896012 931355930 724523064 213177259 214968752 795288028 667164800 670989236 718459197 627539208 178943871 558065170 825697296 153194967 741622418 917643795 696853090 338629933 732736861 783700262 849653515 798302854 776095004 372753598 730008257 107772720 931594220 745018198 806904065 701694820 246213407 379673607 560711627 121674851 215719369 255235181 925518885 45459571 722846529 892716892 520011886 896328882 946546271 797262732 944364818 392574098 616935920 118699495 281726605 537271517 302180864 132201376 788145413 778237386 211072998 951193694 78171843 7303965 840668049 283129018 866076061 718809136 878061328 674759539 890268045 940027794 998023267 797710336 676768135 275033894 619631352 245973291 1455221 666848528 63284506 214136161 736543272 440643336 737321436 592921546 925659268 354032926 70223156 210311857 619230655 95338348 743453179 601745798 207570872 812370301 946145123 696747616 830591543 101037094 935431135 788373048 240346600 978195686 289798058 988847021 925616888 64045806 199200295 727430015 950144310 227518638 589582125 731645901 201605111 955493304 878355843 698849327 828699994 88842795 382193050 453218491 944644689 923007842 414463305 808809941 184733159 680415249 753528721 28935377 133950616 880757160 455801965 917607362 997677127 787413778 897636786 173292606 879244673 211481361 796891491 378989029 889295302 560150105 792897852 901414716 670989236 207154829 880420709 31030267 751460799 263071645 235523908 340893485 923936245 280545566 911244001 923208954 670989236 442792144 822050546 308464607 288826715 737882441 804527768 487764967 600600434 518229974 570778714 566231421 978618636 382331272 157792743 10778566 668875593 835364224 653624379 312066963 889509349 916612421 97180923 586230004 824596106 218651370 670989236 995423330 688847473 718993624 273350279 321167025 744408266 179198005 853021131 576018669 854030669 876361216 379794795 949012290 969887610 789185127 937261260 38853369 854881583 683254670 974785834 544343678 140188068 518229162 423720232 845420728 299511055 307966843 153138372 810941872 909658854 507342468 42198494 417891312 706293281 355398666 785112155 344341540 333491998 786396043 590165793 273310490 497177805 19841990 584068912 953724173 740112298 954186507 753283833 927215164 670989236 406724033 675407688 345346115 682653802 572537060 85924265 995994553 534777181 487010384 144421581 680352028 92861964 996487820 809744356 667156663 717515263 939231297 133552697 984830123 838275577 705302991 587921393 902588817 696215324 989035432 179435419 332292563 67847702 971541282 693369577 791087966 915171960 922396208 821939024 951508658 689706006 648917854 754851166 363588743 441528601 25327392 733038916 355619439 818872503 201170095 244177712 530276574 888777552 722050732 887313259 852816886 60010697 928435990 661701950 324369056 430539658 779237415 773127673 699157672 144029223 55395023 849218561 670989236 793852180 919521804 267011153 231917641 225432953 244681272 828738288 212459065 401044915 324334605 283164693 35191441 615413718 81173835 519717949 776920520 978612405 697416165 563249848 603817999 139098876 172141261 60049771 199616131 835190927 2836333 597947645 670989236 923781195 824503586 535212163 397034154 820419238 254057509 71653366 975714567 359772911 940224378 6786688 501247894 241729591 486821354 798826627 920178868 911640827 805705237 827855448 918909268 570645961 731451278 116180897 726879656 269887962 675164373 417646851 909225325 740693282 594464086 993171703 194950124 908898712 555310034 92556461 832341250 217316218 379891430 764964762 853178215 925015444 676928473 9480149 522185172 918164713 709514045 894170505 804328347 588929934 740333287 887409795 770677856 745115191 261152756 265987149 440259090 989128495 754850104 888565237 697488639 195047898 850004704 825917112 355943104 507045938 423415963 816750514 545333624 465355833 312607687 869157532 145917679 592950957 475117016 854174511 464657462 563994372 201579254 894087694 525395230 613925558 636442863 991195142 133401974 890262787 951623064 742820166 996493145 872171253 889695138 862487907 533837995 392254548 753583031 617119355 323120239 778150605 954154874 869575376 732654841 256555182 873673773 901715366 649788854 767529457 742359300 848323641 670989236 712097082 198170887 953464847 259001461 767544881 614613032 993325961 140611401 885921034 62491571 906639346 287317169 783573860 864788209 253505813 805789075 680296051 300484199 548366575 403084821 851232944 857886177 858703045 714556836 131850859 297612201 132956058 914950292 474758721 521420156 373783638 943553613 670989236 825523778 649759394 399114752 694896253 625497091 744083794 948358661 237553405 401206662 692586062 978655964 597069158 447085277 407876036 679215520 662712595 670989236 961118302 222961929 125418981 778235017 969918955 30846404 984160239 871783709 300306465 840527833 796643020 688920704 818618070 555307186 77025586 586392670 499677431 632560922 893231585 483465619 949749681 760132932 391521096 996020579 640391898 753706776 914109562 542116462 705154246 794213836 285737701 679811173 20944339 389743225 695370090 623670468 793806038 155357760 839136558 582653021 739363037 773479362 867671691 785870159 979101617 402066530 723536082 363968647 981295924 715191332 228569835 337039129 791544686 654574160 901291532 778652264 720880362 732494671 642571569 660914096 517343067 323636134 960992962 158322956 128780203 917917849 441667110 356651101 971881912 838852519 854114534 676818720 750626271 585601706 545119562 755020238 649991341 894836280 707032370 818854565 356720047 432726466 223572926 31062004 850472876 500608733 679545068 944432975 635422126 47027981 907507528 849820326 922419731 792011721 675699336 805588685 793035811 128375415 922271931 371075605 235477536 727484377 721527630 748909135 359372828 629496653 610678363 507258489 997564227 789211982 670989236 16232285 135204065 365089211 829902645 800581418 646691053 720511794 279063720 366143358 646854659 881609063 262592807 909051170 727318647 660599738 121736884 206033612 518650763 769237095 284418355 966221515 964744439 972438400 695167999 973419356 341426851 930057556 935112400 363352043 465229552 761971967 925591109 123827228 935957926 979486872 935038414 919215116 763389226 315881947 35134917 525749296 316009459 15618046 135741404 95614380 556937617 646843163 764677985 950945572 417657982 659277086 469509021 728429604 162685199 159692385 214856955 253694634 192304724 718156583 776228675 925328737 670543866 817335112 988809900 596754706 651481983 894230783 302603028 160464482 206035033 883055344 788178874 361079085 254160678 705572629 781580037 705656708 125450779 762639864 771017782 800248532 766332174 470690184 869231689 680394836 873348015 534045823 50844383 381579534 631519785 639882811 595926973 340782175 791563218 132195043 166830827 350144474 799561087 560077232 274470232 902482704 923603103 814418763 182114380 553241963 752303857 367834578 82241715 686577513 28004610 167450908 751846970 296464199 844123890 921511670 405969527 746520589 776521352 672814358 335615258 886722292 670989236 678029370 897078593 993359090 265664392 322227204 301138989 939957693 662742030 844514421 922946737 907481688 649123806 204397849 142990235 195335312 778010758 478167062 846856714 955081986 464293405 708776685 100705391 878938065 675550225 869387769 551352370 826563711 471575768 316267350 683150483 488732109 825671523 995383698 620181258 329967290 609419714 842320006 365217025 34644283 20523595 690621708 144535638 876377489 127538602 802638852 175358774 744497816 926277373 535681978 116805504 398076492 366355407 308789244 612107383 903903555 937730208 189639108 57958160 746650731 342752978 833609003 709168534 501014431 696793195 339714484 248533610 36392078 34914305 874704940 401097323 721414054 805232829 403549421 796664135 703637119 810277527 481068607 546036718 715964960 755228154 943350517 255285636 893219107 548315939 297447940 825760754 273410792 670989236 634495763 690272457 360856686 837147725 155380432 109115124 632123056 823882318 308811688 641486668 308561232 891559092 648540035 808684666 367720714 867099029 133134868 267424220 850536998 679644737 107491876 152444727 6516766 940651714 341981778 612693426 212766082 144932180 966358203 60089471 766816275 954399004 860896107 896218981 748707014 796303100 721096273 650578864 832468985 643972278 781201611 803804459 408958354 780034410 52558745 751833443 838869605 154461099 303664123 813177235 222660427 376665141 973472946 923125516 836405079 999274428 682168239 634130999 814718066 262896828 916223964 153846982 801526347 468772190 700225260 997857234 175935639 475189344 387682462 328395799 748317503 245609976 932471712 694510170 702822612 694816621 103304368 969144477 678570600 115004768 80193320 962225266 110853001 969947816 359179179 918792773 987483214 969105435 954057205 929740173 196801374 303282477 877958789 670989236 871027474 398954494 299557964 943725603 831583258 665025655 822880511 878333040 796843708 683091657 99096369 284174635 211174912 182126204 185950834 68974102 718630755 402085799 373391717 688967547 86957761 795216837 746309505 917838335 869053472 292212610 237172437 154563137 748480182 736200556 718581641 201370566 725515733 859296809 778736062 8175401 318845671 939208628 957648842 967844205 569529408 57749231 954642629 427281332 728594849 451619032 401456138 537648864 939126999 816780440 499301139 383659571 7400634 133709743 877128634 998649625 803940487 372217664 817386441 664880646 578080274 708915602 756737103 422098660 53069303 767342017 204697925 364549225 913875621 931743270 816435237 756733489 936121424 924750583 433476963 790287723 821473852 141873478 462644211 772124762 31816913 850656684 477359650 749208567 755881017 702168272 846912881 196285960 414321592 846211555 293732492 769855349 331935682 648130890 355615706 6025049 890301042 937126762 640362250 391981143 239051945 868725667 675023826 151130658 186064974 58850251 938277974 533788350 266831580 524897333 12572128 829605461 780038846 841510669 295367030 516199674 231867608 434739738 226721714 782053630 86937979 979681804 860490853 764734329 618190157 617143353 296295391 776132204 474086448 218764645 781969303 696356689 380317760 58135726 26071516 132922934 835275099 821417280 856252106 775830923 777539813 670989236 367988897 479480540 926582136 152509486 468347734 881467516 293105966 262022121 345149965 190447631 161627222 98389401 784536191 822485346 253801992 402470482 797156798 255080261 421034843 392604926 952584205 985524750 825465836 205171303 187806676 232885088 480973372 131366876 421299366 283684987 818217303 720256138 474980836 865238445 850236742 843908800 924709537 405646666 309137691 400358944 574262905 533449233 928494750 504813408 798564226 948001352 316425633 149919995 6730512 429845888 826160153 357193041 824091557 28423321 844561493 236498988 601760428 185646168 304715998 53697705 492784284 963404239 346971630 140426231 714702336 892304092 470455831 673908005 627553670 847145176 288316308 987108379 670989236 929830086 397094460 269915620 957033756 978603763 921627641 733504252 710772674 867075708 907387637 432337233 946340034 674960228 201194415 527455555 220546209 893143777 828883976 901095690 819329567 998648976 51854547 113513081 785380062 433352862 81966802 415916729 929829390 724576207 2004094 854369732 270106725 58673406 762967603 932898359 492241066 407393712 770177195 975771535 996583987 726587609 434399782 966410276 687735712 821417674 900877385 605164752 744572914 403361190 584294486 974791625 296750702 651496292 39964040 81339872 937714426 403788578 719465284 795657884 359091541 901334315 934995037 824039059 497340986 528487605 145246062 703457338 65395463 64733388 118960691 366074197 258671095 994126447 276327870 833417859 740821273 914717874 900843255 849458849 465335485 546253339 261277021 849267478 299304774 104491735 29576889 714333257 852860782 463176670 871855262 262029164 985245006 727351495 925839503 779740665 775211693 21931793 928111886 886340959 912813877 576939624 362388435 780877620 507004798 997773303 790275796 881262509 363104944 839803045 639470977 767349721 469782297 320727846 821014929 461995994 752984957 438592667 771934216 526946878 505359651 141224368 997132801 819793409 380311923 750355884 996164086 689101335 877754237 335194023 242190703 983832997 319530016 110516864 799484183 992925906 179930685 865410882 547154848 484742935 409920904 204715745 262576396 825907416 218241664 699704032 636222869 565320533 174729515 986154371 902102429 683546397 294776874 835024526 313058187 828707576 910434805 485175337 131666894 504754134 593531987 792753787 604528620 716271470 832571436 200801246 863705786 39491861 831580114 845881164 427861745 28916908 686702421 867652167 860160142 832528524 749347199 701884936 755911903 797502697 305843057 758763554 851275137 271948850 266687305 795431434 257782146 830753389 743715121 644667133 395127496 135949638 55720076 527795177 417800504 101274041 535418231 355322147 268890447 453071246 63237501 404239317 958559742 491394316 855455606 694211850 500448827 224894736 399152028 814913337 887982498 636949546 747349479 708692313 861539889 998971570 962543625 934639500 199084568 746281055 309459630 505313152 765854141 907023907 220456514 608572262 36043928 483895287 947457414 390408653 618084641 674093446 787833089 705929153 148343649 525534950 690308560 743455377 205319125 193518313 35033808 934912225 4493469 525494379 605268184 340405151 277055135 100731351 961243892 728901256 824975807 871297624 948830082 172999371 748180592 597850884 587935050 811728247 851364982 669182410 472026325 178868144 808841054 176857962 953485272 837238994 887905747 891886225 811840379 939241154 478404998 975447967 135773712 884118828 553662811 691360723 968584933 364933634 877143197 557745422 100201548 762025603 142120332 879264629 670989236 596229698 743879405 300556295 815646967 235914373 708904290 996923452 718749015 670989236 121715158 867277397 218197196 175732141 32313124 51226611 22970108 724758397 785441180 361748768 871792291 559933399 817522906 860957202 968553181 929091402 304086356 875846514 543614325 628084228 803086684 874794473 729997356 475052020 989522090 392739224 769362866 701450759 282664331 641634246 775909519 472001712 985840258 488741167 576834803 907817847 106221607 681875002 792673857 74247939 468457960 133338151 984989757 850893088 734495536 853625291 613109356 15242018 602700424 793384176 299171331 819109800 996434298 726991937 6290839 671324578 626756112 557249874 909297171 673815847 606660182 309453871 597514596 876077556 827210303 904604266 986780854 892424109 743752392 826715959 949895334 200259799 697110147 599143747 727620922 718145320 81369891 70222060 467871125 711447911 910184694 694665976 887911693 65266323 81037238 778304070 685444583 832870099 969948612 765699999 85042716 85674304 940351596 670417222 852661521 787380030 896256280 958507504 48628404 475820478 942374754 741533356 794897519 283121657 322996037 786002207 200568786 871427286 206213331 845477550 417952238 602251763 815959338 20912066 617469790 859789012 295802673 369768561 806216019 952100948 139066165 875793416 546768507 87941695 465522525 836307146 249763188 787637344 875346162 888057209 984966422 221022955 900180502 615400199 714303179 501291788 596981580 500540695 721726446 240510100 148087694 868304618 715793260 813344594 950893963 871167239 633241260 906366751 876563690 812174104 597327794 865404672 992677349 393858111 320199309 85596142 722866263 700951641 627890138 429059450 918648505 778368224 935530446 184177091 28184462 913088766 767060460 903858602 862595743 289263147 835125198 210107588 609613773 62007128 677034880 855871411 919360756 272021349 565643427 212797947 106505996 916724139 716185177 809488228 885530811 188944916 77473723 575891193 2769357 148728210 295120945 245741882 180977896 630268117 293112245 638045004 512090041 320118573 493808438 448718590 779295658 19029593 817204220 834983239 601715268 264211308 343665355 156258317 382246463 997211068 983653372 167789571 393288410 787547308 587790009 407504039 812790830 808025218 22367997 543537821 828153628 75529202 810208763 753614348 515946026 656038886 808365240 274235769 943121405 390204394 670989236 328536552 728997555 644014489 164802172 865774309 567090016 964935588 882007268 807143897 796965423 115002845 458761689 799525816 148030849 434438769 950258954 352244023 412740137 916972864 171967388 844549542 689001567 153742080 448205413 883480228 758249712 743107670 670989236 722202228 294052352 67915567 747082428 944965547 415441290 735363658 708961189 182650697 783160442 809998892 688365414 781454587 663212054 783465129 222459354 502689475 980032941 742819365 670989236 931830916 184950150 63164335 897005637 960510760 913966059 889939428 472733120 603240614 937053779 908048263 985652842 388241261 700958451 474553416 883155794 908798938 913084184 789183409 621346695 641607222 307154784 3814272 119770853 808550900 57014221 421621401 368250416 746223381 875603312 71248776 973872828 33913450 451116819 997521866 517639604 649625646 732538243 782960602 824410427 600751360 605270291 793790082 7269114 664269883 954788526 239430446 824084619 20791941 902449341 761947161 885201272 670989236 398429107 866075732 963862857 467733380 633664306 849274254 947006144 675853090 358134314 682205566 472841942 479527560 562101764 813412473 716813740 921352111 216112978 921746760 752469997 876070567 673776534 705712164 382184350 971198668 996810711 247612284 685963057 935751119 912236502 711624231 705842172 966818721 72375137 339129153 43426032 786067886 723889116 189427119 503497348 159350694 914769101 268741294 745754545 902406410 897366213 367998859 831089403 826119215 190603686 980674233 980673056 655033352 884004270 526121572 6906082 61615250 243537574 817184874 225977971 413757952 162343321 574025737 354044156 132860618 363787995 767718679 988148711 543548049 613611420 689133954 408081759 869674264 76239945 117353598 52218889 932319040 913733814 95207474 121605572 123885430 229505806 492767474 357003544 709923118 550702156 871194745 62843954 892001825 140325587 750055879 677533182 66915923 305312404 905344623 379282951 209334473 882699639 281805409 870256641 588249399 92860714 13726431 154938560 350107952 751917736 168787400 716812996 996561909 920606553 828037827 809014042 975095127 768386465 415125022 862085218 281630393 222014155 609253058 713438930 658336497 45356697 144615185 156648294 601868928 617264148 828533061 633454471 467856808 305682929 311238306 134305907 339071674 653732257 814600259 465615519 707747496 254394866 955308985 957505858 773378907 709474812 148407180 990376653 77387101 816583520 748612263 438629502 195503012 681912782 141351305 558473127 895001091 466185028 387452199 359671172 202340593 709199858 140842065 734465717 84268619 750000587 319041084 372943958 931807787 147863468 795953123 543241620 726653671 542621498 962717872 324012661 414552802 620952271 379083617 411169653 422578151 49277877 739623463 515978817 458325895 216042477 353362276 374120740 825908932 333231593 789463928 281694030 264326929 799375141 581379411 557337425 298515953 135708836 821168162 528020527 485605019 481173053 901027770 388088546 725331915 490157173 40022538 746372680 847393824 710815028 452161978 87768088 673159539 886956155 275889581 141692736 790281456 354138097 979239124 923956860 148340760 10543736 311105912 839126809 762755885 627761075 432147772 689344494 547111229 909431257 515734703 204329736 781267143 911360789 633907124 671640388 575662505 827239350 803829778 576360836 986260345 812733541 220887254 677519811 628816772 698064318 809380091 276694263 942156474 970470470 712489856 145155137 175305324 428932536 908203113 347174010 87545813 725257228 933482089 986189350 480495107 381430030 39195205 516094951 805731624 206654533 703874288 77185075 386680243 84706125 915375542 670989236 471897589 904272516 807208544 996392589 877264789 523433644 685382297 185444021 600760895 911501422 765428301 993483007 818722478 270926387 491858870 686983608 751179096 376479152 255961624 179079811 716380350 4188974 746290686 787421134 901959903 907914146 160898589 796767815 126384236 962558050 670989236 580165324 687091446 156189037 450700228 427499365 929896235 572587683 123732399 575722756 209117154 407955574 948427961 950545197 962285567 729811685 849584426 80221178 716348128 562584912 747569201 678913434 872006585 962738442 194221114 207497046 965060504 747471304 803339696 797252447 692806503 59679926 801094301 344845404 796993081 565488984 169542953 243063398 88660407 77629101 728913315 835842191 808502758 147775625 681824533 718598726 753018093 793811126 591027759 773205113 409342103 398280973 765416355 940900440 887527352 966926551 619757353 883591861 690265242 859982223 572331535 715415793 610706423 476308087 328701887 904609651 676875089 368989108 412741732 970734818 450300084 853964456 208129340 744755397 500839871 997469074 531485856 939090806 98382167 395499684 946909463 969146424 594345580 391005932 247110868 485634092 189870033 801237815 670989236 557379564 144222930 146934892 710843467 442195912 70189752 364449972 834627609 927331117 780338658 539037585 719142566 228465214 301936905 47637644 920149116 592500316 788769379 680584789 111502762 89802120 795687836 905613702 972866338 182997659 957608335 944595580 639963661 640958464 762483337 248808886 460088034 177535862 852275873 742870683 897946187 562459801 897545727 184710981 922962405 429476175 128892020 755412730 575049315 670989236 563622051 587689043 707234269 358580644 981627347 83756942 917885478 899208800 910131267 176219779 912648731 100256369 922089604 378551491 809407803 986592092 750364057 905934877 467088999 908299684 707306360 474349477 628996739 963686629 736170990 819626415 739147552 950257284 922580707 562044854 808835559 943078143 657820999 732956047 718345102 525184499 743670381 770487211 738791163 936273269 903877444 118732972 10761076 32530809 185288606 307265503 885894854 691468779 329852014 492460971 812559733 971512747 887652870 938100759 948459212 696637761 702200218 793146656 908525552 739588278 41680003 790516837 98428006 700592491 640805974 873122073 121470007 883500858 731566434 552625287 761258291 809379087 551120520 287698304 671924141 914693682 505006869 892269129 60082190 252149508 466410833 509597566 870469259 884431179 236152108 887362287 705781915 104449731 368552709 833832415 561560490 773845576 301512966 30281079 734515101 977114109 187058308 303615362 205574056 582013523 409707827 945449317 407735133 777522801 8616903 69226260 88112751 135873940 972631184 503407839 806845315 872537529 926541178 837950648 811382181 218838864 65041620 336367048 654891446 2140748 777229075 677000403 66247374 286580669 918769919 783982724 235709866 929826665 45042453 892809709 766590014 670989236 577500930 11744830 456603851 772597370 604490429 453029072 989297414 150878622 436268752 682505375 670989236 816477448 474229621 554317879 146406932 994031501 828827446 42395368 455520732 661332306 311597925 616807326 992032358 580093185 526828056 302469024 192824548 701263229 541906202 802198000 654922693 657993662 671580433 877066467 569244392 709472840 949363956 918862695 303595365 903618117 735621043 430005619 809447655 104529456 534423802 883612216 863565661 552230174 964597285 511024452 618498081 89211556 316077267 933867204 629737789 810351239 942815296 305266375 892800447 848159990 522861120 865671115 843674499 987508651 704709188 934031764 768927060 175141332 935477262 432018128 676454921 100824256 601911305 608567043 640661036 328560119 915713940 846802472 308534609 692144633 812121002 277005878 873073402 82260120 778105507 447876185 670989236 849911344 693587416 979612169 732744907 168555425 980193033 977115438 947831403 383458662 433622769 934369145 641648342 869994840 714364354 988805180 361537295 595616734 787453161 358943808 834421527 451684380 995222703 424562587 767886144 377951740 726192450 254525831 874415101 703155822 670989236 963904615 688751452 273296375 756909979 247120361 206338986 899298080 276131770 150457853 213890315 243762302 773646656 572405726 84378058 938774614 709266181 828774988 385984968 887401071 53342983 746227367 574756373 182529924 541863825 977533033 774947433 841863275 670989236 631429421 962146554 295121363 927947183 45506335 733897643 613051172 888194154 426956673 741669834 430287289 723855120 710497976 722762337 15041335 814526060 515783453 186936035 517207363 742048093 43534616 847500998 347203573 312801999 907840738 278776599 826349360 80820312 741102247 77335573 819650745 904217147 808495978 936970673 598846160 898968621 60373303 332457605 662589019 624481530 219088674 724807605 362368578 965215115 846783777 319844203 4140776 137810561 889535458 370231563 53421128 723113034 740628696 685187986 387173186 694652398 215514666 965686726 703582649 926901521 773972616 959973281 772857318 794655687 749192284 969625366 839331755 719345992 389999846 851717066 955083113 239274723 814739757 960446775 911019298 710498789 19201195 718080785 739139781 931881168 676564467 900131592 796093547 722460801 824088069 118014791 61215222 231258269 681641138 909299263 156373712 885535983 671171885 474702325 670989236 761532997 784000111 623415368 779258658 974185372 289615635 71606216 816652167 872548430 574233922 178867547 767550412 684466558 736182301 710321101 674445506 187948706 622122866 348422025 877986511 993438773 990169340 457075792 960645897 767328501 531523020 896458838 766146288 866523349 297371237 668367048 971346666 914998859 463729634 629448963 525585670 939833475 716550570 256774883 374907626 701220406 910000836 865950122 173540893 217798494 228899655 923109542 59598230 894791346 988293053 293004578 185667789 887556450 361439655 315996782 210556305 830466008 14024391 279061627 720842161 504451355 671216360 334927882 212222062 823323764 941465849 959788688 519200018 804113832 759790062 358874970 583791870 796023090 596072102 896201404 716162895 986766569 731321235 803744483 922799777 845008736 867363554 349123697 895591379 945086445 738771862 939124530 862258842 971885407 449190695 845209144 784055224 273522789 915747059 938520778 258847600 826767141 509697021 548663379 734313285 375631846 838324910 439519386 956594003 414696446 357121573 364012489 516269732 786075850 968586835 919500457 507930573 326041730 751531645 920150059 639955694 913665999 44569913 974111113 563095570 682561915 556086087 933314380 997990954 332257388 933207095 366784116 793722241 459687073 461052801 993037446 827652599 846519436 995576161 967693376 12693857 767443427 304154245 472042390 805376876 127700267 639144272 762563438 810041825 948861332 217792601 779964493 731699240 754996092 974185990 694474589 297797732 168015114 908761420 343529366 877620959 819922325 112820847 985037759 961374357 709615316 724680364 702106260 248042529 610811980 122753177 549336257 859388602 778006394 941132565 670989236 670989236 208102787 987396001 229218483 746220639 914484969 693069467 211870782 974852516 709101551 584828503 918930374 150759725 798033436 801777939 266807573 126037495 625558821 286345903 670989236 443799313 4778404 31878043 659983295 895604040 227432832 64031958 686674873 995506139 903100137 804297763 37103890 772127828 71796395 961026933 620560720 241599541 676871610 807171857 792477732 946358220 50257284 929066000 977724372 797889784 263355512 800324472 989702744 767032469 958273950 82474931 82897658 906120048 725477002 69279054 249449502 890217408 950867989 255099671 558526886 822406747 412350726 399218166 862889009 926550294 706765633 253158847 670989236 251687671 360191287 779813366 842054099 495606856 282897074 767023579 501802895 747647963 83914352 890830539 813855185 911010964 854355869 769137857 999689036 899779123 765473096 902529 735945770 807334835 995170608 35010305 938430186 279528295 894531682 617644867 397767874 562560937 566524436 924837106 829091933 223375776 693545604 575549210 965884812 698630505 600563207 138723262 876640668 73679793 294998405 844687382 738843583 864292724 445472133 421709790 792247527 761438893 487177400 869925757 229747107 959212327 367951236 873636673 309633434 734839080 119299273 710433441 396764759 999826934 936181858 991023658 401465786 900798588 712723905 393404070 591214674 550926971 955053190 793433540 818515381 738802898 433711587 820384692 899940764 335771767 780829120 198100337 32988948 716221636 983601980 981544631 885652492 936610622 966870497 824923863 332304759 882788702 582159133 362759198 689909342 40650950 578241393 662982017 472019245 237973834 127754201 982450192 733354329 643031294 158834812 540801717 979188401 229079469 554651073 934829023 756004037 478259081 998831618 423622331 926545058 765108659 673163170 797892497 315084861 679776624 772144359 581965251 644559678 114945940 40132671 291858616 403922321 750609235 278089433 869531864 757472771 511878310 582751445 662613882 747241146 269694711 679887267 485225638 320917273 164884607 754325285 814255779 281722758 871736505 49903737 419863083 561109954 714153631 696607725 388214162 720894104 926287422 190304965 821128123 191839828 34930540 76968809 876770412 674165314 814758060 141041608 31091549 905857239 986712099 893647168 582373285 891904936 738265262 424665182 918527629 677250680 947066351 628551969 979116408 759220008 583258567 79295803 930843741 705864819 824470446 670989236 906409740 431256099 455355471 58773574 464159080 718549754 846417983 772158141 748879557 780800091 685101404 384188588 740074965 691955430 228344087 877334281 725189973 670989236 589696366 177178181 895955704 913025905 900019997 596265031 907480755 129982500 512403017 695676537 732771886 721299555 969562646 391160239 475002271 530709751 950119290 374446493 21508349 939312005 225098621 320791503 225053976 715690929 140850281 950379431 131244214 800839147 464143608 240602865 221415590 934968984 202859199 209976835 550430986 670989236 959436693 394113325 495963948 692718227 802883702 769089052 612213637 748254790 542535599 753070316 206418233 931485498 634870433 733406996 993127623 297183957 230103801 583404630 656195737 335679307 879420935 967659908 810409444 480585920 493811584 758891580 181127165 849388317 989315680 232086709 844507177 621637441 760147238 299706989 739927211 800768030 924461900 844069947 452548440 885523824 369004760 857071196 838016719 724935514 852094246 833223821 617091930 910571647 559589800 726340965 393049426 154043971 777732112 811332463 730214558 923723200 716008993 360889157 329304810 406637149 754993047 956629140 207916182 794499881 703337113 880006160 714369330 777149985 353540927 895562974 207430970 23130586 960924836 858514464 671442065 573663768 727750473 936567302 235921193 400570167 627564583 749033556 731364585 20185503 50289424 730576612 732541111 818333818 232343684 480630406 79433346 586259490 171218851 58667544 115337751 8128358 911110189 785701510 145548703 313978037 152564978 945509373 803786540 491919153 788310584 753445928 735497414 507244091 424987961 689098401 198371278 490743809 36273145 735143279 491233194 720898692 603370532 340507206 622232910 473489106 684951773 950779344 754362747 470882840 9868322 500879525 990525165 390975442 910748479 753345402 210931098 434261974 84268736 587614336 279337702 702945542 818255547 399546626 214011322 892231260 515184066 433994684 724413888 718032742 156063402 829222048 27386006 805418960 249663914 782608266 505488158 756308825 244796766 780328207 167898853 132450118 248854771 851753703 258434521 609697239 971812159 253353408 704680784 857693639 47556875 299102332 866788518 762276787 920552406 267214405 634659151 834228505 85430085 680447252 855257176 434153745 886755140 294312046 552031995 908693084 599741454 118071503 992672016 978698978 752221607 718268620 902862214 673873658 607561498 207777290 716041990 873314328 238225102 757918339 265386364 466474391 156295699 2485334 836006525 743384442 937752614 560039636 889088597 127963673 60112070 577042257 753761387 920374131 580076866 729154554 877237341 863155717 808226558 669250718 98625528 2170515 725131398 788923529 688844676 6390429 615433524 52801500 412045978 938723795 696048287 256640899 845384947 86177556 807688130 39465944 209882496 1949630 446279644 294610614 898658217 715587526 353472628 477124954 198218109 380815618 569840910 794080397 880517821 552171121 813176181 128740726 860541713 759500300 816872294 735846948 873975216 568957704 884964208 297547652 988834459 924828548 255637096 364471820 813669562 968329395 505858287 35404979 763870499 806568419 846115466 285558896 816542165 635671782 126769283 776777317 956291563 363164764 2778733 845947594 791930786 965228058 684375842 174968839 975628562 799702320 161167010 271252216 699024571 976915565 493022140 342712271 134958887 293917466 858457581 3161456 782447736 374900843 770328437 673074581 742609376 303713524 408970504 138852637 848081347 999279750 797919548 194146100 857958882 709042226 830963629 447811362 738691370 219071192 938786413 279438983 974964737 672566950 678706029 802786853 958696828 506399144 181953868 965916996 812006024 992694128 890226067 768288484 78675103 645681041 691346326 498263114 414926809 559273402 73765819 848023173 403390081 769260547 155494577 694874596 809149592 221825512 741559284 504873714 28359723 884642762 769127191 971173914 616868858 869900434 895334616 970554852 178915302 511752704 923210661 345087419 91743857 977796323 416941210 355024153 838001800 811757509 146792888 962005100 981502039 128742931 703977097 380350677 60216568 727072983 133194842 653812949 162535735 811990986 824437524 946116339 974262500 447426032 287703531 743611036 856918476 906395934 681001599 981664675 728055225 322162969 872936660 786607683 163234086 432868085 709481030 397310787 649247831 249963135 704632536 817966089 444795133 238805515 406476065 653006203 850923646 96732607 987728529 971504731 862103066 920302442 904750017 977666551 991034362 324306253 761566722 527449967 970154711 71430238 790061988 752539859 975700237 670989236 655523144 779323550 656972126 975406231 673733987 386006453 595693423 740645402 474183004 113140313 954502077 78815112 782303509 29295870 581270299 407468368 23164501 467676629 376156815 728686591 964443801 845649615 942272107 972283744 997076832 270763963 511356794 984764902 859801029 751057974 436539464 707985725 847764492 801524857 43515067 217368381 379125051 925551850 966540726 109961826 868805548 595368063 671062212 603744872 114718231 101346646 808622614 974770886 824845710 699224870 478670264 773734623 143751283 774819129 796730545 498024278 670918509 998056506 46101447 677112303 739659568 301560087 246150207 645449378 905330177 818584894 718416214 631055602 970851006 547986705 688389742 603808988 154819015 469541135 688029798 70174296 90513931 856491744 596537796 96281971 67645466 802982538 140009140 685989421 693452025 821855216 625324192 747290644 509426945 757459154 555051936 904727860 892449293 932143021 92329881 975003615 561128244 689977505 896278497 744914970 687630188 847949064 952358461 996430382 939828256 355572991 810681259 809394755 535696252 826329870 423359048 74314095 598559354 427979716 319278825 968796122 439986000 983032410 151280686 264729218 899153404 235758996 976162648 968703915 841521875 552066666 93898187 152083087 322904656 995842188 843980625 608284171 670989236 830708325 867883720 658674489 766210502 580125997 63532102 735996957 966902997 388802307 389784185 43526588 579184489 917216436 12785131 41685628 742485554 319831021 435197644 645877031 682205331 935383643 166157755 145567212 13169954 403817206 162192244 41663079 689539098 253665526 889987270 381435311 441367806 340999990 850069858 161919266 767058628 670989236 951893259 236296626 555879136 781045268 358220713 718860732 256441394 755168874 916236704 459457685 397376577 845500833 892163018 157570119 478940826 602404879 275068259 361576048 457089958 46889718 349574872 471915410 923751255 674025565 965243812 932367798 131000668 966347648 520824161 880677810 294596725 995146958 760082729 735711336 957694910 702775900 695896044 685363445 545552863 801861348 467020653 254215208 241422555 418561909 483742125 751569306 68557215 179530489 772995167 711790051 745673192 177986987 697623527 689909411 642843930 213949257 884644604 851449773 760119760 609285056 128559027 781635542 854443135 545640488 670989236 472720336 918479564 181765712 109841879 941394450 700866258 670989236 208496418 203822716 531785649 278763590 558956164 348795989 363265058 752177700 708367595 568893506 455404511 810674670 370029459 116569481 187743279 810491241 493746516 670989236 423340946 128717861 14148467 922856869 491066020 61393453 334271283 386739885 834609483 773236204 845046301 882481433 930370031 650481836 115481964 936723093 456221407 90317475 489583187 544950562 670989236 713236331 89894680 41259762 678213792 113267041 76660621 981450635 884018508 303943109 432191537 400353543 785943506 935451703 842429223 832874390 334626280 492493818 548938663 725553822 210139895 109205969 612500719 293950540 940120201 443531162 900738982 198265239 654487656 622013301 771283431 23160621 866512257 885235186 434991179 199730069 282551425 141451652 759843906 715044078 918672216 745738010 525777832 885359913 398994709 790215936 800021883 389797752 914533627 833394247 852898832 749134727 994454529 638178313 985129132 699485539 888221945 876307721 359166895 431887139 938933321 272597640 461551448 832137649 877933451 992752984 575028719 617342753 537240401 920910566 373503692 556759783 18744846 166022480 759451721 583872757 825562425 344832210 746063968 587319343 721186080 441099361 85563062 897730704 474196183 535918446 876390085 321981801 894522193 678718952 805033094 914591238 857899256 36252069 898401815 260292732 838365888 329432456 869630089 900374969 883697616 162332610 170287707 739674349 428553605 686190454 584345236 968977379 375246208 832444348 322973612 225387467 240027935 401055053 920539787 479738221 726464040 394445573 967147281 38087545 558165597 441941817 12210309 419193892 990948413 166619070 736336665 437465053 737885812 219672948 784120627 396548938 930046700 91180264 549227048 513299286 930778345 997721954 282439278 809821571 786728898 689775958 842651421 450229805 852317416 811957053 723470261 533637890 560106563 417057660 483545932 915608736 283019613 835157075 893292241 755891857 443212084 624529162 538574725 439364955 32411142 618877999 293421003 874243552 684445229 494626717 369922251 807208759 484186593 870171593 240554749 259094917 20416507 21561156 860687735 320474315 408838249 160129243 473049588 715593645 869089406 186945096 316615522 106757545 729329966 837994633 339064560 78531830 465905606 962017414 579779954 729856718 204612649 87367905 890645841 743431887 805546689 808364700 694265271 384909099 171041003 814129172 931580928 850427494 592829756 489256078 774440860 41470676 673117742 417251448 211430503 758610768 15666234 655132985 839267802 757345441 495672216 796120054 724830933 907432419 946471639 995878771 895149727 688305213 712381800 166188905 194324317 845083272 521959325 389585099 325850456 391727316 573670087 105516557 755682918 861639469 993229613 629003089 265911861 350252210 301211023 898804804 703944190 628585933 687818284 872438428 69202664 783632185 633386229 726813246 37711493 756381046 465740714 643916463 899523108 735294368 764283333 918631576 941081462 264649247 219138334 812576562 985693554 748771869 202401545 252829681 337202359 719344940 957627587 115655941 294241559 695512393 217116475 309984286 892167336 598764658 924779031 257700707 299169887 107417439 932785803 749217475 867842820 507940364 987939795 217547730 988523209 999198893 747428187 336323093 817996470 836097900 942409201 93498984 118399895 760663414 652790402 774272160 206444750 790076745 900242687 962260395 670989236 741451457 893130581 867289015 953785159 593973398 959773245 627020241 932657591 341036687 410788667 143475817 781444197 634734439 756716188 931743429 752612063 438999938 948561055 795089620 989749523 632097325 420593488 880195476 670989236 722406576 115259312 563834239 389915893 764050044 773233478 488286406 588422327 177634882 646587112 466433614 1816642 137520484 756135815 954278372 581519039 724911090 219041496 694823151 132755119 535059083 354635382 455144235 303487720 510818914 323555581 966900407 964271996 604500909 147566711 273781945 753294118 490994438 52593516 441303102 187863573 440653148 763885392 23151990 820300823 598481890 147755575 379382514 32846835 645045563 553870386 687716967 920957335 686836089 159561670 75111696 681407923 941625177 918656560 935099682 269314868 416292242 948172826 679969550 822299843 798698510 38655766 334676064 442251473 218340709 488391151 847778289 879381585 945411425 851575724 680183834 603272405 422371800 746964564 804201438 800693395 44829829 826088184 294686440 642137334 679983378 370198966 576992499 667411162 241147985 997180839 811935949 679519184 591785150 800049736 443334615 370314137 280662188 726544272 898304314 89452052 894109338 973856647 763648334 344942077 503116340 114463658 882720795 863252350 601383569 517754038 845160099 872276327 996351896 492804558 962769685 914996226 222569170 455511722 457912824 831865846 483583769 248789791 965137614 950910637 676620514 483395551 376513865 598741555 466941449 665334544 344250377 680601184 529810885 648320453 26590043 218571177 146991536 991930765 228702398 976361603 569853677 947403541 849157250 394604613 825458401 692066399 482322773 809660071 939739947 260405648 828386758 76889932 921705884 610809599 738653199 49336650 899704218 760897602 774047852 734703513 389526466 625911392 749391631 146225564 862543094 511299260 324009664 603433044 708717046 671344332 791194746 374674815 841712162 990801652 161186056 97950757 996506735 115275887 431837265 935124780 914800201 794763860 602310585 736863498 463920914 688734898 139118063 716549463 767256319 310214037 885341649 88933138 963156090 616784282 402598187 806533885 755328711 882947869 155729742 974150822 528248024 901963008 139259413 765116340 670989236 876649675 356785498 979337715 412822675 140356787 596476489 915219151 471854140 374496369 709950877 231448722 639559340 84861566 823963480 963765996 670989236 164496396 840945257 258074070 511510547 115621447 574471466 664300180 710444035 841120538 233657352 492820483 775383393 192205628 491942444 501991677 909198671 839781159 230125105 676321731 642941927 905765057 575600139 832509269 843069413 949485538 992985872 912691311 653040545 639147143 729071887 874276121 693983252 849457650 813435117 719577933 464143009 517300742 941877396 834974448 791894953 15475718 86469608 15380513 758663641 617370917 243259232 995290440 707676688 739873163 868526863 869222552 88350071 450199561 873890524 169060581 314784244 483860562 740077973 513924765 311516559 764901062 967745951 997455063 556233795 985703826 981362548 469321711 912885154 764553664 296740383 522542866 414821193 128561412 87078059 948427963 975526594 678518630 62151111 852441130 84843935 670989236 737548323 275689119 755882036 424619822 876178075 471081144 4394309 388290571 516653344 873127124 851714201 128585665 413930557 454831615 742351660 866392823 11005167 722022794 709396529 121952732 727370660 746682508 421672727 189317070 866595451 554346120 117837560 894328377 492093342 809445585 533973188 746394521 813996252 944579235 618817012 675206739 956738295 77066048 432011525 828418774 619551322 474624576 739035714 868382618 923391059 917112676 270674389 688580172 753025568 730475884 438977476 78892434 835872670 931199938 842313133 676985530 988077298 947643637 573547677 138519656 547090788 689010073 10217268 967642759 327972010 593419553 656627495 752925685 138078452 155769285 760453011 460606619 58026156 683990327 265397273 735961398 331748563 829115277 786236380 715995650 314458981 166571621 518513034 765341082 944983717 849535547 412903838 772344576 896210841 317673591 684195151 426123441 120009318 999739942 403575145 626293335 769682682 872133712 809413656 779042358 806370128 795478049 607393078 995108817 971123860 718850539 948905793 675492571 695641478 391123817 430415176 968167435 959472389 48765346 676396848 600446380 890339731 144566515 643828027 497993551 862189508 927046887 133764685 284494496 450475174 584436140 797778558 136773675 681501355 935530164 499615262 194247086 590059039 79987334 558664824 658097428 645746821 553637589 896986134 472519495 471120904 305803477 35119698 986357126 863176562 693248415 772901555 670989236 505207835 891878491 983791323 133313131 279769189 701923198 636167732 316397869 903729956 543992725 897415148 922716629 744591135 763583739 696319430 191288025 914144457 995061241 292056284 377194669 83469976 929049758 973707485 465730322 170886800 687173326 814842283 746586100 326821422 733256856 966121191 784530180 486208897 589808029 709480429 61625869 602053138 881979332 856010262 326284131 888650822 85957553 109054482 654007017 494101560 765633051 345025234 763526809 647570675 819707050 748586182 528398253 756856421 241259549 74576722 896059702 303531560 749479222 348246113 820018291 469041674 844530521 821072164 588335562 670989236 887756980 374495168 656165438 505754591 834649025 811059497 734082821 760313142 117651761 599544097 235650678 106692313 736023613 945157556 21108330 451708493 876941147 969766623 366944133 293580344 997675893 747923450 543976699 587022019 815723654 811335889 98560019 670989236 800279459 235901525 933709857 995763465 599518442 924171305 319322951 91516534 812727213 875788139 728591425 429401988 734510632 91557575 954164766 380683367 595732113 868301958 424066946 283233561 913164343 862380115 650941965 990158370 764497544 181316272 981829919 767444804 938849112 834101592 508415787 670989236 525953042 135894722 689234574 907409516 402498171 737213856 672862282 725803873 485704848 320592448 782190643 515980837 804380298 799303553 403284923 313725358 438148630 151648093 975270562 272595339 725924956 644803635 950220051 429359041 557152793 581784282 349980541 762476018 20117002 199405953 690737824 3561281 377530770 793179357 800490712 49430473 863406661 308183365 912896103 750958806 273055792 852395639 837229218 463252493 888058662 182428473 341787815 686401471 360602853 717988253 786327944 853495326 798415123 296971262 59529037 699537771 832319971 855628358 835828200 845209214 855072557 734898677 255820254 850150136 864414998 363923605 800695825 152468021 805896847 805243288 655642032 563182818 430743737 670989236 74646239 199958086 756757342 968733435 966833113 843765767 83121575 523951638 345195610 549519776 239216604 780343292 902441927 562204541 684593883 922611974 805054746 888727445 535187960 690638018 745306606 680522289 434432071 757950383 93569718 772139231 262080743 735687860 932381243 505808357 714041846 171230961 54554182 493171027 735597403 876082746 450099671 749668307 789312556 941140204 36178718 830523910 804614245 689768396 909895326 431284870 717105696 194657204 913474207 870914894 984291093 271160324 993715084 483690211 686182615 674484938 919858099 670989236 806013035 844000993 856527154 434012210 697848957 978558536 102891232 363693771 866898640 801149933 637406749 982789550 114953110 700904151 899049270 487629868 408924540 902510278 814861591 40072747 445494265 157320866 257455471 848485733 930726002 712208405 205860258 851436249 165006844 845323933 260946050 693870957 167472920 769758848 444604352 729642729 893952992 292969910 682954183 652986136 207971825 175361596 840660789 510307529 725752566 573520288 744283673 725080267 225063218 723109218 807781687 935051498 597588208 997951293 935787801 675429136 794847827 758028948 148900487 748245648 149281955 804824825 140240427 983768195 594800521 973393697 670989236 521496453 866950852 50297198 766941480 135829717 445236756 76868559 67252450 252938871 724150421 436964997 483805601 721831025 719410838 62511318 902007284 964771202 88209836 74101528 851503543 219337911 733983306 723659448 389984823 949696875 887425553 893496747 962294040 735181459 837474863 81303219 200139478 831438969 371210093 788736445 271270491 182411818 56824177 135519223 987487670 686093691 954082652 560123591 627473862 432599618 862782011 64031419 933032140 214201450 710875262 949105122 769441095 62880297 353505758 996045686 67764872 851585438 114079707 803369263 47811286 195191882 277444489 966172223 119327163 250102709 723116261 844619350 8240561 610439993 530497516 639149076 933471447 808009718 351020029 379951486 796895630 888820456 381663478 941512521 559558013 934221972 103497478 292945111 982644617 769875303 873833145 964906569 729872859 216642181 281927307 130497541 805530101 942189898 832201263 237111744 316953117 803685141 743143798 866546747 95325076 878740581 302982537 182439231 946623156 653620370 829825544 328858630 754250241 997392174 746154157 219495312 593199351 467235577 924700021 895361861 39940436 71856780 794023476 197018256 871353104 909076027 196279529 743652089 737789268 87164510 734927445 997887372 833713834 211546539 876460120 972070300 132933147 607659232 524562638 724230957 670989236 889430804 63187936 835963557 813323069 161323328 66287420 742490609 973521739 814757471 912097989 688062662 997166891 904460671 382338459 757817045 321492425 638312435 628194746 766255232 547949675 528018709 944344140 282413556 100994088 790206062 421248869 927387361 636181778 437232029 262728371 40263220 699826646 552507236 443149164 889526481 703484159 691224955 894696754 51709250 179341074 15716214 973206262 316434110 119054454 338090132 876403307 584531007 50344952 601681048 11191070 374086825 287811122 191000411 913081138 887951557 809378047 952323871 970726225 880060835 729736165 670989236 766239640 768188014 880026454 44937201 874591836 243495497 412505660 389604285 76113535 372663070 762922693 471029074 540183776 603777976 901299328 525732968 583563244 881079326 638790434 269681854 257687039 870312087 677311964 69712269 350074937 58842042 262948778 553048664 264267355 242489146 505930655 156651130 837836924 705026117 211798893 823332162 960761843 175495907 846953229 694446723 968794801 176961267 878313049 860239014 688095587 838093117 442838975 282474457 965214209 842257175 730488679 370914722 300443688 491394646 744184329 131173736 784774659 744137877 595094434 758076096 637209774 795557097 958083152 114242841 92301503 872019024 54949283 775069294 826143754 194686439 554273613 325569418 759635585 688825611 727102468 737307058 432446986 705814144 627836345 777131257 716414397 455684620 862019585 695355306 924807263 36607618 246778489 685568055 304117608 48633840 100851712 121551406 475993911 924064698 703627875 717926598 326049735 521475340 862101327 985992976 415721441 14739224 222588888 830564565 426019628 250235356 276358850 329233211 88192881 42249401 817683691 999209375 459821268 159640402 152645091 678004147 561366729 276797363 361221353 945518143 460908912 766119897 99303977 971880476 786734611 947858108 579378820 549220973 608363990 806553978 268859607 939674796 844133621 876836133 720949596 759677574 887242196 127904216 743918555 940146165 369121596 703144360 691879675 532552853 199153797 368325009 616366484 885701667 722390720 238388207 574542905 837952035 448765229 676757405 724413314 88061599 443124542 655400937 762197196 847834949 343801150 346159817 278854283 670989236 811831125 272119171 91203070 171861651 459873091 846987275 217887454 344941297 43693873 722199590 364065908 955498204 373241129 981914070 858248865 680293919 737497489 688364558 40685987 839887467 310076332 634008801 979133265 722020659 86670617 941005230 647582293 509991915 815493339 262522592 824471933 747447034 865675798 230424303 250140753 740638134 404875753 863817301 217103137 158939536 510864144 954426894 129262974 858024032 796879227 352998631 392376681 160677674 510017595 657839733 831353222 967371197 670913174 516358029 850516023 400568506 907591124 327243815 384405391 154784898 547221985 935048822 174090877 854200550 400025269 675887884 367126879 817343522 377908854 967842594 690811042 695112058 577417889 582780240 669741765 978647594 188273851 999011802 665327501 478178165 198557750 149121025 807730863 85343897 910086821 949705875 569111986 210197790 783068853 457639696 940088497 268383992 500269361 889539595 225383913 652169512 272629628 712193199 897098070 971931440 85316341 251174478 722027250 537727988 791800877 644269363 768285771 750262876 201740022 773821487 953847577 790028721 995646851 353220386 943030768 902221584 9317498 832543884 407316369 235170561 343517484 635102673 592847698 889493986 30515440 159531222 528402513 335489927 569220814 867129891 427479816 154933588 739290993 768374390 489396093 970195366 762035053 217717510 573333162 262374531 816493882 680819097 675961217 790634444 564615505 929535498 526694779 759759405 972172556 856065502 242146710 385730638 364378596 457910210 239525288 768118907 971359532 349954519 894710602 255115249 736278332 744577665 521992207 939697241 790431019 978680735 793103558 945868370 66296062 672080791 254025983 271460238 910423176 908392207 272724316 766793677 553540326 765536065 325215122 813728497 322896353 976855437 533258344 943823262 197839926 738371059 596498331 713897664 463320975 242829826 398208516 868682901 61182912 104962887 850418731 689598386 208825816 289855730 906766248 772845831 950114546 728260850 958239464 991525022 670989236 546300075 153267151 418842373 395651257 242695140 297362946 283911373 890281958 895515916 737234432 972076802 950398648 48229991 312476508 147493838 564011772 821805710 823751802 719244558 994184375 860644450 803810117 403110627 363627679 322836026 458886547 859952794 620032142 726998110 446263747 746598533 764440929 87356709 916338648 141722436 305226570 902915266 819601752 857106278 874747354 992371730 153470650 884066323 774989754 200539710 197985815 625978866 179059031 251547908 329145073 646241240 907015787 959276639 916962508 793637257 448123349 815918885 75410600 768802863 353401150 159556644 822465403 692781612 538767563 994388818 727627217 5292217 194742266 781872164 714200323 527022493 440027799 815490956 125624728 566735224 949028176 721403185 912411441 744818234 686379839 274004994 813438873 909179352 840855276 799197956 465262600 761526130 809470319 148665559 460326411 875107464 913630754 800173733 70626607 453725674 802128324 726719909 341412282 815735652 621557532 554401719 538535788 155130669 455436749 269990681 74406422 990638031 721283537 151006858 322454560 824881266 803256643 202273104 629392432 893137508 841764538 921841805 195171233 366809215 251800800 59120498 429884127 911637672 624013194 885355021 874338357 924379397 845018826 32377692 484887024 679744779 827987637 757969552 774846395 770156526 898001143 730821609 470745223 257815630 714320736 681649961 492126051 78313880 335584157 436432566 38982059 734287398 205233858 864140885 86082432 973564349 115356657 778605569 693028126 779477046 321896668 513472424 316022870 771663680 306580923 921796018 941366213 895675993 968790376 955900632 458877786 712675477 477842217 985682024 856223424 488047612 822155073 531953013 974218209 732173464 435165101 680044567 363847662 991459451 836156843 543887460 95695950 874458130 45201941 447268028 267153540 746645224 34341062 474756956 807922701 854289523 984962879 983108402 928463725 706634005 300839355 637965968 878572986 518534373 718110299 715998735 810078582 849008432 615072855 699217975 914180530 338016320 297316986 580164629 492091100 752204493 191708166 280752596 146892092 420769200 764370036 874178044 906281337 892864203 974806203 720914842 795637607 614203293 953508684 376082162 913610848 969267718 80736907 74301811 492504247 59481465 978331494 811505964 420042987 857817016 983173077 710219972 328918704 258628668 728911260 717206193 813646849 892673989 949793727 475548948 670989236 697499258 198226973 782321481 723488851 498922016 746491382 544510124 829555320 766820884 366363384 317775659 822618947 863463789 681252651 58234456 677445023 867351118 77884638 898043185 177000508 307313056 683019931 683141672 678190817 949855973 744841004 815434630 189648686 625203166 484314909 897128391 501066962 532511068 26396298 253409286 200219786 168558992 835813719 672225913 978539079 792880859 745319214 406458456 853913824 843792958 48443803 795751823 753705630 192499470 739557893 889376374 816289169 268192194 422653595 267941995 718386942 998542559 774288767 283967548 733108465 761489303 248631927 315411867 63930890 420304831 966322850 768932590 749225823 908469224 346877625 823596842 135136685 892437647 442105272 901641133 993719854 568454410 579124819 302522203 23359719 830849124 460189748 926874139 52812702 469458407 989225916 591765024 871824161 674791497 670672624 94917999 770666130 33656486 958114947 523177149 705289129 323680622 760685259 253745087 971194043 655094403 853898265 975508853 109605764 477334445 447272582 113737346 865806606 224255917 283760035 894516380 253342061 804066707 907778472 652001248 67883882 70313879 551671935 979037946 441383774 521177752 109692854 345505653 792057973 168591339 688806643 924814194 892118478 28090498 445327757 652546617 147997362 952466721 240004513 5567726 753311021 987121630 718294532 429119696 77367061 209682328 793216456 867964836 989498194 590035319 916977636 995593898 561533171 25561768 386884268 817868969 736434863 848921111 271274765 254371028 587358905 753695389 753316169 18256810 991338667 673601010 451687553 32648166 980025878 72032554 109772407 746139054 371051053 129439239 876061179 729052189 621054981 738968495 171988255 670989236 417067950 816378830 630744836 609547985 548473277 444017273 942144953 865638942 967971034 66954226 989131392 888106434 510998040 711920193 231106813 654039748 321830375 600743574 159568815 935332173 903003761 341643857 739819920 310398076 934491321 615742384 734758645 842119247 687916519 995320659 676325106 871877981 425832659 724548352 319395083 695127939 922110538 751041249 825574456 993724893 780921076 835996792 590388347 552715108 828251600 111816595 867541951 789082695 19325948 140454007 128569374 153763678 285756540 971307933 783744534 679212466 326333290 231658164 149077707 82733585 985035273 838451025 925518984 922915815 160161083 663597328 449679613 520219644 233125396 843551563 483376896 992094728 762906890 761167026 763938605 143746610 197614557 814941305 924677518 447866623 870796559 952376940 773955873 474699433 798633111 168589203 749431434 994652376 857981925 887005350 100318837 773498743 534046082 367271689 628187536 230733283 271216962 329576075 611288844 869994140 146172272 765211075 963088820 934943329 509828596 102369507 912354139 690441774 830177160 502854810 547524107 211281113 920648002 87966926 135319648 952597887 746153881 988113488 622566300 156476087 979693212 802062078 745425687 919700575 618817878 501405230 231204264 896868663 929563846 118250340 230070895 348900259 95652786 71732006 950194712 214866609 523837306 643171225 720831025 181543205 30859925 240897330 245431831 771312416 256432611 753306756 77021629 477987574 916196925 734470569 303874021 395568500 680872732 657565252 915099270 47683113 866517356 819584171 992815892 530509957 941119395 576419418 803645547 139146158 180351 709697390 721318733 568760978 553633314 883616114 991423474 670989236 967462169 489350556 338186733 922349230 157730877 809556481 208360862 326519881 627947990 877732084 178764869 981548123 881527918 196055097 908496664 840211737 812936276 913462629 719402796 670989236 917551782 1047876 672936299 723690370 460135772 759411420 893397024 106815366 673918553 871453348 881738008 64525109 473200671 199374358 725816459 171826756 889312401 806667076 678342073 287306992 159586337 725498057 919284016 706814460 488287586 628462980 953428349 437291461 48848174 826216221 461982122 515583401 723149894 913247353 931996966 670989236 380829472 378207838 203244024 919445126 889410900 885562678 302238842 477295920 129711266 58597156 127445129 555330972 758870358 713527693 772234942 378437793 876810548 955488571 160294589 302307615 724248511 910585751 531064477 133391989 133323510 257686893 105957008 25350458 727849803 892656489 860804258 350616265 217220566 701495249 949584387 244961012 32630711 719108584 136933406 685813501 758206814 983305572 925223431 62311370 852888639 700480656 985808670 684119250 469788964 400557767 405261339 583052587 860755611 149332549 725494265 925269535 369773003 488334876 329932739 731278087 966597502 634762409 546587566 723885496 425401539 502904594 919114344 956403529 114757855 781599901 729179723 620014807 593427260 972111123 796233332 744873448 29255143 168999676 769110459 957004479 874105165 351580257 193258107 245994452 910603552 898973007 903556765 442867213 210310054 589985350 34256983 297255251 60421192 889013108 226999929 720695212 357318782 323311455 946694086 922535849 759246395 318775552 885403316 410678213 190652909 348657329 630948362 898584989 813404006 5803233 776002822 259055240 245653209 959694579 797387256 842028866 804027564 86450315 623434660 817903026 895590272 686972587 16812121 211659102 634530395 3327205 925724342 776675604 685854266 262621334 336726321 227791929 311017610 982682407 714320813 667517511 752044436 561845929 863212436 877815844 941192785 200255304 5182483 868548569 862568448 122184456 474252521 772213621 500210452 161363377 910085925 621042528 818206517 948615671 319698193 835145079 437309696 797401867 766072676 390900092 864882898 890169346 314656212 772678894 707384477 735178276 433386984 4789417 973716796 833057423 562291396 892273634 703986330 778096904 952317320 733160036 716948966 735550756 884341017 610653046 777272329 261066927 418147258 689111203 956321563 348107311 180836112 670989236 162365904 851968299 235040570 972566066 965642082 799317870 526530195 609358143 866321953 962012541 826720918 712846690 359214537 569365437 828875612 108496325 779058229 197029386 649396042 504914835 893303918 463167293 961702533 681338967 804738452 818782314 320738420 780349777 741759165 340008358 321170226 149102633 287543985 806376516 967192371 765457978 384076487 473550762 360944043 331766649 527723695 452355662 254869169 893493296 725392934 625931055 978481903 324776185 536200543 248733105 828456407 959309201 994016190 399270431 237532532 411514787 552613782 990865243 357153923 687458028 930003312 730837027 710123676 189176423 330504061 355470743 242099759 730650570 387562174 248458566 384286827 714884556 747577346 346171022 287655452 438517522 97567614 76366907 820737142 869706489 49499546 713611907 270307686 327942578 965524095 749073656 879878330 20389055 716595471 927195957 463196490 761995154 741257817 268584431 727692715 257194237 231863043 516922904 958698368 361451916 214857322 401561690 754931414 331613893 514127180 22651380 516569161 320105771 771360669 730334380 736013673 585411506 820208025 774796794 980457389 428486945 538891036 838046932 966357273 966356115 408370896 764393771 705088375 884530445 683525762 79144460 2786444 44292761 392694961 944732962 292673370 647847090 614250407 926487450 815105350 967194810 284223688 845357046 99765190 679508031 196585311 327631500 716948046 49304975 764159771 994524137 821182266 614828570 996228959 550256879 554507298 697552708 809777945 900160929 176063656 973895443 814269581 247564508 319874622 814831764 707647881 837880214 923492074 771982184 970057069 324591603 597879886 421748087 711237119 31956236 400376609 625323344 394806991 773250304 787324830 883657220 83477378 447313861 649885974 380783354 551394632 480454971 239544205 167702560 965621448 697803639 409902059 801265033 956890472 126269931 978548162 347243960 847634261 796916721 137127211 732163287 889833391 61110392 791137830 680917350 804440735 507915426 414449896 990794434 76413417 798524472 862384295 610142624 670989236 871149419 889472516 201116151 672207588 222263787 759087051 823590989 652308510 983814744 839082630 805690253 71274604 230610673 482882866 660205612 183478155 811890983 938404114 275155713 254080599 694546662 696740484 775242584 387957244 155725950 440995962 943424723 995151257 936515864 155900034 141129964 947061482 460719845 591077568 390097475 4643055 670989236 809537345 859895509 666397950 191233529 157031430 942366046 502544996 709889163 996513093 256018139 880198259 285512140 943612477 671202308 642304147 35455816 684275177 959248317 535925095 450045109 734357867 371001127 650738298 703154375 773270494 678723655 587854437 840001559 877577802 44006017 755520402 231453816 675984002 847190720 870609971 121782978 130219462 478862099 916113565 586605744 187529986 495517502 67838781 922704075 4406243 949912011 682153476 895982300 124400006 644126281 222741085 411503233 895940154 702176538 102832226 961068454 141097331 928169872 499041620 738643472 949749881 944060401 282075403 950270081 355205942 426351052 105450596 878093938 991863998 359432934 83451197 365633281 872191444 866313408 928893238 921477561 138755202 565702341 816476512 816268154 738653491 910057870 136317177 282083675 311949642 330931973 155792898 670989236 199170896 224167370 683271164 802353309 803283747 529919303 457639685 843845952 526887870 929900892 530993708 636331955 405874606 373709597 119937421 893053855 168437642 221918501 266056293 407743663 200616415 855233797 732664269 325928319 996207979 967595629 717706880 130685471 731964747 729329481 874841330 223806426 54460232 357022986 950976532 739971668 965361490 303980092 787849811 30224497 484399367 975823038 670989236 767901708 455473792 942506731 544152631 299401732 495025690 378016894 473993083 181057891 171023693 670989236 275927704 24432460 717669198 19938355 380337710 978709632 808924191 996619779 699516496 217606922 592156380 976379351 530844125 887659257 965646010 141292279 382831230 869918080 849339886 823334264 775597564 797539236 921422927 804468950 780673635 710145265 348101369 913120279 491357804 969921481 407143893 340055524 539904915 773533852 318753256 606987522 940243914 898974065 934887985 97150080 325775590 490244325 292631724 715267605 844591811 237236273 148973672 358848835 690791376 784386569 437829280 783689226 799915257 987487854 109984278 929179171 859307649 837131667 819020220 231919395 999554141 538411523 905584737 134816687 857303228 951675923 668354768 677305265 137554520 339271629 391108689 703903900 878855891 589533775 967030034 116214453 406228663 55848120 241092258 927821571 842916027 294335352 991372216 912864847 411580849 749259406 868894545 778030385 791432998 818330902 874368303 432235255 419209776 688718277 709486317 281420334 892854760 904182200 88357614 900634960 976970308 809463331 155957790 141356122 710747174 724626835 773465230 200673990 982860427 123146734 769949309 782184055 987241177 773650519 445400929 428616562 533973339 734276238 957782210 718184866 111731501 939077080 869476877 963714565 205458090 834690981 940638094 381581602 813202785 909077313 407554058 827632839 142803072 118218950 33470279 755654466 688931093 89612551 222935831 217923248 82479709 345565078 966896022 569859999 711989886 361782737 419322320 97314256 411138277 490702378 305543335 732972076 850867620 595547080 433268659 8253895 437883897 802378783 928588371 336796836 967895085 970715441 702522944 510088558 398175181 407153721 584274727 141137096 253948649 967091871 668442862 928906264 741391814 38957431 672296084 397933359 754786101 478490221 352749613 204827 926025281 927291679 238489247 851495798 501398474 815563271 687981640 548057266 780909462 536931748 16445386 747456783 285438877 50294944 934690312 689309045 762510262 802640037 864146462 862439069 127306793 923669673 784212437 242780190 617780882 852710431 392344128 595762914 396401583 625049390 356832159 596277342 636584479 552312493 848949448 794656802 10573083 909771675 763636716 979497906 500214750 962566411 850006914 804995526 997224419 886084879 931612690 783821139 822653898 286290106 862522444 758595186 587086325 183598944 671928090 672880516 376344606 285693190 534157999 354046475 852413409 598958599 234206510 689261060 982721735 170268867 670989236 510130553 885234951 710301851 896312926 347049636 662366262 904222039 137412023 533216883 323283739 142302248 924322700 952300609 20668494 486429589 838703327 174756023 873475221 798497445 670989236 582673826 738437967 721986722 967427970 56677643 953244204 908532593 893432069 204096295 29596776 613221596 327907536 884525063 513675792 364015109 670989236 169602343 852319938 169261659 391861164 59898526 803768585 357476003 133826824 701276711 480577564 875594336 853336807 104968907 592174557 668411661 149009581 652026418 285197455 991109493 721084262 950027538 900452684 388456600 919134748 631224211 130919158 969689001 888099928 484566876 985888144 880801914 379915713 824222576 507380572 914670086 205648759 714499436 964642055 886320006 461548501 632344451 908638239 593536346 160277563 915207003 151429986 711760298 192174053 621724564 426473918 853302767 766927979 859319733 117039902 53571243 403994435 716295259 486943441 127777119 49439682 275481383 899816178 691336497 751290336 562448675 436843841 618144480 861602580 274256160 994764485 590007151 462276233 36686647 746886191 728473988 715472154 711342913 35467429 304165546 964862904 962072112 189525039 895082613 762164670 717266467 670989236 940026058 85369158 146572658 955720625 706290488 885189911 233354171 57594056 769183178 170106120 639708749 756165101 250632692 530295791 768767199 684794922 775183031 861090717 926782304 950920036 225405124 726269711 974934438 717977749 18399138 370787579 732961199 982610084 194256667 837814274 298702268 523065028 213711748 849463416 855610205 842459246 120191984 872848330 763997405 116170042 5210509 343345292 703853089 706650773 919161289 368612115 747703821 718681827 472846642 597190657 715667921 502443165 768066067 423331681 670989236 810413987 206490444 980671381 704308331 478231229 737831247 975714118 821530590 863973509 987509628 716240571 688907073 139171582 171192831 576449312 169717443 990171192 891061320 724248180 635733577 9760839 341176669 245988341 803075150 837638487 76796112 875159058 756300956 667844924 721616142 954495775 292064785 223897045 657702430 886314860 770236118 836091576 513837421 847543103 390407408 488858791 434134691 998096717 806362238 278330792 956560970 128273247 81296842 673355438 161004155 510941484 588451796 902256730 837950367 932678861 348858485 485450512 614130725 686179299 168055294 641487828 88653130 538796404 654232332 978994989 538814877 947441047 340305457 177452545 790874504 844646810 750415796 53999902 306944333 845815930 236216043 827893358 944843208 689149104 820325351 875555593 19165738 288605732 193417821 764754787 964602311 701020589 339032107 684859604 444364870 312246336 699542638 210035687 924396656 892084497 102535234 881048780 432767403 193108819 212545250 150614573 939605018 730324567 794580585 309331818 902422228 166217809 978338888 478661596 354039012 236591435 993750596 686563359 281383293 577350933 150184066 538391912 652760785 371343306 973329113 60422973 467110705 304147651 931754450 163500311 248661335 277298537 929176672 966545062 992757800 471963364 199155264 884181961 126898676 248257385 147228322 30496830 886248368 395305497 827733451 630531236 683487298 918230652 361968658 678488864 814694592 35161717 903493804 963564258 763078713 810487715 743462014 260508371 710767866 828997138 818546138 877609896 405751140 359203912 369063950 793395200 75409881 75598810 455396737 161592487 151480322 783470316 716319835 663229901 529107049 520040254 338198023 904713543 244051042 872430837 680692220 941025217 13846692 9610000 836738887 661008762 711525811 629504676 573809984 912882812 267937612 773181384 437561965 600888678 180481015 978212437 801880020 227999684 529779992 12224842 503585979 281413760 9856355 249886601 944426614 426443202 909176882 902808794 576763028 825470732 60725969 498691067 505775004 995255493 399970072 953033903 907371743 675860098 323352753 727668630 97446158 208334124 32756150 707022695 874214574 721336647 923409530 905052172 7809170 506757961 562838678 279127451 914245482 383287448 670989236 241143668 932128589 855436939 577069622 78038845 700073396 814014940 529057188 59498973 599367655 82834162 749463618 687369674 827391817 870612167 876397184 925744271 795611684 792706036 713872631 955297979 510842144 725315916 158385338 591346473 396682282 778574934 886112860 480037205 748331669 23199102 586641713 867874335 414019463 805954703 826563077 700626874 398131511 795641203 580608605 158194753 723532789 131723068 979003073 702354136 866919186 870286239 850485710 798510422 193266995 931941342 991476320 661140566 36509876 992661128 126604320 716825530 986524880 601299859 729963391 827321939 783611035 777480918 773057459 824426436 474439173 944775354 931249064 246311019 671770775 836428530 364491473 785416410 215035870 987025509 820496844 895201060 694125795 712232778 892950191 231926214 932519693 747608349 873277913 989559593 605951889 517783395 520536344 140032197 30440321 549618743 606805500 416789227 843480252 867904851 74011362 456267941 258674794 534595220 17147934 973783568 973173582 357762010 180263268 505779601 656514195 698088159 728222935 707402087 319894223 40352936 80986658 936888196 336976532 59381688 824330509 744286157 821247215 444162722 390981322 17120386 782208414 397631513 899999469 963255746 810096802 901672574 72604054 792981108 718883643 670758622 804800284 310898315 994187025 473779282 158364123 981462235 609887859 534026972 869496175 911729010 972673773 560445526 583019278 248643526 349738185 925043888 858753166 342382983 32164847 496669996 909675024 806082842 437117951 259424612 827438220 489078336 427505334 709038443 375839196 882900900 43842499 70676615 808559441 286178275 266108936 180624976 390265692 460702452 595571540 210076147 733073837 835352573 763000937 696193178 195674987 32453163 889886309 459493337 870409642 871662516 904260203 969918727 424298262 883774386 683474280 314901698 964395222 767895243 294627126 132723866 866800614 119627267 738294023 970398512 858289573 838480957 140763990 176801004 75018510 762459217 222985407 916237515 925152149 724822296 866739495 811975817 946494008 319858353 507732393 888559280 910118933 732082422 195687102 399866010 879725453 70772166 860440441 322511048 585295242 174461767 602678850 205115200 766480191 404116092 581494180 508860955 764132882 331949335 370905103 782724443 474633789 128102347 569496815 287715735 842635482 999958401 889052194 691702408 818445134 669187303 292455388 991015995 877129932 135718243 215466818 920204726 957900060 244466194 838884015 363810013 127255676 957415892 839280789 469511377 279257446 501246165 832171412 513402935 819091010 940134362 538861977 383367073 237074276 694077365 66564835 818671762 885665088 154860310 869811978 695942553 808835658 931373458 792097358 460551584 891512404 881687979 102784928 34684516 474794155 398724990 94882826 437551057 956412884 670989236 654507126 597749069 435947117 703526831 729670147 120372969 684295246 750285950 843066122 342681410 847846881 973762945 733945739 887071785 9151510 234629483 310273110 72163305 339391886 846981117 612594988 392803985 929495048 185381008 757574864 702441954 952164542 877960319 726789958 898352750 188049178 868647616 634269822 740034176 271367956 143800513 749258573 445193274 89513314 975936025 940866739 48921925 471692809 118415648 904170840 28460874 397753933 347791221 634057117 499451964 518533377 311512007 766553345 767086393 917803617 670989236 938982935 707127984 185081192 11726263 845240240 865806284 835524527 898524796 595091839 729799935 952279809 698704140 975861026 118534221 576308932 51471065 76694696 112874059 845055446 747289698 700970248 682179527 514317402 890997245 556914003 930217885 766049764 662186680 701295092 851959892 591110378 349816303 276661051 813600386 982611597 981712861 520902405 346919791 903770894 797860603 828435138 40770750 886572377 949190272 105766324 868443265 619799461 611617379 823433838 855032628 99807330 248064192 242257175 38747799 993875646 723578817 99544059 587364461 787478091 826242187 989998582 982542521 670989236 368588677 648239973 340502735 445143827 996841157 308843894 838089780 486638242 840213501 881804018 786615212 967968325 589059889 85381032 521740970 857638321 987938459 95904006 846729710 201975292 863664818 756462698 703547025 673293456 109004261 153557991 892711365 748893368 927860804 19311968 900262810 405146629 988620337 866394817 331918566 670989236 794439386 893657691 829787909 640438277 765468489 699718586 939182709 832555335 952457842 79199238 420841568 104662732 847789100 508015129 666005722 4050457 319686416 609251725 325379102 244399704 981821239 509519756 142605368 755311786 853665353 351035954 985697326 239277938 474122130 720749471 245400642 525441143 558861132 404444630 894161782 972944584 96429165 917180284 277962975 263229743 361963190 167431246 629115003 298697899 797649909 64611616 686396880 919403911 792073966 782269840 970403549 52198321 365586618 670989236 921638785 735350531 708842395 687626140 281881812 246303803 256977912 727501330 369789588 775125202 758269424 685553360 209861770 310135265 655062018 787880593 752710116 485849380 915797558 251458074 432723050 760252752 636338789 994166897 537223114 670989236 63192371 764436067 888348700 706173892 755750669 231180754 781385731 538365702 664868405 878876485 729127401 150922128 825274828 811724814 733834330 876225188 784074782 970372202 862786398 529881634 603215335 689970755 143231589 910429876 453733930 37020284 767984442 814117198 178252935 721153298 641801862 313446720 673200692 528251724 721924377 891227317 214771566 727344349 171899110 670989236 812432506 845608807 907741702 632568523 902667171 347223298 924689364 301827646 79208829 751797942 811291988 58001461 414054728 936369880 420500426 360949056 366125900 169129645 947784294 771548395 425636947 539689645 363012151 893460225 401880107 870852065 983744023 50093421 694735934 225781798 129082359 871691141 887085260 871457480 224657182 678892892 305927941 136299547 231878257 590322433 627565894 836813437 510736086 280819068 554588386 360549620 616605592 313736852 554484051 827270709 806513273 453244743 785756211 64810812 589878726 599535091 730807608 297107524 311550918 334758708 858004731 447581922 891600757 805868172 437578378 920792156 631137280 767335981 988139076 30983261 140038958 804469128 800996867 442853203 725655392 856366405 149080637 933250907 44983649 833729152 691777153 652223276 996092714 552635687 279352101 761823203 914915314 823178614 918720678 748789756 846855143 196441601 836747207 920600514 888484687 445744542 394813492 86186703 546163024 996374861 466544349 3445514 500913769 767261172 735231242 490092806 914930102 625902132 92718698 247149054 670989236 348931931 955979069 26523048 753007169 881414641 189701724 890109254 295978912 255333072 369459300 660109242 838239698 436203958 958032439 428005021 953800258 859287573 293926608 885528771 689390631 756441697 832637203 827035584 350815798 109814892 763549157 942005230 858830094 216201483 342214500 300258695 43639175 717141719 985895917 965048358 189405846 216717239 870928473 401378110 540836329 757729851 854449061 266354583 767293903 989812448 674677738 422557190 848692820 852062762 2067386 598767465 376704979 102311465 558019669 269102015 309520996 410466260 683162183 112846980 652950741 833059013 640128492 20926571 166443872 97706076 737619370 433961304 421815564 394704117 810994923 881955327 294020467 721749949 889822064 961507280 543578313 690484667 414755126 104776496 673397027 79973059 91409419 770527106 339388750 513053238 791660965 156008504 891285353 779467615 882764598 974207627 685002619 998112593 233631116 867098537 521405480 801989971 611040302 747935468 843609259 132086327 424766916 842354207 119345753 792095930 895386625 247107374 50280680 187256846 632932002 987331797 605199824 861311066 37490702 707674049 925496585 751779228 714849957 466881524 646034698 544866468 946590560 907235026 135032161 549802866 882082175 113832703 910781788 683419912 257133445 144256297 670989236 787569414 880127851 4926091 809698901 397768034 721524225 113469135 803226854 436461814 562797637 794545472 918322781 643184277 136692068 892681639 941088766 860696065 981145015 753448905 963641246 957721388 942180331 833475120 564230898 478773049 469503407 679820540 489337256 779683970 892927716 97395219 365078637 387983553 761714636 644845948 892982804 593857925 455148635 253338234 811690914 415641650 807770198 274623980 695277530 719833047 809301695 702878361 955987690 862381013 783248803 440638305 119182499 420234318 112352837 930811461 834295226 577084276 542521054 543941226 103505154 798866723 566252179 540022016 170818252 240116336 506232897 38616997 229892060 175377298 794947805 829380254 240802743 686154889 77270796 592468939 561610610 813334993 670989236 196280596 836886638 829931663 120755168 500699310 772077993 17862826 920497175 748745078 747287760 175304061 960799671 246633754 974604876 828559592 695505015 820196505 722062281 848823763 708641745 380641117 1608298 466915266 886994449 224274310 407379631 682020667 706998460 238725314 759895146 79146001 551545240 877143407 54680090 408107937 173964956 844450214 498451181 889510300 805354291 89041727 10076338 723069765 830527903 85677526 350891803 804628507 707803169 813649013 765713961 880252223 708650614 613038301 737067384 635587205 503187871 132143166 760655514 556626924 321190311 656092276 744775170 248713475 643748018 529403791 657060920 276807070 135188956 964416168 938121662 391250461 109249348 548203481 237998496 701099823 318544120 988590090 920229117 162920044 858943935 353983054 383635831 685037364 321629517 677271366 247731849 54180987 75133071 960498041 564205023 664575342 819129010 734473394 845728760 18766480 820610766 96771716 559363742 280514885 951239971 730458285 796087855 703544086 801117872 2501780 100184825 558761490 958816074 903519935 217509828 491043906 795312154 368661218 9595417 858499651 188506129 799117024 119451839 231858115 856673171 835305433 178828197 797592341 721860078 705656174 310001820 274115123 472318825 873297423 402290049 91983570 665310418 795589943 290652617 923918552 839926983 434017195 346295148 670989236 958275830 624896728 405946671 677325012 920975556 670990733 989178089 614589880 192528962 592968975 155865385 143708229 979154631 958730321 396010965 781245650 712442537 708259833 980605019 959478056 461850187 417355169 956316333 816261140 894424028 966929041 779690786 350746120 429064309 882934467 467165393 155653334 860501780 164847459 449800135 521683892 251321543 746164209 831825306 130916979 883945555 248146313 68383697 679308305 397877423 914462136 84394862 13055332 916919271 879568702 689809677 329477234 52629419 905365447 613732711 701380336 728591973 78046020 454060625 737815756 924972257 321717465 899018974 287979556 189725929 109376763 559460571 441302697 855919140 856369753 206391580 662494386 805503845 742322415 901321231 144136756 951282685 860551509 314087182 944571748 444528576 583979866 129521229 79578025 670989236 732223166 673926099 410012555 926766692 803190017 669313601 762147420 968473254 455486509 906634293 671211685 702338253 985390808 757451059 234582026 944489197 901211363 721894182 680760803 205546996 298361676 670989236 712632914 74680817 363124602 415317796 153496972 980474694 755760100 212352262 188091877 635308105 286156600 839645573 990590352 27227914 658280472 794103480 675718010 946580224 8161248 348705859 70544363 927030152 830834250 739512565 987088628 992767008 956050321 956880529 973539822 21091199 585731550 28380704 804911352 53032592 909815521 246008286 321378020 183805438 790259459 168797060 722242279 386811467 55447498 31839692 84386245 358213832 822283136 429306385 73512171 684367539 747425332 829320321 980731619 788991457 823263327 908542159 774421112 686731931 860797024 451036803 277217778 832961183 173388593 274988871 222685387 885494657 472805720 161092165 232104487 951587832 984435616 923721802 760578716 840477192 902371277 309138444 838285973 965210643 726452993 474790580 877842132 983393810 832931087 652680371 792214729 856086556 323060906 978736490 914791514 188634046 502387225 336993351 254158904 96764386 177878831 461386628 962541644 299515108 851387066 245928791 430046676 657765506 682745321 97057280 695916001 90161284 774856936 321838550 767916529 328501646 864854953 935790510 770118335 157069677 8025112 570795478 996071022 206010312 340158560 670989236 236623312 945976722 808402890 786621593 670989236 779645808 179348260 770123629 221455151 320925834 836889496 666225036 893577003 54239035 554054317 683609166 583005768 683610256 747397610 106985031 233875120 278148181 872327088 914569989 730498899 805650835 840671803 472447543 482498184 678720955 829949461 869788296 927764231 247773082 171448464 673636002 920885838 528413692 505433168 927862691 945610849 127329343 190617340 732755015 620993272 941578882 18950506 775526741 13699410 907551432 576617740 871130019 822281349 949380246 730902018 217560041 904150496 699453682 141622118 159278813 379694583 287257683 224490354 938674383 115144741 937591882 697969581 986609999 102832187 394740471 411295928 710953632 876112914 990560469 969205426 847509895 525113089 681553775 666500656 931073082 815848696 357585263 791463877 510434414 354504433 269391016 670989236 618530580 889010567 713691737 972600883 682713688 751131173 825621483 655509527 992046527 839279389 477974667 936466574 617883813 35615169 304152714 832378100 90508399 905734493 822035757 377387318 775783629 624474757 604612708 383964294 432690954 267014681 237194422 190205904 823986047 964406959 612455071 868657761 586927285 986984398 308641590 947345387 872507078 62376060 870118063 238450282 757340715 495113683 221574438 959430913 83017367 108123506 875011638 15821019 163155692 395626428 669362351 348372097 811751551 100031288 224552798 284101567 887045552 772731207 276852648 75655922 930864504 969544450 687409771 803369747 735594047 964297049 194495047 184591210 233531528 846768621 638132939 844262060 875765741 356657262 858437860 912610633 213361546 934819276 979706363 603479115 152537644 83052888 675017651 451273179 986834396 893064986 970847262 738150674 157913765 466665032 186818794 434830691 286424070 441453928 538356970 639885391 367059380 787610224 44271737 828981931 941541109 681282960 65039792 473459814 966596406 912672797 423222361 910302752 152978282 830512295 784159248 932528916 945879320 888550545 977794225 739733680 795731985 557815628 655446389 799154395 918432323 582739178 96054482 521555447 438437428 362383591 24557102 965890463 621720213 639996935 751267111 231819784 952814051 318901473 262102787 414717691 184178471 953208756 998473600 931999082 992834882 515840774 344075444 74377063 995677344 14754221 136154708 932517616 277688486 682963556 586491187 915082515 573070124 878428623 88366425 731360295 786393319 929760387 860736941 715334086 864981281 50413505 23199153 924583169 800303042 994369275 407548522 870924051 858381358 960711710 937700428 74098342 769489264 741746731 953445349 623190682 667091873 721950854 931116316 786240890 904786965 250046437 993203868 480266657 623174039 276810579 63195354 350067657 784807360 372092073 191588946 810385511 76907769 161026338 981499764 951805394 295424766 931401537 467004031 806975698 509290927 598065764 804189200 785306876 196400089 782647689 919442358 1846613 476720745 856111970 706357739 6498068 537511036 338746497 853552419 670014516 910482119 672765667 523319053 699179585 411063001 18334636 226825335 560174976 551976524 441237666 138426011 637270343 952565080 133053889 741544645 195297597 757336949 648189760 799295792 772905408 220663698 350631418 396301521 113364372 78515631 962488614 632602338 851789472 453195314 996395133 880395528 621214072 926321717 597801639 13053245 2194495 962950875 820186791 338537700 919715573 952840113 657518121 117139915 734242334 374619609 962693400 996487248 691514141 254521171 457454693 559888944 941452457 965464235 762240109 999163943 992846636 917303897 48604199 702080292 883562788 346540798 892036382 847056144 27968169 941035368 881693243 671550516 850467550 379561209 10219221 786171591 995661719 743861733 3264096 72936757 891689604 468981896 493826727 910078882 307386856 799977141 730758763 364838767 481701015 794493153 179085128 963460509 811128249 645186247 709566980 586367836 314743796 639376521 570847096 836416822 733035539 471278788 95300938 319354799 917276131 459808431 345271959 757659799 974968768 489467452 271622421 750086583 333061228 952128666 701754047 752347403 704928919 264067701 968841977 68873213 926945455 100372833 16650946 81144801 266271126 588242816 249142597 801643427 793421146 98160639 827338924 972556543 717795814 592405528 104678121 456207574 765143796 489453515 543899764 908001866 955302427 532228615 670284707 887914033 976821464 680888603 881748527 873593485 472474046 605530597 276250203 600427400 805504113 102672566 768689874 910358123 858811724 410441695 251349246 784232325 834115482 996651091 319142990 735966130 59954792 196423377 688624059 647934800 942407696 846652998 668689438 797304421 277460654 716089015 950042076 861585805 713969828 382090780 857028380 199210271 822489156 59752839 679696722 213540698 164761443 825953525 759319020 845898514 272194759 451472723 749342271 918189027 83163134 988052845 923210739 596155482 670989236 963952402 699740683 810541919 656617026 695969258 599706665 998313108 810546132 896315514 805896288 836495126 912004894 911875146 914838837 255379091 793245380 997954419 195122329 903685589 679031191 822069705 493513943 948538235 759116518 201097006 802977789 879944813 7809072 260114696 869673393 709115310 647521760 465239221 751203539 926396373 504857505 630375818 912602213 681451913 616661488 956970583 164705363 547412756 957710475 255429490 871797746 650750431 721686440 557053392 966987296 92866536 126420886 542902304 356071588 605517147 844786070 226163357 790759502 455438797 854857872 253995875 871617365 126768818 70196151 894915967 941675615 106665751 436094340 974404941 587301757 126241953 932132978 983894589 150947433 197546816 800647810 889050552 822887494 250247887 840533731 847192949 943053139 44001765 661964785 732418591 5858928 238898854 730136117 201366687 631270724 911857600 71604273 978689609 857702352 682510567 718327122 719382790 626983791 243870077 879112338 13981843 527401737 761471596 433651053 811455527 951864762 344749962 456905848 338059735 320448719 912535631 397690978 198841285 434297418 833469128 670989236 824357913 374196662 848698143 955142627 318436996 455793245 878232744 525841256 954983362 681977362 912594270 70218509 514607160 402614479 927441215 738237855 774671930 586607379 348484373 24639723 569721062 711342407 612869567 164925705 644044269 852744765 243628272 792293074 430769970 887006228 398292480 402803377 204017487 960788905 360689538 870502607 843201358 791698776 28807809 589016399 249359252 452200656 670989236 819414215 564195002 750485580 914295116 690009866 71271419 894322687 489338732 1286722 468149689 790972823 406485014 783306004 720237393 271624645 32265358 123010648 115683310 670989236 595957272 468854434 505733134 697101713 759599560 204956846 972292795 454114939 686262868 232205211 780454865 342040349 433012609 900631467 614922636 921605128 821461658 782233096 147121534 60834796 643497692 990416937 11330819 694792376 904354359 54081012 400759812 26551563 6251306 767189858 625854064 900393109 584492621 964780071 223209963 498426699 898586755 991626634 962805723 931609873 229070608 483856005 825221991 803261103 258280153 974347176 761113230 60959383 251009106 673596898 791715874 449491934 366800294 759382272 867397134 228053504 951920555 649664744 685737773 729976274 86262825 141053899 243843262 905156187 719126276 195345800 774683858 178834383 995839729 967724206 75866878 932987909 972394485 849473067 42657812 872540339 696318376 719876685 866756080 552010156 521354614 241685097 847219496 565347621 814120099 832011829 450745303 39765116 602762556 161452065 694360071 295740704 78369722 529435843 968154798 930544634 606255398 516643253 755096342 938376041 735073893 197992464 537942660 987348454 245184790 55309563 694488710 933989397 765758493 959372714 259427424 153412307 17879012 704584350 536980623 631572247 88948313 270472178 827806132 731813896 682989429 563507330 961231250 171384615 785019908 687345157 15863521 114714582 12922981 868741482 142214830 441454149 933776362 970291325 782021295 912555325 672153317 775659679 11666691 392910060 851097046 758616056 144196507 659521604 171168696 246679863 154969835 208479283 663954275 55182075 10374733 912544075 404273737 815222500 947166139 291096350 784957740 969170279 760940789 774584142 493058664 158743855 907045393 32904661 670989236 563258746 77729149 754043401 286710180 34306538 273030731 696654661 763711299 660108907 473902493 489816476 239318462 744863730 751774587 719760450 967487992 735340180 773449088 737200303 718971568 643904538 182635814 773731272 895270118 249364545 387926268 783464223 675247663 805831183 286461100 268347274 999995766 746391490 989916012 981418363 73718134 865227912 774615810 365386498 795210137 256111930 224888949 668734568 712992289 684547451 362215907 257741891 836852173 228902926 359146146 364188017 908949369 228506253 692728432 642728878 299296368 941798599 936728326 922055981 52588797 160333541 509018784 390978791 312360571 141647897 584927072 474535944 630070904 711421139 492141691 794789553 885745773 788021345 726931379 171014222 703865829 709236963 562986172 670989236 929375863 113901244 878568963 274045144 644794467 367283827 863675558 849575733 512118570 173854414 744463539 362820304 63522151 190157404 574342103 592527663 118367369 145043647 384473259 638959852 956807291 147169930 955555970 826037910 351316393 949576096 478166512 191560978 651670079 459138120 725268164 352788081 161596826 949976460 133799393 629522071 939948916 239860645 67904593 910283639 804034401 558454220 636357014 835839356 371568431 762370200 726151288 777552909 923327514 987969113 9339775 226279132 981712334 818837295 922620735 759681990 834843164 709110884 915698419 979308143 732638470 836070915 800643646 207750233 813168887 631930194 311725366 127998760 209699833 188909970 364099151 1521494 269854552 967840398 423794755 340585954 35768503 221566225 671833087 386878135 272546339 792779374 674509035 225594472 55756674 169925078 636074243 540206630 709952788 670989236 754892814 799266067 747144134 738696371 204165683 306344939 293716046 813038186 251596529 674063984 946895398 879100932 799879055 907686024 702913379 898058999 34322200 778508611 892763741 829890035 670989236 76183027 802171842 587123252 879667722 828178965 132440839 50682965 992163412 815678042 796083430 461445477 604834069 970405119 925947698 723964511 969581055 967129344 905657962 903437510 26569986 431425533 701945649 266331799 881128272 970843099 310035413 994870642 724707592 791831235 600137137 938996942 8304757 453832945 792246573 856547188 696056745 345770907 949051345 771394467 464574842 517607226 356571984 83258191 518531351 215917348 460135982 591562008 814930610 45325034 191398405 865540360 783583864 820619333 277895519 145613384 837324451 304230352 684550951 689675232 673887725 694568183 443576473 432617783 616258172 680898668 165854575 268647631 898371154 941529100 773635474 860436086 910909962 798021693 850144983 436569915 209332795 17755647 564460954 132349301 164671906 504049637 814257351 416150092 668767570 693167284 113304100 986078995 897493254 124478876 546465365 835453576 134075442 717033345 599037922 709164983 772635843 516533993 913266238 456235832 722539074 763605971 113686721 449353842 948594345 767573780 922476068 691324940 701847644 137765064 88193108 350847381 930793357 727647598 448814014 939717685 139344994 80284216 535126935 570401274 453488402 308041573 640627416 847615771 693979591 862065166 330856207 341468587 714040963 2211277 767509451 11861260 48535032 749712859 967593203 933124773 650472913 667061348 257269090 29694458 652367981 212565850 263726891 925058037 869352959 75267592 958492121 647454047 813979323 395794087 675844815 819542751 951683541 48360550 721394043 980808644 943049263 951059653 875005591 330734531 578552579 581894651 735001745 371450633 876410813 845963272 959583063 467987294 164066056 881714881 794076101 491477973 881817453 794573274 82241021 252562645 935736694 976511370 777063841 218176989 681030536 696364191 455886168 648694938 29478609 87419575 896031346 713942853 505161423 769064978 710693251 897711144 893845022 988345491 851055257 173110466 983700321 515160642 957367003 670989236 739025172 55888855 881323634 948754740 883316968 879518352 737227789 972741189 268634807 298469691 668073762 366665203 200195729 712708510 265037151 730392762 483926585 449269537 860133184 870683459 974220980 361136707 880103060 395134113 878635920 681221285 229650475 109111047 907445842 813867422 498330649 841087246 395721386 838328629 712916049 666559885 200139469 813319670 202486833 899170526 691154331 810937460 998867919 788003909 572292310 683532312 275316731 778632968 936309568 637258675 949332943 247532987 569334228 616961941 198975364 304844458 357678328 184280045 30477885 409601668 319076859 969659686 225569643 341017522 389974031 107124109 933180577 357137925 761606501 506454282 674008746 864737929 596172056 116202591 654542739 73122125 761454845 974922798 977254116 769671503 943270607 918773273 71469819 362071052 382143262 926618805 829580034 925261135 729636837 915724158 741346076 777965821 514031353 665047562 147239479 964445540 913377848 809519686 936066960 19884944 132120360 250170249 647969392 610461836 502497594 451383473 193629958 524985525 796327309 193737826 123149676 49233072 490637108 797259413 903749885 3583406 293062682 287424607 824873352 487123457 785522983 713452953 542235298 613725388 400915525 282471221 888127346 251144756 357727507 648564546 908262983 469527752 588886997 831296244 16911212 215771097 893783679 806780306 7593598 907037248 722272994 867520840 550896718 735941147 480766034 212563132 670989236 588273558 555275221 37242473 924741472 951390156 837273521 803103045 899808503 763338167 802986942 723169738 769408457 955277437 112547743 948333780 89227139 761520899 936210817 57682937 910775016 594589915 475794692 329845582 93596570 985165912 175664469 996461425 687676624 914677131 299038076 104932896 803980855 750083527 840348402 976986172 809598244 843724527 682131957 212412763 697492842 226116090 124001431 13031901 409724196 468834747 696882521 689496515 116269885 353597488 596598305 229134120 139589454 674136885 724760102 608131145 139134595 857488189 430072067 518626216 695045625 812038014 761253700 977014829 698022036 354678297 560517384 236266661 990399148 697826023 715370802 676202208 698561535 495051375 799688325 829292727 992144077 261872631 818696337 243738733 893736313 223330548 9502692 157137110 373783978 717605057 582931698 187704208 652962239 300585120 274639419 162110857 802114562 716902922 921009848 846357028 2225621 893873198 854702813 594510568 885830919 586896489 699539266 418883211 396719964 54171295 815609458 631420370 305940763 760565007 299536222 962880067 137252614 913182019 960591334 431840706 716356396 857642508 698379476 484153837 463350803 910702021 351637159 468616077 261448989 733152287 789277194 335034471 263860533 773710361 671540822 780852046 786329797 194272962 683384374 717352088 403593062 554885773 634323967 720060023 26250687 756177720 2136091 19323725 800223702 202805596 337621664 495617638 649482632 690231061 441278461 734450735 980558230 639390860 315608649 254093281 385793886 505912406 188524355 663811756 132645368 627147825 486371008 993970426 994062661 156879133 770847999 605286610 371923885 791305790 552720749 916348197 879976877 936609419 485546134 768233494 819706473 193125995 913897694 137561211 122043648 442546596 931623512 758029099 625444170 121285676 862909442 779509142 803514206 565265060 893193812 382704487 838730962 498089516 344508073 908325508 848421172 312195474 735544286 612605781 878588307 982582665 982514226 442015152 270074824 245089618 673042305 926596703 221997140 605688082 97132953 954171259 71397034 392840923 739368696 96402416 378576754 744073428 59648539 63627088 378935079 816962044 824857732 84798494 745409262 585366694 352355486 986440770 477209759 806050811 737620834 676915114 700311161 624888691 808478986 502618081 400349560 515991211 68598757 939396899 772905999 772507781 791616483 578903967 823661701 570100160 866642244 894215421 876005045 793647170 917191356 766091153 718366665 459279739 864655138 503990032 344626736 890614414 826843503 703189300 862290373 534763093 86945866 937959337 692662058 191185893 185304656 232072018 878702460 536624487 767515965 297985570 914594146 716943671 979718099 732749588 43894557 89530018 846270150 22985079 789007045 215573365 908283180 53622330 957353904 822792392 724386090 813809020 833742286 123971867 542482908 154334008 943465628 40482456 268357059 122979827 570557786 674898155 813352724 162228161 278864685 771533372 763346234 256755758 834194581 776977098 803198048 507627095 958437743 755754341 758668819 656230014 707865878 860543757 789279611 818389848 782843887 855042206 531313195 767193683 703131039 826066587 973115893 109321180 572877880 756736157 623645444 941660069 813909018 989437974 961079989 483565180 430493966 967615798 987488530 108471689 633769471 751977579 627827633 732804939 443136699 949075525 247867365 71153150 319618709 703116276 799460073 770842229 141847813 422861292 720741411 938300827 815126038 504020031 843282724 647334177 858505697 854625266 258560184 457707605 334056201 77752598 83464134 92904736 680024590 966877593 57792884 154501321 839699501 365845780 901821684 998905660 531644764 863934897 513468130 460905406 728166506 181122898 806580240 918254388 686677211 287485287 62884177 417543689 937408697 883614953 703518743 270233430 813846802 801261473 63735405 185442286 986739843 221960730 182607368 961469980 826923438 333335935 570323983 806122351 760499048 728344721 522783272 870836525 585758183 229643423 910586078 958598023 576323126 539797528 734456082 543245941 908179871 539044271 849939770 267243056 29109608 40779513 55658398 210397864 109802962 885521789 281567655 424065053 957172522 788993547 689415940 79812249 395404284 541413793 359042299 642279798 12320995 957778236 846200486 26071927 878327002 14280871 232443997 925831773 137818576 739917059 736739225 744186851 303004296 547567961 408804253 207829354 855596422 197209488 871402167 786485257 847415675 960397474 213291712 151869021 555018971 209243125 591472273 692899627 702065899 299385135 290731015 941825898 343267637 144044416 69254124 268197425 751882295 73732638 486627770 246926097 999897091 858084138 864663887 773696330 989583194 838296963 871746559 815550748 373605763 252546653 101780847 754541574 924983107 239448267 561126191 535243481 569166913 838417432 470412664 528127330 991964544 248051745 554447949 970988123 951811103 198668598 789556062 161937300 833373189 310227498 262896418 840624472 52970773 830313948 884511555 127695526 878443178 366011015 800912580 994129532 319599535 32491031 135060209 821603089 465970468 854194397 439962515 854899239 998428583 870158987 577863133 980895876 520141619 872617990 364802949 997883998 551060700 58448889 956249285 931312990 812461513 879818864 893201289 80955821 421705006 639580226 935439485 640865640 61392393 91947922 978789408 900277806 577044976 818833928 792581119 297437726 710046568 632575309 986821894 126215599 436006055 665546518 142210286 366317010 632419374 953171483 193580558 252187184 907584369 409249769 854695952 529863185 452097400 622454872 515066217 370865757 36601166 514132941 58189141 925372807 110546065 678124465 859118270 978649820 739245097 190590814 823319784 325432605 979656234 424309866 770948781 688330961 526320034 826391808 238612026 136406702 552549891 736206774 680782179 606318924 409411695 951172068 326435215 803201835 427139460 105444120 799627690 32909391 572500068 845010977 59895390 941617710 596310310 797160786 249786675 662333004 265510986 49322143 494236301 410831915 866930469 761228300 463008657 390926544 925222489 657982679 582249457 658034330 490419177 670989236 570160971 595973602 789360586 137843812 237357167 888141337 845788141 845066354 27826623 680330921 825325521 144195283 932873092 6586297 801073633 949043724 23335006 87824 889723391 174269762 833436148 488688581 844976532 474049736 799102967 775337939 700867197 309928396 764989024 626407625 161762949 563296604 412876301 950267442 250772649 999221866 416913730 337344091 262971799 318955625 489442819 830690940 113669385 43554018 893143353 832696579 500738153 877113482 632604353 893711123 342535739 770895757 697956687 509294820 718321324 90555659 500721159 236093342 959403566 761934971 21206138 888569624 734227090 362352693 670989236 177064596 957749407 216890480 589178942 798759541 817593875 237898454 391087531 189430307 938196621 181353762 585734573 48266666 866455554 56045794 748974532 995523639 339884156 743528747 105617783 5615127 308002437 287796994 891046110 681419708 476750370 60588800 780557143 282636525 927784641 298541469 981540059 835470694 555248261 851454397 997817435 711748307 585842442 558026678 970221668 164422913 634083789 509966557 891389964 843557895 644218921 890282378 241954232 143288792 186137060 687905987 6498896 607603451 408106653 439630399 819868389 277164056 759621664 544151011 289539996 81769059 515397236 726112168 717972117 753059519 666317113 307302672 329470551 854051898 473685459 874996616 641490140 962109163 325717483 986006375 38038007 697304749 649948248 870137315 449706612 336962428 767951305 672273400 792044403 531270604 154753418 336646009 862313812 638536374 680923986 866636298 231322298 937564477 821845465 64546237 651604855 834450011 380982238 854791763 178641108 67776257 762331841 235027939 540208712 830752845 185187941 951961698 213094836 894332835 301755570 727303208 995545166 339236172 707129724 811605552 184260876 779866334 257198636 768662081 341738744 487339886 785746478 565933018 377563600 48720041 686986278 813921343 978723415 28770930 704443876 986331007 431509369 455002298 343961459 671383381 437796872 928363082 17501152 215145727 796650285 958316660 213658487 879609652 781582319 968905293 781885866 797899159 815257605 40360823 715855866 286954968 698472409 274879857 304386207 542745285 350244129 905417152 680257744 271620258 613567429 951050776 317682408 882593872 692159999 729749034 914111753 993067293 378218104 238022315 665819358 944614226 953441323 300238203 358703074 976376147 967405376 174929636 52346651 136324310 928641168 617321281 840774448 906559547 979087167 611516080 906468405 518894856 194965852 670989236 918958162 620955811 944746415 303034444 120085113 893549011 809415777 335789683 597831702 898236485 877985534 999868052 834898429 898380282 711970839 53380628 990075714 225501429 730209688 759250199 878401176 408608899 953377319 272839921 327378400 706906217 31260850 878215341 112289614 873439699 153028454 995665498 349678353 902316574 431085266 633220256 945894513 863271968 995066461 937632471 775511375 888850127 670989236 970942953 772917894 729515631 824393836 624777822 771594716 52841398 908995299 332105101 888223763 813496353 275325628 823980090 222594792 704058614 640188355 901077094 950212671 926787448 537399563 723259524 607511527 839834189 71566943 296485142 667272279 817908560 529615922 217642643 3057457 402116825 488308562 670618958 332229156 312914530 466492034 257755076 637172523 950149938 349551611 878751699 902628041 677556707 642072224 890246646 881884959 928324245 579357449 940924478 812721279 484230954 939486780 668812752 476164252 385346461 289090585 700825719 502463160 802542322 547321189 576034449 780981446 694864923 700421642 457613282 7541044 458313495 185077007 722091604 203608396 277741859 922613638 273871174 591843144 91439714 349259114 692976445 580938349 564709134 929676467 701516022 994964164 112801362 913142405 871861733 602009320 132567976 484227781 232853281 376871191 875498383 726570316 75305946 564518666 675639188 408072585 965891561 930568569 855456157 504882134 670989236 902312788 16540222 474750159 88144263 580412383 463552877 764187970 348987481 80661752 785287983 602477435 744341481 668518350 384396521 771435469 297993128 176277719 295984270 55078952 729955974 952017142 519617900 387723719 46560617 944323087 582882204 555651990 750884206 432990428 48609713 73610486 706156050 990839613 367102929 816874224 818095187 537657492 715743734 962157406 952100462 375016574 19569365 147326410 673902218 795435776 775701992 827660306 645176121 264921275 545632296 1208829 742732031 638627804 563447721 862211818 431814515 202128791 989711905 479930673 659843505 252695102 383194964 288221593 198777001 742148296 545940725 946692540 483928123 116733451 885434936 381064101 74047817 130919972 288916817 745252342 38486977 113758395 164089190 869877618 949807360 748510420 676018483 895264667 695831435 930612223 830444366 811791691 462069416 515413646 141638639 650504220 21149130 255023032 282128293 340854749 694295575 692127787 664806637 461978546 891989021 443801614 258723541 964961693 266541003 103094863 60628950 977662331 839256518 546783341 259092316 927961710 181712005 326590541 949652719 308916428 617696543 653973972 35432300 39575607 983953116 446673491 722256449 775066063 871205969 709862998 725906456 262577342 901562339 565117216 715867207 713694363 972932670 345312488 60763264 204910916 709787068 867217994 784380127 263477795 947416775 442049745 811422986 877471392 762654929 176360950 700795151 1919824 760157235 229046769 863414500 809405333 803311085 648996639 281139704 378554985 411977969 158714374 338622944 473334820 691524623 476484932 498035440 724238884 37929239 93353753 752665012 723496735 131826216 66092379 896681784 850189258 723990816 793298139 775931188 942943851 447579333 500149455 909163902 705263212 375275393 508583079 735344129 760988168 847553499 998056963 607407820 887839021 951183112 978729047 677487749 789795175 456040488 917278388 573064667 597082213 641875720 777994558 191740126 664663492 894921423 850662607 977849094 471914681 920764165 955686 843587400 838182582 604468897 671974135 935595833 820015284 878774495 423653554 459537900 811974875 478434030 136022465 879565144 338799052 66500439 932938802 946065446 293540279 455427802 863901651 202318042 125672800 84539225 19611080 803065812 728903103 863577944 103610437 761912043 717187573 776989207 670989236 474644591 309096037 174874121 437468037 805337087 619651602 689794894 488751561 56729509 308162845 329359913 323002902 791910675 884752219 780663100 684961388 836643560 805381413 805894192 752862688 839461842 349576460 896534200 704209328 212976387 346233502 66619841 593471135 134816148 182665436 863976123 613565747 991796621 660131670 938038281 739001378 670989236 221405815 598920552 630366455 498455947 959853855 231232904 128149013 550457365 796207502 888672149 103608833 93986948 191940395 78093465 486708533 360968131 585400026 184788618 264881183 670989236 523005738 978673688 735192701 419694439 197534081 724490162 37558527 670989236 241703137 906121636 61911032 732383460 770431738 836123114 374612274 555158660 271116755 960319551 39617457 939369421 79159420 264757511 846376374 867083108 670989236 770544869 553535147 315013877 883962635 637935420 823396584 511266856 792781000 351081158 988250603 28283832 702193097 347502370 596471742 586309375 69136212 582084149 120801963 708258346 772828948 777188447 866469005 139314651 593761777 939728307 66197065 590988228 848251637 76984792 153160053 524605906 828543555 420572184 28436300 911416580 526279487 849559146 866362075 412443553 670989236 969630261 638067454 754541029 387153385 234840163 751574520 338575832 960854313 916217712 41782247 689253795 670989236 670989236 233835699 929751605 59512648 944545506 324536849 488638942 393782834 745832271 688374408 471387897 670989236 839168808 109254099 752790503 162816773 808768330 585882114 684496992 539712845 633824182 811730741 424955298 803553871 11369415 658857660 835902836 809877289 516066166 448170138 809926982 466329797 767074177 433329637 660759720 316425035 27197143 459127513 850296100 290880222 464836773 188840933 964949025 236517083 76680195 112938938 8299259 630164646 885152375 726671755 201492903 539338498 718500896 966487453 770995718 953222644 475504983 419845224 441233170 16914091 675163276 149322008 885543924 98879480 345519612 939093187 728405899 270955998 94077135 980586327 966186363 320324762 559161020 865933255 120436052 892209964 465967513 418534973 818611996 803703202 809162363 659635805 485339496 770800465 93085434 552414542 23511264 612812467 388119766 896372250 713776492 200370516 853974508 970422056 742564371 165528796 976400830 417202302 151308756 87563015 178014358 560828488 398986304 348953941 945403811 397364482 758503311 150337182 738926955 140329744 920241156 669156278 58611354 385217831 849767693 779887960 845742268 783547496 668883463 500324435 313605493 512004917 183138842 364958123 408261174 910079899 27686416 67564625 32566869 937922495 429330180 898184792 964363900 703125582 887387402 671967284 370276911 164087268 138780312 670989236 912839650 770668966 792286719 65689110 151525834 379704314 990537394 626191658 610050963 552579198 791962455 557067627 717437141 322489822 204895497 405753669 689616582 670989236 652320931 570822770 257986403 631245804 962365621 340378126 822307167 813039833 325855649 673898372 894533997 698953563 285022439 458583894 663019819 341210710 623884853 191641977 95466380 466998699 443038134 670989236 319057038 142002649 700082716 720769815 542702965 924951716 676277205 265157637 436746884 192944389 220094364 372345281 652054126 276793315 506048942 784306852 900480419 769002297 756411108 689737440 858305585 850318116 596819601 825205948 946852171 320727428 212561190 843698389 767798841 950510266 917403349 87438485 837907725 600553406 689233163 445401052 310207968 311556049 334673934 817608192 758997558 59270660 843262944 786909605 651027882 139966208 694421676 902322306 670989236 682392921 930184499 428119542 870847885 783779119 812830846 995117140 670989236 320346778 603521317 744406566 680897425 949917617 855852682 196355887 736420108 777058217 187864475 251990284 273581786 314252086 903958966 692681479 400820792 160832278 911513441 937833281 644261307 982445022 656316746 41673595 455619402 605993225 287905238 965777634 959401923 365792290 786648056 511674632 135789186 731863755 896480102 834832961 640136512 255553235 111195125 87740380 682468468 231553313 680262530 845756908 593374215 660475859 902920001 919948825 379853595 841267452 328801729 93466736 91051408 680897787 858312001 805047404 373182769 610111277 743740710 440535509 848997978 299091777 156876385 230514399 711956906 329214194 932125094 430573210 670989236 686850747 324187282 725768956 910663392 266675548 954245653 340924764 322832651 670989236 770999291 614028317 238701216 548502440 985776268 738327973 194546284 959155770 777869439 711434799 425193646 447757779 939210791 669563527 861689050 482620391 590214891 670989236 916279422 368322107 453037369 547237290 547634536 177936954 412438502 539819393 756184816 937696533 492004206 665176526 439199829 688462335 844891786 898135601 670989236 638444928 686505088 771563923 562991400 214951995 830998327 295148995 398696811 81352712 898641233 307524296 277664400 891260835 206430151 716761630 677195403 487028876 561691302 621478396 491462203 977912362 58442721 984941162 678444901 970560443 935283904 22167402 486972373 786238585 211660252 559183039 985704039 152374769 642290078 159965341 791350011 844148062 365811151 14681404 678802869 699635444 941104787 946873103 580735026 828344512 132015818 605583097 878042275 899739436 723159465 689085107 372514129 944239267 284272008 791095885 370985424 405766510 850585380 487967963 892886407 678547003 71307711 11566789 714286457 470366477 758390165 425133722 91949712 63756207 397842735 216839241 97524843 423996586 618211102 247825028 421997377 273037765 1814272 958121664 549385172 919717713 28175127 865919206 103856246 77387052 706241805 602940188 964774407 594364621 557657470 659445048 217053835 104474749 269176971 558009593 882450358 947989091 148885796 863550186 686526821 914357970 976530805 705086227 985051622 211086707 754351832 855624089 705927062 691447872 292439647 243614518 578560586 893924289 838223891 326950295 898033285 961274491 875032341 784872944 598343881 594819302 724678937 841305337 430889562 888544911 822934530 793992755 787310157 777625753 756547443 29393774 139208838 247229961 55208739 137347971 733990845 347955699 443993790 916156989 763881530 527173244 670989236 866556779 484347990 744369605 794081374 151769849 732406413 467255798 668094823 233495967 22103558 525118535 167289653 822713144 64906887 315990851 466527007 931425113 152641327 906849779 697110242 58068077 869379479 614112783 334773388 351306308 804418398 800417883 821644869 674594367 697695312 276952488 241132888 335457836 714569351 678748683 897371503 865576761 727202136 244121564 487039528 489146409 751317177 690780518 177491741 323996484 813971185 31395352 165865517 762623978 107972687 744686535 670989236 850690951 291610116 425020824 904473233 82782665 137360228 980229715 922170388 379954363 759631548 632027632 962090282 97754584 977787251 454853529 482298911 906120611 68234674 941517447 902149478 760471428 237560175 531587506 401224207 97615153 550919399 934561894 939321405 758901044 918415049 193169892 962637012 443497127 95112179 820744562 420561396 695821958 862060688 728514047 155736873 544095218 103105511 954846696 678224745 365884904 533665349 314144346 436428699 975468233 565547969 643517888 454259931 988553717 943073059 372223492 677081717 492065166 584100559 216416528 847319611 807046163 977591394 415659578 155356644 742243377 755444574 639484063 659053613 893809757 761889063 809448124 592458302 392514173 186765757 311345837 111320721 710383948 442972821 721856897 608626526 844587939 996272478 821118911 492523975 790085990 557017218 304918631 976421983 180110754 897330391 807940043 867330228 2055128 588603848 693632925 966941448 751636600 484905117 151692071 969935624 608173440 462058602 367314955 526094551 977876100 326238538 890796256 688662945 161383392 458272410 657379441 200019513 657531946 193804526 622132401 209837834 703737187 935592397 767687122 914047146 397740551 485700877 285692667 89347699 968032974 561581537 789664631 711599766 722690872 849461653 718362738 743224038 680713265 438524881 123854099 89254176 606961670 225208867 863218822 4715375 322055885 816516723 764536418 921355235 403470543 575688 969623477 853928953 985402483 788798046 419727001 149548580 725801776 750804341 886242486 41434917 660267978 760451833 814406932 683915509 221219439 620643296 921796472 276534948 837066411 206485436 699209643 91949784 116963645 136135393 949188926 980182698 732017014 779760848 791901664 929125999 506312502 117657298 319032051 325233971 687534243 830259449 777124711 131438544 30178457 773912749 801146772 74516443 14176514 893067739 752839494 589600793 930044377 526425393 398489071 116156302 111936333 80511034 389922657 757029515 949709676 767189108 93837497 966973736 954450985 732844996 742085598 677646323 270840466 160853100 936092905 577465856 663265967 477129172 65047268 291223858 123877593 582528932 328832613 900459742 691532033 594466964 476628688 95675909 841666105 206409340 410341665 832235789 873258799 988529976 694019519 561865383 849416714 997956851 503883793 730033571 750413653 885822522 867074962 770769562 701507110 981370777 989652177 832400362 481163659 980795873 250848912 574244594 908655429 940141036 333841167 11107490 966722611 856956952 162356929 830960661 105216250 992421266 724454245 980006302 149819432 725811637 743977349 577708698 937424018 984754123 801188816 922533057 583895763 774845143 331249573 679149109 97127533 984659229 154239230 907914913 303210530 362183939 610130773 702972758 341343732 939415481 706057821 810099181 500528241 452788401 910496494 677682283 962674358 745272528 527713711 272480519 561789202 944415474 939037334 172777346 247782189 809945582 938891768 527592451 76629137 997736495 806952146 490458638 113754868 882988443 359518292 960221004 781190538 840105188 574219503 81722167 404320300 323096497 352183633 521079971 441261331 706158223 425977508 7889265 320034096 357031452 990626575 822109962 942214854 895193486 541037329 60739533 878699790 978782822 823289787 909154179 167752124 886676258 14928219 824450737 768231433 611801890 873775011 908108362 898274581 385103386 804225883 816227869 238040027 120598657 747593011 378421545 727924597 853482504 974397788 845797536 570385314 152114727 893209537 957529558 72377234 491780613 848060980 916241523 819899834 754186952 637704862 3164187 508502505 445801148 841394460 584828375 535905673 813660882 796674673 943639745 651318502 564463421 412482015 995453660 712053361 877483778 845413365 230710458 913162540 407450445 74374342 760889193 690997870 836984771 670025027 665041873 889579797 941628871 878625454 955156570 195008336 609416778 993579891 279251903 110440780 413965182 959982733 928885299 358790567 761273617 479125855 24948193 107683245 670989236 701710576 997032811 85824788 623790728 771828058 490162880 812778429 868176074 778975717 486999550 495771780 143981417 759560607 334930530 673247811 228036373 814727687 879396487 900470408 363733612 475050480 794679181 402275003 132586826 644548516 624095479 758198639 909737703 322305241 966361869 873191234 833785638 916884380 667207433 879839255 727418327 925319374 298772203 974222886 481961288 739096282 189588236 848692558 79760329 925621572 512986152 881489933 23231080 904956849 574515418 904372509 184589477 801876428 703788084 735790509 466067083 730732657 673021346 680570780 678815885 574029528 670989236 762213527 706768592 434805783 844743402 612041569 696300832 16665766 806165458 339043630 88331213 687558861 356094200 670074841 758133343 345196267 809858230 252766511 832567242 766062381 490698302 997783370 95352636 670989236 62144494 205443800 186797881 339463097 676938557 386195892 972028990 233775955 312516738 474993615 964534996 833893424 961883992 615774268 737087933 246939425 374486843 288229757 890161469 947820794 869087917 980461081 699701712 600947340 685500193 749318865 761276732 773756472 75917700 786782603 866655946 642771009 128614261 858523882 313836502 387521894 681057204 10307310 725545568 447326280 113532714 800385436 987558284 143022365 985741115 408337483 427903014 800132827 755933768 710627014 544096417 252093618 882771334 202260549 854816566 256764281 25649170 89016673 139223346 585897423 924371480 890654864 113681717 850347026 360065122 683797814 743064047 706587302 302539514 249579624 782508114 101864128 999335817 235671091 962811722 763551156 971894990 916996195 617134498 747343397 503117159 739616555 137042930 155876601 842678689 616315159 56688834 389942018 982335975 579298540 77338392 293394977 15539033 853128101 736267944 174539876 948762946 728925410 171687580 164250348 554393013 691718437 379529443 545423038 534216303 475359720 985114714 412622570 516108030 735056108 721438438 743424219 725754239 691622723 185610060 952774603 928986530 272358924 584544634 34736954 715167309 549431998 956656032 203818812 820209954 914566138 487577094 333982501 945352904 364505239 796771657 321479035 670989236 645838737 988759133 496451666 618787162 64355883 957772691 254549818 674920505 138561829 916613805 60522236 748178264 793946688 942504684 627890376 863055894 510877531 406563765 314989347 584763541 512109185 439525122 457234800 25576367 931875900 79240646 634662402 728667000 833597290 716881309 434507579 492410006 685132410 63623340 785088021 750286093 875970217 282843173 96328678 866005408 266410538 531863719 107508976 463240409 851334457 766992974 724791423 482393152 196714915 688114870 746529168 689759230 773360557 503561019 144964210 693745557 949055635 100255298 641994081 193897047 708593918 854597764 521951301 557788468 444683025 840480743 261182691 905217789 700970957 888294801 213436939 546550157 523699483 901469569 735740731 535429352 788345171 991481519 619828712 69081893 239319082 945863978 80598993 488675232 437630527 523136842 710461757 903920481 911759462 659765529 374038061 454266761 384016328 127558902 670989236 482059907 263766585 912576608 25412307 383029541 105628921 835391319 771136055 446057784 726629735 847562300 652938946 479088934 796706575 748320606 971059135 599567815 292900983 898621687 676710704 807698760 240117423 713387840 760304443 795290775 407440250 779682104 395458911 122756830 442750698 477917796 487552002 919131963 384426297 924641179 941005382 19194484 94156835 110793074 91164298 195811749 113654075 767880306 483773916 547188904 705036379 150706082 250976961 734093503 303760582 739860546 357361092 573188790 307343505 787022421 261846854 281759924 694079993 700225732 913367843 747772399 200113773 793654327 726288563 851236018 811946046 843369723 344576079 312418873 688723399 857173352 670236285 224708750 868348496 572884053 172586019 809681823 653541821 987640149 701442185 140757128 798398402 658671174 152384939 793896060 887882502 361078117 247408037 544247274 100934767 745437635 834172075 8870407 948684634 738443342 992875058 165381865 855188028 816993888 9030775 848414827 432823301 670989236 560125179 749437820 597430997 926328865 587866565 820212460 568135864 522030502 87413201 961331728 947268477 674929667 306995547 138714733 222413744 803982886 116906972 579921972 807892495 955252843 400445751 493833492 787351620 933466913 645301030 392135428 761487583 783754214 754724503 377442402 943267452 155580231 39890526 913005377 379363101 866797277 983107627 219150380 789428723 718103540 595938886 677858174 441241386 310450709 840536860 882313701 615444768 570205874 619146775 670989236 676021931 286174104 862115429 952982898 819388913 393637589 635514630 212405395 773976629 965666041 701646053 895541495 623546602 324387945 713004345 184059302 790394881 454237018 751539068 729412642 670989236 234952776 210766579 998480935 268376931 221226320 849885397 13425474 757091223 201142538 281765258 475777413 928785449 670989236 396716276 284592234 908220432 840572450 555366487 699715879 697325816 284396423 670989236 485395390 71361976 935668399 684731894 375193641 180839396 712091790 879991563 99908374 729034282 696662172 928475108 862990692 539828301 253696545 255037626 866379123 527257478 674392997 736782032 443956582 618246113 360418095 708531156 369268923 176219145 529492067 239537029 52769895 446507357 297331005 820536857 445989713 727998212 990819183 848201087 934529853 797768391 638188006 644779572 682459313 159675701 133986023 321961934 885868909 436460307 407369669 913147575 10120382 239042291 183008428 171478904 835920489 276993397 351273321 123744237 725880293 930948074 593229866 391356470 304178992 92029297 258428660 900828075 841738530 278264181 412157051 839111789 761167467 391902436 387857845 44723586 709924863 768195551 396187608 94631021 464919473 663022871 283362135 139811593 943490891 103587862 683698978 830904759 360405290 534317331 198132147 306472419 833373120 292657074 786350964 94963219 981769982 196927842 561020190 830205002 294305467 952729405 307147078 220850831 797345539 837970634 181606946 342543729 309456935 722569103 188455595 507626618 88770903 683858739 947816351 677391387 895640942 763062580 437630499 155917314 759689079 961613527 684967162 945955943 887385417 701095565 144549573 769738141 316612887 814259565 129899203 700130274 818852880 214489531 39980410 720704805 178933617 497232548 727123053 63353246 124046777 715794020 612136498 162589255 75592585 759389262 867539377 172762406 476204977 836109935 138315359 365989954 932303525 918728635 604740677 426986932 618920506 602186899 730703782 749775254 721290850 925284706 684747917 794158188 322270010 90557687 674482255 178864257 966301482 928135623 754706522 840120934 860719361 828864517 384000412 518626427 706732929 578092052 832499770 441007415 532598916 826449365 993319674 708412386 523804160 164892139 327114014 791276813 481207461 256909807 931667361 899163528 65140450 899821701 592976114 835555682 838642676 112808852 292135942 102795174 355040434 384885340 258242698 722067962 879482357 12416474 391400960 729452439 216999508 734326943 964328725 819379616 880190954 720265878 806334900 949030129 536487258 917857795 771285413 519341813 507660905 829195135 836646916 934659300 495782930 790566791 919862960 575532068 722584913 798636373 575636247 833236923 933221284 904012456 656437237 767730443 884644352 700989252 323229561 211858864 229609299 670989236 875657277 152406917 746609682 549826412 260680817 933850259 876111065 670989236 670989236 166039799 355634459 214167227 844954492 518853994 403531924 375675085 299943824 805086432 244856295 675752930 648459033 332110796 997089460 456164550 670989236 745554105 882392563 297181655 606941957 709207213 781803273 148284954 484556903 627806378 510554382 872973587 454320750 744344558 404631638 468874501 883886564 539757157 499591546 691209717 848840232 385304698 71439937 670989236 699883518 747528722 294071433 969343353 541770131 815837667 902971041 101020388 768120900 18293516 996647203 962794574 252982595 164501411 917051051 683329243 764939767 889290300 838265953 207425138 222423981 551958096 845108070 663225491 679032269 705961643 905365692 726729039 860438196 247973288 891646061 612144105 835251042 947082214 361555127 807399211 32080219 268252995 901827628 983158519 873474757 865749873 915464072 473492786 584487687 130223118 890366062 398613888 838382667 959513501 476011191 963918699 294916921 113084446 240122304 201229337 966768620 488928044 501912792 5873368 36416666 677014201 909058778 880154333 744150617 736789691 532473814 908678501 970593855 851794926 6442829 14362647 550748713 737256112 563952716 923439486 379760106 897937555 496337989 837213267 670989236 172096835 552029651 801929910 117120681 843735507 640820859 611068011 869447952 710407237 156356711 391082349 71269201 511453132 72902675 877735204 494920260 836473811 83978640 706387612 998391657 542232330 980656773 271931987 233161898 632395397 169869071 24458146 356743039 987784301 222654002 970572701 839299739 839549836 329185338 78972270 911191312 88956647 648091911 271874655 727528457 331156168 725405886 369871407 620324476 359449438 756162749 751897947 53926062 957524446 799368816 755220874 108757163 85815417 451985061 337882452 220969242 583135212 692946279 670989236 308934903 170058415 918836168 514537445 943005830 837454790 940944946 978041816 732263367 842363134 809526648 336653286 919211344 118942975 774058473 22003342 778152061 958812853 689574535 647893787 108526189 166737403 401044540 790879915 699437941 802776392 684371406 765599305 981747175 539607021 899564722 695630900 484242036 97841407 689570456 97533189 748690483 826178715 509140078 160424057 868155762 997454900 655366265 995619876 983374383 999690612 850116352 18664516 923500385 939144203 833394784 454482540 670989236 499421630 92574681 967490118 147357302 88107978 130696658 217574902 569327135 942362375 766747410 696277184 796684100 430947437 595007772 966078595 940315886 942316304 457544454 242843978 291251590 966439765 623696312 857596301 415126755 995077711 855264498 139839979 615769322 445219306 740357380 237693644 360611321 715096106 730248234 717355302 218649014 496890749 927481123 915404456 823904432 255123211 693353344 476597800 514366406 712804742 935451953 404646975 988709286 459341928 175450846 528841764 326020442 263436852 860113314 259942946 987547126 407443631 911226589 290852592 676280586 462776462 979087368 812804118 895087301 543329786 658661920 327386124 881936727 404500782 729140772 348733054 339737750 865080613 717913518 606184518 936202398 424441513 245950403 561133212 400544082 904574523 187355563 495878046 766625212 280599848 437238643 860171714 746229003 517169502 162323852 873833906 999804114 843688777 728467759 301482168 396441956 689982041 336120425 914186806 151280777 426459634 877161077 5882073 806488366 379433076 925322376 325851200 547283973 162600564 317321264 556973187 790964564 255270128 680789450 617537230 391570606 823157822 614018899 224457242 115049685 299471813 406804083 967744579 679366959 246193584 862781705 907802136 709662527 727346737 921611700 748417220 999930362 181210342 662295526 792563269 647109821 752856600 695499881 966961263 201471822 336496668 623277738 134836502 575732231 705413280 744197605 659939809 801742673 202836370 135785782 704777798 213838653 803458969 453889781 790681379 725694499 136123609 282582763 187275704 729188703 446780495 963882610 136040182 670989236 202339356 279889237 769445579 81172913 907489327 590126969 841433486 794722387 465594232 689256357 691286234 990217822 373500409 688115962 329938573 413421141 742431573 338965873 126510508 678473771 874419525 688668415 800501564 395878800 273141979 707814335 926125615 295907323 735984181 986301566 761435068 529477041 991121030 905191268 169657689 786563610 128900510 261423030 431940295 164666717 330992555 446374168 162189180 956334966 859519227 947186121 151042352 782377917 34841445 910855144 603758221 733722885 996367760 696340977 185700569 720913938 670989236 764404929 993537028 972694733 398192742 787871837 776498556 453154733 792130461 824446686 876085635 745775963 383999275 728765630 291829425 958640477 794460318 784857596 868515323 512626379 775759554 162415705 738681291 366997604 30436828 697101736 111619687 879499495 360051804 259621035 152195557 638331257 953136445 946956291 277032633 888118833 863818820 240772269 185419423 528330156 614824505 973958612 462567417 954426214 775658290 962082260 119781247 717899532 915367945 31693609 411004947 811554457 450701021 727721594 209405839 803069204 686506648 264948915 59192311 953766193 708364296 302658829 468583757 822986254 719698772 828032824 860347758 269748105 968575427 567992419 36088736 321911325 112434829 321477657 675144332 847714287 27532653 784556266 383117090 504779670 674141352 406479414 805733602 301593418 246972187 875249298 198549492 1881707 504375622 370565738 312927020 530106871 827594169 881826055 689801636 32090671 299080511 891475371 14123902 791296864 950456425 877055867 939882999 222458578 21416148 124204771 947646951 788977566 272117392 864928143 937090171 267481495 393502786 431778158 984003501 808182471 911679546 902352734 488873560 798326458 436255917 567913575 533110195 981704360 271087116 579862684 988516539 385555235 757472163 798368012 313124205 97853355 687886640 896106624 857685341 903787593 844677955 973863183 810401053 713470388 464039432 738209588 460121353 694062903 973367984 951101967 287521289 679958074 418094774 671277791 933995002 555812403 942049608 183575011 824072683 823345842 764236141 537258109 670989236 40079471 945644124 673746724 30352890 737840234 814104948 313842971 745899678 450139862 167076245 870632143 845519839 376930629 671239711 933624630 700235092 176640490 684049819 884004506 592261799 748174022 846805458 235588554 975631301 778202010 412553931 132818289 852023323 265510298 887379792 809567159 105549432 573649263 782927088 923581526 862741461 831305462 241151675 358957322 737851561 897820837 745702949 414950360 841222540 160486027 434488191 770468694 591128067 998300267 730085003 298251095 157751774 123426352 738915121 547859077 791006340 990552706 244300906 95785009 101993399 482966477 203048917 827384218 349077718 339829363 834989548 42195662 80648070 807683887 835318866 951107536 349594909 464610304 633351346 910944110 51291230 697059462 365818298 916225145 489496138 857398533 102050410 224056840 31309126 297224516 812216628 382910560 293149796 943045682 931409136 809878652 683368463 314732424 808622145 600504769 833991831 670989236 61414491 821087961 945367655 355592022 911458296 676794229 994931211 182695374 413199558 519515774 992074647 726814787 860425737 278170548 68978154 844265554 334132592 965682920 486724732 670989236 955479821 957862598 720273236 783357806 499481171 823753611 670989236 716402880 239915606 412521890 815011075 482064037 49446430 632822362 883975097 736255080 840890457 619147784 780717587 866675364 558370746 445284543 364954489 722711782 708013472 807095748 461475339 591524731 252097060 783792302 458874791 570739719 905518460 870393605 493278031 988691656 795875825 281673541 718872798 431799001 809078145 377546373 269443014 913176137 675097997 183016007 717289622 520293574 415026080 362375861 831787805 29688255 978723449 894325825 752876990 323788469 902387456 218230403 973024353 323563361 798534604 911778118 865020460 755177059 809656604 789508332 913808031 612212278 864653440 769364095 125957851 674920264 856554800 713479364 489232176 457737913 659726524 790668938 825433112 878378061 786308277 658948447 939300817 942729970 519783013 474360617 31579741 851258729 989170465 340010296 893250980 813041691 836887984 21957074 335848837 825739778 196944198 712693733 35496435 484879580 709070126 326802824 729415436 423048168 563257371 461768745 772949323 81495004 679515953 756725991 958223535 704235431 287438781 203015510 363570045 632534336 562632334 814612350 288945165 232372584 263302567 747712522 390042813 580930677 7943758 546517068 917793590 465727439 126527866 189485914 660499352 250306474 682926894 741394517 144048648 670989236 173591462 744992566 670989236 65615140 883786779 446166392 814701315 413386734 172635933 785302521 486739076 926798246 502743423 393856817 670989236 836209804 801334410 708072025 950728728 792342849 49749449 781872001 782716102 870706831 433437391 214380196 925229670 674257632 610835949 168953655 945719670 787499912 483043926 670989236 741627175 415819394 898019778 218781763 138295723 670989236 870661346 777481552 879366953 23408260 550056778 839351090 360279326 456123067 273236894 110267154 34787876 155953826 875755989 404396830 252897729 298125106 665541402 744232649 670989236 999828845 623708461 932402421 98093641 599291222 25180386 380951622 342604264 601220087 230504245 528894590 230845854 422722996 477024341 971750920 504036860 253644694 436897339 922139713 269110416 991955502 755398364 446159777 607963592 840390245 381685281 525044106 248099959 951102525 508485135 213070506 244755734 909397267 314673730 653926401 269379635 32889930 805968359 70087026 2952507 691258394 427086643 47904814 91661086 785480573 84644328 847911329 845595098 777677923 919795563 640070309 642973104 65548935 868999298 417259527 934120740 543185946 514712825 410804393 84378739 861241520 976452867 87396294 780682531 987141049 923850695 577913138 27745178 838987928 897372372 763388029 878918958 892505718 828425005 659607415 687317564 677536367 438158093 559714204 666937864 690361944 247173515 589339667 743178452 438383822 726856052 582845630 820070832 537244035 166391413 991493560 990704846 411029953 796799483 977216745 510098787 685367385 318860390 862122249 722918416 781548653 737431225 763778832 70769581 932940874 868881823 670989236 949962157 154418395 783710925 996715005 973024381 437788078 433946758 75377774 595723349 878641956 221729323 783150006 202884370 981130603 829506376 91467019 275133210 536473428 748548700 212215814 719659145 302244317 743396589 522360317 970977844 193547377 976750170 787921645 992133742 42863774 748414760 568423887 732504074 878448258 916093298 837166173 219121158 230046989 685370203 160456429 214203222 795905480 50842923 348454630 657152915 124065098 238684217 688124386 389032880 152303697 911776175 49737973 723969667 884942788 697377977 101275139 319094115 905570954 716214260 795678756 796598555 966996739 802153615 503626241 710612331 125712192 670989236 574044502 624603657 850849719 628679136 885034165 663045190 305394976 132800702 23517759 44095870 906932106 690820053 367966632 830799685 815773442 844588543 739910277 909267644 75317862 886705439 886313226 734477659 198538698 438353123 786515745 150586998 271761298 545691389 679078287 408763919 177321073 164469611 670989236 583807336 768806649 46171907 881226262 453375620 664994302 771651272 942989135 145959802 164663606 93015974 776845660 744004462 887383864 548339941 210912450 692688870 963547226 387284022 782935104 166252989 848756645 297693135 975616565 138737513 954813345 612421116 5854461 551605740 207373533 8710318 414513696 774977752 971043347 802633467 878390721 602384207 425488840 781947890 791053510 927832805 993060099 968035444 402488280 89871628 321123117 466846262 386079003 890315627 13693817 178676659 830892612 337345756 509051448 209358653 197380921 629266597 171637968 372789318 968102296 216983450 604945041 801069694 803252796 342268948 640931518 447385535 624240133 585835520 826123776 775806045 769750338 744857654 796201876 260378091 175999373 814618116 353698809 707234031 381406725 99946375 525648322 672012186 116374879 364112246 924486341 755304188 67584690 961573053 38858791 974964393 199106277 778441725 427062122 653089728 208953781 524650304 347667604 959153967 112423024 130866324 617135966 419417290 466525738 162746509 462554645 934237568 338976711 407165206 957453352 837875931 947753795 636177535 685820009 901462809 980296741 862494788 890879313 921201209 843709850 255959684 837178209 308197916 691256731 936416881 685214567 41804544 732991838 946092975 367320277 199405472 450921111 701470504 366103402 815415153 963509117 818669405 987949568 986923184 91627285 948925640 483397145 606303455 788432180 18731832 416707616 457169320 853134187 670989236 890635493 238802381 993922140 856222740 277643235 723943254 381264455 648431974 671838227 69872456 111002632 792877163 671042708 925444766 846362475 835925090 341838219 885636939 511502209 427677974 752527742 953490321 373561639 10908329 595631229 693688293 202012899 768988634 994231304 246801988 15446560 477707212 239588973 847270348 293423149 812957361 425240350 66780555 845254738 749530798 765292359 294984365 131391121 736904584 917906430 862992305 707525660 717403934 550272683 282182483 765414690 912511117 182936470 705124 911437926 907992792 832694318 199590524 751333477 807900659 708932217 827820240 77617257 221450120 897269048 716142069 939575044 606642832 761887390 50894439 710558789 651249298 428395462 753811907 423128534 936162982 265331160 850000724 387070970 939287040 731367264 549214930 324101748 842032327 761291422 873652159 776787883 736385809 38277711 115783595 758339863 779658150 979847094 404483554 991085050 886543541 864658036 454532347 995170156 281414225 13017134 827194602 311286575 742198513 782016492 670989236 674055394 413317005 806665259 617345047 895320500 921006501 326803315 581619779 201812013 203247746 796600442 986301164 307588130 804162026 177289843 901047687 670989236 702345444 786468328 987626657 797498305 881102253 215985121 996556701 691456520 231680062 636779933 82574415 848713292 935684941 594185136 806455209 190958708 777956716 72941572 48833383 100072173 548597085 783505866 684252857 643385797 269828839 296769809 887969723 770185654 922116931 272859335 872921224 771275662 839788384 599813105 580260952 488514034 734512138 635184458 240594022 954473013 103872598 875041844 573134293 703130992 646071062 931138510 300714878 97936157 852385157 313331001 770608580 873111606 713062975 754427816 396978767 722620778 806704389 264943306 33132447 514144899 471204965 338815267 934252635 92151827 802640377 670989236 992640614 864202197 885733550 366107222 101822056 392388623 829366236 326727628 704487273 6034656 805038055 321629952 760967020 279207683 947980122 952382886 642680869 694562018 135873658 401889558 573705438 62898757 808477633 8331665 277752788 678159434 888970967 622107384 180558850 904668323 592443725 14939630 50940392 670989236 925276408 836541788 990676595 75625356 832735024 829913863 94670462 226063365 690684400 778692993 977886307 810125262 865603577 860318201 670989236 176084340 158511485 472014337 832129498 460505391 226162226 320539764 795855668 635819990 742766751 822543633 908424987 322216233 537616043 280742466 73466097 740014839 76746276 28039750 877695080 866548689 762101413 628222000 670989236 372896992 193398391 977170067 362348116 81496967 27806651 454227472 525507773 685957360 910423113 202971181 81610976 76211678 822250067 259680860 199803449 713855878 189403362 842801376 605981803 739389863 893686171 592476983 422954719 801976232 573381121 645840219 620887178 47374654 986455104 983326483 717241123 670989236 385190287 628347650 609204220 939173455 739708293 128852622 955273977 768272697 899338577 348643322 172135182 357851759 756043203 460007003 987306035 872289979 154397139 639008140 464824993 925854692 832997560 105707136 788727574 637591527 76500955 916521223 834068221 740179959 134987867 998317303 232680052 511851610 996499062 458461606 680632271 756754088 97355408 924568918 548737517 901638133 401869822 360840925 882189492 378561145 95911974 237987236 839442908 151445742 961708491 201028008 687850789 518582073 963201853 513666549 431551421 703940064 418355027 736893672 810158350 895651196 906475061 67268237 95647933 844780767 715051846 814223444 772713680 464878432 887618993 150731251 853779838 488553677 619939351 764222681 661206009 942856125 709410327 115283580 670589358 191327935 460041015 793415560 187392196 123942170 479395412 962303473 479696231 383309970 96750900 821907525 871466932 953529461 286175489 973685545 761326194 816526795 456333575 46301816 861671780 329810848 968052702 694808054 885221222 976351229 858977391 713437806 817444992 777241651 518040795 992466855 528427089 782876490 242932923 63097930 806413328 704524416 717041547 721005202 945753106 136371758 896142349 735729699 938943469 335073036 64716002 672981310 976532465 960421410 10645531 878245881 556465185 87216793 415517402 830999840 345242964 993100995 991963696 714690500 670989236 865666288 897635833 29910499 940692514 670832353 957208664 899440896 771227122 530377634 660981560 82007505 690157077 725898929 177266085 512751940 806671758 341129468 513623078 774918448 634906292 364024354 356807944 985627024 604840864 444126769 833992968 115170886 316622085 594840335 768744792 906838933 782208547 453976397 770894836 740042272 144329383 439128756 650800211 779263375 813091398 975581259 862266586 152834562 882722523 866240829 776804979 643912774 530692134 791187872 104867361 828193886 829995820 732597833 851064518 943630596 952311194 185497801 825098534 911290912 878923103 190121132 367508039 703898662 327780487 900327225 110490487 768931442 906466039 574605231 187386178 971601532 702877005 839360992 758738242 832771752 149765285 828256436 835132661 648517267 200281491 472056665 822760928 805819617 704162530 670394854 607474408 414213752 177650919 375146089 859076051 972432807 864447425 692182187 515740737 86759781 886713847 939605233 748900150 745456671 114326847 643088107 195555561 704362571 980584793 599964756 780029547 829116473 888452696 597527413 189833134 555826398 824818157 203077856 401506564 696898521 974640158 473080995 511144625 527267864 581714010 944445193 224776369 733543705 817335963 444518110 376993370 334400305 333917251 263420819 462987351 898348457 288653920 425901657 210946925 355948851 964754147 447138654 195586788 386483705 572483900 835622176 993632939 873046723 978303453 809034931 548605738 809931644 629396422 207378140 687966332 34974456 705137198 742818524 764716751 295961131 443013646 806895631 750176060 172685929 908310128 59048792 917583140 514663386 157270364 28911107 722858313 529505794 858699583 771302714 602861711 834909907 794761562 6296006 583547890 300381146 819310463 833800578 711701515 124779857 701197187 704744445 139544924 706561841 290871859 459652684 518726188 281420526 517398426 851654643 828403216 691496970 917938837 304320443 988246572 312763562 470506575 393122788 964155311 718935394 98861419 343881040 693245193 809175672 473924570 128254754 789324462 990320475 690411450 699854665 689726568 371107107 940538846 683599757 381898066 957578089 802294899 49960586 996470617 824440114 838695104 668012355 329223442 823456190 461711964 879661654 209723961 863986955 346054674 598369990 421601675 768379525 581985766 936498259 414508763 199637061 348805282 510407515 693633644 810665702 874758526 17302484 197353334 685095305 804517621 951623287 266972716 251505166 334516929 991563654 509347360 383698268 665477367 850784390 277283264 8726815 494959546 957279940 39744732 821262167 698674755 627382318 638411542 811351025 734591296 625463295 894889376 187789869 469904483 459470419 846203494 704693977 422469830 872687082 103937795 856454706 427713088 878714656 639660370 983880419 486682738 308454792 332308785 910021505 950959809 808377565 707769515 425251706 389867179 755982081 720009343 679729259 748919271 921805983 881183935 453786044 719796947 376631638 630853095 546080826 935411921 711072949 999637924 850399212 170822196 432494894 312370321 851397504 379664834 538088312 948195430 831648927 946198636 949472933 603483906 749041255 975412568 120140157 249897446 358056118 721433288 861893905 840039921 880681542 446946430 855191799 962707379 811034303 799611840 780095253 924715692 453216124 918521341 236341936 392738132 958654237 730204438 891526320 525579017 322461970 912674282 679091990 958805687 451593389 782714155 752196149 243129 521924227 563107552 904061408 220677395 905468677 691972475 393590802 781500599 101455971 907370246 904378148 330216075 828533762 332161870 50916511 156075649 920738829 997788154 33925256 718273092 712193179 390790283 151238769 778531452 125932204 812866275 994998573 454047529 710532686 988826941 73972519 271666012 994965610 821066478 154658867 557971942 425993805 207573376 148614298 784150868 589687991 860599770 969442095 490962812 596295803 670989236 735724285 456190825 729949531 59779428 404477546 736154012 257633760 395768834 108774513 857651535 278208251 857267669 944364192 731875816 985625703 897557229 568605321 887220819 955949748 883628189 45398381 952463283 840459134 837306779 763974506 795634599 791485664 909969378 519649832 685763163 311930131 928252740 149100671 664825126 733295357 731061368 489902823 10496590 693681792 848250961 527712424 983020762 906572981 617151036 765093142 385630028 709819187 657703834 453907863 435179707 670989236 980135309 193546616 943899478 309026196 749250167 513329367 239085993 342226640 193277754 574249856 786272236 975979174 842468380 849508715 990798567 37619017 972399963 390269663 838606696 761121603 799136936 903514221 918975604 899510182 843057429 936207183 761007507 944924472 645986339 847019097 129052498 936738617 316294393 103328265 724816686 553329321 783742402 693910270 674985292 724841429 463749523 463987150 817235890 722584266 930888522 343418235 749714119 279969162 898533904 924314845 492266415 153572716 250366303 813667683 924126960 377639056 630390550 912323497 418686107 683137318 751015188 216760294 240611798 430674128 712955786 421259341 85732675 670989236 627666844 881772863 84574979 799705179 375617221 849955452 5654890 547721656 754180946 779959072 977175656 439635987 593222264 892813593 727430069 887544030 803944732 40146235 421076734 592344810 340771752 335827465 139646980 420031520 71002387 670989236 797495982 633534452 326645092 748436689 968887639 549404131 870903683 925221985 930709987 959072027 726956378 659691365 628866263 898072731 670989236 874027005 585495975 907604366 44719088 756734245 821807176 286507550 635071806 488680617 799962458 294733702 464035555 930083320 912743098 796095127 401060168 873971913 849769895 715820905 990560606 868029872 991266408 985888815 913869909 992863382 384843156 948181443 255660984 311877061 496763214 711402650 586249271 481038727 630735520 959750443 643571459 564611506 920344018 699147252 530574649 669763739 196557464 318878908 714809190 987792902 814328738 483492998 289587048 692724648 463494828 718994763 406682206 693535772 317197502 706318430 746710168 730197431 353176456 30616879 493008691 34927806 880721992 993369349 526312367 115871341 976551914 741937544 63974313 393790606 693861906 127931547 746212670 580582538 812016141 318100723 804591983 395632062 101594614 124698068 482284759 715460311 679123787 731326285 838090875 217734707 986664220 177681543 470605328 720924007 837542373 925918476 9422913 482300542 35759679 943973480 600595896 310970607 756158929 570270845 236562045 997038503 646941987 954961622 844466699 673302515 879628583 670989236 835155948 843788941 689492185 45483652 827838535 393510173 302270754 698685245 310838771 709024664 75653259 838427999 447626189 440375764 370514470 306013305 723074343 359486600 799761198 56702130 76711971 973984458 215309464 861094093 870594033 889649500 910204201 252441121 27601263 866010716 903983947 674648173 384141528 586354390 743209498 719526857 848609843 859616202 303999724 455150735 787343482 857563078 416515675 932328291 517972251 806586034 223723473 416863327 411220784 662272809 169474698 36871818 383478393 46661495 174433134 527085778 376816858 672418145 832532202 707464867 892808199 854839003 670989236 809386069 652462754 980998796 856357331 906743865 892675861 865862920 687847062 451434678 777725303 938567920 23171242 445151708 199288611 702894573 987043356 890964326 349095220 613724376 993548795 283230977 836428336 406024926 805812578 900566605 952267874 906549617 859566168 544642394 684692365 175720822 756309929 777161324 961284147 925809645 197109211 232598343 566798699 722962806 84204566 757824965 540517362 343426693 793584561 670989236 610610360 67250621 773131979 795531672 20764496 820272007 503807015 481573443 99105251 16575187 646266386 374811578 150293132 966868319 901252086 151125923 582167816 240483326 686191991 365565789 745832814 830275907 787884702 855354430 689286760 983987746 197819016 849973126 322052976 919780384 941755806 982936549 581829972 968118875 767901725 774550833 879626135 169136339 326989357 557316047 974387448 910752531 735106256 86532888 2525665 475337853 565469675 789068701 140715300 859731066 638854854 960665408 93616069 751351985 876671265 680086740 404977065 953133486 670989236 911538636 186033110 204038145 565271920 240238360 924994069 150875767 801619825 736602666 867454720 805615726 143745503 833821383 521007419 798647470 960026136 95375501 87351579 972690636 385235753 516069592 678252417 670989236 394864002 883597329 379114385 229946950 718353057 286158326 854410125 621255882 554375006 609972725 116435623 612050115 948016030 740103233 694606447 757590371 77303099 810908719 759810087 135281140 391572374 860941509 795869146 897904428 626205629 765706996 709207510 843848932 844602580 682415878 137253136 946646915 592600973 543951874 287064716 413310533 554886721 149198909 64787171 681346723 990969609 70177240 827148893 145873763 999082342 410933745 794609872 670989236 830885198 444998112 172991103 703633815 604242871 989730641 583252361 20791853 771294311 10641415 219963868 73847166 725364848 319780044 258819077 761596760 271443624 733445993 204006721 861549064 912574693 523762363 952338743 465831991 980590726 994063827 76909833 531852620 699702237 398010903 184328275 930042684 899508582 818385526 71282857 455674278 706994599 19946282 756306493 649808232 365359953 316227148 319506256 579899226 879019215 969421027 700126006 951340032 33981844 478540967 869120644 715052495 480320655 129704933 500103818 946278714 45678041 865195609 533008931 556200038 914852363 900488648 219154796 5732668 821463184 297850127 575933833 910173115 435530650 969244552 896951466 318193162 156102628 706777913 978246326 588741350 332779205 703244179 81767400 51725194 497728449 158615896 979549973 628604439 819019546 364918081 903359002 801669429 123684507 957442232 692708749 156464623 909546171 675715187 620953844 668299923 699284451 607770798 24301380 902630735 218907726 954611863 802163232 72515967 899182286 89193289 504261434 331748921 441633022 780894966 229218553 460280929 871037353 750272307 342172733 991587144 747574341 662830220 415371594 670989236 859013380 810010358 877954563 576041635 377501222 725927540 762353209 64087608 868102753 822889389 713283364 724958961 807668871 300587661 334957934 983730269 149543872 247889702 171567445 454466481 798934052 938884856 317556865 779192757 550554469 663576849 367028277 903119649 356374836 106206027 856550757 65594423 981808835 524054787 426606808 505645619 187211584 216472790 687258069 114186222 815828308 327499773 361286059 298445917 896335798 954683265 575643808 858342181 381956868 270226757 541274819 833666317 795137976 810092452 840914333 669437136 682475471 346597154 621555722 825943871 708481934 444917584 838014698 829115248 17478311 230435822 716566103 682474772 909939289 37295128 790607322 5754313 870425888 732422492 681618959 782796767 91857236 883540359 189560339 19155484 670989236 858834734 935421053 358646000 982817739 847016728 498288532 138254652 77823438 141815292 405539706 488210827 946104604 311764587 861190063 888785363 889181417 932969963 204449286 812632909 585929868 775699270 902026533 709938586 453230513 499661502 785732268 979776892 332721911 879277613 244846558 699750364 916555298 26059057 875243261 341180363 378291753 978364119 392175711 284112918 845871285 440730495 24194169 485109753 108036144 818380239 944242410 602650415 575015027 886462099 609724826 346560008 395672573 698239921 654602284 364510680 941635510 787932350 89520513 646960163 173273986 552987862 574958756 989066403 556830774 940146929 600696241 686966331 832817754 96327243 897443408 668946032 186992029 43202733 964588135 796827472 351061659 703995932 158204819 856816428 191451313 843451197 765597764 765354415 462090433 522320768 394477858 430965514 182122745 756314647 506800864 715627349 769937767 924844131 521980250 997612734 705230808 597007311 185335589 417505121 617629047 674624905 138281648 983024901 499673589 794736111 256743413 393455493 57590872 807765453 380560442 936322433 748648213 986920990 669122721 665167265 51742925 881470186 701896223 57912833 508978531 819635685 919449665 526882584 796050614 651489439 233490677 955050843 357926563 460538985 237878927 198769510 629012702 658932480 110252707 765843894 328038131 58537639 109109666 359482846 933321833 216491865 713833286 761027187 480459450 749354947 232074488 795220251 260911478 899928992 50442793 833955031 804399279 788129797 819199829 968039370 788876403 625849741 318267765 29031243 281430693 100797903 933772969 691521832 973066343 855371761 985024478 775663830 203904776 643830058 994685 811520247 267330744 850032603 188452530 349953036 675388331 645942288 467416456 893148537 378611385 877535452 989087124 747706045 292892995 632417582 670989236 574500824 968310773 730818523 623491651 747841667 460411420 221134468 896480467 629782299 923030601 166595708 906270533 897279456 517204956 9537415 177879060 921840467 676855300 959110746 935395984 120450706 828303325 670989236 606562997 737263789 17611210 816351705 171252607 142513638 714868369 120076744 208837555 136315845 68970228 739931934 904400526 805095143 162056061 790390886 356412967 928811584 710983591 823553178 879706832 660996019 251529216 845646242 373141757 999221605 736825341 925354355 193940739 219591947 784947264 546027507 424205129 646481221 771562397 720306985 42732056 877536650 386895510 939017617 900538042 857277126 729711513 799519634 870309862 315997467 176696700 278455057 993210635 979803158 13133180 579466282 161211549 962739592 819211459 205956395 722632865 307499728 331596563 804893742 829384937 246346669 966285608 698868653 749256614 817207494 724794799 969071193 822688775 863650342 507901401 977779666 909858126 116701669 253375591 767281195 826346701 936621078 967373024 145091809 939561462 187419111 748661045 791648098 829805512 829889530 837282522 547579734 346175612 110752212 569523 901824466 694382332 694944664 277819205 585085906 927177293 952489945 868867391 176954054 724514533 346204494 539267529 693397796 161650487 237503490 811906452 472876465 693141869 167955915 162799736 784081745 191700623 301153877 444745232 690028575 350161672 827579509 902078621 477229473 322231214 690961379 71516339 705441172 279892767 719989402 898890227 758659723 940807634 67583023 369695640 897097066 532201309 550083104 963122848 835814885 624738039 817231852 888443024 718651960 776040845 229977158 980949755 180882548 74476442 843825128 657219754 308931575 821437788 581632784 577054540 887834160 925086029 870047409 919831876 906876065 39158618 256684107 412564871 455165478 300119452 777308686 757616299 596127334 489323618 172686920 174099425 331543037 401890068 516655281 818310836 917385806 40339138 543900286 531145890 5886221 766155715 266401888 188598037 237254148 268458293 703716223 879157622 939895123 428313307 432882272 916620883 650932630 752511645 370813168 995103599 707734055 1645935 478812041 126790174 577333294 643597944 312360499 422447860 971125465 206173301 758966747 674591 548319474 810343551 673871794 668701842 137665584 540261262 979964298 892202581 833581920 253056354 944455456 146732435 171413627 842758877 705710740 721993344 798997045 722467562 670989236 829454256 762510639 687916427 387704788 446490355 847070549 318462704 883408992 178083680 186333712 798323660 674841700 776142838 982865957 856130160 237418314 167660236 870871639 670989236 680596050 351383338 828727900 210821903 984508296 124806289 112178427 507085146 67493032 692213237 330842860 938823521 236369147 720614859 724576782 871173950 325997830 861045265 971401454 791484492 355374041 55906030 643826654 903934783 1301941 957621683 386723034 955352284 426902569 773259571 709791499 415315858 846104702 583784318 632932728 243719387 451930312 837327357 571862073 322000298 110824554 675038752 947629434 765102016 158058849 902427442 971900391 879913564 994783909 675549859 200027568 991998316 294327521 464848325 179867274 895753756 701469990 291781389 710997571 760948573 89306942 673868501 333715146 707778336 860800560 766605016 444295532 734379195 975449038 684744752 551320444 360506075 447022635 875472377 118187547 902890398 604742497 687485274 987761272 110261754 923629010 518763969 373104729 721310716 687296911 934120568 996194808 656765439 927236896 866325233 739531598 152166631 580502736 644444579 874612711 171447625 949266433 926014276 579000263 60007140 155740000 733451653 869703548 769776678 656068239 549298434 284831140 978686104 354994646 129087401 932330151 474065167 147588095 91336170 586794204 867162307 59546806 882990005 12358090 29948225 133038079 266730130 722863992 253115062 547799803 307212516 173336749 888260091 293726123 760023924 480389142 265171314 763566123 789128949 338362731 999805033 117147359 979049305 398689224 264315079 574240301 845367124 140140978 100805824 463161320 702053837 353506916 3961990 203312520 177557061 445232191 185144705 925851273 586712772 870698252 486773474 962332744 342171440 947782800 941810891 783994133 961959372 536947994 529824868 861503046 367653354 903211379 670989236 838469131 53776260 783111779 976032913 757635728 579953278 966057892 994192178 573721321 323223011 980744188 925803358 423540530 930375391 282486115 433490559 379357548 463759063 670989236 21911386 21620518 214310015 125274512 898608649 729019422 757835710 199192239 229140832 670989236 466304757 717290778 744930381 893638824 295690971 770327815 225712377 994776897 336369504 261803829 157346509 881316956 878702324 125720009 215168134 855086779 580596244 343708531 604325973 205170295 424792658 516229394 259745322 285197655 44337571 932169769 107487699 171686565 714339367 78170056 19437998 925410484 783934284 998952534 771897358 326934999 98820646 456672006 648028082 867735240 69030719 324991853 226289716 808125726 833808368 455589563 361569165 596288575 336126658 839583669 951433146 145026161 763591909 203117094 388774021 714580514 587352000 720050226 306462062 662939628 744707002 727263408 822437102 755972578 364687376 509845830 18833839 995746281 949930769 148625479 271152229 819445064 69660398 153058941 952079280 910258049 748651704 151101002 342322263 678873752 875915054 803852059 55354206 337825509 670989236 788886923 395245877 66654593 152237398 708515928 670989236 857828680 582652519 905494435 676616449 83573297 642646444 721717003 670989236 799066868 79956910 350817613 524357099 914563608 261478728 783211286 994079684 612961433 813700752 702991264 402668921 291408372 40306258 626255232 242533941 439985467 421050286 142811642 984123564 829621168 30407268 771391321 759896954 377719736 903966605 981039708 755032258 681536040 689565603 221024485 663809052 358969782 751559082 731554682 43537970 909941735 125187060 998646284 935298693 981286594 974374025 721347352 882984100 525818245 938077406 935762202 761620239 845397743 198406195 258484284 771135685 994326041 965726807 983135401 232079310 103263486 730193197 862560766 461749464 293913552 787608512 675848186 716960466 686018505 953571170 118885202 942450801 84398799 686739820 329703904 431065715 913086810 666324300 669846395 907834777 927962152 984802408 63636487 919465208 931221920 214747523 288264815 10303534 903022558 916363608 733780845 224611002 830223487 670989236 8757371 323837285 998334588 968314242 137141311 944192678 329037807 839833523 722248190 909575597 802393608 835545971 567013735 842048824 314039591 679168136 683578755 174909051 797031385 111885614 134353529 491331986 649685442 312023070 232617126 756391503 816243212 862745842 512703128 899795724 677068497 698358916 765164116 150585433 722181929 524594432 871006087 794027472 556396586 830968066 208274581 643576750 853266442 91936697 405075812 988513382 900260134 609307485 670989236 956179462 722301215 224219833 387013289 938989307 313663267 994576928 742524026 654166913 113810325 854412854 312912061 715637586 491719256 822016279 780674484 99286295 188103745 809032919 891884173 701607186 743993900 210495356 785462455 733805599 392154099 83377701 764024895 476728263 91102943 526751512 962787970 587027519 4039832 612968388 154863395 477515748 751389575 710106056 632942720 847264207 372206235 706115420 934553840 27806407 897702111 578031968 53195544 551188713 96599564 291177899 346296845 782010712 60223211 977441781 913239423 248257301 172698148 683368481 924711716 533021431 19723402 601494472 779667180 577197092 867551442 98321135 953489790 907669627 888917225 941015682 842319799 828352488 806506539 625802729 503287061 14987512 910756238 456706391 728929430 978637733 779282021 817946711 110641673 770343545 918246333 350983131 237646250 811839957 145720168 368988214 559115175 912064290 914603441 28050284 256312790 755446600 970127523 797413681 817656446 988384265 661538560 753240606 699049816 972933747 649222644 736372571 335192870 975642925 879327783 691368611 547338248 247675854 523747288 249251572 716775022 533766800 480669513 936837949 420343021 869525577 962869713 678454947 99465807 214665777 771201281 954984074 810975590 576195819 672792921 358840671 923909059 480356191 882429363 444087733 445407998 931373257 60330544 999053106 844032168 396145524 271681831 424875787 432055007 465264942 30950099 851869576 475922073 907351685 353207188 54580042 407533902 745935496 19340928 275271993 972482154 710650329 996782951 231274819 689802185 98823749 570699483 121970296 239863162 69372406 797431717 924708782 884107940 209212834 840576776 410466775 384536048 743104852 764050257 671167060 892378122 446488352 93963038 484513702 81025954 386748761 798336732 761382236 898053230 764938846 978203781 33685937 521659375 840545819 884367898 10842309 237119946 262913471 354289065 506523493 244855845 671361942 839952000 903650117 510368001 604940271 725972500 893603491 29359784 705825870 260441681 826847536 656393842 355903309 291187819 384808314 498828161 788276126 542089332 877891567 344186932 654854397 767082566 459746275 368115864 154194029 836690982 686111343 919608927 875210888 706573340 149387366 996871493 897020920 603752463 356484831 797651849 742823172 670989236 938288682 879684380 921643555 398912935 295659902 63160295 117512709 488717253 179860839 833847322 734906370 84459889 385620346 346623302 116875781 587533153 755003306 888359760 902685360 799663028 99151914 881333954 867577315 259131443 997046243 787588565 63823629 691681018 718570974 2086006 772038248 531851308 842971828 934200426 863574852 430444887 406448637 875781579 750478284 352775447 745885991 580074687 503021833 937693944 470933893 614312370 413040194 302471688 506965037 277105675 860821668 710454064 880757552 628142 934649249 416588509 722601151 573050425 617528087 914482287 950841390 717361420 966134758 181563693 921303731 870470762 911162013 195044350 496173509 27393275 716440426 433772136 236517631 478785350 682338440 256051031 116833390 334719200 317020245 329098140 271707222 758304014 664772511 763569566 735136918 279305432 107400894 115275385 27421771 678669188 202450479 816729844 837191773 571412498 57977217 97013028 977083594 479092360 132330276 744848787 112629866 979395869 779158588 643299157 237925616 698688581 736942144 150433386 399036333 972306783 835847937 312984402 719389807 555921304 516272854 704958248 135412655 952480333 17582861 982834037 255520200 763881108 591567820 90801288 878832426 875368783 731250209 657089287 183167198 512867036 692899936 686046518 909957664 783585981 932079784 312742716 425982251 893710113 570198437 930852769 626624336 193614067 869571005 628925618 991547485 745183979 936853571 875529497 801747580 222589253 329002440 831386195 460783902 476526698 860804850 687068976 373924847 784140116 86070014 369093224 531457251 928933146 860547112 946610238 793644545 454118419 297745426 689285767 652547979 862856859 999814745 674894392 259248399 517611167 331068476 321927237 398620797 91277962 673061268 207258527 200280340 621605550 670989236 225584839 581763433 837024266 903269186 717836634 959512670 811955421 583592001 803804587 673316496 871328139 891363119 63392318 200954155 699334858 851133270 774254779 161791204 584810311 322191448 774690512 858007714 337688554 189898995 272363679 152225400 411162147 546517595 672106721 34920376 925417725 716189656 512702608 521244891 99926757 550929975 787020665 990350572 367696450 243722743 336608954 874650431 936917144 437125176 714358972 451609453 500833794 483035029 998414126 905897214 286845447 984338809 713631655 568907458 561461080 161863104 873148727 132963036 503828465 588519715 703732967 784592094 26798476 842626422 842417771 837459935 302020980 40933609 142663893 447335401 289073413 746665459 798754368 742267774 155478690 545005384 220651966 647988159 390647614 249603694 845651104 252054904 822704564 974277220 331648505 477456517 642722712 728866804 669391123 685337745 725959329 924138479 152370055 393813464 311016572 211075951 815893726 357553746 701153399 825694576 831294501 707919748 849287788 945187616 511521428 824981464 364583594 155653987 287281939 583821828 363539554 43448909 737020103 424778272 815696727 779725878 926068145 755364100 987715356 862719615 974930441 923181652 310360633 699486614 34405672 601130457 766664803 950258980 445465394 375600314 11822859 792085746 251447908 990689060 986591652 70474789 33095357 904139265 523992923 845290721 635199049 904789575 814251448 488551324 656348052 54242424 180590894 580086616 505643821 804887772 421808430 702040816 747614495 128552577 659441627 65706839 870682594 253498343 624977911 562091927 908794326 715199012 35799687 520780278 327895415 906389620 737490243 677420197 881153667 943271110 582576498 726035841 109055882 112046263 894826185 567102122 767809908 796982287 882981720 549724716 742841641 499821519 17275253 987004131 871258122 896122880 376424226 395485224 892208092 435904628 674691791 188768509 372733216 25742293 519498994 612935201 344839603 470973514 919636205 295383628 643399338 69315784 399823606 260899867 564247687 23713852 115106196 253900927 937390270 847236489 867359997 226373091 722902380 485278745 733408492 345165801 801626844 670989236 514491506 96117121 514844863 684093092 934294939 460455543 793818562 686455194 957756143 368639982 340874409 722102920 717374193 413020246 307490521 503466020 645246918 410525813 861518324 26271094 728217709 76634915 843861297 330532957 557841749 945217284 230370991 795008910 491205555 895834272 996652914 834529892 636137357 328649759 860940334 758353735 851086241 291410729 685750112 609700231 410926799 38949641 846245881 353542259 637395414 923095669 625383678 975011791 670989236 382111332 484484849 251632762 658377147 259902363 885971156 133910256 723636619 780969237 720844910 761349452 953651964 741366540 798474196 802316924 917510034 915118059 340193352 854444413 967626348 949918084 886328738 764707859 952052524 342446324 670989236 37784182 23756259 692937514 414660386 866507074 684924887 879962198 698384497 715448912 723340322 890656762 166378553 668461811 968005627 275469754 781877029 817425288 503143313 653219594 693008708 856175715 745165437 269864399 578398222 815726799 458347216 813951166 99990844 471252823 801785477 577050359 988876635 693747395 750447555 725475129 558658212 874940117 49296057 849315133 11962198 433743326 772312332 723905777 836127603 885305419 55640668 740386136 407038406 990157974 796224381 79381745 828245895 931096666 4588651 823997613 941751558 914864406 194818613 311285066 15705592 791615804 56408627 670989236 171581193 239996229 446099406 713813853 683443261 652721265 833186232 305357080 546747479 997668777 843859358 690677275 34013710 764302689 421161200 685043641 965560143 865098424 532622976 621527531 967707982 579380645 321834894 988081167 670989236 256738526 800894715 990820132 776360037 561284482 772564848 334146181 784444018 818543498 859679245 905866611 550968403 324233689 87921244 706709185 453129415 727211080 232462559 893063262 754476812 984168025 450970569 544084311 721530283 795682501 695359271 547656321 99006381 959353665 701816409 99730663 948933215 64127713 975309199 306163127 5648396 957980595 963679388 533425116 772820344 648044179 161749287 327213641 424510453 597956272 810393469 64104163 979713356 950982663 958967537 349855438 689241619 813059820 961993093 670989236 174427463 184942898 866897793 109711683 117093049 42468152 713505190 325576359 325520022 374561447 654118424 510478834 876909057 174418420 618848201 741465441 262993771 740358243 678011132 808076433 696985837 458337563 889618926 463558047 921869677 872923462 964506744 780343248 124955473 579132018 63023563 243615495 300735731 836957129 631224055 970530886 773111927 831294649 367405552 804193349 323404565 572068966 53562619 149959006 869374087 697839106 325405027 489758127 285430546 990484301 779488232 273276507 904715605 968071146 957524081 181658499 657505178 883970443 800956108 838797818 348746506 963098996 892221542 921566416 897643828 736018994 779621153 199483645 133020229 956708685 856626193 298994870 888903809 102329388 565082870 763599389 783919923 886949778 706971342 224341787 780837974 254624112 577393647 865266685 415259854 384026646 370165298 382240686 37399381 288441570 959335105 686544479 212326323 781715426 834768485 583902245 289859 498125358 729383803 827734940 780973033 670989236 272813279 920312027 949572001 751872289 822982209 359221510 580589781 873731537 431909547 805155295 942391443 9472995 992263243 694399603 149382382 353662609 934201792 962941581 726626391 597680527 915842765 803635191 836059297 898374565 853379548 743228490 937272566 727026880 539685131 626459311 832899795 851188649 818575987 330053823 430916801 852159930 815001205 15247844 493648939 899034077 405890401 303838243 893059477 335599176 842098428 119708500 930105791 399397834 323634721 778782280 181579859 385911878 272593181 533524214 524030365 835478617 701644205 888577507 806194770 827986263 753027783 223562441 749535465 152196767 413933228 205639067 111270444 684830840 980296609 692258902 376209017 894519831 814327155 71943214 180592980 673792646 849400692 568611918 67345802 925183453 814807138 947687943 897703672 748579151 101889662 711443198 942290458 244916558 694964979 680280952 840720845 498781843 951945858 547121205 189797684 386045386 967625068 828792387 625715548 709413146 667591809 826100764 737511168 358579152 713646337 864581165 963677699 961603900 993262790 321994823 951998985 727669098 443435350 736734928 799872182 670090077 884315644 974941107 841329569 772378042 113559617 816887278 532203961 844992752 626693557 886918948 865904972 884528238 167521105 292359344 665214519 265574008 26072690 805772950 51248775 884932702 696537351 431888141 430265520 443686712 911871597 678825548 591191368 176603921 529001075 313434636 907396499 843678490 670989236 753318721 528892787 712081798 714416169 872377380 836689920 872475294 879540511 852521587 618981410 772397504 855746628 298214427 946894313 755252539 529769325 619091655 806477127 578060948 195163051 581062687 260735761 90139474 176678188 456507773 498524944 623371845 111355545 762524611 137591479 883106004 374579403 738594799 995858941 827134229 764353780 907737208 792814409 744006822 540279454 81708023 798046621 65844354 741968734 879844789 763471971 326439302 297887087 445344349 233152847 715147997 152308867 221545422 835933345 959236968 57680656 338264726 436842444 138349286 507410732 57980358 989789549 260329678 65153599 984537148 700784335 10487855 85384820 932208163 735677738 949912839 295928184 992437315 685613225 593037739 825757237 991770625 923794250 381730694 556893894 884431365 689370018 890359690 921232740 670989236 874834680 823672396 234361096 481855225 593396084 793990720 719709246 911234239 618067598 132374668 940562240 426678723 347039819 836868958 282415227 969854124 707005359 341645663 976334399 836464746 244062728 844259675 829701738 199832140 552715196 696303762 910365899 730404433 846395544 692249148 962178719 435349041 959324789 733334491 690324384 679615280 898393497 384358874 953354118 909277950 856841733 544766674 20691347 860621155 691960985 203639812 930893111 446099602 721469933 900979376 884279337 163198803 944316214 3769613 631930269 13231541 8139638 862396382 338385307 244681881 487324493 828580574 452792943 488580640 731073873 861674212 710880574 143891110 936196469 23091752 526433738 949135734 616872141 547351720 799248472 364113592 458862225 354979070 855519279 46524771 123606261 342186534 309870796 716408196 367447724 887009584 680081162 898895754 933873375 828712333 233303955 372588779 621784318 709256355 697805088 973382600 833199359 399639371 975761930 728525045 907716574 357829529 344334887 812340172 877680865 444577673 171140817 585714174 659852682 199427461 446413368 856723722 769704451 819281343 951582405 175983555 961886054 487861214 239470814 676530530 383660015 453183287 683451907 837002617 573457995 783900008 152944858 671702165 768350636 46017362 360963421 583067119 796359991 14357982 736485322 913678981 265388873 522448 901558422 213099183 758167996 810092455 114347761 726528420 535170818 685201714 920583311 34724671 407304564 332237527 605542533 867056384 479433232 672319232 156899523 957227059 483210513 814998499 556853528 770432945 830807238 708751714 883581201 243638584 945710207 202299053 779505373 563505309 423436475 728017450 690438828 849452722 905423723 857162853 400842448 300904368 147126648 917878933 334356175 800983074 291068080 585122169 466017549 945933655 962134610 336266236 361484459 703676465 408160479 359402824 152755101 343907119 547872575 876054952 953047326 889590439 750069161 485741612 620865575 686225728 971600960 908294539 388406459 304927915 896151049 885583606 358996833 841320726 268022080 794015044 191145344 830989965 600556233 281716276 80576949 269568636 217676246 729687858 939517530 928230390 386982690 987532212 870964185 164119227 859789790 859483586 112729024 870668156 578089729 751773283 537048169 428607351 554817208 514526009 705260221 330319589 880929014 376667317 766404533 857653694 676798592 670989236 753376978 967398535 884473792 834586947 79748616 144538585 450091644 650152590 726615945 732314856 215540764 413216583 470730081 786482414 104329810 887095090 982519407 823060253 892868089 704010191 152103318 861097306 251283947 102706519 885020513 955518394 557566270 61733463 107438861 787757245 980203602 98720187 587222953 488633891 860443064 139191506 257600750 923001983 966982541 456930936 526878061 650715989 617007642 799627702 972565082 892314424 66027973 131366048 396012957 277778798 729169502 662789231 265219214 35390005 162561753 958498191 685487202 680649633 389095966 764472333 967490668 523820546 903268844 741840315 869425511 508662276 836375001 148678999 886414283 636828169 670989236 309232276 547543756 965809101 958057138 858568604 768984136 691284847 969945815 149985367 898547121 122221752 757239860 610219884 726409264 971255448 647804401 513159968 175833188 948012589 313735194 208161922 630613923 895592119 971133265 264800154 212354269 177736528 174614523 313692608 680859788 731695192 742344847 100485627 703777401 180588774 910746977 833382764 850737762 715135255 294805464 680972273 590353999 500559433 833560158 641802899 877538567 119666197 769297973 315399849 664340730 159486073 753935052 768544570 235472679 522679664 841985002 278465652 482877432 816275068 771803933 985034002 851676860 484876433 570089751 428850081 588067034 791626188 691124612 767676413 146236332 301429844 217057249 670989236 812463928 670989236 1558920 353293792 735621186 991066258 670989236 732709569 877342448 71934206 978374283 658882077 849437678 978316773 853252857 72726595 156880528 789609320 869492749 364894112 147928569 623885906 849141694 789171040 819697609 325107930 777708907 403770309 685425606 79950270 734211173 462788479 997902201 154308108 990227964 13310926 394591006 767990510 742618526 673291809 683538658 140582732 713595233 415575055 883938979 34651085 909756840 508859643 855264047 776311455 984487156 670989236 770531464 923103631 968129858 938775703 538940040 747423602 890020168 711662559 465944024 742780904 995230614 708597474 593010338 47206870 68977403 529583137 556629666 859723553 756515062 469078415 860547465 999390713 182494612 130187500 523956601 622099723 605132359 994013677 92872519 617865615 361209728 951921154 815813426 875082068 915992175 689941438 477690360 654018341 141501157 813196664 713251526 973965710 187819860 768891107 733215014 550115385 119286913 742823126 954869569 959957483 123849782 811784116 550231916 632795474 763968997 4862876 569088933 427182002 713159874 710438639 275740330 968571129 237394934 15041823 591300352 549588986 632287928 696318771 151687406 786054528 937074878 186745932 975979873 847193046 170079666 209859480 768579454 304964995 768611 919272548 958058377 750516549 981638154 911813318 999993188 447802221 832890052 317125326 490189773 451645311 450543816 32808794 266511938 339988493 855457087 717645611 714880836 173241657 609038949 879828864 79024892 253643805 909554276 986230255 333239 774046606 902075001 969161522 849387190 149964414 496817819 639279635 788030547 878226983 847956372 942889107 458056356 956096544 972839815 148596986 781989910 872703521 794629172 611689469 771985415 291248851 975375564 963635162 955555984 663614356 685671083 962070596 17167897 694832874 957877999 743083877 836486231 929795351 997711912 332608543 898173647 689114699 805256695 906323282 757977171 266940714 131326381 145960600 904310404 579620036 713616056 670989236 875767265 159633441 756027216 720798406 563049031 978085593 391583071 944298633 162068714 762545762 703688963 168869314 92610808 703896502 194625583 98551944 314830059 544324668 679427383 437783615 476824635 724145037 923922257 720929116 542250938 584014738 276577382 70955292 982801595 970972632 481769335 886173359 264056842 935827261 725450528 240629540 970190796 804364343 848190017 672164223 772174285 69772420 374123373 411012146 375249198 44868722 368938051 678087158 348422087 161741646 683173097 950762332 366709619 947478616 344478837 801638569 911289843 825797116 153412585 629612875 813054274 88065358 853816847 99079890 526390645 524006225 792126105 692917292 91737201 397395427 714770738 840960972 946205096 407204090 901078411 830769974 997780551 94082857 240590362 853264492 396749884 267088144 891029322 835809414 854090905 134279101 936549965 971598765 18651251 900887237 910397245 425801308 173771472 718053361 155881987 948896223 780394088 941672058 631772980 898583037 430787387 36292664 754097450 987307622 950730359 403677449 541382554 23110199 74462724 127921706 925592667 271724028 603719910 363186982 789733741 432766463 895958063 717448016 600152402 10172437 169657537 667679687 142763403 741650972 967030031 867413797 235565121 878510047 26633345 832024024 325736315 759477390 997898847 894768550 289701879 616629427 419273511 188225138 778473599 986935309 228319539 901729153 11135593 917671314 874787068 402177207 267749562 671001352 903214228 681287321 800981034 86961269 572955358 225806623 108081576 60753208 624274938 965417765 960904237 860373540 864430314 157472288 669519737 318803331 849824218 595069508 767729041 922412832 738159471 609445253 769889225 907962421 556940678 752813485 102502416 268155490 427304428 58033837 180357806 997134800 239958338 837408179 170326121 921491040 285003354 874230046 711697526 867689317 823630186 701744404 960058480 891615183 789123642 181797777 343443319 344318091 132851784 362450984 733331688 777123380 85008949 187402048 676089443 69411904 138594566 892731039 796442135 338731536 854719151 324694059 927043295 566523055 726081238 454494627 937410677 801040781 801153102 258917880 346479364 862698288 153341758 39858233 807860472 487332682 216594398 6714803 246720037 966562809 846536832 603573209 121516600 181061190 58600214 693221938 906545793 989303366 708460824 781461560 110250504 155849506 315805555 172876789 908778569 163474185 920680758 708222901 689195440 795515984 744175063 990002436 711174924 175419604 108372607 846267286 670989236 669866084 999205971 329506026 14840053 990267191 716657469 813200348 867104631 367189134 778224454 884999771 357568159 903973824 749460509 648645995 783682030 791915275 30726641 613030127 380952329 345350195 930012202 883509248 738153036 950920776 699136098 698908142 685171088 917000259 802900819 234036223 128435366 941445514 895601934 897917078 624111618 693807004 641156625 776471536 709222434 742937799 964984375 866732848 12610079 166041896 19318196 105155048 293609724 399462849 815322683 740847820 885067837 210104471 537385064 585033622 42400897 802341462 972461085 990902713 417781178 833633348 290239663 463498194 782456109 102254844 948098183 809064030 843672615 679703357 946370600 274446588 917145565 883294467 437197716 475695407 741932184 707741602 117847406 790342281 596832500 765528 913756360 570274523 660302786 826886639 731561998 382956372 481175118 711041305 783019053 743908717 925447382 702150648 253223983 754962893 971283302 249090986 968410160 908731614 708579857 233737461 897952040 397261875 177881798 737982002 870093881 810529043 514383849 859289170 776527483 933403903 148881373 616040843 650195475 886810635 306545696 108984792 53736265 519420329 406112087 231714490 679828017 514214153 681465963 736943608 463925321 324707716 734318833 954236985 81803606 363803798 718046363 536536362 549027228 808436634 771412707 632544563 192829276 373331944 783875122 670989236 221715288 871718311 310705698 651625801 896431423 813725765 870448704 894341900 684781428 372831539 281886466 234100696 271000795 775403601 555609102 718367376 232632519 171361016 801938637 490615022 919455025 998056258 480772803 284925469 68339329 670989236 30550055 832693665 795441442 241663123 350607264 673231730 952494834 210424725 167595489 160276928 794035802 976876143 55732542 943379164 238185029 733436311 210467781 554278594 983667852 786680329 564187575 985096838 521010390 46419123 158311224 873222084 865539662 517157355 685172248 941103321 336429181 878510404 680026135 485205021 971407232 332098118 143785216 531002355 624688455 347410900 926821752 13105231 381402309 32749557 841319117 891441786 772417119 968867786 647644112 732438166 54033819 828692052 802439237 724249125 897970348 847444922 404043994 880719552 232593838 866441680 417206189 815386557 92734204 230912041 915259707 500120213 254672038 721830621 32331328 87207279 595115181 626796686 620538022 845374144 508772478 225556401 28867426 837682661 593954021 990242906 265579789 769657453 29391228 652501228 480510541 606419354 795245879 703882350 765827737 895769375 954759002 476784314 744192076 915627894 56314437 72938681 390563327 10582947 783530098 221160354 753215691 749396880 271796553 287039603 422019181 558633184 176015197 581154791 811534600 365414538 368621378 767835951 695454747 447124125 659627751 834632866 793243799 753571060 284274625 33954149 728368066 709610946 823444834 887824380 815349662 292888352 738322060 55711461 261437252 991112820 150512420 301551428 324538267 900196255 695642217 791677624 692744731 204341733 993801844 973560973 919493220 816562366 429566013 516770647 522326429 19827188 846767866 459399723 383125914 738062555 254728523 643552867 986228253 176789474 249842174 11947177 268356500 725545205 977128278 149686006 706510981 996747659 549370437 339466886 289778696 891093224 669723208 706195481 674804287 670989236 153779972 978340096 354199042 766623529 455953006 215968873 793514348 475096708 823374971 634164037 941132850 818835603 712620315 693780691 766812939 888996460 692419205 695059930 981733049 434537317 112694889 614263740 61795926 51915903 58088859 559294636 76400972 877670835 576825591 897825208 731756397 512254303 814646151 972193221 17813051 835504285 641602121 771138341 896635977 235527235 538223186 965777029 404726937 825661229 575503268 864078992 508360696 957988339 674590808 882223521 803406511 576716150 379465296 202046541 223660733 814218936 112779147 577936432 798923758 564574743 275200434 343352747 277012957 983326836 91922441 965961256 283126720 419475122 150299594 251384818 372767178 351477 559218686 604684118 804772349 729604157 64609265 809263789 778970785 725545453 579026849 45186596 544560735 722880957 655598972 640943491 674172895 811911532 716640705 278560797 786265385 506056611 838856547 203133199 479215038 282527747 976115779 484458579 291623106 148926097 718224755 580424231 567894022 913218709 875646863 280124051 781510394 794442218 680415159 883858730 741613198 857892723 451488212 881381282 700315080 724534781 880869696 598377289 889991081 20513826 141693615 747277572 420877938 42244403 426643886 707942096 869746874 228609651 540680581 842046061 676346312 595987801 714977763 603743975 149470682 504831716 588143799 195501803 752917174 804172518 48362050 546111457 416212338 338430984 470845520 670989236 470163412 960885435 559929301 45703313 577500908 856241551 816514123 774454372 244523911 71276500 440777989 917371584 520054465 444589935 164313493 696368181 118313960 569181575 583957765 215333178 703256969 516359380 858076279 574291482 584742659 326013111 955581883 881153644 967720335 362131179 670989236 847660366 980344122 842807617 670989236 136102315 887134262 199400315 677397843 700228548 129994054 6056177 968782690 47520261 197740371 733819712 746776623 779445360 766723768 497035974 634154518 93204729 181766643 921975150 338570028 466572474 731074664 399075832 565597848 344523790 834083500 351747602 34123754 243119312 167503402 795499962 685604032 835644829 680573971 686868420 214100935 652805833 102267311 784297123 98271185 749588230 463013585 138529055 12275676 528244843 185705184 554866504 232016319 88208008 704746429 805996142 682055650 337638362 264621872 926428534 853655935 901494179 670989236 730937694 95861651 323910985 976035280 268593320 120122831 750093368 63341505 673874651 136881116 815011142 782257473 612986209 386413351 112603518 826347013 543111748 779458608 808513710 521284536 904842964 831688355 236464746 605774816 97210187 801845004 181409306 933811903 852142718 222392040 221777584 840998284 304100226 790567881 932217043 559969579 769636628 835445818 268016144 989532385 881230581 91188438 700693568 301590285 216978684 166794119 726462234 744599779 872854484 812950717 973094422 843649114 529051580 822794175 779020872 319127360 420727658 669234369 761204696 745957110 993410992 57846394 858835921 581066783 322534468 442829914 758348910 195504357 832929373 765422175 669128566 89896740 953209337 576551979 896100951 924772265 776800988 834855718 453977383 588644889 529847133 687839732 352508887 761112240 864811552 917730203 171507991 502957405 968428540 842224318 192533647 237166715 837004418 990568839 839451744 993772055 751453471 743189248 851892914 751532303 864673846 996983746 980661693 800393633 944372617 844454421 799847516 8809941 684910987 65330154 288143550 852134857 491646779 287598058 973141814 736505634 898655424 729951743 566289830 362620383 726736554 128294927 840863605 888252247 697085645 891636253 991277545 20062616 704773640 847283368 794372276 71457807 157956691 161012849 118743490 640942040 850558612 330803676 756237086 841559356 821657061 442102993 906674494 789908632 282987566 258499809 814413880 84773476 410183759 881936764 106194103 679784388 820240810 19700707 966660129 993681631 777425714 993209924 929985275 572602637 265659151 451380455 969312085 24176149 170276553 943714065 456352904 822367432 876976384 868633831 279578009 902191893 708684139 515515173 804511988 275806418 67572710 406017890 888526466 830386956 60110536 74514821 910953721 992318095 696413507 478248391 453763773 516098230 868581203 592561435 519820172 984518251 737480955 992610948 512987111 767542444 978590384 853030074 920545613 945424570 518894674 791594821 167468225 712589320 108919661 928060457 759954415 815153634 828991025 493750916 901853371 916870422 402920157 941738560 311369145 225923203 992590389 53185298 240437496 753649165 372582574 26775816 62749919 516183257 783864157 970393223 923373896 928326238 73896559 451468174 591937575 466328903 898688733 803847296 598741377 849852279 172946421 871774495 15322100 814524806 788929751 239726294 746804555 869793384 354414869 277486511 949252233 547429083 871012557 46356230 66963054 580112744 278839591 702287006 235247540 296279433 704937558 274673667 820746397 477176283 551756947 741960239 893168463 754317852 59719915 979219717 866986890 391877913 84304060 694321634 971873881 689923208 320109953 822744009 616957421 737409087 96424161 970168170 774085704 69085786 854769153 171593436 842723507 833386544 950802768 394444909 862315671 700279885 826655470 695383317 887186396 341221260 722888735 789145011 536373268 60905173 621187978 275754255 240608630 861208561 292177173 25165883 252632799 58805910 704253550 416249906 727638096 595849329 712689609 368354137 585249249 27263830 961838215 947649784 801844047 742180110 954990306 970258198 988521805 788106946 238457082 499942245 130475032 66426426 839202657 594501710 52975781 920828010 292486543 202866312 960345556 999661411 520486407 409887267 994670450 18727680 981664325 427389672 435792448 698192356 166599336 265237880 629244287 832696140 120899684 331291179 670989236 795193035 212183178 900285044 916141923 65207323 965132971 63099712 947070565 640786547 37888360 491401535 707321833 344849700 71521516 319500231 41539428 816465206 737992922 941689342 801887358 42508022 698840012 745000397 653785114 881524194 901075905 865690650 224376187 533898843 763326693 742672540 408883929 59491194 490199738 151275901 922859719 536461306 946780151 18578759 637443938 799617507 702815417 793117586 845424224 338729971 867807080 786748871 420421613 750460437 694373478 610437143 253106106 771888782 553806106 879776209 651513273 990106617 513273575 548145849 123289836 795064836 920271884 661434092 141980321 696645286 891981253 64095114 783796771 758060329 122616051 642073855 472638788 554878138 843142315 959207498 707616606 943957062 381669802 912501898 204373419 200611262 950931628 858823500 892775947 430766232 707048843 899181418 881615894 161035261 614745216 466910529 424376383 257208277 527983874 710694192 16922972 927707915 103098776 30869454 899452196 113514180 128435181 805701134 824008795 281142522 700173540 598477546 412035947 26270647 64070040 419723248 721654367 158790826 660835908 663772778 394535816 487302863 590402853 457957028 824266234 825345299 428563060 575408913 55927701 193428839 823943908 667829722 920113963 969218797 933589744 705371420 727722886 933543267 450125267 656576003 876849473 220099391 590366578 307262717 311854083 540431745 684642111 29875449 141189300 414237983 2133567 696318446 846180158 279835868 923169222 394310182 569462640 803905432 544109241 269068460 751035214 353048252 976027109 320029346 223589827 903562056 780417265 670989236 437271173 385053107 709234361 961270243 69353887 715984755 89374012 934522386 175865046 559578482 840161985 837537857 701336185 840240272 316808265 908124354 557043205 670989236 420035124 247908753 458953506 670989236 635548458 841039036 926422628 686191465 52437082 705279697 493231848 886858069 470543348 691011220 404308908 455499375 875272591 387910993 683249617 4250333 800475649 591564802 710877420 703982655 298655080 824238110 378908245 994138431 452907703 588964077 567182322 724850640 943519437 62908487 775004317 660343865 826962906 628031411 672279336 807172816 686949292 528290160 272484776 379215625 472917392 846678901 282834831 19828618 901952838 722842994 295518007 478920986 456101762 613915587 902181365 931078205 749446394 769373175 865498104 9123692 990752215 281213199 320854101 436800066 996728456 817739955 178006237 622107565 492366136 656619249 406006731 960545827 928741769 727235926 410187806 346810877 768834398 611367572 692044305 844718777 915228585 839988070 351348970 609811186 482256908 894950409 695317461 993573951 954409097 904621895 913241450 406980571 788978516 196543585 762815302 164374924 136089970 959845905 395958630 83543 563322347 824935454 217117553 402524317 42120139 201304015 336258979 428242646 254160669 696162305 564971811 784391678 932621825 752170641 528861749 286602760 477135321 877527112 782186701 798888856 759487957 857847322 349188834 498171786 934883837 36961212 166275949 59587855 983789611 12923015 89625168 770766424 714119104 898798887 746270298 747039507 107192806 166164820 836602684 837584678 852947716 738775759 763081248 912700006 300639519 724912666 29775699 738658837 31175536 63816166 276917023 874824400 865884404 218853893 25866702 52159531 747626641 32986982 207572894 159085620 701023443 611257893 35754506 559501342 283397035 417907210 38238347 819207217 413266404 213965257 785255132 162411364 987152901 418071148 888532702 123972701 717143240 959631663 535135207 884142434 845861865 479427599 140560849 465027007 411989309 380802002 98979070 201988783 763294814 721436691 763062388 695835974 216218514 670989236 705743317 556909994 762679589 217041153 506870896 538874807 680655522 908841728 851767328 849023634 589858788 425024835 863556520 626000730 597839095 393194776 381591811 749686124 837490893 114544826 231177602 349400088 696420147 51411323 869345321 628445173 401880565 496334759 627323260 477927165 861093406 408045257 232533736 788373905 859740290 721887234 104990122 261424011 826500265 296310988 874912117 633637440 791215284 892296840 247723469 802126859 945869026 283358365 384734138 312634935 111333198 202963724 243007646 158890849 482287914 30426525 646083169 316280954 226544193 917442417 975589754 533776212 992845936 496389251 349410245 533589354 92005220 886948885 594890860 983892342 710274471 949784912 773768376 433876630 887670408 900242532 701350815 671381758 855431660 727094917 458618465 800198203 841530817 201290117 977984551 810131622 297516740 614931465 407453054 841675106 406913195 294833882 358523200 255664516 779135405 833612464 352318908 269807404 717967730 415720210 888251038 519375979 682841718 938755976 893025613 726235165 803299848 808789235 929278493 792493525 909155155 704967592 17735752 142865172 166503155 12789092 876327591 446323206 826581855 855658473 265773032 524595889 76356269 971090456 623083912 877182390 309086557 891039841 648469883 154138499 883523310 688684265 861723796 386625865 259784407 306106679 875200492 489581776 879495198 883478981 70271182 936495591 410402513 371049796 679870674 814156333 648454767 830640106 97929415 829180051 97991502 424585899 891380204 987317767 412029248 919276869 186334659 680419886 348070838 892780859 981073491 690165630 753690012 921453761 766723364 728417295 136613710 639188907 640197093 632336007 801304151 794568188 905800852 769284996 167182976 942795683 976291695 975931686 697798322 391311791 768523075 263088367 492132455 28355220 906022280 187552895 775901022 806193086 654690486 91767553 885396392 670989236 812777308 865230180 633684839 805677044 729677183 683601959 672428404 219608706 734898877 751692973 842380669 779704120 277264267 847918432 2741712 442421990 710710944 231473644 617335789 416760715 846647831 485067409 366790154 129939895 237646429 666682639 609475529 836220760 916826273 240609236 990394529 841707820 842428082 780442696 881544794 485539437 163750639 778819800 902523957 327310957 783458042 851825783 204559952 721498420 804912744 996810260 959014207 218879744 709151846 791188538 289046518 417509208 127403647 583450741 758424469 57895570 947061894 227692161 481348358 406683668 676168148 564964368 918811617 977055750 309560569 804421602 853241074 754567694 698246875 760335691 816911972 292968500 137218129 401374746 165355221 793240263 349432135 993708691 670989236 944779287 126506006 758439730 357421694 488545064 987954526 2654992 903335669 892123713 204497431 173636957 855375945 708899462 842386744 107732052 687141800 257101004 240306433 484165899 669798828 211346113 431469126 277433233 949774814 135359592 97848595 815814850 865232510 773167458 329721973 830501104 671891166 988348600 493237448 964103960 667352726 593396408 198478326 382665288 867711992 571009755 42792966 843866079 999900162 413756585 977050541 331951589 320240948 642768047 884318884 468683937 889207761 204600190 820006982 313530864 88960887 807604558 349695485 204529463 429717751 140635462 981498725 217813444 878884579 769389449 843296804 721743323 689055220 938223952 693838096 697708284 564481604 434300225 538092516 927629283 644877176 691369606 909088078 408382100 593594273 95158451 519316070 227862106 717225676 567085486 860161542 843811525 540901398 764594214 875158650 793749944 767312551 748959794 772533297 686260818 327767256 620483685 896185578 975128241 728668148 274316468 574548970 739933299 475632713 340425868 815059387 231690617 993905409 457569616 987311184 657079226 553421734 281479041 758395762 926461563 398145993 978333814 967964417 67340192 644147198 697156108 961730314 966675941 338927085 795663943 317892621 924438771 824319583 42086553 897483278 949150498 960740979 628196525 312047880 248405768 752455447 253356754 583925457 488168546 168257751 768877620 71762241 569203861 921515052 706818608 200512197 861910556 715418007 548597613 200713990 917550696 812490907 964105060 884014649 32535398 949743803 184075692 362507115 673288062 6254697 693963209 750782167 129114792 835306425 913955794 961902285 760134582 794542130 857977000 585711365 969990659 997912201 162308260 602658337 262126081 777428675 848756732 696631993 633543119 601163417 690804283 843258617 982641028 766910691 685534681 670989236 732434254 156867271 674948313 823385097 393765460 814895281 88891688 778783141 882005484 743020490 716826036 833288229 497468382 214459133 54496852 576859224 938117345 806350169 235817688 13137449 728228925 518689087 117369559 668595016 854812289 152492591 811794584 618492118 696563343 647232540 84516363 17539470 31365301 768908141 533980969 681744868 478241772 68543083 966795330 552564087 500896226 583021721 681217092 735093746 982061478 594751174 977384505 864949719 810096792 643310947 969529461 830479823 887744483 116622744 937299464 647284080 386796145 499796825 925694082 897175783 336873895 649378487 923459110 812559096 941670124 884427141 499344628 25177286 868858130 260794734 135460881 860809868 157817516 448153123 907492915 156969908 581234798 871261923 321409111 530599205 541041554 782195249 900994820 522676816 761695549 682763938 867061676 927401361 891298636 795962907 704329387 387174229 785547601 876827909 803976864 699427523 546212971 683848001 532865263 872255193 792272490 948529007 301827789 655864291 833699065 147194464 937377666 273082 743162882 185971080 642600869 207017960 762176707 939899877 100795404 727105530 79346398 459385829 791749406 635626069 408375872 462671164 999490781 202790842 55762631 894782334 143422411 858928846 882178584 719306773 648641772 985130944 706865453 672437507 546181321 810191624 648059280 717589928 58938899 854740487 903494792 821855882 270563720 801728536 926222074 373892739 929772686 798600666 532530526 866806298 46397447 173758171 163899 247148111 958378435 688196342 495982619 739313532 594600698 991037462 746726221 821052602 439430652 206652417 9596024 713243602 819940257 805600034 684838441 648070263 26173695 698417741 66202856 779544326 807669748 32366851 849077700 899336807 240920228 959531557 69808493 510355918 313599847 713840457 868484876 903476002 492063519 854636665 723868183 363117254 517182547 349309261 622269222 998728798 421048693 752947264 196644944 249085726 932629328 708994155 680094881 361952909 937181169 503072158 29198117 353979819 916101093 432253980 862491229 668783359 443832987 962471117 210449368 975109222 686133895 797783281 82304925 979342407 159061157 144024179 276121775 93125496 809406715 955621632 525670780 936322005 842294303 872683479 440742927 609556668 583392649 735659672 918447253 867986074 691975687 998917194 808652024 887873471 947292017 749398634 750737833 145288629 624036006 330923339 341544515 71802276 286416179 340389563 396798505 922175330 957265432 553910728 958577374 878582936 136458903 270404934 887484233 860925145 365045495 929960040 337883845 374374950 233367258 998662231 964987949 670989236 783730107 987665943 377184030 808780454 724616342 912336101 370457361 99288362 80286258 961633477 521069512 566389318 185431892 920307101 211634670 758307256 309114090 728355986 610295118 612772074 158075767 516503557 222159340 907236050 629986061 949339855 112440089 392722295 983763908 870570798 804309393 804772657 788520687 272951640 996467808 498019707 34355034 156830912 830648736 787266267 513738019 493225790 953375036 97766874 282334910 843995736 675467560 989356087 163531906 627011792 705120264 694920578 164367464 995378640 825328228 755401596 919200626 676775105 343002413 473975076 914858962 768891234 561625927 916637268 816170022 28938918 914220126 703046998 52111584 818945744 67932689 782709179 293002117 890139429 890568769 665994406 422807835 190567601 86701789 580521868 920950817 544097169 234990960 350290604 939952654 295484430 161343708 226968337 376955566 337775892 974250567 776036419 954523972 129711771 857775411 787816733 858507452 924732122 279917568 743825291 833865634 607646916 449148089 790172028 506406205 447631647 726863313 369726646 940958588 801115576 364795643 433123390 634979480 305732009 755044803 941687834 955713361 779088486 563732709 429399631 275274688 686965871 851682849 443316850 495486530 731628812 795041932 760048245 852192689 25097743 283700774 850884472 863501016 22863636 798671812 292296963 645261317 816104463 778456059 310466847 336684475 441606464 293710977 881859184 169567421 525496895 343948227 254417408 837365866 896969798 391828791 618006832 959393540 558222026 743034387 254421329 909410295 223700392 672912606 128077742 158655955 196411277 884639778 798980527 34114691 487697488 665319747 422899185 678724162 838155399 712811370 823191830 430273535 425932522 232251970 765814913 717350829 736401117 996602759 940075951 263920439 875180923 799654390 877180519 617194884 934528568 682838687 74294170 107154502 320690947 816964423 979541770 259305970 35667399 284538805 897468404 461069583 125620699 988005610 288224758 876041356 151680707 881474941 416850640 366502027 420298198 430837676 186343754 228138626 40533959 526553966 960712024 361118091 761935422 147616501 999583377 776307600 805447419 206539993 848143458 736880363 224889948 694465604 869922233 777932514 836570616 752688245 864421710 712946952 884811692 294889770 545819940 120656620 891313712 907477952 78289147 299072011 733572376 853634176 305298862 485383812 640926117 252976083 909385538 781837848 761182011 100196917 150359300 990851181 595088400 355961952 558991424 47809604 676500484 811292169 478089990 950771052 212973092 637471973 540406484 615868113 170074431 762788203 939502288 317605267 175617828 852435549 813891060 315854796 134463716 517283120 343476393 686265156 623423049 42515437 748308878 471122933 788698822 767716879 978086124 69922907 816383603 670989236 886552561 586229090 932104356 709267750 725904526 501410696 364068358 905705569 623278815 995081199 708159442 704524945 883173362 981851632 763479426 298182161 739500057 801450894 968831553 799298903 643326479 160107398 916714942 708720002 752156291 103139605 929666560 991682960 33177521 149424295 918991993 928313689 233136284 752324494 513591855 398127489 527554458 719420385 342338374 493540139 636343664 521729371 651758690 728284694 151121398 536782040 203380382 967032383 667119580 721020577 970892286 870745212 943221375 882835726 761561686 292272415 358035215 434042727 922418178 621832377 946436735 810791241 650814082 913794237 975883375 600776815 175457037 824138809 847278757 997857028 822206204 312542924 973489824 540154152 846875059 775881798 740342603 173847339 870304143 841831392 853814462 992276435 59238803 732132413 865617349 168630274 149541713 399643167 833394228 369533448 388029706 647960443 285627070 207370769 478434293 680294425 971788668 365429312 315623036 675672251 785905891 704619841 869412054 295201000 931780677 618434938 676369531 658348879 934616791 847660032 412969104 741504281 955807601 927099974 897615902 687009739 813069167 57156127 934958704 670780647 595352412 777605698 403270481 961534241 433224611 195024749 840444714 979244096 493069556 698035179 643769104 402741366 821930525 300902516 876264271 162416994 30146597 715639230 748510800 969278981 976803408 932825085 270903190 485656347 846320826 667556839 281142551 382234743 335220455 864638529 404738552 47478226 149748185 473946893 368401197 741208000 111796355 140952461 750848747 579383094 840430497 843948447 288246276 904190845 412612110 514506694 715837227 656753224 805472180 699540666 629577503 770553788 672996071 933548760 766740263 85342527 274902367 948247651 516224736 259098128 126981651 395232400 496491317 670989236 540500178 769351683 804824285 682550181 697590320 109133675 291837063 810029684 23860423 957052253 10300776 714775189 759529282 366906017 693499917 482139594 858118541 696908501 373219311 745142550 613853858 96476032 290690564 697165979 949902662 730317642 950412439 189669843 247322492 810573899 334899176 381011552 281699651 648179479 879584223 926924402 957519705 986089630 874163669 944799159 867353679 656512382 31590888 623400816 738741108 422790013 859902852 233560255 560943575 892735656 292349585 883451357 434063061 641158821 461644608 440746509 243765531 323620025 909617550 247773862 201474330 938179164 335171820 996568517 688448295 317408879 91178046 157865956 526328696 576337580 919270890 813573669 117408 909793923 974012219 61207806 61010902 120549627 600872020 100543294 689270543 960305612 385008836 776547984 362633074 377535575 749633702 699600326 779637833 797041738 900400906 902477881 101779241 532387751 128057650 860483690 653639290 755005056 877737087 246485418 700832259 744673231 805138158 923791846 81990239 719031691 616078089 44359277 772063234 897399174 380564302 275217145 486645279 942256593 588386109 846591514 585671776 21520069 584737537 767647751 902677181 762371767 333772633 818114650 183243647 784184285 663121774 478451577 965155029 859102223 187985865 563134147 695751572 984068421 202338679 691165787 771661651 305990684 829701023 990422001 670989236 173084223 903791991 645494819 590724831 724898665 189379109 286243166 140556699 732742745 113830717 253439004 476501241 110338845 252038284 903260961 794735931 161179493 240127691 50751114 175278486 196267109 95488980 250193720 955584686 359092346 795122527 166167261 795805595 199972085 797374285 959206661 743071084 717911032 674799380 635532542 933450289 742242584 854241546 693975303 449882384 975025546 968529256 779581943 507476225 733921189 303344726 709634047 856178459 836542578 168758130 593384855 857587512 393657052 458827525 958011293 696830973 900199941 940282173 23778793 67218751 757095039 529544077 411851799 695429551 898663775 189967604 975459732 715204944 809162881 610468172 380123711 612909471 609178091 728292069 885713372 987496545 605114205 802090892 951158119 292182406 472589025 170698066 886292866 490012391 600005539 1646358 312113648 529755998 812019847 856150829 707804483 296426096 860529730 747934361 444917076 473017980 991233322 670989236 218638555 938755655 675487531 623664854 184248508 721249406 779486714 134867581 795154454 930169574 593571055 554397909 493421552 452921043 883230568 459570841 756332749 806685604 880363471 14044711 882449539 802212124 955892688 150784823 984275362 924747850 603035678 903826405 62917023 523357867 738356300 452054462 807238588 183320701 735685156 699267411 192149234 898747294 97208391 833074466 32185003 367073359 223376354 710536015 198713998 883776324 901659789 822463111 667272204 433717463 403723861 917384028 254450793 279452883 819614377 759032230 32930511 355384266 66786798 63087059 246386117 243791950 83774605 848749842 754360600 799633432 390379541 813638728 38468800 985304363 314746662 122624852 902166752 950542365 790287601 261272084 926178354 638013319 305328194 675788111 155548511 998252415 530080962 899552290 566599396 900085349 874264756 264657683 39696971 105631867 914210707 500751855 341583182 740899431 908317858 871284472 377177279 326864348 978435035 493773876 335565074 805035982 684533346 291489375 468000295 716355870 206703502 780357880 630264163 957920552 175235618 148993352 809139167 761234229 148761900 491681647 775520255 873555059 862347217 199507787 643087378 899128032 644154273 831451316 370405315 45314872 718840751 58780795 288783654 728186368 785368536 758719847 349216323 751218541 798327179 442534227 522697731 399939651 116057367 991088488 475128503 493110361 922645090 248616815 757945441 498155658 707573596 677670879 717248522 333429988 131787013 512082075 964092976 809312943 948991597 816444913 395413168 939172017 160144437 108352783 985342744 326621087 261879936 841383655 605051188 922107337 670989236 86622599 831040269 801292467 4618753 472670394 661900556 355309916 188444435 582339856 670989236 835501531 262381976 517278410 363809672 945674072 188253358 428647549 79808498 381796547 498024314 581571469 839698950 362145992 770538485 670989236 957571442 786991750 86608721 312201459 557646572 3205100 288917851 733550511 76690317 805771957 859379294 114527972 829168062 123218975 822774919 656693777 836764816 253365878 698276239 217630220 918146620 438445531 791854256 777505750 993200161 7079459 679412705 325085975 761103017 679091702 731135242 495920175 836236726 716291708 785258786 820631971 228410612 846075005 18604392 934181667 763511031 369819018 927970812 712680341 138065448 373193749 879023366 824109243 745971227 995452049 741417105 311027102 913229637 346180415 847250088 841881588 878781203 713225934 762032953 796165181 958062420 851949240 739659644 364264612 846000824 907699329 214773483 842108231 441513844 820959070 761159958 900085792 772231289 956872244 996811895 13965838 383532565 876705858 559584372 200719712 823413122 853567326 659737907 593436533 444583052 783471551 651392317 553350441 127014608 939682951 302716910 670989236 695254917 267621510 905807175 843951371 799862974 837581020 345689802 116671555 619712503 670989236 617267681 946961099 795390306 193104742 979751760 402237966 831966580 391333052 701124836 20572807 799116963 815157389 851108719 344673764 135141208 172942987 670989236 741409682 934329219 48105069 45707482 554668195 977022038 679512192 785260398 140531738 513820228 912497168 670989236 670989236 759191810 748196809 716987727 204492265 687688585 897830637 723148591 194482276 600115648 835611111 40149626 980925386 75544540 906103088 109899782 349164030 988938302 98337956 898075208 467243548 722200215 605391835 929296463 701008852 345551156 917491121 795913904 890147330 927598352 906285349 430327309 599628501 70762089 273352465 912345164 706044001 661172401 986892074 51786152 670989236 448365668 134690297 965296602 133660507 644972772 977317467 273518916 397199698 522337435 452993736 797424409 713848187 670989236 805817424 830968937 998343589 421820129 547102024 745044611 799642778 872769936 961285445 926473464 98644443 744052252 564966301 950096919 724541240 976142806 172072283 914500128 272132755 407990213 126869684 288048340 180204683 781015856 730914763 378802979 46975691 759683976 675856820 767946257 727694977 530923157 891144306 247510294 441666651 363383073 345851014 940013392 242702516 266534191 966903857 855482337 482502881 29125707 823563865 252270598 615733736 98632843 520751796 598819515 911191545 431430013 925455750 810168221 772995876 917949654 874749530 959453960 70638005 670989236 364029104 372165359 35177415 847180141 598143244 33246043 541364020 476694744 972610131 989435536 592455025 670989236 538381765 260378621 194426539 897573973 923402379 707531579 90901385 647738607 840548165 931493455 884809050 17821210 56096071 782592055 608813962 745395552 36176834 718920530 844122643 930869904 479634944 434570271 973597168 425596263 313898446 520245942 875267204 634069323 290376407 354440296 937851134 826066012 762442762 951667375 264459215 653187127 35393216 719082595 701640298 574294403 922318268 45781639 724431413 931923149 211944053 970609505 495250414 658017631 966982762 503850747 915132773 248966796 186381940 472765389 946612468 74676931 879579841 606640764 890736723 999478003 176563316 587879308 704862668 789370019 544716436 846508136 707200382 627869120 555260703 50266456 492436313 876342355 838897197 26897106 457200608 967744753 808398529 83978366 636966993 324825042 637945120 277376345 669318829 450453548 929990175 698973536 293567421 789891806 868377727 802807380 476186871 635324723 621906098 781816407 644905875 350957163 680132020 20287687 740474306 913646328 741985357 914447678 469731924 371120617 408448164 621053538 166517615 829210236 907178505 243600104 606777972 656649202 940274262 256330020 454126575 188970955 315889673 626765210 504610857 847573885 801056184 670989236 758237826 938890093 742418068 383103839 780657276 727639417 297303380 20204681 533264974 256266157 721334282 428344561 91275472 461382775 690701958 840163430 876417455 69225238 954924601 697692569 304234264 605414788 225063442 420209682 772763309 494939407 942608469 917655831 115055392 806866178 597510232 684600564 834667672 480581413 961451558 402702443 728090794 677768276 981727821 487397371 787364374 285912206 359235738 911189641 56393790 849727163 888721757 965540740 851776416 234493451 966707444 253936377 914898126 275981032 95001581 735329926 808920750 346225304 959255173 283756292 555234549 940117829 179389630 892129620 858225483 10735887 386779996 667854781 447861210 850155323 789887149 920379453 589321837 591604296 973275774 515233227 68100556 170324118 933782047 835095870 593964394 864405985 770589708 217368249 969731864 954540789 823160550 997828340 713866819 248251862 310312642 747958136 440815618 381421080 37488725 228697797 200579475 725601372 995240756 451284703 375454442 704649913 747886683 908035152 802120712 450084139 751181980 530180514 974180376 385983839 676701060 331587797 92072612 514163920 431217337 67422278 809549380 847177310 975971525 663209749 719937429 5071095 26442655 916360660 732203091 641908213 298072316 864948455 458019933 526952219 206800868 417088367 750926185 855209261 75162687 319851199 717170289 992635480 572364059 216612827 120894451 761708057 238525441 163513044 57376932 220316932 760463122 179078794 452635891 864391364 730470839 721748427 930525185 420042813 723596854 296877008 856613283 969303102 780973769 72701158 757470784 375817634 902209576 107431999 640087952 226508790 250651937 578883956 966241520 710941662 380766767 641270426 972466086 348224911 862540448 756714578 488034104 79251626 628553264 869014758 844165510 307450892 208772841 587259307 975537808 97815108 848457527 186354616 881553811 757807517 945399272 339701256 997865256 757297152 22356732 682339218 848526250 519215614 746807008 648369408 992063532 665023318 431394006 704679650 459778676 349783742 479885474 267268728 989933523 886778333 929641007 828538861 897020280 589220384 333860460 999343026 555964850 871827940 185546302 741339417 705468727 448686440 952583571 123151179 809321485 876797928 479992807 860747341 345271495 770959416 453769939 219716722 668934931 708060802 272320356 915621251 525236654 918163801 499509926 129650935 837146879 143942028 793570777 354047157 292828789 109069529 98333835 225169386 529539973 946237323 745358441 708586660 689433812 789446493 863024723 780543287 141785033 520465588 309669359 674727908 267990135 625211387 706906889 842289452 804856347 628846090 787440493 298060709 929367651 967722181 557419556 517184411 578317640 853603413 982221593 155612311 966470946 741574850 855322613 183238243 509139861 311394854 131108326 826873252 341992212 773152674 728581048 750143635 843294039 446680639 488448927 723275228 780800295 86331094 841253118 982352892 213390155 694628902 357911070 708425695 940870877 739602698 882032564 318512219 307695662 835179138 983631113 748224401 698684720 756931638 519323217 326385535 841427433 900981896 835746449 372035610 217167428 243952785 718711799 701310252 246780893 404270077 650474709 814180166 640647458 136934977 223470566 583275995 524145766 704275058 833832509 802542645 780314277 820732186 185014258 974260005 938472344 617442819 789441853 437082428 670989236 706375611 602117482 776045681 269194627 688851493 826845049 782148095 844396947 505720688 222234815 295359385 432866511 374909811 795124064 825604456 816902292 883495503 57234778 878806808 878534986 739652959 927905833 786338556 735109962 345076283 703183687 894021260 41222550 872716186 28957990 331005687 972116670 682237737 321399618 39445387 551612134 296696982 782494952 456648768 744399243 323627176 718160772 849974864 832623524 985959507 670989236 355494420 789995945 736671624 504090433 753739826 903815314 787638870 827435410 586275808 554432756 755256644 100205968 974776541 218685699 60745730 63511945 831026007 841071966 688243205 106078997 182555451 998871368 727133095 84519807 740810627 381910194 508086747 728194467 464707844 955698607 482404834 913788142 54710294 786976404 534514742 760976347 299449036 989563966 767641908 707035144 948434182 995524100 100470491 660364434 271869936 860443144 42392669 750154851 959107149 221541645 433663147 886647946 233895444 759517518 967697447 934777624 55758990 239722719 700667789 707511042 660022439 879168417 183496957 400253936 541471041 776588581 364344080 114535524 847463256 765324147 260442964 500264696 70591046 896858590 788081487 938671893 776086141 987252281 927252887 541244195 212125803 945370335 24517689 385976810 545838187 810550581 944184902 830371314 760359127 343713705 945876259 859249836 902064675 729924422 170490956 693852142 849046757 266541603 898189158 847943254 902745740 670989236 344804384 151139569 634701935 781596644 275008119 903382936 581905868 929046165 476932371 881982028 512079457 824655863 30236851 788322255 752373959 866196668 939553332 233968984 547283401 189613889 189179259 902359137 954852124 691234757 179086435 953178767 786807517 89028923 145510135 931786624 982381887 859572821 809421143 911887978 906348523 923362181 436099259 700082847 734918341 518380921 937854365 109116299 892182574 786690733 940036510 513679950 966971064 892251224 634036554 967505303 876481298 908639834 424004539 525454401 68855993 709531011 814879582 585083673 225134489 372577848 244892772 285324899 532361474 540426124 36052649 954864067 463019576 685775564 919118238 802555119 44040004 838037245 424150631 334050850 885150192 265652859 807115815 237851030 430907773 497220147 331719116 840995877 442699472 246920972 941091689 208694737 904086491 678530278 95716445 550129039 568031398 196287736 201293567 305047657 737384034 510910410 896157871 521137380 627697266 163536319 776688193 368052683 913962705 895527777 136737411 792631512 433538122 545746405 915819929 291876393 931765556 960169565 608048681 412478828 787419963 842514270 396497632 227449844 829526145 934680839 949008984 283546100 895573333 231328024 895714281 253685401 98976002 461282052 947052640 956534414 870516868 961651375 520815092 632885828 772810870 229006922 713897917 673225327 901075985 686837104 156736142 670989236 470072071 806712045 312039924 350060729 30330621 766884697 794975781 871612958 853703207 70354735 909845581 949929754 909960287 161611164 549888158 793397897 36040495 682923967 274503740 606891826 922392313 684581511 88018166 851749077 968152535 721382031 912170414 795458976 345611615 951628406 172999922 907452535 872588740 967557553 223271401 37682237 800138019 909946138 389873654 126376048 996802631 306048579 858235602 104515787 236060173 990085088 489135311 26283651 52832876 846527941 925891034 308584654 784863053 439072270 899988261 889178707 473745546 707534509 522044251 766659986 722315178 505880225 347821633 592085761 21887643 430930056 941850917 568363741 946422178 732954145 955565342 594985094 764742904 167855772 897245437 790186181 824970342 472975370 807182027 22604012 958974989 12051139 171595719 72198113 517559756 909366663 282983327 594937893 478098290 118859878 914418598 769216289 626214671 9406217 581790042 342771500 981967782 774758055 948492258 277526216 292573970 873971222 284423081 794597623 2562833 770381104 754317515 668374623 758698565 134387103 889356484 680980258 949348633 157150571 420446385 454859320 323323476 175157760 975465074 858567442 277593304 385049480 62037488 670093599 944171847 291907098 129857872 984475457 212358410 656570228 840405289 670989236 756124199 38322703 694813832 284810994 955659318 688190116 632237401 137973181 670989236 975519226 215533145 874964624 572400386 708350486 660832240 600661924 884609008 45106976 892750427 48811592 757596135 841550840 844106996 668190175 516923935 675597713 693885807 528654506 851651849 783391145 209487739 886168398 492314142 582927256 820435521 921178130 96669897 946261402 345721647 659385531 957058743 904135655 772159794 480226902 461543535 921226235 440931515 555685535 542429277 272165183 195278562 744257229 172769457 457413628 745206817 970503380 705189539 431882279 398544815 535655131 778365612 795374918 845237479 742674545 811372878 375307348 609599173 170291423 169750439 541716013 770201146 918577643 809768772 228717189 672490999 901881992 614648519 685283109 765290704 938360608 974664067 53726541 684088874 724301708 922001789 895329331 675951856 627591450 352763578 322859153 937418315 917137553 997995469 705998285 406622703 972456087 964899155 744699325 951544900 121864514 480514396 736940053 869476603 952367495 786471992 351237403 757450808 932329677 988236269 941390534 890561608 337771572 796189363 673130202 705949647 873533357 986402397 603828448 878167981 702800322 31347705 553727610 615472768 361885570 663132982 736843684 841742174 159843816 771616624 991856167 315490875 577951829 872832826 984880716 881121669 838337684 918215772 87352327 816189337 675796596 280265018 278994530 697119641 843652709 670989236 977688759 743218023 344692653 74503538 927949314 124510485 795127653 317624729 671204269 750896523 791448703 688500788 701014175 485875922 766538984 65012341 26612997 8516478 783022247 789407763 846227973 570910321 718174505 700977626 990672409 984246813 696780940 960967645 71156374 551871853 622924858 890910710 661118294 27848784 977120929 19299300 586651615 541868236 493641151 910453657 563860399 752780451 328870015 461613662 720885108 695735313 595220212 797004387 690735874 380473540 203749793 360339570 751405180 271911976 399353506 825637798 782747012 472797900 997192326 851548021 25170337 400255597 757972118 357689794 577638394 657598217 839945248 710944325 817976361 794986445 630683830 785359267 910689901 807546154 628715936 910696357 776834380 261107468 428686484 541943307 129383876 507228420 150474331 589306565 835875756 786979063 358944858 902053533 71470868 971291063 353086225 670989236 720229411 148827464 480009853 886492240 845628967 734297512 710205399 837091502 311229640 858843078 816082527 254597346 789919545 521618621 402395323 967653427 962359025 915181570 347977730 994316326 92126559 611812010 861295022 899018572 961955589 748343316 395834770 838850809 361389869 103350990 286300125 960092930 889815569 826746143 327225746 768548135 692275094 238854521 722781650 225518294 246208085 757708630 736696266 228933914 762907645 930131589 156048742 37673291 984327071 850079639 904218747 880792782 988835571 167726514 991232683 717431381 947788022 173247290 730860503 235464666 887525634 984257943 399692006 463774603 901558196 675349212 699293550 101533632 7660046 768570561 107865913 834296519 770087916 670989236 754880591 729271024 850244343 926834380 580951894 4093817 991720797 66783633 883371959 916864228 957586423 322957212 112285433 380873434 126687695 961977487 144633008 511821940 849816618 809802467 954787454 293178714 893596098 799371549 935218827 862136143 669732812 925748335 692062822 886173470 420948965 401861747 242378175 381191696 790531519 495314875 641033813 951176777 938903457 560057247 636039264 5649458 384347312 646707668 376138128 970598315 336056600 333981703 918535277 523137663 182965089 670989236 988242413 484670082 697429671 856824203 970543836 740413936 150273691 140885564 970247295 799707254 258024189 757852725 185028979 206740395 359785473 161872791 184837384 346645976 513777854 665678281 126934282 807509977 81244034 765169296 639791618 410020167 866788825 783115686 170407112 957799954 779747013 859587250 241479442 571291356 737347985 670989236 373408429 935716421 690962953 722493668 705368008 856394867 921933197 513229212 976746409 592920122 42653545 692011373 443919718 18605383 764155527 943944413 57180103 533627726 237738177 548304435 808561945 670989236 924395646 983135764 507943848 788995182 920665700 134865795 430114489 811466765 707666901 515244558 891086325 657125863 149062022 790225743 643401807 925854553 238892489 787901247 489429221 176281048 510543307 306211145 859295469 231176176 172874899 838313822 836108166 251437677 96011631 138484648 839089140 348037782 271792621 997779476 41113625 433172571 526952451 132576992 605957915 710614031 254132164 703880113 31326532 381074849 42442913 368838651 226364857 348926435 273426914 33292478 291903941 713064498 500238112 932607592 361013748 441199054 481606491 127209871 41086933 833978084 896485091 823944137 610075867 424642343 40012224 959850484 937650902 918410464 314731050 252359020 641949293 352061910 165863334 37741311 802410511 686877406 612328417 238817317 119948566 778805163 822064122 934935291 627913032 883494667 359607298 703533592 944523435 602275170 449388717 796730425 969783409 18979884 451932545 787518471 119088585 809015371 712757772 315688043 820157571 321410446 946203836 603616010 720882850 760474740 754889571 945813595 856785095 686536557 403449025 80502874 731897902 379694723 47846207 360479269 787216983 72346853 704276274 478388892 805017126 619237186 938820700 757134559 948920784 160018345 127907107 142198295 186757947 295260884 357131179 870898310 791803015 651028705 809197454 936341875 620594313 107088237 749726866 131603098 545175761 310069617 706873999 772889762 112278121 833310316 138093552 911966628 786377120 98172951 150097239 172120728 166291881 941076115 270775171 832109154 465832929 812290235 775198848 118866853 890550820 257311125 826158555 710596518 675993474 362812986 977464074 823104723 5538769 724403169 25500301 884346915 986928743 581942102 717337483 394419098 462253301 352335269 439067937 338538046 893596179 154723988 62959117 827199242 836410629 798947236 378922992 273185329 946688939 845448610 851126617 897220728 977733447 925760483 687263827 204710524 228521910 410919819 820484840 801733648 358221666 354387990 922320171 946341028 646329269 688595346 852584180 909554175 889658704 927695382 62648529 670589173 559151907 858017813 498045909 363582391 483841778 132479841 280384482 620585649 625817619 859864947 742280188 931833473 539679943 855584278 35697864 893119442 804281515 928906037 768035074 32064952 155818550 992015929 677596710 743457656 637876186 596119688 37853769 765953848 829941582 995756064 927071437 738400684 999443523 673933543 735387413 677507396 238227688 949084387 258148736 679595619 897094788 33497702 52967584 579525607 297741732 975865941 193065888 663419958 557748696 739498249 972777945 857806048 637526200 563133674 601591838 733757922 761202783 809789001 886165038 924975662 793398527 720128298 216789696 957567873 106630495 108825831 210592649 7211408 769617003 817576220 805357561 815901457 777744399 122015090 342434759 39684295 206890028 86723106 308811025 487200051 33253964 848275982 288762721 671359511 864970899 36362856 902039013 561702147 405858821 905781029 700718553 298602521 58317152 960129145 908896451 769167539 37694556 344584230 724230546 5107681 831179169 50973808 298678954 807901436 809078773 914466843 377588601 125124644 961054163 473734736 581809713 924434995 298178716 186927117 189292922 721418886 969051355 817316608 873706346 419623592 727724476 918935607 491387930 781147437 944623293 712520627 893760649 951241054 982763689 882670455 2077425 847259975 506487849 877922724 492749537 549425482 358594157 633208449 949337002 722039569 49397224 214029864 544905513 696134809 517191059 344035008 352576766 608986844 807690495 677039643 972005143 492826722 183169123 913357833 607597992 814606370 883430957 755550337 209492239 409510696 930130036 552577002 347616737 806700948 262308266 846974577 502231947 479555272 757519138 953208582 785519784 558563396 505193594 62626168 5012695 822571078 854357991 71489303 37310272 882085200 380954210 541050970 6717383 422665468 679193309 345633899 950556924 718484628 232224616 871732554 798281765 312107762 943320516 626427387 214249687 957164909 191576097 129818117 969274605 813549399 603181649 430847339 66913817 523845080 743600683 982524151 776432089 416482139 62929124 897818582 749146306 650031705 943960411 785549376 847210818 787973112 285331948 936502124 670989236 880620630 22562239 769007982 900891858 829517140 51268631 4410511 230342447 777091915 303677028 997155680 232891145 819811133 825339247 503568163 128533369 122870724 723026141 753785209 435103507 124273199 254301863 664772728 397744311 550396096 126727806 192185291 817002672 138338561 209786339 259970381 675314506 948854544 301310994 811055725 614509493 57487868 284757689 240685536 850635602 138781607 469247561 433853943 989555913 903311690 698916333 459859998 988963504 883744953 752215924 142382387 959256770 755114887 654809224 927463831 292980371 993867741 746175177 206532716 819376747 286608643 817358055 975922782 590296955 63853100 702708044 454595593 855363647 876050214 210513251 978578785 472549411 746147098 771558384 116456558 922923459 354195896 747175476 81945952 792933187 944846651 887902364 778096028 937756985 676629719 481647189 943155440 195094041 602535767 296506773 114352303 471139392 883847963 794883080 704493311 520072366 3082839 303803467 828474438 388568556 919479250 327937147 202232139 408957450 762654220 932887989 161907182 242488454 571784539 169370640 772419456 340374630 899877034 615717773 940834759 764365619 22501411 963041491 178185593 673575121 692348694 946075009 930728480 750284263 777420962 817068113 757202592 321019153 260108827 986789091 210285813 829025730 687207841 679753254 174069899 261294170 24078362 543010494 544289766 385336431 926497332 190823048 774250666 789518963 852141691 970145579 972774009 589204429 957771322 889144592 985495439 403527938 105115937 424043588 517428766 979074655 27445524 928785218 28795815 708532715 267461607 676995007 326122016 757231702 746064954 45824364 821908955 986993299 474577272 651902212 697353920 983981725 764024994 803618100 613673884 562232408 452962268 569611049 216179781 730485489 412637159 684550966 456993478 244807779 907606604 517182840 965869501 224581146 958251024 295981181 181013284 52763552 121445738 779573521 88720579 903828967 599080113 264964060 581253934 684410906 32968803 767253594 978273891 210538881 452473870 906615943 423263061 643084438 306337295 458313295 517446883 68126695 762600114 634005149 259929583 778001766 943877821 225792333 794541293 805240391 726262908 502378099 630312284 381516365 323260847 366771696 562460040 413312741 897571833 248980013 458892577 768919258 705578797 473121104 74251806 465402353 678120804 797495416 272675840 912673547 155657613 399320742 785995209 914660858 943780445 378277717 949659498 704486821 413761185 665857049 175159572 540977349 684637407 910630148 801323678 490536160 678605076 714482468 578332879 943362280 740904978 279074147 943065616 725750560 744590153 497530940 312583996 987165016 770046217 612449528 574569084 491181244 201404301 987618240 330713810 683186669 787109520 891161780 450672605 634823464 384825801 392427847 732756290 454583629 695494996 237158898 791511291 876960256 372062550 712519825 256172261 696968460 614400528 294207325 437766611 264648827 654975680 867854834 171544023 710923425 764046399 677989199 947608825 966825683 616312457 212711572 624776232 34254715 340183894 399239774 981131343 719393937 452858159 603466851 956712335 397969634 516243454 750769062 118770872 1450817 688447967 759315141 370071535 938571572 320593140 678625952 335798894 665453509 686176924 360624110 346353625 761373523 632890763 529176407 269199870 490665415 729831405 565897032 973160152 890025955 561368291 915185455 482372677 272151941 98964026 769406597 428356363 829860569 213498333 545501484 726541825 729793631 638968718 74213859 727544375 878208016 269696974 564087613 573308646 964703246 959563050 413649784 838297328 925086578 631772696 706190947 783644200 749050855 195945251 744340143 15355076 990097564 282625172 741704573 443146179 703962689 61663563 915715932 501915722 277693273 189805763 831075797 470765020 112192787 597424575 760318687 947911833 864345558 796438126 728092722 151019461 851758102 837538340 444205272 677537257 382655758 250102351 819096443 814221386 964812727 781120198 607869232 363221943 122015100 887916558 282398113 885663224 363458299 751784721 405023247 951433921 711116803 806306523 848643730 882188938 478340017 800063342 724203442 158836689 751889607 50937740 249938861 64598283 117381032 821387726 932749147 27161155 875356964 651554427 648024705 701206309 486466752 45455849 260122795 925063019 740607121 804184770 139563403 670393351 135419447 754924393 587133931 531292088 733451534 566447449 710628078 982670805 17622298 484597830 242413735 502580173 278389138 689639691 512940735 394263784 658198982 34173740 158874344 118407294 115790653 128617837 869164910 869308748 185622808 289748883 794792966 918780116 541958626 838455088 749821556 822311756 968720838 677785050 628485142 732927206 780332130 46947530 215247645 12993549 836646909 51705915 675727374 378798715 931407895 644110538 434593649 265239545 414648040 252613075 680191948 42985980 235970029 614632839 858683996 702918886 53968548 828819790 951811197 468999689 356145532 787136477 923665812 381612299 778519168 190219799 894170349 989073829 882955160 38127237 136047392 206606285 880308780 980265787 363948551 387881992 301689160 848483611 66834276 741208279 924924051 685458561 100351082 684147003 695535367 796698155 998395225 532341358 872628075 258582321 698200192 943655160 675774353 947719658 566504409 864567779 573422624 723271204 291158118 829428412 698487904 670989236 644919411 100626777 306173373 450500219 704273088 941208513 788079641 907407429 913976203 899648367 89627187 203880360 562063294 187565581 789451296 818172771 336602214 485366612 65539376 949382541 845842616 161243196 270924381 694295081 711898704 705490675 984353810 717231513 427197784 773754906 90408514 859956109 880673491 482923513 543937564 871534655 407412293 141081000 443570668 905606650 167580984 249364462 422359013 132162389 497081841 576823124 943689546 856303031 978953547 390822565 739819130 243467682 419708956 45068132 651262711 844563420 68604220 969588637 177248245 969815338 232834720 312908081 5361574 529435696 971958642 170511602 899885458 670989236 118989910 577260273 945912628 886917883 706449016 698238952 627396274 35054078 417879128 338958450 893781798 691276547 211337487 992509839 706360558 233383981 881346664 374146957 478263116 874820705 670989236 499229956 123150578 395704721 922959510 889156455 890447798 357573266 313818058 246022155 730718184 924793784 930010394 109768812 379690801 301149143 522404798 959286677 968479925 431036063 22412732 867391770 229016635 670989236 768135268 385833532 838247145 59259236 159348613 359610231 434543655 736417719 167594698 83245197 206800878 684245018 398569795 221985228 60420066 835979706 145032581 952981573 683582049 371204411 771991460 654878091 329687372 536125678 727691519 646134961 396086641 732422566 254165824 3382462 178072483 17911200 684790866 865309313 769632445 555071706 149109076 593538482 834235291 414825454 492191743 985359729 787755629 275102325 850506913 913668071 113031199 27914745 282185194 730279394 501235783 834634421 988706683 942450007 682234198 915287346 183145196 720389086 670989236 172771504 870801526 973576946 875831757 943635013 236453551 99185269 206896572 349537779 16290971 876419529 916989682 957847597 203436968 734221224 834191447 801703117 911381255 769980672 629303967 864862221 635172244 185451372 432300637 647665096 726245305 656461765 237607457 893813424 778772642 861428733 69298294 818504463 599692644 41999533 845034880 736110721 58991710 363890963 884811164 517974417 936609714 641856756 821682325 24546672 990114884 794672545 676612408 365302034 963959622 375331097 374576164 860200389 202208226 684690341 899868164 388238950 347525981 677877017 943702193 204161429 999393220 335442693 748433742 303663558 707125939 776593417 979205399 446640545 314778757 973276134 956809902 697070862 352615576 981153679 912470999 745090372 719933209 182523278 135891920 7783669 791937924 862261559 602313109 308111489 315447967 811801347 861516151 350463081 114119191 793691724 862720465 588378059 157383663 124702315 773487766 658262997 623917844 274529026 556848495 23263886 612109056 93380693 835829622 776698679 237219365 262870741 782368667 752347203 969410201 672070585 999502981 424009631 838587180 873946185 467848718 437352425 573530665 881280696 992932993 850471116 817292395 892794348 561967697 902947905 947370529 934152698 561252735 384701899 34785663 895091502 343045998 893115732 747111601 963042023 775349481 975569568 363623832 984008803 937488264 642533351 259043373 5811233 210794180 924939195 70970247 583079087 947721746 534908184 6826769 141846077 88489434 964401734 913450175 382306298 827887066 650413472 425449853 887721566 336462150 43367526 895664241 688196426 654551739 973072330 397757113 326069164 705005986 877027447 875916778 352112552 804319589 866599810 807810177 899250056 105568785 556462547 673428069 719549272 342087492 958738458 978089644 901211191 322970239 579139588 831973101 613695823 562252658 406038480 962995025 671993764 381433387 941029592 106448852 111864298 820384245 376813164 670989236 854246249 789331674 983567992 659084580 874740676 502519969 670989236 211854089 337343981 362299691 564855834 999370688 74956019 815447198 573233868 730600106 652600597 709944503 249017212 12013085 724802688 898387623 550188876 358184092 693480768 62588312 553368051 472620479 986775583 669858541 304243538 45332054 806138871 712496832 725154721 712680985 277978614 497140412 457160090 480123252 785508527 530560347 875402835 730174127 996413466 899106940 936364509 670989236 825401455 932235329 750049609 626908402 268094440 289023675 676238172 507646440 793906365 548183506 117181042 342398282 848499779 185940817 124582135 161926167 20031841 800733634 804340799 730289583 56317996 706404837 181977862 647731309 949594778 879389455 894373611 252958508 578820757 133938516 822593346 67554936 898292149 668008453 296456677 603426459 439986397 249952954 969869992 182097505 764759846 920927656 75156570 166791861 19922388 69708127 289074352 233218387 156707697 761055982 624159343 510453608 883113283 217808223 764777808 986995767 948444207 773030056 181351229 184863769 131268847 13665018 157668850 212216734 776791617 774458045 649582814 151629350 856255246 453708199 916139824 699313549 706186242 207790409 715389478 196544934 828620524 442448368 315787341 658927494 866760807 6171820 884603361 316452963 701076627 679169657 670989236 688479056 156816898 336462337 603390692 425218875 602499987 753444653 343287176 894360034 922460421 690509601 523496773 819127686 964648199 855840858 958905618 970899352 329336131 703290675 679304030 729819837 893986876 340671665 836176470 154129578 891207581 935956303 815975557 206421752 247285396 298819195 527911613 97693502 734642044 706536617 106376668 191226532 180397631 779901343 868888424 378877632 417006390 280057576 766166024 467479732 865059319 412419878 313468816 92828252 297015023 379812075 408566551 938143435 262017581 742581552 838755644 804945392 377964402 974080362 430749824 794874478 934112919 28323367 946620150 823468513 957266877 458039892 267907822 851590777 677317822 878144561 919321280 412660210 877905238 845386105 501249429 671053656 701618472 166974969 414508329 487388097 850273473 665236276 103497181 977742705 444725183 891261866 925048403 675511063 928561761 699040075 920233238 748787265 932281705 403808038 481114525 767760438 258768774 137694266 349776138 461914395 896785753 871650917 705785800 950616021 838479572 190763924 490817641 39152279 798002492 691821944 867976806 346825215 697726182 871012260 497150718 172195521 148403832 457938124 936824618 933723491 842800608 670989236 378388723 1671018 778862915 437445440 49509353 25740577 940003261 218984757 726038417 21164252 885050474 947680879 791161078 851362584 302720052 603293044 654408320 417406943 308058599 705652741 837001436 899906112 848513491 327601820 633481174 711709850 94380565 977147423 66988977 794008474 384587366 858179524 835995291 869476348 926502154 933700625 82483894 299066905 163883264 731137829 562767426 770067029 876054226 556633471 991765765 955601636 888284159 451031891 505098743 864095869 725892831 763385636 959330345 243866565 648107421 677542190 717724854 250981800 203022766 399165674 85984432 588564308 861416450 927508127 702053736 53506107 227699640 780533382 974734613 699405787 795136659 788509976 178125617 338252814 726389937 625103037 327641675 889916404 895040383 199149977 670989236 848493456 669814855 855115641 865859971 833737756 746632915 509535536 383919997 765126746 849788608 843389686 28480645 8853628 558010023 702003727 66178322 67000207 989527082 62518315 181335067 703809832 452716208 428914357 32775533 811728477 683237944 876594218 758549029 838715645 782698951 294999796 772114621 694664738 107120107 947278375 737297584 274092881 909482247 336937103 538975940 462286283 116971004 806041103 840840763 904466331 945887942 576697318 990033666 924023310 771756163 908747555 968144093 551252430 289114204 774236203 994526036 222357504 785888147 129280852 328165445 743926405 856128671 876863344 534716933 96880631 702804653 675650419 275052536 632168373 922722161 543702156 962609186 613010576 805806070 967305216 959263307 482236958 709929686 918035274 379773356 307181964 904452244 459246966 75670756 275306906 360758896 855173221 963905582 798713622 169782629 485321366 2267744 137567285 971920630 220359369 575187547 44279656 974602516 137486568 807961130 715382969 77063486 756464996 419715994 945255804 790109958 678334809 909697395 802430828 496883345 165989899 934871267 187973432 430855467 339946814 691594211 675722166 787591444 715893123 850946564 589919795 19351079 47233510 443464713 1605686 711303862 604854398 827249249 921683585 872832097 709695014 618207556 378334082 600732287 926081851 431107140 665673181 994830654 492517864 773395559 815893874 793030865 668930259 254963206 947864686 793003652 108383693 547003584 433712106 627293532 955004614 899014516 878013550 756019252 123829465 837116465 308685719 477158028 451320200 715160098 21066871 919354421 730606137 216282281 122099630 643105572 666448261 988200129 284593888 828891723 740515852 199273874 725174446 445495672 97992026 751258336 23506322 654870049 596338206 114328826 239572619 962592343 883087472 466128871 438860007 918595100 638391964 899160096 847935333 925049341 336107221 787068731 973761990 711373219 534970409 684566661 509200861 865264068 648702923 945642362 853410481 265014568 853200188 718478802 677117377 215995031 238481638 119746051 427560593 757256680 919940369 133904368 906372499 742950144 301157209 423788030 377012338 885538714 716969102 245926935 692735202 805708870 381686393 814853749 925516070 75418807 904300033 641165423 10765324 665133664 946746343 892693180 660250144 701647640 669499664 931870657 96452822 834141563 390625757 475767114 432279370 154989086 770331730 893778320 644819716 361086594 707552938 17741549 768538462 828803207 706192190 703369226 811840583 417096699 320187281 479425534 680313496 636701214 796096286 926561341 195591814 735004769 255611342 915395503 757025509 53158181 233465598 881087184 771321809 314422248 864174115 855034080 913360245 838181136 684577439 936396743 872158238 113119098 670989236 803590239 851084187 838994096 594338916 578776189 3881817 863918851 445346388 782674678 538040811 717830693 929119436 938215255 954428343 448961167 730709673 225772345 680267104 793332209 227391151 745954423 376899233 673954277 730790657 881119151 994294822 505261986 878533067 966946242 802727942 894633649 95549398 631981098 191082467 868409219 670989236 698900361 963520066 694993673 776545679 773600935 434354408 741464699 670989236 927192281 538775317 139917791 987643056 155930949 691546509 31299663 262890435 198233652 176316536 854608561 573835878 697454890 153349509 759022009 995946346 910895818 577726955 23399346 271979081 864390411 784676383 704583296 69306840 73794509 260110690 860680612 970594296 988492142 83949671 403874987 674885985 191795355 687367807 823735597 239381548 671312315 357732031 370649033 670989236 967829825 246948613 695001451 759193083 672589175 548603475 224261720 42442150 724692364 48270232 453519733 826389950 639713614 683952550 740567804 859636810 979981691 887632332 513462557 416166653 320832539 495562532 976281470 517292654 989580753 625868153 199254489 763565427 710320869 837689349 735463082 460890552 876811533 807978059 188987859 769440371 846668298 874626484 120060336 356694063 253543275 240937351 706795964 751676380 799357772 292120345 961915169 176423167 791221405 774847197 779929327 856798905 169171060 33135400 309499754 43585725 530286852 910113212 780355864 361121567 418350676 985346325 602416868 270220034 760621604 595572892 307446765 137670577 205603027 837053876 974439403 351060031 805041743 842684406 845600774 838058462 839310537 826267516 735797926 330567687 440991938 497985466 825036324 64563386 76254409 657373943 734668431 977463304 534065319 808984314 306500577 775825851 844116360 412095616 859103929 957756663 676525790 436725093 557344930 178427794 391153260 711680587 686015016 763467144 390509277 255176974 991563041 256890407 452175128 338496179 41761463 753209114 729355941 989521518 233627062 465351229 741519589 877691984 976857964 402520685 695112854 921497458 574347426 789948417 79034948 469147301 163198598 582997721 784411591 992930011 171799322 867026244 927500078 584811806 977253365 958497101 115154827 684622751 722159179 924469032 318280416 936222769 997190363 194792528 804178485 920701918 306716132 780683 580321854 563615495 138139542 106112568 788715894 573335836 682940848 839207409 180330304 431076564 1620527 473130461 236702309 776426787 674338577 990737752 664774195 821232315 712458007 668616334 328668925 16714941 894389886 401359067 674595217 755865784 894591297 487398311 281554135 222217593 474727096 287144725 376927464 327648343 47822808 424985983 970888901 988884271 441181942 737848494 354884667 185335407 675687128 700414001 729537594 860458338 670989236 197342729 297754358 53098179 887538114 480581413 208290513 731784320 85083515 998294245 901938437 954629770 775615573 471444975 901863718 901495814 449028570 263974528 825092852 727631981 789202438 693092044 903472908 544351453 180865346 428706717 411580152 965396911 249128320 165411530 691381749 278565876 736870079 414205479 159168076 389258804 908467821 683521872 933145939 642067581 406324528 154629842 294997963 904866382 825362269 167476492 965547566 871862339 795398355 522257028 828105112 715972042 42069736 312745636 182849189 605965018 241629001 889418138 533910949 974831372 598500619 402846115 867636878 798715219 83235256 365145426 871357765 347058034 764447378 975795298 919692358 173214 584570536 935420638 53057226 719428968 994823941 962997962 416731905 735240351 144274887 689713532 164391054 883844655 926938025 355206511 227195239 452945155 395739303 723018227 905359289 290838547 927504367 781739496 397070327 717525582 898660854 109777175 105231812 893379125 8291394 894751451 763448111 168515868 908060295 990724262 359042714 523695257 750978672 289808997 7447290 28051443 477861741 167710018 484098059 930308934 949653138 684895196 536533404 64578964 473524315 420559701 741622804 707598910 670989236 404252852 845836413 358722728 315837807 774849243 422751310 687742291 785309606 433973196 902544074 866929642 671026506 357308432 387392533 553075222 100363643 503064556 900837642 695173018 942884749 423682277 988630230 117585343 8932185 889812517 342598681 710418970 611232952 790231249 795693820 258047347 701048263 309131788 86819199 1790101 885250765 338456471 784568941 388832220 963931784 994153867 801480366 747368894 496382070 599886845 555016708 695531715 184808381 983949049 986326640 35132293 861659467 619021837 808384958 81456653 197569273 806757060 984701155 374261620 141446925 153541838 311010515 980415058 441292172 772338209 181670846 721269533 261342460 496254395 527813114 65101776 767777063 800862417 729341744 507732596 325811597 465477717 118076 811717253 763782555 971839042 486360158 681658620 146971865 885281910 889707208 827337935 92595140 924745758 937968742 465356172 840405689 942013067 692804766 142034861 701233587 472731230 517382869 232482007 983485074 586583935 943365681 573582119 78205044 670989236 520244836 771224412 377149475 346816029 267689919 42871470 716075590 959079432 678146798 571559059 863358042 196894182 806062126 728360649 521084591 221234581 714417476 773893886 527208348 566477581 851751910 900228328 898640852 799608075 934018653 544053667 643900139 692432335 834468753 365316574 705380775 983314450 979034690 419712503 878387380 987998702 332572653 335024220 936528477 501537007 323937805 606059771 68764885 277811813 830865485 837489496 710227203 413753319 454512500 920089635 170296199 950983209 947484218 726789322 337604725 781420868 286737872 714386279 701330115 641419257 660889451 969715300 853845839 964130718 983357785 748894676 329157659 617660148 633129476 78721430 576149145 964432119 138047885 378778850 15432118 884160574 133225118 3418395 901710017 256549549 268321275 600597908 72041815 610395236 448206976 589282117 350722835 801767631 767231433 817073211 417401761 786216072 820723143 974169897 688401727 972091383 721792706 799694975 60226723 971165737 812843519 778551521 501565953 121711501 843302706 879229428 680112089 71930996 677636591 828067797 527039656 90613424 730607273 796581015 795790013 724215364 570510602 931855479 775270717 479836009 759973946 616828460 413117059 984759951 320888716 95025673 687987333 683486804 481658633 703613795 689001176 192025373 133218778 818340003 704129434 875446937 266365861 736474916 137422352 980138958 45740330 323406414 46704478 193735461 335774738 808386675 434832008 871624511 425610131 902580327 912107038 935215436 246189460 401641895 622860793 715229989 222506469 862914795 293772004 660091872 858933756 577179235 465814032 753542431 923897128 751766219 803839301 966442106 988443596 785150642 983877830 208758908 301618719 811010706 875303015 765167492 880784155 307087275 631371736 926589562 256644807 869692267 938312250 501830746 949674341 65859739 796933963 835175467 259210376 909538732 34329802 690346340 401018497 356815477 909218116 72538261 487355102 980374942 260256504 275411570 16116394 814855529 842116126 60564226 670989236 967075498 626950300 149230002 327450235 858749881 581696654 408075884 8864638 510994612 201483307 713367914 631497777 256761958 680403444 694064901 737253799 979561311 961196318 794772760 341726465 617040564 968817432 937922663 948624692 670422583 99456326 657203768 926379028 90749974 688582840 983872853 961629106 984917674 945441800 755304356 869711919 824987702 253104928 368805142 790206310 754123390 667421728 831378308 672066282 877781806 499930440 376632150 768588384 976605663 166393676 508532658 729254988 767470625 924214713 155826669 488235948 775215329 410955010 889684647 844554033 921801528 739884825 806213893 516543152 730458944 315300042 294369739 415166597 707716971 739602090 670989236 234993400 688314862 758909149 195873939 507684194 111773498 810124188 706631238 473439748 345098380 511859485 197950593 391726642 300152299 658472906 315687149 867482308 622852359 84798673 875814174 339726244 215378533 444537231 650596224 349085198 923195464 70559721 7452916 668101966 905407581 555247440 171497381 756890687 325385907 474951431 314296477 136855230 237941682 820305343 380276218 751743116 948401368 119882097 717518710 501253185 334983187 724165237 536199390 985568946 930332178 996511753 243788949 891806262 848015948 678933029 89637155 261481367 701779928 836806204 202351090 862213405 814421255 816302191 876067490 896646974 599253843 783882276 774653301 674529707 790248199 809148119 456423982 219307568 624294030 303370633 821188240 291968254 191182853 132610771 426604042 421661554 873767409 890069682 682294884 791851626 693463409 879154116 952519031 698909647 297888431 320144376 220767807 658915228 808114984 866303397 706410785 916539224 782963654 255608171 588929645 928898286 575526117 735479766 16540923 604810134 450392316 849178562 894667282 263692100 82607746 686919364 867901337 781321088 771086209 825265611 789373128 310240363 545670092 958323134 831834391 925885346 731952456 752774772 224248407 92897022 103244765 977459092 585998263 777473354 107075160 657446177 723286001 719666833 846867550 568647082 910963422 815125997 345827853 804007339 753115681 749017729 670989236 689216521 910774223 678084424 839876268 682600906 469877738 106967106 862020206 940986813 982276083 786751950 872213349 223248557 845385975 814015320 470977829 864183386 793722455 734494073 646415410 691801904 757900329 673148281 340151669 233829543 52381845 447716219 75785636 35530907 390137701 717581949 448392420 418000481 986767123 746965039 86626980 619229177 974112949 106412936 573374861 47330934 835688943 83211813 854477906 260600142 205050056 819120927 386862021 937666871 636139745 724721498 117699015 967809076 611230888 391326949 312746468 929732948 575257624 639280572 121319490 623666818 985616400 157469874 735916354 956699629 672616877 918363112 150473284 557983589 948310661 413915188 672690488 537988174 596310366 73409999 450413255 201290037 524887743 856470867 755470874 72277077 791133732 227867988 228371067 903552398 709416967 197850155 979799822 455284743 858016285 975399087 641150794 441179399 760029139 991669831 226691497 803667938 627073981 680921477 733306678 36430204 222617325 284072563 914475417 653371442 780262860 901816674 219007753 779371216 553757844 721595956 854821729 277350737 832030964 968677709 196750824 778902447 405509029 743476114 252870060 898681207 814169863 112102991 956274355 612009921 686240093 916315413 772195308 963940634 425836242 79858187 868236503 45520158 311933237 684713070 949392811 670989236 187492611 101871941 20360364 995857672 242319537 137315663 938331982 520288488 965127274 896603687 861890202 834834427 848852203 807565264 903218165 646140705 937082663 837016395 180092090 889358256 670989236 394484060 777126165 225198030 179689244 948530387 767354198 864264840 871727940 241551171 496918011 949639006 985641305 137600885 255663680 34617946 854064890 91201563 285620414 959540104 206959987 699573186 867093701 825770191 21655045 674727736 887291060 776462136 881844545 192229279 719028197 354050670 770158849 92729978 874740312 358903954 953433206 878415327 444273958 652988809 793680279 223069459 458616708 480960377 686504755 173800315 781126451 497056647 935328269 58438683 441926463 784115366 92354958 1205903 461547608 28831862 978493430 228705248 395498297 584595345 946215794 806715874 330671603 687603528 660349318 35157829 686363436 760634545 144836508 769470118 817522813 893523965 235011832 401635622 731295894 986291600 870539514 686875778 521799903 651552066 713444309 592393135 4651664 437022873 361258255 578113191 709918525 849142592 631585162 183522215 718211026 879214430 229912544 762827887 568542204 855400375 34357555 746170825 958149413 746128176 583869039 224391169 238298279 397583061 934515055 157856724 243042517 307125108 283172851 829744568 811674632 111991929 227048943 344257278 217463552 166665796 889644337 999943099 730594912 144989300 976475214 949861644 739721581 899248316 935157480 424951100 822804620 955961613 843945148 135054246 242259394 317140672 111088080 251926600 625596090 487177984 963104130 897324139 637037917 929922340 649262531 625108758 91294194 939617979 882097612 740287628 393506545 670989236 669807236 224127879 476458501 827810752 804350420 10358410 68867746 485068461 408934758 185391885 281759963 159983628 184313283 952411174 555091959 423035782 584817066 840161950 980444585 124767025 325197608 260224094 485905719 758777474 258294100 923354752 657204235 875715206 957373599 676462476 397108546 930277885 393352960 101364708 947794195 967833108 729298161 695714246 888612478 529715820 570411734 848611329 727069375 768013477 176747496 641613610 786996839 982064389 326856655 766751139 475405892 995896847 604652708 460576693 817575941 805657757 791131449 720456201 445415069 323385433 54968659 981628947 248821412 18424817 925573184 91335794 560677291 885680678 607936865 670989236 557960707 220371542 97065776 984124198 286484175 731426706 690384758 903129367 24000878 983611494 839865507 372197912 545250418 301612226 962313418 435247953 854361293 884967869 368402777 100409558 953253594 629988279 40871363 960217426 62640929 174517282 710601292 712739636 888540614 680123597 890387145 736361459 947401438 778141464 797278073 336605879 797807333 88254224 992877250 912537545 343744002 589331819 703466947 785608017 720159169 782943653 407915669 529832712 465366374 188376302 956022063 976316315 403772950 706184428 695998927 49149902 270655153 968103084 840170418 578880347 292642601 757288453 848969358 863131418 299338575 811396975 767489399 888383397 834198998 561157652 307512892 775101133 261264267 833764358 700302058 670989236 110800592 142327343 572238606 981886792 246067463 38572539 176027134 784930759 799560097 865674912 136365957 89645836 800581722 979405364 537544888 630715712 900057986 645653274 754223265 917164772 427553628 507924592 531188482 996599024 764861448 480283324 7661366 210910765 831637894 660090306 868424880 511881930 488130160 381875674 852281780 370603812 543891778 26525852 78413447 711408523 688478716 384524904 462707629 852081815 629656060 235887439 560133340 539468343 169943053 958200208 852587539 391344853 86891706 298049747 690654092 799541022 742885563 672145608 431735898 954835147 935063616 973427909 53392093 790458476 150509663 957245627 834541050 349224400 498254486 988794733 861117308 255606493 559696974 231031633 266503999 826596112 598416273 191489036 649237542 834234143 856086163 428915725 912463326 738442219 642947680 909776356 439945928 687013952 851472766 765906758 174040453 362422288 236967697 425611365 969800895 525625237 460545600 140928639 22655260 601505789 892254699 889287361 452371748 120332351 944599327 567709127 958510034 851096158 194555718 510286020 788574496 322779598 80446582 96584688 188931331 871071222 218711283 802213170 670989236 688154033 959405211 803466773 517957719 43428433 997375454 204277519 883959928 817650364 537496748 941797949 735843367 826627952 997523196 729484276 848650126 701824847 804634167 994384685 543223790 607481747 291054676 342542104 695494174 469983487 511648727 647318740 666323917 632283612 291925815 717329587 64079241 456782149 348642897 670989236 740095507 727374911 819847674 800875778 78871263 877502673 964853636 255137554 476027478 596489021 914856483 822727052 845506773 670989236 994295078 189790847 736131868 239124784 500559903 137336025 265679050 450043800 506924866 805290436 819436700 434910604 505610185 803454050 609916668 943155925 977413829 474033041 924400817 195192304 144505761 694353192 162611666 721188636 520297613 102542343 967138033 607661536 354893245 928054636 690556178 685690303 555878104 755587292 162301993 848297377 54153036 826977302 617292134 339774183 960482535 744474114 703514224 769282418 755249909 269100326 561143732 173402420 832894123 768382697 737957651 420602093 367547369 795560939 967722062 655160346 54726749 108077351 89100269 554004225 182992674 3069813 213204632 547994245 711677019 856515530 939495119 752095885 961954010 670989236 555613210 978092435 940581978 528606206 147817426 91086994 801504202 665300521 513630508 315393352 679799159 509526894 16981835 101881674 745204099 804629881 979729171 881072258 762029758 952613821 385499081 899894343 67834202 94967487 593002413 894647832 475986627 765882815 847314149 200206463 816352953 563727336 753066337 444267726 290664826 858596448 38168700 346853796 849932453 946015499 664024479 933632235 840320393 117309862 402419923 507683623 874905092 941627864 835118040 686532663 718718400 325223895 762691470 683012594 992008792 302934935 281213939 758674022 417500279 889341405 499063773 185407045 876591479 665241579 447394164 860447034 64984398 829847544 115504194 32326628 947110036 969834545 3410539 401489069 989177620 566582563 639179133 959907443 907864559 831320982 476237133 336742665 14132263 223700204 176391840 771334941 788148421 877979548 783780278 253414240 122715983 677888050 787632338 456427415 211405085 607076112 902385807 657529099 862847884 964803765 547505154 784634758 207644615 616160171 987770537 940207434 512983243 752713974 850427714 823480758 805470594 547221625 882871463 942298915 972940199 536102329 901560717 930418398 723472086 919940636 524979463 747009314 829002385 660710129 920593880 931369020 209239089 630080793 449626774 704356766 564742428 635789091 207971925 371335306 408993328 640494294 736936341 728143048 660917648 954158825 766641103 997304792 704170356 927147217 241477499 105618068 632480073 558909939 141178049 63366534 760560218 879027270 886635119 670155702 876932389 468313284 849153466 44710891 775973609 456364725 395474134 402992373 491931355 829854813 77006382 138250188 991934283 34533155 668616945 42658957 750058328 842276699 98818212 737917065 607864666 793594471 168076829 852278866 852209699 705013717 978008505 890919356 251946063 476406790 427050111 827903354 961113 888310014 709347854 955053726 244515492 433441364 859466062 893294581 834294177 468157500 901923792 785554099 398336703 746213439 661637958 856942629 382227549 746648569 561365775 801516813 747064597 372844499 176983844 955990564 895204147 861016692 734791106 691395784 28956973 794518767 579501291 807746792 670989236 356554914 701672936 219670822 794758209 890355102 554262995 952602709 81336206 43291521 897368390 775807362 869049777 202088589 216826624 678117536 786630145 944900946 756312184 831999823 693049600 920390122 901432574 980009083 62963249 500053236 783592067 944157322 723516448 93251450 128364200 65932768 913645869 886888944 499811080 676399669 687516530 855389065 582920025 962260504 704212638 408256914 923817404 749982462 586804595 506447900 90346785 920143427 372820641 755058215 107024809 155723088 869233476 177911774 757542496 778437292 704366756 985779039 769730718 711563469 451450248 372452103 998487998 841682488 2191460 438246696 970797089 848978133 731052195 961621455 954488600 22184935 686914562 510052897 532515958 987005887 355513545 790740249 949989367 607024866 847791634 898058336 294551417 877075482 990199702 539808169 897875374 886230719 66917348 552581346 895418183 268580507 630190238 756927675 39640509 89720968 207171704 849496027 799365742 720731981 965629867 815385307 497104572 284902889 65905984 768690439 745150735 676484052 651225546 97518332 383493526 695795538 200558883 949881699 962088967 723297147 824774277 261018190 601171239 193564340 981695866 625017590 611192485 724414286 874249869 757904186 493448327 488836859 370838122 690766944 943413131 829343549 864371163 881776917 192657876 120221965 862134562 212307515 146586499 811014404 541516005 887454849 869870365 139567510 965161192 758986236 526300874 249141377 464306129 745822729 730125405 247531865 588192199 696670622 348688624 619435258 276243454 663043858 388712838 804701579 455215093 311013191 921999478 983146182 712985144 817083540 868018253 767990228 709839624 184419282 108063985 139892144 835560750 296190600 181413877 219226201 758062409 572997040 988577654 913090151 180451060 31250501 936483000 578782257 236505215 994377115 363143733 755394855 877508610 993258298 513344721 858495012 476929256 413640721 960929772 862989363 436232385 95521444 751401055 152116731 846558415 673661001 829951362 805063763 728551667 897176117 630071268 822825366 876787383 773296207 617749860 719185496 678506743 689672311 267045987 240276889 163850074 363260410 501346470 40591897 860195565 178079621 258413248 857782117 417189306 884782117 760400021 310329701 854610504 898711581 46967229 1465084 831115699 614938664 997197259 696770791 847428826 753191747 837640204 450773418 348050331 288438019 726844672 770411935 180551666 673280435 692022986 878760986 84978360 855006547 587397368 916078643 989680261 195018253 873607434 412808603 659808846 852768848 5327668 750135561 617288196 938276153 901617076 670989236 132288134 299432293 891308269 852227888 691584517 606076375 438483655 908166186 722161722 212232803 596856053 674783293 478165311 273157266 101793970 97822870 601394450 753534206 105998340 362960315 805660754 908541698 8087939 73179893 785423817 765157369 594291989 806756319 396881603 702664679 730589147 456982249 916080184 102057890 797328559 817468761 376360982 850200607 851048412 8580411 180015184 281287022 594470852 42999997 62144898 774220813 69010980 722803364 907505157 828440575 672976794 943414441 29342133 61399445 868041572 464530768 738534511 982785824 824869022 99540846 145144602 882621245 923031455 302884343 878935119 74598939 632317660 800999890 438113483 505081399 964318134 889328373 83557302 856898041 44401950 423593093 364065064 265350407 338523763 743017273 604420776 777433058 969254452 979316878 796796554 679150212 617046757 837240307 753534568 478757798 154171051 715496834 458082640 480408636 258088027 931163603 960328098 234173270 235114913 695986509 403251738 725399248 938197168 480763994 547987671 239821757 775255280 609637534 779028250 824440651 946173399 983338906 974801284 517866629 521876380 671108746 970668732 907782063 993813029 496807344 271971610 738929893 557396884 953937636 478251290 466393278 34907661 84210958 86807841 915201402 398063803 865590076 222241223 33928507 746143032 834730399 121285478 815963476 427329130 656991411 673132873 980661484 523620818 153994 194895982 173272470 543637962 180937479 761169879 928165581 8506501 109853833 60950817 792619484 933171403 971210533 959239941 834073555 926133848 749364857 146707046 570061890 680299533 670989236 884023992 466075419 891985389 377012318 779452306 336995301 897539261 737398586 361249336 37482639 834764243 171872876 520521433 150266152 985404121 114754632 494198894 480079930 843213494 811964701 268141330 540184344 861201240 945223640 314862663 869917668 663226928 358151549 311612802 531284483 415144709 732997316 329694767 385921095 723443771 50213679 622252961 597187232 977243746 7280943 211342471 978903400 913793473 863093344 961554879 859849145 944586145 964611628 930167491 217875641 30741136 607016727 832976276 214501448 131746799 284233552 637063789 852911081 704362714 686738767 999451666 472462211 550465418 869150008 236557423 247383422 938649027 416456752 963353624 818119123 760192363 807135934 202281864 927912083 561143042 427376256 293844386 800868143 695983065 867953001 369924458 377528517 762731780 725788330 394326914 980679133 705614811 999460885 335524880 908258386 951880144 922044022 41982506 877066182 815110253 951759478 470361689 695228740 694251882 850516659 942409792 112727671 855448833 311957041 619004150 337699834 392769062 470974969 198768108 125032219 124341464 279676029 125765595 918388737 306518243 832618338 322268811 904416211 929674851 676125496 393140841 688214343 619088227 671255445 842856509 990505169 747180216 33236863 688556617 913319922 700634450 469725537 435332528 10305572 515185634 845332972 347413749 300383975 566901510 717752748 927963015 44484438 712335 228742094 75387193 730744525 840615635 583306744 429668658 759934673 774585199 771560580 245170502 119583365 139277692 964093487 854722684 724600547 930172589 299368337 303879755 398822330 610200126 866881060 519183443 956600549 584969127 385963418 398921255 751260941 57056322 183144521 742325464 417385951 266758985 664768721 944111472 975115816 708758694 675893019 694019311 924723949 15701049 418974597 740825653 175396941 814892480 765283283 505644944 703367850 867684743 133889064 733998573 535749043 605430080 140426906 670989236 670989236 106563282 59554926 391056708 698613990 968835324 188134392 815693854 840331470 203590758 808547975 850211366 905957320 836452363 828856168 612227522 4415210 862402484 724023581 946633186 888122661 643775953 949334795 675556640 695118022 862259284 434226181 577852929 768763650 953057159 570433085 682188596 508503134 934125942 812977782 304751350 702704377 828890456 628770333 220531875 48218042 799109374 776475271 907155007 73602815 846121491 759071305 603827505 65561450 191959917 526384421 180108651 658493496 276439280 964258373 764123101 750204132 829395132 279826205 804383177 315694443 252338974 136751820 909791028 919318246 683264415 991650332 774709761 234399357 237629932 669294791 804703105 670989236 467934917 108068358 829053167 819679185 689611214 865278673 919348972 937959883 794315859 752100838 17829399 835275609 528062251 792476363 618672611 871279479 386723494 585419972 938472876 926807155 753758899 226990344 903578723 348127821 460473390 678301190 38939320 843400202 828895268 724639409 885101024 915349307 207824080 602226215 662225546 516723339 924579613 727985332 328326621 29197745 680385675 371298794 672178502 349743328 647177075 245014197 769578703 789007136 520752574 403360097 684477672 874588120 182409404 619388115 773336188 904844921 499009531 454150812 959734557 729004319 816854884 189359233 704323589 161970481 125685970 486454650 578571898 610694621 731054983 772259776 573271273 957376136 953330087 441537065 146618556 697133940 739460580 912942529 685476666 138429426 119339246 777034738 935150915 970098618 384565769 676235181 261498144 825437071 530499766 161939792 26370214 856722868 692336593 326852170 894512297 338743818 491023693 195803044 904201595 692283526 850678743 962178740 2361528 883854810 811421426 673687991 727274008 565164880 644318430 57519137 282174608 841943422 987787374 864903614 880321761 752322763 300085623 736894983 743306350 90360303 553466425 702613956 670989236 603633934 912843109 694452906 578632365 832962487 670989236 614494517 51650232 58003760 547524640 517940740 763557019 82450970 740615750 859611105 788346563 928330531 850531825 684544488 173402992 993613609 230252789 833113265 944349163 141111663 629916804 750504931 716232478 887574097 477157048 371836786 975975405 169542540 845477038 808977085 372086306 991373859 236859442 34150224 661842732 391775114 748246988 455176959 623860573 786534479 811335984 975365845 625820114 313784657 975982429 529863676 240132064 790836373 241626928 772444383 326274624 994857261 446517085 450059478 333763116 664763902 591909174 188512377 544758533 990788891 867837153 675783010 853424241 728248610 331456705 508301557 816421421 973834004 717871183 690996788 660693262 830387504 975165473 484818389 686104722 637048361 380506541 280695704 805048749 296786354 682566131 735914614 266284392 956098049 554153172 803461366 591782114 581598708 996822081 803002117 574188906 188294721 207626132 884472219 240651154 445343867 674054296 370499375 214622102 946634014 972617772 810067175 405235607 918456464 958867834 842526050 366318818 688790486 201795626 791994130 974345419 742297446 530054668 247474122 853862193 937651736 958082791 847325692 866467733 304065013 182398319 338129923 670989236 581895772 728223712 527293560 227072876 846401469 960209661 865733509 591624016 583031801 947787494 580831725 800067422 712573591 993796768 605665423 11646889 929818369 914808968 843075001 928229806 926744492 962408896 736701543 399593815 254983598 822600185 695379145 32751947 270118965 860140174 404677096 903238027 943671556 198749037 426598168 520822717 364239399 918071401 411189293 504781478 854331823 665089486 936216150 748913738 138579742 777504684 952358832 833478341 211445090 953319034 684819851 235407674 742083872 160656584 663095880 946904702 688155707 834087582 881617379 474509870 14536527 954858708 673958335 82910347 984409220 149339317 957765934 250153296 540340387 683119069 114876058 911445424 863563583 182352921 784657420 44638560 62981314 396736825 218873076 333672976 828421357 37115746 767727746 982621335 283757322 24425457 119970107 189852309 988148997 508709752 915775887 645497974 69208424 670989236 37571738 997871981 613854990 579590150 985290894 457174128 797306698 844472581 602206968 730410557 651526269 348778884 67981815 169447382 732141491 276402138 150833832 239135359 3709274 819518536 312212267 307270351 466251374 633177739 20931324 557678675 328235870 933061179 217594603 806877012 747529982 497125270 109521838 617127420 56572618 177014270 790742166 741248377 260366416 741062386 898600821 343133363 523830604 825750835 689257684 1477082 148361912 276346406 665049056 931713030 573985488 397168335 926446440 670346889 675296136 732721048 373960964 958390693 690834565 764249842 985422894 962390235 398625032 255614897 394392802 872871056 141181948 473780054 263773640 778147433 752036485 359878285 943619142 459458717 967335108 973892844 733515857 824924172 574443936 420008066 503915456 439289624 239226376 771295378 499365749 577145962 73592566 537117886 956337134 880660384 946693633 50374223 667600940 972325980 769178175 148189738 880161401 258654481 159923548 291184977 876393568 928250022 855681557 684440786 768859689 748171650 581051495 802721788 924812398 842706293 786228012 806409115 945212771 168657347 721381408 355708575 373939806 132935369 806869201 304582838 337847112 500561257 520341870 515434077 950935820 827811676 850339314 929564387 152135301 998137942 571754181 999837619 610897119 855339207 5570727 225250542 848743484 758224607 900465701 74876558 895114535 670989236 458997782 963513256 840725715 653036656 454624488 849929754 29457773 141000422 673400904 117443381 161136315 236261339 804407032 791857406 837403469 757724750 905605491 802548888 713511972 589702293 934098158 767202076 984589463 698669351 68830069 310912575 658091677 991613147 954866446 365220841 687739917 854125472 137372129 720043640 858905848 376478393 523590531 581063625 854833965 973483765 701074180 402673785 469034272 674242958 726167072 828799541 657479175 670989236 695748077 706303443 14321670 945354950 797920000 54504848 509166247 295553635 525474296 648554014 311937266 908295340 570708528 406627378 159203695 287146908 191924389 828190708 725244087 368653441 262614985 126093235 772932741 415294795 583642856 395302592 699857971 964885299 835181073 866623332 701099991 317977601 213551966 538759029 951608382 476800391 573493253 991099026 994651991 670989236 162754880 568730540 26893978 758885623 841911919 655206381 67461526 430669912 380009231 54805832 175833133 794279818 301068927 456013207 851123568 687683919 972965747 758866876 255574152 402241375 966151995 754125898 686607313 102086201 533272751 760236728 119911234 782264485 877463912 894136566 739058862 808404129 905151083 715342316 297176432 782845107 766062509 350940249 956304886 749366941 591838168 85271357 336884839 671550079 769791173 954420652 957039091 706850142 613264242 813736523 814754155 408842797 860018286 343894452 555543934 621649446 675924784 38516972 500838149 873867081 795669098 788648103 131379623 710552239 367675022 582579598 694282813 322277947 881158686 880705667 120041713 321856695 872172218 547008994 277132690 144129526 153899214 962528657 971865250 978277937 90367637 555143695 584322648 862777843 997356421 482448070 537252797 670989236 244444428 318028123 70249487 670989236 518261785 406141268 123777451 216164327 361711672 694249671 123111896 587121039 670989236 696301163 922086470 397712875 707918494 661222188 805254650 878008069 889724675 235433250 436027954 70450810 36801828 739878665 825732030 977711611 840218561 766408125 544646523 743011819 140006173 483876957 466651406 837631667 951594728 939613671 571588991 942053035 941669229 318018450 416478847 675219476 471748834 727232057 134570976 662490917 918777624 301516311 27338710 111397667 145111024 112383159 783712942 753007923 784398013 83938968 825678016 317721339 743247191 420024041 63173912 960695790 664422359 473909281 186686341 538292319 527986121 682374457 319715532 373166574 810933240 747030339 891707742 923941173 702926817 917095031 364356749 116538193 362233745 487825987 367882666 578515518 863522960 818026795 670989236 800811365 80601010 649459341 829862176 670989236 638282208 264186128 681552344 638688701 830004127 925620948 992936720 512644710 509031615 988243866 259422635 258284164 851915575 129219629 949246129 755953761 590520584 615598145 534015897 696333923 274148390 805627326 156782081 756665661 663959704 196779970 142496824 686015977 352919821 34860192 770706313 294687258 877740940 831589242 970579892 246729916 640381986 583383621 738766181 828320639 586320730 430628933 973374894 902331565 704317778 731241498 817218258 729848406 878990786 114865756 881404882 634886612 48125342 672254637 783818506 993623775 774484878 113631559 128107691 477851082 75811999 934868878 779722691 375066202 712231893 165502691 841857478 966760392 958854138 664110042 534784055 723900458 670989236 197413071 878042019 866955746 286273415 307457109 483069144 974076494 810525947 924869662 700869574 670989236 289797344 736653957 270609250 965164344 873759781 950385071 404118042 385794605 106586041 18948926 978600003 633238869 918774910 744512950 782170905 766285062 676236655 880362944 884713217 971175788 841373268 46916754 799406773 688881343 241722267 838586371 247399871 801629460 775245133 400156313 817344152 867003703 506722145 783871512 492654009 825051218 85283716 333834825 266679278 285669703 837879868 772406888 898544273 930268696 179069875 848829223 299740517 191548375 213534067 392098369 631757504 542259159 756456618 349794397 47426829 795371556 307212767 773059519 744723332 986797673 743003723 397060261 687001636 77228288 818533619 947956428 703570674 307948799 856131833 733023951 685200721 649383931 612767574 858864729 315696686 212444141 532708320 944192987 176291942 693004428 911507966 735296322 715209659 202416844 116937077 161235050 890611224 285513673 61718119 686986780 202811291 527958058 497663143 604317673 762889328 883662360 140222278 852251042 469026322 571505243 806012171 6577757 302440294 809281753 551082467 274288707 164698824 52756312 592718285 861328122 502052811 433710332 516817830 317438598 855304317 753254983 100165884 601864481 839187665 290872304 62106343 273554572 840120991 341974187 545292809 670989236 231841533 50213388 315918694 834176950 98443819 763323944 274779378 427932777 821770386 124871518 818945781 110519602 839833442 768360550 924778469 495103548 994469206 877749695 347741004 574205645 601668146 115510378 81531633 604915385 986007894 77857656 750958090 480264452 93020185 765826835 607070932 758485167 578519922 235808097 82939686 245119275 471810630 82097435 132906714 365138489 240978693 988898615 364631880 337160148 926891105 449832284 932801289 429269439 945917138 814703523 329004760 48648800 924329390 467085625 748824223 821015571 473868410 692000667 896542151 962778682 331089501 569445540 555811762 714007848 676833738 193609954 955494630 778839103 825397833 439952389 991063899 543260118 889302013 390991156 825529055 769795055 907001113 672871935 872467217 743781655 727973141 942441424 401263571 627415657 847815478 987748688 715240099 830609272 975094859 855828673 394112798 899702246 459416335 274504565 190563124 462422494 730775435 952354350 670989236 783653013 444726437 745644901 97881101 723385287 475429935 902321504 598272080 25214424 799559436 518500002 716755213 284835981 712555449 402183150 598629267 878517821 996132992 507487588 522786687 477096 409641081 420346359 530161783 555326380 593472659 443626795 461866034 938986993 357333447 966258015 473031186 851183312 444895608 271580961 178999506 535492209 806363640 368269093 326882548 965318965 794771499 369109208 439496667 670421411 776086295 997283994 693638944 706674562 896720102 161538724 642362600 266060065 879398632 49928603 500481965 659723026 670989236 906687837 942516193 864073527 648529128 717251106 43398576 940302426 17756153 120244241 996745807 787680497 78117046 735529044 336905650 431770446 249817889 913382730 726609600 527819232 890260454 353413698 954840463 963125687 955042481 198369271 287101357 900652048 895207620 255350205 983529135 377748106 931841715 814562930 43395782 968989262 691127476 324293396 467620996 299949729 681466498 441212619 157702781 544096009 327797543 473800070 882230475 839600046 266060970 126753667 575396680 503941996 515569274 787262784 848943030 663091046 322503042 674952310 907884744 715904280 794226688 255980536 509864197 785987983 153458674 678219652 7063723 783619597 839885985 124522748 847480858 981095566 185866160 781088147 763494964 815898431 769702943 826481193 687065714 775385967 600064442 799993461 996522381 123485882 535526882 401882387 701471310 784126153 420046358 697568213 857367010 284266861 857797402 874229718 955384090 927952969 284328912 863520734 789089288 268579903 835068568 568551354 380886907 88393065 599136564 423526791 505184691 567159467 522097866 930540738 686682081 829856184 495446330 703633163 891772369 742356927 111244039 342597809 918804684 718200778 309418788 829449748 276886240 327370369 872704957 67467658 995642767 329601633 185017928 252485689 559179241 42441843 99351667 71346414 806142341 975806890 790638513 598525139 272893383 735268832 555225587 739105589 568616298 605547139 899692317 319560011 845875937 986476608 545556287 161768908 121910067 773575807 715296764 821972332 273895499 919041454 867296114 807593011 651389452 508637540 969207364 731118379 970876469 80092609 874414137 804661659 686259822 791584215 814993195 893731609 670989236 732625052 125319884 823155909 813839466 710135503 212121894 103290059 592810819 410088773 201728292 253703517 953466236 627660013 764917476 408732820 989765560 338499580 910018011 535481559 546506050 719118690 612433552 518703923 527093051 294169921 217254305 845744850 643274872 24272615 970617873 321932062 977411085 785259774 421091808 564596121 879561868 458373485 855555069 319892248 515136234 546096980 728517821 385231545 547472102 240056426 403994996 595819109 568295596 334297639 332117152 578998928 676723903 515606666 471810448 859087162 787510966 980001480 579882278 177422447 704870461 278291196 902953471 741574436 657730098 728141193 212095768 653924588 925256274 530552107 797894886 230657924 532506203 20717313 899091780 985335577 471632741 189014745 871291353 889016206 967123964 260511674 213324504 795791750 419787220 919780011 839190541 598549036 804753345 625912295 413970812 532820983 761962810 899877880 179245903 670989236 799596162 256269281 67862873 994701875 129589912 873041554 675656710 830917715 250157213 673330596 747553006 710383706 181937288 608871194 978408213 115183322 921959032 144747854 151795801 850940557 477937030 211465410 576316723 360809842 971639148 423893586 92259845 129302307 117362423 31144016 777890835 586342305 204121306 842815581 178459008 456364981 275020296 368179860 966667901 4302812 824082511 884735144 995851780 762772535 2812933 740588559 472313851 453999662 805386588 700239744 691654564 327688203 742786286 716386941 689871788 508562617 874641896 690522256 999218100 212300658 736565105 187172084 750306258 546329134 477265826 480100264 773984022 685506567 169426178 517579086 927309794 906061945 842832049 551371765 720149542 536324233 918790079 989898133 944733569 971764633 506748491 113501137 277675726 939507225 129029864 183328692 718190443 480850584 960914389 99905142 364700626 672451290 928486003 777989758 712134477 681682199 876569875 844749591 788249084 170226831 370392736 742363816 792658734 882444190 809851920 854020321 800128023 671561505 172371878 670989236 952270358 757474219 51536772 832468228 536586750 935698681 833831172 324179138 803408918 882475726 760793279 812447000 384955469 112886279 919977290 715348152 533151808 400550649 468242920 492299817 907155906 11283154 606034848 816228934 981479229 78975391 850545480 748772183 612047753 683765095 672113717 632627169 27025157 498338700 864113410 811073767 795942717 969504012 483722193 557494265 684372008 720954279 952906107 644973475 697953526 809835845 362139870 800434944 516467770 857408512 670989236 300051480 172107808 12331666 809436107 450048976 833243314 564317093 75060667 558045123 432765050 752716572 976561372 670989236 361693357 466730053 753578679 222009455 790841005 134863449 875094778 93459775 181167430 706500496 245619972 707642492 230723271 32577774 39690595 669632948 695738272 992576825 26320705 950645574 37604882 874578853 936126940 916033706 935889922 716941061 833581208 150755589 64599676 761635197 790072903 545716599 762338067 242442561 134643900 534461102 993842161 745903699 323238568 287801602 861081429 29939786 207696087 869539710 411432127 177387129 379506162 877484213 434726470 307678460 776413453 936351774 825275748 779509190 610296459 75093120 384272576 940533737 695156685 500783585 417287258 775076657 107103035 565854466 153683103 4578726 209762238 162103894 942598108 670989236 456284667 775496192 843462186 41329692 783720687 81553931 649191663 904338534 597148162 951610914 538821789 883693133 562917403 953577113 187200531 975037981 991505918 948440674 450633321 670989236 116373547 626636718 968894026 611708463 97289270 379585345 282318726 662947853 740625259 508216018 132765479 674222618 288205530 741337846 774128845 670989236 932421312 345034406 859716415 590854499 736501685 511871128 973463399 881558156 900946892 670989236 154675931 590160189 925621859 40725234 890424318 838012736 404411385 731237871 328701931 236075747 748207236 834758770 761293330 589799232 698838342 758804460 551556137 776268903 892622739 674411577 942001765 472673064 954219597 591434199 765072778 46181410 387673358 880278458 229036802 322793276 472123641 974218185 427713757 805717230 559785792 320765453 591420451 867773351 382680987 485847337 463725875 315587281 323464680 992925425 880831017 994875633 575628021 568341155 863141347 870503159 566999682 310227986 412106465 421239407 582835883 677502534 229423431 422077452 667259726 915012744 120698260 237500431 661658956 900453977 586981994 760013204 749321572 763718864 395753551 900617047 371801437 679905204 179821244 973103477 71589730 992540285 774490945 704613034 786719401 444769653 430404676 723089466 627361945 761212198 157754420 801439315 519369337 87944430 889847146 734765013 419718896 845097068 73380344 805414749 747114526 540549277 932432264 505531968 712669146 929059112 553335289 587991614 970845298 750326926 905803894 193180624 421181461 603126327 219702131 587057658 776473880 658005069 896426179 150875914 937861033 774565481 123468470 755962358 225322870 915175352 279725026 760501304 720736504 947144118 272984756 225156688 268278007 725567860 970498784 980719545 207443555 615762107 814144452 995928505 696006499 423741561 224974172 467344168 859172900 732035380 683611786 221889623 706567054 403957578 702640145 753232022 628904421 886870649 532363163 433098450 251730257 726644796 688593310 221596652 303187731 985657104 800387872 319507821 507725830 119081431 494211583 823573385 623383398 280095471 457056122 722086969 891121297 576034545 223093070 627254344 900541017 871353729 9609985 160054121 21663485 368042104 812136114 850597385 881770271 382731870 380545206 493044233 767708434 468243121 298125064 844548798 748557856 247460104 104450519 869393418 773363069 497183774 312848539 747043986 390881273 837372439 219585373 657574420 768814222 543788164 994471320 101286704 553159025 778667894 808768251 26171759 880586671 669346515 670989236 687445351 362114927 128214834 487463311 769656774 999203875 541402798 400266661 660430360 919216780 831742792 590888550 947518812 277238918 539118451 339204928 185901575 632096338 588317938 585716939 513428951 770653668 22397256 977569027 242203632 908274094 321634413 237857697 56383548 602763922 136928385 743250418 847656495 835211484 913243047 402114394 112090170 871583095 709756923 823403371 334647278 116913862 830858043 191062617 302784971 878578909 720629083 871821310 972926777 298665079 494967122 24412606 799248788 199943557 892960641 936240580 229061164 831268805 180234118 896647041 539513162 285063094 960081835 773662688 914419116 925862891 794549883 832593658 48384216 514922454 327790417 805294120 531161233 725958139 601040983 35459198 149857152 701705562 862309044 990407037 319864562 343519439 849480353 116728754 989708775 350005893 869449137 826312229 163147538 777104807 296916572 44048720 864821468 729216801 734820193 631830122 816693724 772499853 728058540 652445754 460708051 987496223 958026155 338159106 567741046 641628275 520187609 92935313 959892109 732741917 737890649 739823867 550987412 825132505 805600454 220449565 831270478 381584569 734382259 212295752 957426634 586081135 875847240 503258859 814496143 706323976 673183629 879966643 291939768 67886522 537208559 483654124 21141348 517204846 753296825 978160561 670989236 481530907 434019760 751880160 886896552 824776594 747309674 438385272 27210447 733322030 235915972 475448442 323469846 555193793 50417572 439363876 937077431 735959605 409090485 611971181 497931789 919463320 530186695 955405821 698211866 789704631 799400490 342441121 699208751 451338290 987743775 750081387 95722832 713549043 23080337 670989236 211307834 204010689 678502717 945998777 379157806 81168549 684846700 992958205 780699487 741736556 239898509 999910048 849504248 424685536 934426815 768467687 811556830 80404434 96038453 792412806 934760715 177072361 402957247 824498744 772281360 327571766 128542528 362323231 237676567 766178477 644824499 230798944 744619679 743796462 870555560 705786348 851348837 434666362 133519477 381539981 606653266 906984506 168573784 72952069 978768992 11345747 693276804 1686466 517838539 472699674 259211060 687957681 932374711 819586340 226329942 140594715 886650156 272317002 737985358 900396782 229246840 919138075 487697382 811621551 839352560 301837702 724854946 997022211 838837491 208836695 830227488 245812347 905994350 890093010 970773274 33091763 250941032 444548230 783341995 353792276 863033394 699720096 913122432 802806294 694244165 484328165 961053491 401464051 987691072 435844610 855017234 676248777 954595583 635956075 967200949 220908134 107297057 653942966 292615807 716972935 89261691 833153769 264761958 382714670 935619033 295633903 253949876 593412229 722639258 752997970 878451203 280050477 718770878 11550581 36441034 549777885 573697960 472334566 619636114 980515656 616679863 96611259 247775573 278909064 75844712 767628250 256116264 196015039 702159691 719673229 674797708 290282838 719525127 527890926 242005727 852228972 139954296 872448552 924113954 25942322 241776977 366084109 908549471 739311929 150271760 62759517 975556728 254796115 666600911 949197367 595138324 853243607 750044492 143361744 718223868 424124856 648650435 387215284 742106125 94042627 149615830 631783460 677609112 257889425 911663947 192863959 855441145 953863092 35412499 846103864 690039977 347685191 735722491 583248218 401177057 888652908 101188106 247736166 747091208 930075679 512921222 314894564 197191851 183980912 871972619 790350386 745808576 813962907 206327847 597903222 393683051 559937095 664968514 959724676 584466792 967047087 956698177 433337868 670989236 349485992 983960243 843692538 797277060 908678518 906032235 479202295 746450458 946208631 973011692 671296407 665149350 871841567 27018957 593253809 858647821 105675208 599609052 804899216 419538643 754460136 17927353 753715032 629816152 797863718 106900997 222566063 422341630 578685453 889248003 784779274 38145918 223852818 694526428 466173033 662670509 784239842 876615312 962815017 892554709 247725047 781486281 906572625 70324964 823801164 855701219 869881867 390610515 710153889 901314928 232198427 233546984 777486974 460761655 890984855 522275010 860492424 765256043 380486144 644407014 967880805 847101311 612906394 325521899 773613902 625720108 743105239 511474613 298374244 345688828 949653341 749822260 384617835 42633698 736749019 337828957 324230387 773333734 682790486 951416549 94668090 991836316 68379657 942981577 944131788 783926039 913757342 712589513 686472172 758929903 693295588 786583939 236470654 39845965 910637101 734031437 465832799 235401968 31122631 787216138 957955545 800594648 401708831 892050695 956067273 234879654 774845715 670989236 510110285 120804067 935338369 930912231 844223618 710154851 446222519 833522146 124566721 663849901 921973228 828126990 594498890 966701118 994846164 782131715 739487918 997340560 749265369 386583634 719231583 613928532 118053488 471174865 935355141 71463855 765073494 360995361 962361802 855355529 195416364 738683489 469675080 21542512 192649252 14096320 121041826 997745498 889808357 776497020 933775510 962485938 146094752 391032590 276326289 215545128 600356704 846126331 584057280 860847874 948900159 944058438 928700645 904844270 135043959 855451119 828897630 785094435 423544723 642883613 735317217 240335626 102103027 535889045 525547857 872184682 676410128 818712786 944355695 668115982 729005012 848578880 727368530 62099716 432691863 288285129 466607966 472664733 129327033 697835511 948632618 353169020 185455763 766854618 103488421 707678140 141112296 876284278 342489505 462836340 754494373 333536772 13401436 92943078 425880116 435519344 491115927 842327036 883336822 909207105 763470151 865096851 756699875 944828643 478879745 925823379 751904425 844787894 907494422 506890557 41167139 906308669 338854480 389374312 643486402 985662175 775342859 694456352 35705631 938922694 998051198 400439325 252087811 322641337 414878579 813620553 452465403 964659746 89948327 288411310 451785681 88249807 409133652 636069858 723474319 681815813 28672831 239845819 309055692 789069797 15566364 769633023 991495014 45072032 234256496 577630673 597545898 565524465 959056588 955723771 684733982 641086526 140314787 340244437 680515117 841113621 123501632 133026107 756228085 465858608 645677882 245463044 833161664 732479128 999298668 906317808 883619002 630219741 685639396 467884127 670989236 6399086 863992445 498877551 577456674 144757409 43601059 818712651 364504420 670989236 526296463 362230266 366811310 422234227 899478055 290772267 586991076 202429633 788973848 499336756 847673878 409056673 720106194 906096917 52625376 678036954 933544430 229167517 216031350 806408710 872450112 839956098 623664854 629921049 922994926 108842898 32732672 730649812 802909735 881152998 529008251 708020559 595783302 716663552 670989236 72995432 847062993 533555284 224610513 694331273 664631219 84026234 950784155 670989236 360072444 760376277 822304938 481649475 23431166 708713547 696059053 821550518 587584907 699483106 705560711 491046956 813808114 113856971 895094297 363095860 927621794 625383304 916627774 918369442 293659278 82317348 776502077 803308751 977177110 998071753 798738938 775129522 564613793 695827382 789916812 30487740 795158835 215576481 145607789 630553030 875471572 447580246 215434869 448648730 453491946 288965452 200282268 601075439 335529329 912475364 190227242 752802863 899768233 670989236 167180379 43113411 892841163 443088125 856756364 719168613 146868219 92348863 871378335 720469733 217778982 782292150 709417521 925805509 502930041 79403913 697161827 892607625 892868601 826225440 647044476 708658276 987412646 30375523 569828102 949622133 270943191 696404587 379899706 773494491 965914802 959083674 971917904 824150692 885742283 38082533 838103511 785411389 769252681 822454730 923565395 651373479 381875463 693449042 706678417 69523144 824968211 102696126 180922024 842328401 416926327 861459126 298423703 376798167 268358179 821531387 486554263 967658472 959481278 45798634 204709994 573217264 879830163 283776885 623957919 378942048 752892518 545789348 519039021 696364055 674165546 716247239 700340075 467935073 539643472 960168226 695946400 401797903 891131875 324528497 148665138 46429577 975331296 85904058 578669471 901600658 746401419 846982356 505948504 742371296 707970497 411326500 108223527 122520487 785585339 713714095 842114673 713624863 527387418 488098577 925477314 847747092 318684240 193026620 42139725 676677310 738443088 785128571 746580870 906477974 827741545 876537281 677070175 406084931 680763999 350893971 337174589 511556016 214906959 688777605 681068745 734847491 291586668 82983207 813105146 293714441 753817348 482566278 935816302 484016738 438889220 691329026 57307893 223717459 592178264 746477835 752578885 857679068 478213564 515072054 458347850 288856662 150311823 410125296 291622383 670989236 557679830 42912073 45458094 670989236 218202237 784196402 627527178 782372137 998039993 741146071 670989236 724240958 124562776 497305179 802441781 421386196 715425349 915757702 101283761 477557786 189138673 93301663 1461786 632194846 890635801 67031245 17826344 692644496 410662862 178391528 715133511 908709930 212313030 737306239 407379050 93703017 968145532 116979888 602717406 645653022 400246430 921892431 117419399 499348294 751713712 247030721 930974294 844161478 189220783 806697074 389844534 989913441 731005783 414126532 73489671 834882156 828959925 827014846 821965256 39781859 609370212 72388012 70293631 990149455 184155659 113319703 277711650 817936098 181289214 855434472 113431253 98770209 85571909 235066930 66659035 99386974 578466618 747006438 766164131 260234094 269219287 398332956 671694485 799731877 714804172 919677622 841942882 452839969 284302377 933652776 675638179 433317129 363628937 854500158 513815766 389190944 37929355 812734700 526748559 417180080 670989236 393864278 25884650 918216269 916882562 822210800 774398741 993143158 851875602 61751130 124244208 326493968 680922364 84165436 430099856 688847407 906977313 158700651 372784709 711386248 713760389 942112806 673920746 655556473 137299102 871764900 529444661 84007267 759775567 89871768 363192333 541667304 894174465 447901241 25929195 157096785 539011242 363162321 834604996 18034260 496781981 831492266 940041611 757335136 864609065 948908377 994727637 910933437 844417964 575285992 625227409 575762118 980852454 390710483 703118488 143413024 670989236 602227444 961628566 381967235 872849180 778000032 846339894 743383948 517418328 327405407 627163167 140696629 596568300 639535236 138345214 861397995 399398317 75247475 214441549 856291496 932152041 926495816 154356991 819458550 347706567 42206754 569171764 371477634 103165910 905334554 670989236 973842732 812881024 475159406 728000054 892509696 454169513 745649851 693922241 878358050 605342943 102728538 797816924 540295149 686565213 731490169 448613501 197115902 745058657 128271698 541990691 861848333 684349518 550856036 610315766 562956346 585615271 711360424 730316231 219715763 790083600 961668587 936482288 773425818 616652216 150032468 321040737 917716433 263378791 995517069 656131562 398208630 761487193 298511891 549061017 884356615 653989535 808968186 731071350 848283345 148242890 274723329 261279406 550761011 834077672 129179402 63627104 129121709 950185589 159753351 509468140 434031363 254749410 907823264 469570758 288624596 796851968 936967115 224649302 641386697 723692422 695792530 684390630 820037656 677523427 927738815 706333958 870404625 422917947 949098874 887325186 708479272 634986849 795723743 849900054 887917181 450247081 171207646 470138204 749072042 670309303 486019128 818965720 828454012 747142012 782908900 147263467 939149108 942358910 73563946 803255357 209034927 878407230 955130883 994914424 26575234 309370635 589936886 787504276 252110853 283217587 193862639 898993530 811873214 758847090 826498457 292634893 268842161 957137943 812044600 974661012 808839255 220337645 967010503 853445984 426421789 945971795 243974126 668869101 709383936 279671014 863417582 230243502 618738006 192758417 843801292 803080020 728938770 500972547 277017084 905393015 90414127 309279897 702103285 129172705 229495688 697414148 915013081 936110940 81460787 769732388 130217258 305281228 958946357 145217423 870734406 344735930 907418715 286625940 274804319 388730050 320790853 466741775 839027984 662442307 790674842 761234230 385142249 560262464 732489333 639981247 779409168 804018862 659946276 453703315 678469952 70652910 999931896 607975324 997976883 40085628 742928440 410562070 3962582 99236292 731890092 903891486 52498332 353779831 525610476 735399764 366855788 590067605 214687571 731588589 613766685 671336234 970465743 8580225 680111902 595253920 305683274 457796390 890542997 973600352 81098745 860391992 725802170 861204202 704973639 536370380 318729887 834178009 495187202 672128936 908653328 945239446 993722511 684427756 255282728 170296700 60365645 805151370 453730284 57209276 629356359 446325064 368513532 916279553 457155891 85094170 416207953 862345590 188817481 567926581 297262782 453849944 490416669 46031687 699294718 76346836 69148971 691864464 452697716 55935181 994886026 899127994 395305292 877756456 178759397 144390817 656766576 885964092 675559390 622385913 17183333 827321774 69401604 34986196 556493730 981457135 541406872 34092581 556724759 368210768 768273215 748680200 953314812 705710211 956403615 677175616 438401219 967944054 131179068 934672153 847714393 847957716 155019873 688642148 741745143 537455467 917211165 799001073 331118371 897834633 526497624 790321938 753248622 183727176 773180305 937120971 679821786 766243980 748166167 687065613 795464021 935967213 984814361 907384199 965896002 794568977 9807918 439000060 839083769 394035344 268216950 261001743 59820612 387335057 904880839 984121145 540640231 635507569 206434490 326394717 902016043 934608335 942763693 773703328 654575100 517620896 669698120 706836749 974823220 890614694 595260171 784903878 218073064 194526086 332594478 910174115 145039886 726667949 941372110 211273444 771341878 762260624 984096008 696382796 605177585 291755462 948176990 90998324 339457628 532289767 336964894 670989236 293453305 765621358 102535702 778032253 855265888 890973232 919968468 108553318 284542870 424369718 566123182 166977310 990790130 285012389 769378615 254711270 432641531 991078428 594370314 603457369 448749186 936504248 966856991 974708867 7033652 743372641 196034530 401443691 847815346 859358512 336019874 373983675 320439900 82871502 489366697 1456250 240279163 980709231 764309130 54336938 410132105 187787901 902469955 416196816 121865079 287373075 30175974 144458460 873387592 17556757 793285289 754486062 534157469 670299246 810247631 215949872 261292137 755901899 252848189 763834289 348570416 95223119 757234252 588043249 546094487 449721991 682945087 706967535 809251397 543628349 334426878 2368292 750470866 788825450 202497155 293967055 280543011 256234412 462625630 147940351 792011808 241277996 939290721 799880540 591439930 339241392 941758776 170562344 706872748 703176511 209793561 934843182 701197361 914652308 573634556 236714972 767265817 578294645 554224020 727540852 388814203 277968369 886918696 269388031 465727395 337751625 402822431 822632002 918163017 101688864 893158961 669417740 616685156 708718246 306730955 518654260 848340791 90123238 958754899 977246992 197060582 407527632 973678156 500845831 308910427 197672340 279917875 653760638 241133610 871097703 503792304 681296568 912557732 121956212 14013311 674976340 538691289 86066843 464669558 755634039 100720894 448825894 645137210 670989236 988668951 130397581 785369760 151555676 396725904 560366880 304203810 36873915 183016328 801215178 214252480 179906018 909536186 973591936 136874822 888155659 776173589 831013691 745348774 783040563 807137554 976077878 677446902 911382620 792525499 340136722 776192092 674661077 296946507 951772667 622790788 328355463 324852401 246704839 234772913 806732792 711107237 499974321 542886848 56864883 410956637 566438494 175553177 688422698 817237298 44281516 440762340 777159022 276737375 600636398 193408524 641081920 116687664 893208104 909837291 187870156 725454566 868017063 834398348 122178064 47955166 321234442 212741971 273546694 627284760 687530800 81910350 949520874 565748228 701174413 707369366 541894112 176662789 78117322 682228627 910930068 226186792 681274787 267353346 608003529 576049388 559827815 762991627 59535602 763719611 207484279 3829914 910674315 531984452 41563626 993121511 683828529 69235949 177983948 293296529 443224641 770100185 797312567 174613711 922180743 990033881 456307123 197368827 824027609 795278763 903755389 826960267 733718261 604011571 242155131 769266743 926786966 579343248 556200143 875208207 290242037 308624027 679139817 894977110 952176413 50429075 149630082 204236086 731459915 808957945 355066449 994656212 243274787 827822977 636802718 940230762 798669375 959481874 782229354 179116748 157651953 97201338 941847908 853161377 670989236 819923880 432958094 470620227 905102100 776578616 525118294 824596803 202307494 881516460 805916700 527139433 57415595 883123779 644148667 576681000 978986592 974852612 432502124 606495157 88411688 754760248 536004347 418974670 26637128 125298873 125764809 127592798 171568514 122702817 842088602 85878107 810748723 920860451 701090428 690463665 893567105 346307708 817847214 766776006 766320101 858817517 448279750 985568536 793655475 126620822 477855558 250464166 874556139 974980762 733592576 361798597 925320634 700403908 421315936 999292448 436910207 702010575 323799091 664174998 670989236 453083388 894338190 424449371 270089721 49397305 758912571 567815484 939549958 132923019 851280203 834357897 371164680 116754473 947326341 698327106 499931546 733200212 934846669 746063665 344589432 947266187 400921657 957836745 226030740 85186646 642431727 928585053 523490114 844039238 138394103 772165662 861048206 257847218 142497047 997624561 484051119 910516514 512839208 148443488 724676848 671678075 870152881 719622548 673362877 724400951 705232997 911936342 674302118 171549925 592986444 692583183 861676955 801938038 313341524 188216823 349874956 735790510 827235852 931257346 761746198 782199097 558903645 340356484 680114390 705738265 747642259 868776639 475523810 581199709 925974901 965888399 868107519 807685771 962293426 913854151 952753318 725116256 576243793 719288065 771605153 945619704 480256970 452003991 885199033 496056230 952239082 974576989 438519402 759817294 102880750 998718344 960743333 927643227 709044109 886311419 330816575 402048519 772670610 837738189 402507228 112326867 32796475 70207915 65981796 752767001 483063814 721256698 342542559 998445727 195739536 740277620 928495693 983305795 689408220 904712482 10804252 452856415 238925016 642725868 922837449 799225882 25892982 722556420 978860169 997897587 805472158 404481824 995977796 221063335 794405568 123300389 855892811 793237295 510100709 776501663 73873923 255067643 928885826 713746931 795018954 765509435 826255144 865238975 970150770 708329720 46405145 938411531 687244619 592036311 824334556 482112477 983722149 340461454 219470931 441650322 417437993 593873502 964461703 569768500 763164659 670640045 879678068 494606800 782719437 371143357 295458306 918488881 179774959 648620436 898262471 860288762 635656935 161860951 7913542 893930025 357161075 93939932 331667693 61428668 234425610 945840352 27500403 722911951 27877590 487353449 69523356 746376861 638240082 755785957 330669954 701023517 955120113 647554278 946621339 331981511 670989236 511845542 716831126 684364275 887728359 738797553 699460580 399562308 257340393 790546772 549594545 174543171 280201592 987472486 965046945 678504443 869523258 730403332 761977727 976983987 723402409 665020201 382960964 344006410 786506808 559034865 761405648 726737656 232997052 397566290 507267563 5019148 675954095 913618234 46787489 201064479 719754936 670989236 398429262 104610251 967118938 834818677 958414317 909467619 887304828 868617720 569451889 900454816 71401033 989244178 881301477 676530261 956722385 933366584 257294359 624391341 139123504 717337093 875185806 458088402 783516621 312198389 888297015 579607949 496838570 35827161 332264358 591505075 540297994 334092578 65242902 348885377 670989236 416927771 414073221 940152699 172405984 654302695 284195388 769961490 673689459 931860375 846057779 988942044 166801865 918018639 579098625 119368642 752563474 570132692 791346450 741265947 308905293 400520993 817181212 284086018 733621058 860827366 397684393 571335837 536240095 368648268 708718095 466800576 670989236 137902966 137626689 716043856 298859421 67120441 94036885 660676114 294637799 746744278 823752906 702356832 727830074 877055097 178253099 210909416 794880139 680784568 778797655 704996639 992959204 118605821 773753249 70386061 164649011 991339488 548317449 329271789 858794810 842476342 957832707 820941252 697990118 577505236 84770946 302271824 524820231 554638411 578025946 864392748 152739687 803221840 40781547 784053266 853002260 702638424 806711956 184005698 688377614 286257529 317305971 104554703 81753379 317908424 4067938 834383524 838947971 359498663 882186617 115370471 966702559 561049507 84666168 716527035 93309770 86111689 883211358 592304553 585478380 917403456 505677228 477041035 477401257 643064915 589902030 227222040 499907716 970358671 969583747 343436331 734602547 794306403 930070919 46876553 993159654 426453730 36478701 374339177 687469454 881423283 920875962 681858356 474310233 962923851 520682374 209043923 556474262 834447794 743666169 303383742 629300117 780768187 722395440 252671380 57206269 675217778 427464359 447269022 8912650 889304145 210802613 451255297 699804707 878296520 334626379 375692770 709121175 585505493 693806112 583748882 814225420 908980443 747713347 369616198 685963836 613422639 420497914 557999222 741479492 318500562 670989236 671630956 97134974 831195938 844182380 883684763 958321572 821911172 935890055 867890983 125536215 940274100 449178800 395519552 848739883 982520721 850810347 614366582 181302054 781290612 291863910 842854199 691826591 686562089 688884559 887724763 167663780 92100946 471670076 291013845 403788416 508165446 94204294 950358298 733858558 670989236 932763466 314810214 735156708 560296050 157125415 810738502 761890502 758635532 778573518 712457849 824073878 983553221 763037363 207565327 916400112 766255919 957156764 682970402 703761699 707427031 210021940 841870162 331916105 912499925 701645180 896873764 785516304 73828979 752053247 852488585 871946703 807901304 795955251 820287759 384860089 909166427 853430451 267011648 769900866 513477321 3564251 99483997 394798211 62431841 270259074 870280142 877704919 110375760 964670064 739501782 725802652 799505801 853879093 322979163 723358108 936386867 455222550 746960128 616062031 966480360 932026420 577074822 542082500 841387297 692556879 702473880 206114630 312975947 810178807 594226334 924691848 43497170 873594724 735082096 273413142 771144386 882142377 719747811 839708615 236460323 40962356 503483810 432459809 69466483 771594873 661710197 228311659 910588759 426457471 628057063 947450579 467193022 155380737 859063110 376730665 325083534 385412162 762683273 381412352 913405206 67742819 941541782 906667811 736955194 743353464 297131633 364866795 52135206 973258388 953087042 737113928 670989236 839459060 718492816 736635639 871850462 143703536 968183822 423071715 975658847 387510567 975250180 710742621 992095987 17623361 95024179 869109195 581153802 885606518 778253596 109136697 591669621 127907067 789594677 771720355 955262890 316898335 306067119 20252163 670989236 535009869 367444964 962930894 836389684 670989236 457235370 763567863 738818719 682582957 738757380 356833476 806358269 456704205 895358184 858856699 391435650 296616715 131549624 511138374 554206219 675461587 131236030 783721805 715851579 832830845 766687520 108745003 23434232 929042018 900497432 236781431 156287295 688191192 144186510 95668713 747584537 967907748 784829916 488927866 954069315 852088299 673933110 597796372 514927739 652628005 162223557 702728600 689413109 976486044 153908711 313031980 913585946 772020603 686147088 971739140 188478768 727741229 692839520 137367410 948295155 68278045 964121869 27702051 68783595 507762273 794500121 670989236 657342642 984935074 512671620 916854336 591427939 809892717 760934882 565366063 27690383 143563010 789371462 419102983 92711525 360368003 901918197 597732161 895532166 929415854 710183991 717733126 99199229 893076116 916425130 565423526 801607835 527550056 800812614 708191257 772354087 728200823 419384667 855689965 451300811 639901749 901994385 970773832 769709937 991148193 180410004 393820785 937514995 172618034 312567102 670989236 925269273 674910520 796114857 670989236 670989236 803094114 900862248 714919203 332624596 745340747 329823791 790588722 958796555 488728536 894575520 437385786 654344982 818164047 239121115 717082188 518320215 879200828 344911161 607490878 190995444 190577584 990250149 687010060 670989236 348095292 178330625 515423592 802662407 397123021 352696996 945021753 884860252 559574079 333018770 109074394 347289491 534034112 407096993 543082722 601096599 693047940 656358962 684419542 891006186 178177389 72436411 421732640 291041239 345123562 95396273 279487298 669177857 347559172 695534400 747971847 940341239 892441408 945845844 150114234 158601353 975042770 566661789 946413601 875335848 923024904 549216820 686734465 916977206 951828511 730723403 778107407 824530253 5491627 950373505 963259972 616389697 376470390 961186742 855658589 262234822 126129702 861506232 265286316 829450839 862044233 372720943 997906861 248572327 365141718 803224053 336599130 806028269 278722103 354255518 402048761 654490141 885057019 854876214 761902973 349052996 899229079 739925569 826907150 830448991 127195561 286471627 252777798 900718650 473293269 260832382 553606615 170806855 329529044 802911074 900103663 49891362 398845859 819464081 670989236 978884611 972373430 423777683 615869565 903132443 804287029 162669760 908782937 918781709 838314691 373368062 991027351 827728112 86702005 606576272 539184875 945646968 785122351 523549865 825729753 568472119 293597730 555252144 950634232 262905497 934499968 854602927 974609378 728483147 880685882 789690683 802050459 500421078 854302406 867748540 888433328 481192926 759626733 915934979 860400260 917599844 709224855 35996596 714992540 877210006 562465651 844074973 324809030 679443729 467027423 741274495 725732483 675791579 965402054 821250243 707157678 993951946 380770004 412233808 563775930 758924524 973685155 860694458 743908481 185881509 908570384 943720018 458936140 670989236 823573627 729377447 410058354 828292933 711050514 466696208 24383686 741983674 112615046 801105835 996322139 183291888 910007724 691352609 570296486 992548253 727520629 409736258 944876588 862186302 580096684 195683570 720509955 766809206 894699401 16751804 798621698 882041569 778399883 330822761 839709017 140464545 850849583 995228766 659397980 43809224 942764570 793233097 655505953 821878618 281829890 483963844 780755510 699521077 744694422 855050589 574971468 345018423 584551805 107531110 712692937 897383227 643264398 861409938 261525831 219775869 477451986 580122058 248342449 825489209 132240356 527548750 977049281 322328663 518055849 507684029 273760000 984960900 970202380 784862868 573694875 204311941 681156169 202826529 33242076 335555609 56842143 378427436 21775871 766781580 862401751 684640291 175315019 740151416 762545349 227688251 914072509 730859883 927183728 857164936 848662322 25483078 754825911 135531809 791624263 275646912 132112860 897679730 632940225 658230088 96771923 451399451 731594037 804068660 442751981 89997876 718966254 558967308 587007914 946290976 16799685 328737894 480689905 751084063 374249740 405991381 248022517 780583153 257802086 702945794 570944971 308521748 290745313 815061627 459793250 732116168 967232721 29946860 376721028 736587852 335148272 417558011 749706983 870783779 787908303 14884739 362216794 895333531 897651633 788518933 692536880 579980832 977052263 873778140 601100912 762108139 119493365 854525850 928989181 233378280 758136039 692669958 785325581 742205139 170383453 28585724 294110189 999704682 705783607 606383476 865122083 711876916 518569641 268238784 275200749 700415556 423802960 870257546 29013267 520229041 15759358 635169659 586048724 632828660 734821339 52863398 224147850 769029423 797796804 913117999 535948346 944317301 613502021 730520733 675701988 727108153 941828586 591840677 742231068 441836081 847463768 903626399 948144394 728237265 117219378 780505124 534697903 713969444 534281121 670989236 546186406 753288725 714972238 894660250 914018432 791812748 377935193 911761766 894565471 454579942 449073657 828090046 977166182 765265090 750710707 751558486 385933068 693362777 373065761 330713667 236467491 417480864 559675640 113399137 796319994 726663212 925131468 466451614 906242851 881180144 577593472 981550530 347317917 40397497 895595463 460703286 636399506 601807015 130265131 944818647 833490723 520008163 34570100 287327130 933154634 270487157 570120576 353487434 155408724 581792195 318418698 718893277 407308381 563299813 748545985 801138498 862877154 699321752 759640932 966214713 686961830 344323076 996623323 920264099 352922244 894648026 771738734 518854847 202475891 643233585 872927742 706651790 814284609 418133981 817837316 394146724 50173994 657996133 161102658 5363283 621707706 746365875 718547389 593037662 860125602 909997302 92183599 280985556 789127515 916970918 185254296 688680166 655820687 676714680 358972857 348100351 670989236 320366919 129581295 26005169 651209532 387141943 584384141 267276695 773341330 676123126 203552918 329877637 423952118 609979885 707146672 229308399 106836896 462885576 770261431 212437969 135029482 684982490 97734471 760014461 670989236 428110106 708201636 166229484 765795021 200897201 839317389 706315080 673607074 867055146 887949307 713927801 95372816 757782982 816901410 155409926 437048742 122591240 828093649 144846685 458620335 473649344 339392303 414567707 491049869 144005987 63892702 535495661 259330661 797072005 454644567 543522009 743690518 976496648 867025146 718322246 702393664 387012031 497459165 710853216 204447460 865698674 749766204 505384331 702421898 945179027 122291178 670989236 758665850 666971153 694297380 732744264 925652834 799795077 344501780 64535525 838798323 744719583 431400878 504247777 394082805 579537071 632332511 916322136 761857304 787671919 474042513 883089602 252265032 578592338 795923019 670989236 898818611 763105890 420038370 857895172 542080355 500518756 471442794 911931734 763652222 951245734 788551218 180594887 178232378 525520630 501443269 462991351 214078877 214164736 790806887 70098526 972904140 972025228 778648046 188456096 62270115 721441162 975198370 744841718 670989236 689422613 997011525 247656085 881910275 11272984 530177778 377544638 728182524 850315717 433064527 90598913 128394353 537841151 659195101 721421309 158820006 333291053 270599620 460430819 965620049 359704905 50325916 401567489 581755005 326004394 824683169 797742373 346983727 586996044 759910099 731686991 929075551 510349631 807311452 275217609 884202227 158163958 850398306 807243500 709182248 97881029 215987820 735960930 637585694 945536786 984928334 303204080 105453251 796385002 779837800 467191863 736109246 930182423 314814179 555403708 193618881 833894741 871314693 506122923 858713266 822544638 113029848 274464587 839387650 702739071 413140501 696330499 886517360 20056193 351348624 989306378 570152747 676365482 939616766 779659381 848041063 903639514 784197368 206345786 578952705 492887458 888034690 970494928 948747320 766945509 20233159 552014812 74444173 811551228 317839951 172897435 956660147 785364810 943525643 228218247 876611393 676315053 280095772 342891450 811169505 793492023 294071608 262197913 593093109 906478381 764502470 589018320 550165458 832201923 233964534 537340732 743438821 459235722 897768536 683478715 679798673 724154798 883984182 541306538 836206151 451649095 926960144 448613399 158469448 470171677 828702173 42565111 769714787 622436781 606391230 9065960 963056889 738708185 853732067 141897178 124313961 785461833 407841311 650212687 797750281 627156964 530882237 721335638 745138871 457209948 390992848 735397349 973825844 184573387 302407298 180256899 896641878 669777471 93040171 663004157 909148570 870152944 905944412 676893890 186831143 734176522 335670327 521041413 614638910 961090513 912135096 481834348 993848631 676321154 854252476 348010559 201451659 967335951 438499375 910078045 448244018 845759651 933873163 33589508 757010209 115790782 675766602 455820381 576350420 722513482 989218388 868633921 567488892 392788442 595842401 323172319 909155776 993581977 994613634 5206833 673609231 497137498 930710933 517000722 880814002 980554219 701347225 538432930 611134100 715911261 370434920 382501602 595086653 811372259 79243811 670989236 686943908 405704433 941687631 867506438 747100458 337825078 646805256 452557070 178341524 995552025 637041744 740318596 753751072 952220932 741329136 803929956 765220728 853755820 92825760 899278329 70335183 732264241 717996832 182338198 851301337 786708671 553035550 737560114 268538332 872697468 915958862 661845684 721065624 796915601 944484909 396813136 962134275 894338596 862250301 775168030 529833455 643135418 949514889 951684668 694372709 24900412 752289027 342272578 320137680 321036366 807514756 907194393 849238 848235926 558282771 714806459 696636713 201488884 687396001 643171950 866046844 641664554 421216280 717190816 573645082 107426607 648579105 772968700 839594718 420956337 55914768 665379633 360691691 724018766 575361287 394693292 367097358 992657341 192178128 979556663 821524679 894211041 606351624 388844687 166984433 908998552 407079314 446030494 985450709 336468097 484776844 708042097 89936275 79508749 890945242 52005079 282013541 138649359 210786947 969529671 557811033 564526931 748172607 661219075 670869531 695530911 996564920 257583076 689933894 924698273 208004064 712418343 880435581 984626198 728540016 346162423 910246481 946660411 788699224 922424091 910572259 359184475 103232594 964796151 849724541 191981726 887162006 989573317 755391120 956728411 818191038 954972268 135373028 55122377 855686620 77166218 408650695 889783184 558422347 708420038 745087840 974534915 687197098 525895156 22989315 951120656 698406695 878286434 939818008 728342511 975391627 624155254 515966452 438938007 738230091 372408148 445609286 234314469 981558944 614402763 170636762 777926077 527550931 428222574 520401760 794537009 300433821 768192962 377176438 952740243 883431227 773690994 767117147 462409176 128544623 759936429 953781404 888167783 827953202 156850194 343743566 801739082 917758906 716433021 153299192 8123778 852962992 950431542 898059075 890418479 907257675 797811430 185965500 649530224 876071806 813572114 163821742 219156834 941084755 776889916 280412796 305440330 872113669 89452872 277135504 854845527 89504894 700321026 735873321 809842784 540082956 904385111 849894632 227086434 129646967 65143617 10584578 968948291 978989592 627535760 856503583 669203076 993771375 865803460 98810167 906049809 744400427 899821859 257691758 877464088 80196647 768935129 267626550 928824831 874931177 859749867 771559345 205847477 672999497 347988415 945586314 8931143 859752783 762610483 662983102 891233845 221178842 762583971 260564275 539642751 329045963 898529299 863921371 23513651 180687830 762977642 73438917 722601967 749416528 773233505 122653975 946237844 263516375 999507404 522644353 743405695 197862130 818804151 901330760 122893719 963543748 518416256 898597862 868382477 818416293 988560473 434884162 598920003 719910689 615216306 735607139 480199663 875343521 737823341 277461376 366721571 604797773 706995196 182537250 820381348 137538710 460643635 65906594 796182805 850212195 989941872 285040912 166140097 239553843 732211052 714729920 708345342 206816505 289396855 831002985 810706035 902369218 810254215 913186691 253367098 820121712 747527858 941608410 842113279 528918712 835418408 453120647 946158480 891833621 805655770 440077694 772717069 729614166 291205941 377305420 711606111 545288243 146797702 383323157 869058148 730367696 764557814 873190756 397755051 651285918 476778507 229122965 814146288 253409920 13399064 596618829 891053052 692787562 972385244 827254479 902606910 995753865 828845471 379193995 188647464 718812791 438281379 87725812 976802418 567055952 712656223 834654573 220597172 75162151 820534010 845868358 690198537 975024137 837799772 129852810 951160884 27661164 31136065 292668847 15790378 883166814 831205325 983952912 185338556 854236830 298106304 708733523 897154700 434136836 809315595 744167159 438916996 849481473 136925411 755851794 743183908 426399069 947836150 253343644 626029748 491586938 533935516 791335422 975723531 599205442 752736981 829610045 391748784 5384592 97584190 542887554 942819110 588853799 305902316 832089747 835022614 148254838 121065734 879729624 116676754 46707176 483532779 530235096 292390067 421390780 451492037 523276599 670989236 928818512 407061513 787484473 741726139 900736318 906759004 670989236 737442949 355297871 718262828 819392177 808157360 898912333 660953557 959881905 985633911 860337452 855299236 524926301 163468275 251697019 527073703 296540184 171329761 33207409 879456696 260366009 784423772 970390408 868689184 756902944 828084291 355107918 771629062 457228159 944352570 431536750 644968097 778729964 303546523 469816477 77999038 715518495 33616161 106053424 615597732 124424643 731154089 764953381 845036386 909131851 899519246 958835972 902932048 769964692 636405231 944090104 469082713 619320533 68793458 873006651 154284450 474187421 716585625 794741079 840605172 724562781 439614492 800676932 822642176 820717828 280445763 461716847 630432355 268477726 934943393 757220213 375955338 237162391 796437422 927025175 216708952 79324068 879526498 188832470 670989236 761174111 173320433 880958623 212415716 995790205 912177315 687034428 178656470 559829710 730994940 519257989 968897675 885871105 739274997 178911508 996071586 932581657 730747098 110898558 917252855 986484775 650250616 626760552 651578568 283332485 181882763 736418609 366753886 75641434 941676252 617225274 867239822 709328230 261510476 179943569 753088164 946489014 680438240 726013598 810080122 408616880 204469376 825627713 737361287 488443673 756655980 40339213 227418690 487535868 874691313 42443489 954090286 831218671 54903120 15762535 367511044 174250625 779943020 761204963 902036140 870497166 607248568 345702588 101977627 495915425 754364395 889774581 124784265 357638322 910205229 300846824 941057104 697316457 924026850 13109066 215029438 307947272 744720747 862688231 243955338 478103230 793786775 274154206 982571451 117153437 628121938 734175338 413758356 761952874 207464562 469919487 556343333 443449316 816667899 174410229 764560212 950959243 418354143 905082170 37991467 827733981 778208880 535652475 772617841 508943703 243567568 773037670 802441684 575039572 91567991 757539128 968586561 22200981 230678326 666928051 116602848 850954669 709640739 553042678 641279891 242809708 954049883 670989236 155144910 206294806 872229547 121110238 719338792 799267768 669256423 503727548 417099227 424150264 889554891 736759280 595741882 262972079 41526151 729603879 941189185 942335173 63026708 716561323 524970450 762397655 247664372 191669044 989386930 537780160 592231645 510760588 449825709 700222672 927287447 3737330 926940455 438261376 880351307 500448796 844995055 989059489 598799727 20736727 968281012 106879544 254521127 671110721 100312722 909822995 19337347 144098338 804094721 336027131 563745964 735865378 45376259 948048938 260833331 867940870 785601684 265544038 49030438 479106725 593473158 959781193 596684854 818207372 145020226 976298918 944968316 734071069 694654641 11789354 330590575 846411232 38735438 91550163 815876319 517024644 990868105 944593759 756369833 673092887 324394067 710319825 244219212 944230941 673597506 511556245 998745515 64657305 444018569 688171427 670989236 985524872 706460861 825576193 649566744 736431585 876826498 434840158 636760512 965227546 968523525 712395589 829939616 947738380 650636657 852170745 300905926 856736157 732580397 664242086 503131099 88968218 87133685 61089759 830951817 697939270 571440778 876618429 941652288 725350477 346144663 211989481 886693743 150994059 803760553 104348216 537949445 758221930 624334460 925282317 670989236 272978291 869716055 989676186 604536995 50816993 334668710 301329799 694175715 200753978 238493930 815914197 330370441 924752216 331046877 499021912 808616346 256325957 729872782 820276597 572816762 191829710 255109185 141443768 889345064 610223810 929762074 808753041 956244230 648420136 859210265 183483940 405491477 539436824 733624770 245280823 170739019 982134112 966267965 550961226 492856959 230070170 146178295 998742246 889761722 297319381 8188211 287550062 934679798 32787043 219106384 597363996 812426714 375960365 592825011 589641322 825759114 879918849 853433322 597432169 643402757 699033171 706980733 100095513 817296135 266967393 760882994 115937803 797711061 990037425 555881166 467266231 323317720 28265212 543006244 793449118 170250271 803489597 882955312 908064387 641910456 659552009 938722512 693114505 164475676 145373030 923470698 457022860 826753127 24825411 174416803 928433857 20153598 144062432 898009495 784149891 138436136 40530872 810411469 811222151 891172235 489256818 232840273 788066326 42618665 268935139 787163453 776352057 670989236 812079483 875344537 745577685 357980170 965161890 975413687 748410444 935835866 209118742 171431804 729897345 120746963 262902248 262612203 266305123 15333456 650651631 901015574 168582202 872827785 211081507 791149032 884255937 625353461 964865999 20164758 826971320 661588877 513595515 726563463 670989236 410534105 801182511 234057171 251780042 924102620 196262690 911530082 892599030 66856879 890282315 670989236 578356651 857984608 960603234 469003273 720782026 866708141 803743247 504003522 406789686 509742164 65920731 895651414 811543148 803590445 419826422 998634291 7872470 171970526 967072436 922343181 205545944 971899010 939529006 923960147 65289347 313792629 672406208 117416050 775726228 954391049 954534796 373171075 369623097 945327418 31389830 798401464 807779743 314113835 975964314 72462783 768192764 245030240 616742757 908977926 381904655 883252002 620836544 40820772 918939705 177097699 974930573 932221192 826967657 97520243 78422819 705794884 906680797 652542647 853695897 870200090 699964800 561244425 445218972 267079504 813937468 946281239 16035331 722586878 965634604 634736559 576158070 807932798 326720807 945936101 723019575 815846699 903762755 762434580 936061968 911780058 552823954 718197728 93396588 851531297 210460725 939618023 695114235 622525953 888185765 113804328 710291429 795740324 564413542 495760181 763109938 718124267 987299820 436584859 977727979 31378546 66735 795311009 71794112 808352164 756672651 958050600 385451328 285314282 707675237 192331358 336208110 517964244 318621953 742466275 870123386 787891250 742955522 634185184 538145182 113715800 13181584 849738188 196466521 920398628 111011745 812927205 670989236 651971788 101729100 871329454 897022124 577153498 342555143 986752590 845011279 866889451 687227974 131767287 154046099 342873238 860613471 993582126 995779493 905381673 562115065 979100390 970812434 167671008 412196513 625526837 849082602 650649797 793983707 28275871 51450211 760322431 858180683 720362142 592964772 928376428 801356593 905067443 42643054 921359696 963665374 406652629 3934499 896292407 797612687 439153082 705528846 442327201 282711198 802482465 463374991 776685389 298276634 622354445 716548665 317175555 905913907 953580646 3654944 639462173 725687721 268731194 360141560 215920113 712841661 597208 927629731 749139726 418959432 32863424 251121754 795810622 558429692 92187454 222203136 910226191 523878389 818878008 914011979 275973179 743560720 770660682 981138155 789339068 584032882 891272212 988426827 834431898 435453534 968868535 392225088 845275720 685960128 936424262 239665349 573856273 811692320 984993967 814519129 361636184 779044616 262774624 57261297 337596020 755578457 896006972 940229686 857176027 930696506 375412218 173989770 457409925 883611330 784159749 145692622 303283254 188276222 784969060 76926454 785103241 801432545 111119403 692651838 356034544 930441469 936474279 75877177 786238926 198122356 503256610 478999147 804140307 889295588 669211197 259145045 703585553 677127030 617860966 713432474 525090151 583898424 125060664 96345768 146391006 732919275 546735912 968458984 821292045 504131413 870905813 154286278 402496638 708192018 191682142 451338229 233995546 590413021 355946573 447059049 780660168 308328466 392325952 24953442 819292631 838534880 400068472 839549488 880934188 692109175 297318523 781774740 696326157 974479717 326786499 808764231 270656126 769221352 466952975 815827628 947649368 349629020 382714307 28118302 462396117 250376872 227866397 105572639 907883029 29254231 45777890 285287815 557903882 478012120 416404750 474675203 725370292 372188600 798063567 95981545 528271714 962935635 697949205 706325017 983110377 946588441 637561408 644351020 751212297 751311367 65417464 496613226 881081268 685695048 770465105 801652887 871443802 295103273 518159811 301828923 736190946 141496539 580833501 777895061 951568460 121846465 992550965 778271575 901585695 478644128 555891276 736787676 257098629 900349441 849839347 857606133 892439231 670989236 488853841 932030312 678416708 208754491 122068624 638316498 510443218 928002461 385073802 874066869 675888744 382574913 787389842 16401653 707036445 831592814 267107966 670989236 749991056 203057983 849783040 692867001 522278980 432786018 923802701 60826618 643718888 897679528 538059670 258969547 710407911 830934600 219550591 759828206 846016402 586337166 760745140 740067911 389051279 608953668 664571814 244868157 987794040 247151996 632712068 777018988 675033185 970043580 756543912 416639066 900905742 308162540 643354745 475781728 250705979 873270734 915155015 181645345 399575913 255212175 970399200 853783215 860546169 863644854 710442371 807706724 873839915 887331853 816347735 223662187 281383478 51151745 791686401 932014819 253881323 895959790 141002401 635948723 489391857 713139008 462755101 806571483 600743477 825556279 498782438 293200259 575844093 654200951 973169327 902799434 179024398 227794847 930433309 686699873 282247447 583608107 24059369 761832184 921176006 442870901 679903173 65174669 487185525 755934270 707679547 693119494 758981260 942823159 635031920 647587313 714493725 521729466 564154435 283145184 10906144 768091129 951199463 917026189 903863676 432472075 863512425 929498286 111996621 372342960 677741578 446280370 957405589 209990749 810446256 935125614 36614913 992575245 993157475 585312132 343426456 839408876 944860460 173388730 648788314 985404261 984081207 567355095 117235837 851080261 408423443 293016481 442964367 879621161 754960025 789240687 866139728 881451096 416064637 594031687 706294052 629501928 847424796 256089060 425832766 965107623 723062911 249975056 922044586 736128542 944139271 925597032 994229719 362404703 681850843 878936616 44300086 670989236 840857861 756534062 425488603 828097897 770059379 339683650 989094416 105357781 859831931 426401071 405084224 869833688 630236468 152301341 753803306 681698711 999291343 466154501 842630460 910360857 472243052 764657879 441824388 101538070 360564129 468665807 568791332 774156182 154507609 289566197 749046909 933169025 506319175 984321688 858645142 26344794 400952893 916994315 964434388 931918974 809995801 397927312 53346897 681481762 275141318 937777093 390558494 489419942 101444360 969387220 757977673 183362194 801563327 346635324 710007486 815227715 569581787 690241817 739084310 927089513 640085350 802081229 934072812 784092200 794885840 671387651 777180913 771545443 802997578 727094874 498128864 31550140 974440132 527164336 465632742 670989236 686340769 928457077 501382614 663281829 66000144 926401332 453744255 202068896 909538391 733227714 689959276 53850538 224333141 406054843 536826425 117354306 786017212 895244866 475314717 515557898 869931838 620468833 93334434 808816974 363535549 388968139 839662454 259241493 454452285 592590621 812189665 349224288 845260462 809929438 766902035 313814947 297788489 547326727 800920149 987556731 779551022 571475208 74962679 978654005 995898802 406175424 319459476 906583660 485782571 962273792 892903294 495090924 983578294 592836253 870739329 676519282 375992736 695846524 592520903 342119954 593485072 602219396 973837539 404803572 985017788 747725526 906673104 702498688 760387656 521890861 683740552 917606560 610621917 568241190 526357069 959036054 856989251 998654902 127908527 647056343 866665582 167306398 237069061 324832248 353924715 915221584 748650128 119421648 958690201 989221961 962553456 957217873 731811783 764331544 992601661 492633796 430105110 789204331 344110554 474502388 843192549 693288198 823950621 71517635 995975756 972358767 753174048 633483062 344101036 925631795 670989236 678789551 168914990 702335840 888901711 382346230 269351662 911469020 740117529 852174499 531685984 908948273 614855482 826481886 931673724 504877372 695620385 612568713 785298132 113970157 951484208 133089940 770223962 506041903 692839200 171633057 635731889 223838424 747883339 192620337 735945157 650206278 834722695 67453294 841700294 750113868 541501592 144724148 740896103 746866662 327652046 302411472 852021695 627297378 985205589 607759358 681435160 353104705 536532610 130317210 593222785 461952034 873600796 96918477 938295938 381502113 344034960 847112677 471490393 784581574 924891040 811311442 719189661 894636041 118780242 951379579 134794161 866403804 20214764 900466968 734689981 204468644 461082537 331212321 854236985 848607152 699717088 789755935 736620423 677648863 638410127 776930305 631567125 849677614 68418766 91764046 914639056 697310975 660143371 248826709 172470964 715676432 600018212 856745945 746626076 173016277 683094102 482596269 471808314 296517059 850002407 867949219 355941917 405102170 83989452 982405294 911954106 338509539 247832514 742604203 950366000 793889478 796522663 528767739 88817011 839469211 515545878 322931838 885456129 653396095 46466637 670989236 205770090 284770776 956836248 160146631 121066332 818748300 633381138 18806171 697164998 980349797 827619007 273180427 772687918 718199502 319411708 60297270 865864900 743579758 224648636 853454824 482402794 30662505 718779161 562844867 398891501 185034288 85063382 257746020 387455513 120087244 234394375 97639355 74645571 144282523 697378296 859011544 676649622 809709874 691208704 610208074 694029826 737172565 699753706 106375614 350964775 982613258 151646114 738930058 696911306 954589891 172286311 945902126 276971176 684074434 708050436 204742160 703254173 169058649 695813088 711989095 920805128 682100859 658881883 742631059 717449324 270642097 700726661 145773931 45062411 738538347 871177503 766854625 216024006 896765498 942852735 273326192 750094851 896996334 320960755 862131857 566895789 808439968 716241783 348013906 890437600 295806751 367004492 564483702 206998194 829577365 298604010 940188957 936367850 359939923 634473622 333926790 310041951 786541684 329282365 292487767 817604704 387500410 542609307 234161031 324440537 378112501 826592859 697995914 626727699 612897737 729995238 213280431 795961570 500071036 683218481 154233198 41475204 772232303 372894391 162386188 36954750 593050920 871174886 234407089 938396123 511131793 735316599 481435699 655706944 958373820 501917986 493445660 781350507 72519721 371845228 632285820 762587702 979923385 221272876 778728947 342145283 687899919 873672055 119133585 993678577 255360648 128770356 398148985 277559603 236324047 425332326 770030086 774386471 145783439 396574409 867646217 846082409 30385043 659520933 279123413 311423049 503432834 957174463 200421612 547729130 913752806 776527323 351441098 977313273 42381394 195855970 190513634 922595360 248174173 281647267 191678054 105230207 339541176 277246731 254584874 670989236 581715237 969093170 115008052 146220510 766740736 549292417 22521479 48955548 828713281 501405234 74980132 272664675 907503002 393260253 481983452 649494119 910680225 243217581 317645047 742045013 801408884 32412886 812837617 564114635 187620061 331246453 888823443 32144010 749755040 534021391 425194965 845147874 329402739 902314216 459479660 225539864 224914792 180782265 458560542 682880514 657869064 924246414 56167780 961003160 157892290 28017127 329245256 705934704 956120071 617702390 887837658 689064336 609763445 909021215 382728969 57999595 417952622 423463390 262954312 670989236 883886821 796718255 717606892 760566733 811819488 7389728 155287547 828580661 919726678 691708179 691747890 746252816 329285333 786570518 831443038 838404573 489303059 645025760 386609597 561859946 850608516 938986158 544480717 298750287 52740706 446343056 204766279 480823583 535222180 930736048 459330463 480438311 411914730 69177415 914330763 857439892 431566881 930128027 961201614 956798004 892835389 681914935 306092378 735197723 982350653 256541665 286890842 381284759 144056418 9104644 610945783 809357354 147819400 879246905 895803587 466491742 905523115 842260705 738668026 29550587 906997308 596244402 307039533 462442223 254011476 400573199 859732002 3644628 761302578 701233194 371884022 854456242 672073365 914433711 762282591 166158329 745234357 906471742 712489043 646939185 678189497 833251161 881741743 882126358 283333143 662350392 690716859 798445908 275729638 376513509 756700646 510224349 417116782 138714200 329258833 225766199 931694720 116069883 477289173 597801447 878158907 566315669 288281662 1033358 28466516 5794649 925310148 737423158 322872461 31412017 820513663 847533896 806829726 201455427 375251203 789988352 796201011 683874967 86374535 425023756 718816829 958040652 612804502 506571183 750002333 652683191 627710900 405343823 182730708 820054382 60553435 372291438 473059730 880044055 764241314 243281238 428142127 794058940 221014869 240032617 913573176 712787373 816549182 681199868 709603744 781005116 871404841 813450040 924277779 480424735 904400256 809157251 747021078 508869764 434896970 788689879 284537116 522636868 866478887 545511337 376263472 471974758 980889068 341351586 158981544 981880625 526015472 938820112 942929154 64608129 794173719 251768475 968917306 968431204 828354229 995597261 897356924 904117979 980058358 696800812 784835018 769820259 863428929 811483893 837166040 537296332 262580941 440665805 888961490 943792991 827385475 844761866 392866948 94139134 154082820 643723937 933013797 767450058 466823755 670989236 397451532 873123076 777540956 865834569 553028667 945878072 307423550 767897092 793250438 400146831 864552212 670989236 324215491 359868677 996233457 554977374 969135772 515788054 648748117 622830073 772945979 395417010 408982658 216243448 590549307 460275907 835291875 712649229 741055173 485820877 334225379 872793132 740678054 108565873 120182641 289175270 930885805 5039754 954049328 980963862 676311888 77829373 915295095 762923504 823811039 337276299 277815368 246811675 615707477 45022881 818307601 701095917 420998428 387058054 971952899 766131672 993424564 827383781 730618942 422009740 792560675 798789753 629855634 790573702 306907851 821421946 536738468 305268365 77790515 65501935 394957610 984234960 670989236 630609151 567397448 762181447 557210394 694402620 213138017 673671375 183302876 846069691 872890985 578146393 921400317 628861330 152125504 409043401 380557688 519675360 226507000 116275366 273250370 254540036 373409332 876014594 927580807 747089990 403337026 853318347 833929365 936527284 49979667 501368987 687247428 695018832 883808548 253896983 707737353 690441951 352706181 683022776 494274275 934758451 464984251 894757134 242911550 868179404 388427117 883938828 763860880 845388698 516204628 922328261 596552816 991748506 762959990 767295694 790079405 721717462 769480411 692231840 776228709 235302922 94295228 670989236 142620160 118471840 545965894 783042022 334252353 530343434 238287666 702181437 546410554 45515538 69532829 900806826 31713540 403185154 780671837 60194836 913060133 455080559 268787784 973819129 171948838 872046342 142919119 492719370 136183603 948612198 763264500 625796298 643415779 670989236 372693014 993039846 739384601 607346946 750219730 151821592 73592355 551048902 425639673 516781183 910531816 301679371 861310385 723851000 928974860 757826025 304995676 903007099 791929170 371168043 244464969 947146254 758484299 404260593 127630472 467352996 6698981 780680779 670989236 726253299 246138461 969513403 910375553 898786568 960445491 912624874 811294198 343323063 788276332 334514888 510109992 328718546 983209626 443096511 432637994 108461815 993851060 140838650 705379998 643991988 393477076 416366388 872032113 855234302 468874386 763236537 725820018 312427236 644614587 719569514 675891146 979093381 670989236 896308550 730507186 851884695 918090484 285482596 894502843 730496618 247074251 603104347 224771040 618406442 175017861 791238575 865043653 670989236 358194131 719164923 183876938 860919427 220703259 880985777 991309733 921394163 769298378 696853887 490996211 789604645 486673063 499141347 857512943 235098970 418273339 48357032 83275900 638437668 709437449 991938590 407745420 688706125 925711228 684860711 670989236 8113771 533962260 987700512 588479502 451906578 384227723 589941265 807440505 937614821 166897005 406710526 704134102 216710266 601141927 66697548 881224967 887492084 470598956 927005861 840526701 881740623 868281112 453337316 953865896 122022342 670989236 280984981 879358437 977620366 98673124 689035335 380208729 491043774 411187877 330618206 569959012 670989236 48022930 670989236 936814669 557102000 468472488 614271102 697392044 670989236 485952645 956151353 879820728 810261539 898063067 199259298 279786889 324674595 772972386 242943 28060318 657032078 769056394 244729709 504262493 985797442 698802381 254269209 829610824 928660355 666745823 386372305 336001815 266863993 543996646 974888908 670989236 512255708 511742008 574145592 808021907 684078905 738172758 51319649 433628933 407152836 92608223 498081333 340927492 527678436 292588060 714282550 612750966 680046391 18012829 824184828 293142584 341085973 130243734 795270510 841324689 787288592 775397106 16225104 197497173 707930137 979650671 516418410 381733234 690566909 961749806 318699669 148563722 901392202 189495342 49076117 615697302 723588126 709774931 715501423 447516756 329603475 348500880 751385091 210182582 817812437 669877362 409571776 482998331 804899372 181594757 686781104 101233567 488890198 34241957 306734162 216137182 265712505 221552271 723135673 193724335 802115615 201160448 855351002 719910402 108574969 928506486 766522898 116155358 695961720 119318058 395490970 356953424 756602056 998172550 567917340 919394046 53264230 157784387 704087216 466131678 660183875 977317858 46815215 203655469 806001684 932602280 914953681 812163819 704125017 831882740 799120413 541587694 508339007 625278621 477788701 929182692 823942554 687014157 201624656 360593002 965914182 117558831 622619602 842870342 893867905 692361033 716914628 988043639 123031456 130614768 237011205 857308580 982816942 701897473 503466823 659003760 267162743 266881755 358303134 450767487 184496534 702741881 255983480 844464491 983922249 224121313 818707518 710151208 758019114 454331574 864485728 118808911 850623325 167589739 974506603 329151093 222300398 217543724 753764814 385073032 953991926 852012382 431784907 973826635 1941667 893724835 914584144 755318349 368037467 879034751 60067411 628135653 882310957 822070793 379687087 703060554 133629547 99352098 795490555 915375344 843914323 679475869 60212367 837605387 477796742 878004758 422704692 847293761 726996573 102057403 732438308 852479649 495480416 590384698 948656603 514975977 931617575 809128155 766236931 894836307 446858203 907538139 821455388 415573699 559786675 535197251 892695153 450284626 536410361 969949202 714415256 871163718 745407076 239970066 581904639 765188604 636705819 503207678 880673174 221351390 804076255 821674906 222300278 443869610 145952427 6221178 213626695 959761661 261648966 381687600 448115438 670989236 877058431 220691114 207494079 169643019 676165956 682372161 941483045 977709368 847055711 51054118 348792377 334473449 240112036 506764575 71625511 756896572 920654401 908516087 844649139 928806772 824101888 731770428 328270309 386189037 819765523 975126392 518515590 675699740 291101594 382267742 821402933 843925265 968488263 499292863 701482622 466968645 72585172 845629008 968612067 304483577 141829750 741404500 287676185 377522759 536067120 917765732 410483601 61197267 515025964 952299437 84485762 983528561 668816964 750842466 684238121 97176694 129590461 188541117 388115544 682675732 676230398 680966940 810922631 915370336 940967111 685655600 250672457 960407756 455914544 783654244 768290606 18624881 332432844 995874059 244208394 740931583 893878665 267901993 760749852 756982189 194621426 480754594 861825530 91408936 620791181 548128774 705390645 951851124 885087326 774651971 978107190 460276744 587754473 868031572 233085122 570724864 759466331 497599103 768608351 287901634 679811267 854150878 33293723 397073630 249663526 514881605 72975569 412559899 729148005 834193225 977589912 97137885 791799361 301745671 792024389 697201512 53097435 350740948 956931220 489328954 194726947 21366651 515424049 936114039 890563300 569624828 344729019 886959365 901097316 405310241 684745030 838391555 479335865 969357006 323009203 907733515 898905423 926261217 811352400 704246825 632361366 482724188 589249580 925087546 974162210 392839343 797186377 74806716 307596966 750508070 241528519 869008394 70147331 338808608 820193717 866849650 793334104 589181033 566913599 259748442 584701916 295272231 350911359 26771146 454916995 738104979 889750341 844812769 557079192 716690633 764365542 953195481 183670804 156298937 307125828 698544857 763365114 824476273 783836582 929575937 887292075 461880996 979559639 766978243 168998697 85907279 874268876 855384657 446029583 963797446 521966333 938111141 614890265 872582017 318876758 966937266 829709015 928883914 145669997 764192248 121510808 87226830 348402691 756079891 549076483 726502691 953209629 918232638 800926715 985006052 502218503 673795887 896606356 635153058 830086862 718900063 824321401 587148794 348423386 151531196 983070076 72383682 464052223 814103905 763391594 918827996 724066451 556990846 170464208 129142066 722457915 977689002 984563331 623958511 629244983 788982517 687025544 61324105 862599735 953003025 674111037 753733444 645915591 366647854 983577575 122535191 350104740 239304366 873214921 670989236 838853709 685633915 780079996 681655391 789668408 227104429 941265870 813059257 576470891 244803998 921397876 886080855 742013120 665887606 866007780 457837032 184856165 979736342 995197476 494625333 187433108 448919304 755868354 556226549 591927748 12344221 751138161 154884894 907765245 988456683 557895397 652583303 772634991 812040413 686409643 596307084 758353861 446320557 526013988 250011447 883583707 908797544 361875853 840918425 567486143 906653841 326484187 967138650 329705017 291341713 830324921 887234487 889162912 479167773 707106229 894333365 846852264 907186315 525033347 852658517 467279976 521457729 573675496 403684050 885285167 904817179 768959046 887606734 895200814 281332663 939072529 849354872 422551277 870016583 572132539 860750051 731142981 898517818 423205670 828382414 581861728 975180635 820767680 504540257 947861010 167922484 899523327 349791845 680797068 225661756 966603358 323253434 858227730 852443761 287778665 919008888 112899974 885566638 527697944 586732356 6552756 878150735 622280783 319736383 806863990 189875340 258578305 863589764 767935503 308190863 698842977 497855409 237500492 877964539 308227437 820891458 952290001 182219305 700702858 943874258 11338168 916815039 795441176 693716913 267770352 801332912 964954359 130238723 269517525 756154506 630034803 736823925 808985648 782075034 43412356 985174327 679242529 81812858 803971941 236982501 702039387 581448860 373356973 626007171 741822356 687297389 811601629 52405160 670989236 25973309 608404642 897077741 220776 96357986 716449910 789134823 277036844 93712383 961242391 145354087 903470026 725046956 711333603 823634998 607535067 875946779 48020205 214613008 969932165 271142934 883772958 674210839 521558563 724951919 643210879 560026624 612750259 674841106 620455662 744281959 156259093 222333637 944519235 874386014 468970731 864082417 522348395 444914686 837375289 250017781 712310836 900079108 530701603 559905023 286692490 687155917 15183726 745074308 962702786 62024182 831769856 631172081 997179161 779616576 909691244 358737472 616937434 770795087 328322643 846867934 882861997 235539006 279634984 237436736 114122384 555470517 939041902 945438300 578066660 879495569 647503664 256085794 820684944 936872962 773267843 857921258 953297929 670989236 704054518 789224123 221824076 823083443 890918597 377098538 756787012 760640710 280432915 360422249 775382193 890688137 756410670 900347596 98861008 903670380 210472333 693733053 862986369 305467673 809829250 304542936 903171514 716834660 863913420 830973823 730173016 671069456 225199348 497242552 289572500 679434637 331969279 677644534 744496089 833719145 815047694 629467969 67673755 790630447 573688601 847001812 670989236 457445966 473934904 810536624 906014457 422695507 724266205 981752463 924238771 772691701 476033886 59353752 213566484 79943650 400769444 985470071 907174807 543892669 728955418 251362950 976840452 931979327 874034311 919166862 181643244 807258241 189041522 735279026 77628190 582822152 946719700 797062214 887971279 236422438 269446001 584384004 959939403 952697466 683011117 225116605 341599779 824513957 654443530 375235003 15301720 681815852 932840734 925737515 975657845 79322708 892591477 236606769 905763503 248146144 690381268 819478624 707357809 851561480 675931671 678515953 847967935 966481683 120464100 716133761 778346399 998724605 291750241 815884495 909605927 993939838 473515183 595664881 273570049 882178441 237002370 582466335 510124586 840681430 998580729 164639679 895316790 823544008 725005486 858432411 43320422 828238965 41955622 712946316 932998938 866337631 435507864 517142449 894718709 943016508 777810855 843810774 918241480 881977826 754673519 219143585 395819422 942216719 447100815 667575389 997460515 981990662 364902622 183652845 916014730 190053641 827530108 476940620 882030896 945525422 988459916 345401799 949042723 670989236 186641281 909551782 973541711 123922053 864064908 599528205 557928055 898051283 146317173 459444844 369020638 722961178 665039989 56709445 727294617 246522714 889078247 570533041 734967255 977475756 980646632 868244383 600842038 50917120 642035967 17628268 734268129 870713422 534809546 429998140 143847539 902926881 388230159 489579881 533117474 888694573 387522648 341211118 958413859 866806035 274553633 792343957 387789341 921202991 169221895 892697943 238646454 994031824 848852185 895524255 752543390 167786202 678223933 405453346 702100579 93532494 79618856 566781326 987440417 78060475 976412993 360487716 692087061 827390892 855113814 367826964 785283713 607843438 913906578 781238352 872269669 825565854 255476400 125334949 106275962 461628919 601757928 371841693 705777280 744258059 804201644 335023596 295719303 37281814 183650511 972838821 999095069 958157283 442415280 555751387 370461525 181535737 870216757 654166820 563644666 976992827 810212807 767891989 723330166 963093726 83232950 314125372 520480279 735715990 616987175 834317291 674168500 861885206 878276128 627129441 595021671 714762291 881377190 547346255 771210495 134367769 532990001 962291326 755453985 136003217 909373661 813745922 913144485 983686743 73280736 146606345 672231292 588689143 890084771 86180581 853323252 263168757 86979958 492870152 282485069 45913554 740498021 241186706 214609691 712047062 858469481 845784032 724453032 911383330 864130097 20098576 124976720 725817591 249946466 787823328 670989236 242877 820785314 682012398 145181779 199234149 796704899 846155158 407438913 304939904 514106652 785579207 614824732 953131479 480399885 887240918 69628243 822183367 841218085 663418808 860428196 731896045 805375743 946715187 999131247 140854647 714734750 762894993 791551343 367853223 63867205 350890716 625932336 663832292 991146665 932440022 343282771 96031146 313000650 993039366 954068109 529262621 51079511 297195715 817667273 711195418 649559396 799324238 281731420 705869822 859084388 595304742 176883679 591638995 586839291 402111968 183297361 366214730 642276465 972079147 698361670 765360896 317130428 870629061 981700540 251936578 144723672 744333661 237033625 972519641 397456057 575081467 725021405 189378070 897196100 714823697 577431628 906143129 589027328 92688972 362942114 725878493 673592379 767701876 521433576 350909211 289644929 718506141 93776958 280193213 2227613 788447474 574003422 873941263 44427465 854952824 61255973 302120164 719572485 741738067 253005488 713848875 707847956 661769050 765678425 401673353 447215953 494412198 61866301 845155778 45637214 626741915 737947434 992600815 609606755 17009251 406108129 730913087 528822926 622543909 695825472 885200483 212789992 514892789 155683242 189758206 318114055 717085685 409401448 949434946 415748680 941488892 409629626 639094824 431235252 350573815 371316800 815529734 369854745 707803088 868114965 925772915 954589504 975207137 187785409 844707097 603297657 139309413 847068128 872806660 933559809 429352477 755685045 703094844 680935189 902485983 40907534 349608436 998224020 756091495 371550483 98930309 761700020 675787998 82376005 640218015 68725007 781750959 240576317 3566509 762608843 960009214 812613122 236665870 813505071 379603317 361882358 169773543 733468868 873768343 820849441 497729710 925226102 579941653 551050736 766640696 419031937 424173694 622688491 494259218 865710686 290430698 613302047 898700355 116600736 629842337 223406030 810802924 812095916 234850338 584607126 218388912 360614020 959017772 457629168 290144087 763633869 785115423 85145987 983857965 914952354 690641668 843072030 970152626 19871937 888167452 40167046 476496742 828200160 626602248 126428106 781461105 768197001 754601247 754664007 701027487 846600373 20232702 942751918 720819401 909959999 84374398 965337201 660419461 720552205 891435257 454482737 824707557 915436829 518254061 276159752 22245252 778822395 643179530 605149068 954045069 38026465 447316478 723972844 644071641 471236165 374249256 28502102 157092761 869892233 819611881 670989236 554893593 741197921 725398139 957508282 997895154 523780204 691242067 246413504 894815256 324154365 682124542 523534941 197624557 847730379 3952457 247060624 883206624 674213504 813351586 836523178 670989236 696082670 548345242 384698781 673633348 681924092 969765498 807313446 899112017 681416216 577967200 959257886 969102814 623986916 922286241 773386514 250424944 399794964 325310250 944664901 541458258 664356600 944756323 928836004 709943191 351655016 821928533 197773888 160982961 459011953 541474554 291634891 675096197 37707014 474070719 844196377 301548924 857074735 779892815 753658070 558858642 729414913 260675752 418440619 231845408 968570660 574522382 130410407 670989236 884520954 19007985 982651334 939117192 464997566 424236526 722156691 249680091 762347142 701234613 724034596 344952535 641497859 701461065 950361685 687865417 846938280 890673593 968474266 119444914 139103596 443053782 666866854 855906606 795466639 801054319 245991834 599837459 853028328 676032749 307446606 150734908 938604623 316953665 819942123 300945761 704081009 278987754 785125086 530424563 888737015 929326303 858346772 788722109 289270272 431608922 553443473 9373521 360612369 952815844 889357593 246427461 646270837 614324697 817656697 906979404 341672437 689760488 720243836 147367571 60581565 855614918 670989236 915933724 937697830 572841824 60104847 915310954 221825525 682474492 42947904 346173171 789378387 132257365 157591243 819486080 851228609 853850368 765968859 88015536 859946356 297152587 879541071 217637919 279663141 35380896 19598894 90817974 840859684 751840274 352038153 891754380 233399085 778503901 781729181 672146637 998879219 696285069 928998848 1061882 854893629 737592596 948912613 564980226 923186035 177347797 127215697 276296076 247380301 386887580 706705694 757182214 290401529 573966446 701915155 767102559 870172892 828323011 154307261 947645819 522743031 779615131 930554202 121467509 589085034 217495136 910717444 333410996 950208342 349835553 945251131 205003204 265594825 518857651 603187824 187543872 265241400 598055489 967327398 203075755 697457073 353178996 825689807 946040231 167490385 205465749 414783026 458716579 928959664 20812214 618665506 900287418 687328960 785086937 444945976 488762267 975245262 720234796 22894685 221618721 762023261 797345984 248972348 646719775 619961874 669121295 79829990 555535696 985416410 675309768 255335584 683935577 727891358 835226799 484711567 87622177 538128065 726204281 274290816 705812508 177326768 884548389 294042472 422031478 887373178 413870904 775403557 21009456 688809105 3440418 969390385 630648127 974628665 360082046 455920177 760849490 400541013 910307501 590968645 97531803 113937013 145533993 25882554 698690275 790532662 303108228 857694429 963298851 943873280 429211964 952819331 972924168 112899175 71789632 232902220 64211865 324196626 937071896 678105533 766753747 700748757 89556959 743508083 304601977 740899654 716172269 958888173 748197090 285541096 864104385 976952355 798356661 530439045 295107312 966736556 69205368 790103773 681711925 445217282 319232803 806087044 353154969 738809798 983665100 57415935 2466054 670989236 523231546 771191126 669409056 255621643 747358278 385128753 86773061 574242502 828048970 556894109 558862008 721013527 560617331 892333089 919441296 738090447 54252064 582278556 814405809 774443328 526983064 732004962 537891453 681654335 318021422 302679870 703031070 468821354 755436990 786057397 963807645 670989236 848258138 963400891 991316208 734826674 904903616 959321903 18508279 497918308 30981478 845550856 712495012 59962034 679645370 8784456 81486151 622550869 527333675 794600935 646058181 837291616 145227827 384184374 828044065 57389827 884144889 84653684 615528831 906254747 670989236 650991350 662693312 670989236 211134843 842625181 273817049 573918249 25092410 567716570 860101396 105860358 459706972 116831313 752147328 496521508 689802713 804716557 340357647 859818752 208734979 32982756 712759414 769330729 733626479 187676301 835768909 879160574 441313305 846729962 929213282 35148743 670989236 847862090 117950427 509961159 740920908 910834808 483710881 62642493 154682390 696974929 572652774 584363855 130008117 986342447 501451084 678045203 966552979 592713329 71327874 738782473 771901249 592298120 296819259 670989236 467256711 699643226 730700945 443823608 757576666 716989521 340542780 53592164 993004251 165942057 860157572 545959634 514517915 528527159 935961532 985352874 267562800 536830055 677218680 642752434 644721507 494615697 928100908 250101521 366202947 861429181 908661783 202345293 722346890 838703649 843412920 701385391 670989236 343731814 24989033 625849195 155343366 107693657 677148897 547047937 160407394 404020783 899012337 678697828 115510707 729287145 78973624 820838021 259906590 375248390 124973452 547499044 154457976 858077786 23616093 516128440 689252871 165010481 30299687 938663648 168804516 689859537 667895559 66804168 526609149 855685798 960536888 398274372 273664934 400065742 461334197 843477660 847791459 323011480 764611997 652212072 956580807 158114456 854414544 966604307 923840515 719200940 759346749 812881897 715400937 331308256 323768451 979583475 333860548 839312030 278753173 693214059 758270212 635902071 663294094 125375353 518672408 829590991 560927254 698031952 933610251 222776519 836550561 774822813 952453117 62549913 224238003 613726046 993393826 97549014 713532461 477906046 421026493 828676072 830023201 847816863 854846608 948726360 256431399 248657989 608452693 978081345 671241116 413529880 420141415 602890670 355027474 314041147 669477728 625758296 30344918 762477244 191683524 676969823 689522027 55465512 85245972 712601461 923553877 998134917 888084738 905727950 876713526 259709603 653570417 215070564 969034932 711063717 750105881 710393365 697952092 837213937 37259718 846506822 815425878 837934177 333999837 817610926 712680070 707158374 722990369 840269089 415573487 793360869 38138615 367191069 813923228 357708410 762534114 872880061 555544967 705018528 866221093 920712608 146516869 958415548 167966964 895570748 896539734 603064216 701180856 670989236 83482218 168985613 708562186 903487722 228494931 50224408 921423224 705111166 31073872 952974205 697669286 20874730 735648437 615350869 313135838 683599739 751877527 464772693 749139897 908807273 216439750 944332717 959914203 898291777 700043627 870951493 762741766 942006213 290090050 966076002 304939046 879636617 914556382 924164592 788919847 863098837 271324162 4450611 828857735 295201289 974188029 970463807 975975140 914546322 102455174 963009993 802020380 366423009 270689564 975812692 788022335 693892835 788277776 905540048 450638757 943882497 893787056 116361744 824000684 40836544 511962055 438877841 228406737 360539025 552121473 186623722 497348658 907704882 693915913 820220275 78701786 316628094 580349354 691186475 126909593 670989236 728303277 392689215 921540185 608139233 699868879 374846977 893589100 820314284 754043733 692390823 198987367 986015654 914822711 727633541 619140716 875504608 754836498 576028752 673536432 191276257 581256273 784509459 72834787 735519086 797661081 830534770 845547477 330438516 777829052 744059256 935683323 83857393 689484343 967239099 109577907 500588700 91188435 330446254 994573583 61703928 47761955 935950805 757551286 325562058 671714743 346737935 584087763 827420658 783573286 783112787 828075849 591102539 887686220 15799724 7131283 894536837 31920277 190488382 952444012 926299092 99563101 660654705 544370179 8725005 698789795 880914550 521605370 720268697 959453233 670989236 928921776 153534567 384666562 577299956 949353633 713593273 115079669 301915755 440946841 111813882 174436100 238344019 672728137 634146177 880002064 857038924 228587120 563168158 342392131 77160784 726195467 946940067 738465616 991430746 841516221 26709041 375588307 938074363 705978020 988658946 992538757 895299898 694363084 883667194 946189253 939455539 406323294 111537005 94734247 475058924 349604288 1733273 730483065 640630257 861093035 788408529 543632183 235001290 151639504 140690025 501710095 719278573 213264090 993883741 649170911 278054837 682794740 473740050 674024683 562847280 398430122 989698250 295722533 149357551 241066740 670989236 938533049 899636116 613580445 994444225 940724369 402968892 879787985 802964836 473973604 828227267 793122316 218228824 771526642 709284418 740760097 75407372 770845925 745813765 852216192 637002466 392304246 873023476 780254986 703712415 783347666 442112458 657676862 618805746 569692385 686888760 730467903 703175675 697209216 850821221 414634779 238778022 709178738 396480164 593257115 906264408 309229321 181725184 798272666 405733659 995578408 550565683 924963838 928340334 356184920 950702791 636000596 935836249 691450066 780690866 463064912 380572362 740728576 363298737 988106140 584726569 313619714 46762431 964042977 963084392 817879058 879501711 848168141 901512834 728605832 10265953 446370668 773153049 670989236 695907852 726412459 913766375 820675767 908296364 41030266 438047674 98086377 786984601 989627644 293134458 916125075 867750112 709713542 232870404 948680682 594222359 263784757 498442519 386044577 266420825 296403952 751713165 670989236 733288044 229574215 778597446 110919004 340413361 290531096 191732157 832289260 259604818 442384293 329720119 823545566 846467931 523922330 825234535 917096745 811464623 199765805 389844498 966620762 849385672 788794732 428516083 819721509 559719510 884055902 271404357 408601905 742871214 587435728 936316423 612118717 846570000 649186555 79043846 954440498 352069152 976700556 809562713 926799861 751181296 982066739 845020835 183992704 613685830 230597863 663354534 705678400 642589760 565127990 999894926 971631843 896043194 229539867 765258768 560234689 823013961 987366141 824914208 892398629 893309308 717304438 964524137 336685748 628743665 326958494 665915373 75873934 731209281 14520501 170276490 726807484 466896928 186330216 853266087 984345338 923060662 719202177 889340913 308035617 964843470 336348482 315311642 939635244 722739266 598429240 410833812 208363421 754062998 287224087 700333855 477087309 827595597 671508214 948600326 170248411 539196693 534559734 785939834 595046254 439958072 231145485 817375968 948506182 622366784 926527396 414259614 812461284 698284027 807759247 485638913 219896033 122290491 509823444 317002004 315678410 2637636 907191081 777530522 61355253 946610847 815540925 732877798 820352076 229156965 646079945 375573622 643420230 905113593 153726272 219243970 776978671 969713021 510616129 994108290 604810880 818974975 776031157 771102885 351825331 962080143 799861283 557406136 753078103 994638241 578970602 513805798 605734309 927491434 823221232 487741269 856187406 864600432 217869475 783477657 483683387 315327552 165124436 676580968 810675656 448480987 969351835 70884313 974188983 768680114 987897645 484074488 997705214 737744741 969963885 350830866 540941409 226288153 670461924 248903392 735835552 954742596 4912692 181397658 226957786 290769046 372769831 614036879 725777916 333441682 199252815 256706359 907489677 511114018 477835541 670989236 839557145 426818803 809006277 825579512 989981509 913743314 777594272 713114841 747762017 445528809 723827528 18200854 670989236 367962171 152702510 482581327 720846 669665003 985548022 781833602 483414158 219003122 889089950 445128603 30539840 830976065 793868037 956652048 836476062 665969353 929293530 20292940 154749776 956324461 783204781 683825447 684916455 839838191 401164511 762461760 497358148 676036924 744778595 987755759 917358368 642501262 382749033 846911101 640853845 51226323 153241536 937858587 93294785 856974669 411705408 962903024 526472881 658455480 718515591 422140758 185207771 221109961 495733154 633639538 521439217 674175132 683454691 715149079 379572953 113277088 993960738 288204846 700088254 774485974 706222579 749961522 747233268 445051199 713399036 726439441 727218691 453450801 635838595 76010405 258399982 837375068 327861099 859519963 365671488 690069726 778669291 355673896 792849019 941779452 976152300 885680542 683818988 798530586 982396768 756188917 554453284 772581946 856819829 416225446 24885817 792933185 512764843 527445897 176771115 626930929 378160552 234827500 407650984 368423874 525597379 766904701 919523800 915118026 670989236 654067462 683547264 550815177 815191123 239813934 790142941 703471139 797560859 627326769 151252992 388084743 702984271 944163401 941334513 736274048 552254335 778118131 670989236 784195695 83354323 906772629 611065698 479452298 927722405 732981285 289166700 314543467 999510039 149818292 128915975 882870054 736092037 630301634 699974491 87028148 957537619 221644959 515900521 318532241 823081355 884828005 939323528 19903836 633690354 355451281 313751276 317385640 222355151 415274493 187791681 665701316 428786058 346399415 287771888 328992175 688048936 775828770 577869946 756948386 414417360 882303366 687581704 311310442 637314045 372612442 265965768 805099993 902007498 114561535 761979591 840463490 212246032 313725632 398479350 741058425 726951632 706109042 848217216 834879492 462201275 840793074 742180776 880384007 319159912 27735051 864564857 672212834 919533678 315956121 831635741 670989236 403476963 825010522 906915197 13455794 859688984 902068419 873078216 78771542 476145505 635972551 900591372 102868567 857227352 488910007 815651195 714028568 523083319 671115531 457582671 349801063 439613843 365321627 215572899 710923006 505546494 124784595 891327595 277828778 617517491 773798102 711029600 921553417 702892324 745199400 830130573 874590213 778412115 906434049 409274342 730904396 877369314 761356405 684711563 802756022 92356140 952366567 935518835 912029166 799154289 208368798 485789464 392799692 931358884 434718811 486678727 442670004 499497429 108852073 110644571 833001064 564205026 183533580 33163231 936304206 150164933 764538140 434274437 87141480 512042681 262557966 681131512 72644487 396088699 656002579 880351191 546467748 823110133 296283384 783044071 899880052 881605898 619583388 876113462 807493175 119138691 134439873 133526065 343068528 746393872 940654084 37833604 741579538 999586448 863492498 853504533 590542700 898754876 409371880 506828980 906733136 926457820 529307940 666527381 968869188 988690776 121076241 737295542 217263276 856482764 295364238 499442349 850603682 391914143 902769408 921041793 695573026 390786054 987237053 782179890 197651306 286138100 962932849 768515163 129015324 79674464 155729747 984473114 234047406 757856795 291314172 425270222 959876107 705184627 14457533 536450844 208077792 813379298 871280853 588818725 913267947 391222458 820141316 869955696 24099107 693533136 670989236 715289269 783056163 388160089 765357522 902526926 174019951 674311277 786393830 332047317 571840526 536001111 339998565 714188019 113298280 917155677 938393268 914251914 267555146 670392953 415334637 693605492 498674205 344261703 726471164 608566997 616959007 673941522 549152950 259522681 794110658 945194200 120743098 800991188 98375187 516388873 735813449 106489575 923479688 29132162 305869206 899539421 553396207 916019145 27954413 647152202 77653534 46073768 342553841 498108317 695536607 370484857 819274305 989476052 792618126 334517179 87708731 448664327 670989236 378243763 702318481 161971960 840761838 751639690 743454315 937394407 937530624 484195639 869085059 854138509 736804991 319808205 997904678 495100612 1598773 39623025 553123385 920884285 703836145 874187798 56357402 972542192 857284181 885017662 286242715 522668794 928731586 109379200 260094857 251020381 923064521 427350884 16705746 907839926 670989236 232609179 420795893 64220135 314388373 857044569 927053546 423701570 583574939 892983390 707131029 159936060 541934242 740423630 41135775 286284056 858654593 753589644 580557659 508249324 549265482 811341765 789125761 922230182 652571352 927296018 300563215 751140367 87083826 806799729 874384818 587746812 755788165 842574895 681049042 193803802 532185686 140149229 856712851 62263399 917826206 215480231 404516288 738404897 231285011 69978691 196872078 960373533 615567366 737353681 800203541 966843546 865734542 442042350 739844372 900819268 913566262 842017113 718394952 357089 204095465 7702745 987374017 256731030 285036186 530886254 895147169 504564411 391476375 882562227 205870968 382884675 480260763 769113314 756917618 374073337 1022127 813126675 824074713 554512971 219435 121548725 7348179 946560006 593288260 286832398 667836839 220929243 625780242 218388253 70350747 660532795 972550557 812023737 795540290 187721106 275918993 980533366 539613074 825939748 422551990 672686082 203654574 420404406 181167437 804699712 30243347 930179494 968632894 508572140 235051111 626927587 940483383 691508251 374473228 679282430 774140754 519668857 904865579 252156001 831462169 249087499 305617385 950577734 984637204 573417778 731787741 614645847 789748394 582216601 675679780 991014439 122672854 668807445 94119490 868641681 37319838 950961181 999523896 98973236 504817054 592026564 767805871 938077985 727903690 782226981 993292324 163048099 947280228 682801350 845533882 216507638 469653498 661413496 106573448 647846320 484713459 425053599 200370624 132639323 527117179 127010576 876758857 352703044 245377110 918212032 905227313 302354996 175506058 20723085 875443898 593265966 739048925 747931080 721809095 880739807 932923680 801014950 268794306 844613116 942293616 127018688 718748437 952903535 832869361 14470749 101817085 164961577 212907195 246268317 128017035 304054273 881889684 647240631 380757584 170256703 857815061 267100823 786099436 24392893 477623129 927640826 863698749 161571925 751959180 5895366 128836342 378341183 934690156 643091348 771861889 748317577 150271191 10088327 896788411 819481371 825251276 550241833 429466986 897102483 197596181 184294541 975984590 812075129 532680790 914564717 790185241 847577971 594668735 5446413 767578211 744907763 645769616 81066964 331886328 715256351 529185013 579700811 302214365 268897266 632494456 673905176 675145593 400656302 547053690 966953890 893526493 186606326 894931795 599975815 806273627 738040656 422433009 837682682 817309991 532813954 4709039 826759136 827569413 910603758 865144869 955867389 847302823 696942200 759546665 245145246 193929304 684880508 904514732 271325350 995598778 573338743 547982679 967477311 535790196 363003082 612207000 670989236 280958590 70661376 918465028 7726226 906359025 203204467 953222071 991630414 827075068 675084987 497972813 50065565 915696577 5049418 970934605 686347914 462942706 724080570 141588933 559651521 119668322 245790034 456739460 881707244 748743770 122344438 897181349 65222430 360479401 789831603 387072115 607289334 132907088 23720981 280271063 741630816 919756632 457371646 492901507 460590957 946602123 903848804 872398092 940021867 154896523 717255295 397160326 193955953 376574051 723574076 893285952 793798211 813307180 983248578 446205651 712092518 855856816 418514904 721143369 286842432 680150948 618089755 357071949 954019068 483145164 830605870 670989236 436795481 969275441 946738615 260368925 442793429 513472740 593774904 757077206 336294947 843740788 980287686 222105497 89317855 448385356 531159906 674489171 467758804 856167876 245180438 956366841 974551401 849301561 783956228 746700921 871121155 111502163 789364022 428840611 604123499 344654532 777096243 780563687 804937817 965975193 910641735 220983739 573468692 63223818 626222445 743478156 269150290 569063175 853544334 255690348 710251870 729065896 391312017 934359611 796754430 924670897 804152598 871335457 918450889 837523360 755391231 283248150 956057489 623474782 818893874 838878714 990728524 918499594 986393365 44869144 650604823 962238886 39873708 807511732 95317254 777326916 921094556 509757318 557217901 966135214 180483841 767564591 285574409 559989097 528941518 240685505 709091066 785095785 990453041 587009664 870722973 730710491 848103708 883940560 258883824 799420003 710571214 160537385 997146097 954420417 710757637 670989236 721431548 84956574 7767353 683882469 349312100 797439587 790688534 715436334 375433955 959814989 173009762 3246633 393923365 512930266 212776773 664212680 712091960 162709680 159407908 652401135 949706973 331191183 829751730 588261611 206736233 249076228 228865881 527023294 108324175 682945324 869544448 791094557 537142485 974435010 936273506 675122626 138167119 329556746 670989236 199414455 719371073 989817433 173487517 621064252 886580064 31980498 725780001 123903608 546137943 62764270 741054456 251703156 721585536 930972040 714712056 806319491 136344091 792605990 939197489 179915198 923415240 852137998 670989236 450073121 747483593 820104692 811757663 596971098 916919345 798572530 47464159 900774157 817517702 670989236 977172362 716237825 294386307 11461239 68436467 383082266 777480228 950415583 832024022 716960645 713004459 915045107 854371277 449296954 803762355 772799553 904143901 117160799 711007782 631814722 965123832 727141725 694580260 519126184 23498688 135197505 290492372 43793042 363057099 217583611 292195481 330589727 184166443 752742657 630982732 674277296 706394010 260786916 673409885 764461990 25274385 156846482 937634208 665245932 791348604 897085767 711887661 760239422 390347529 992889337 489689559 846665858 873288864 365793193 183523162 167880360 901286887 873247661 567482574 790110710 735050971 289882018 54833174 401053926 795412235 863999205 31534108 867824291 650249805 903732673 480798633 733200350 7444564 807761467 873081283 177202795 102998558 814804237 725644021 306742091 581003188 861156966 537034151 691603045 488252280 902628145 982423466 684105042 828089336 782506236 156392311 446008186 130445053 208928267 866664234 771649466 714944266 37558753 584116794 937854259 782239441 927910685 916430804 205123658 59646723 929138431 919054696 890199154 351169379 819792924 294833658 799425571 674352834 663707327 350719367 700313832 263791666 249156215 695858734 805068016 20360637 934814612 615901237 586051861 270456835 994993414 256532935 950165724 763928555 824750350 307539880 820024328 591444886 418273623 900075618 677030676 263382068 41625109 759892882 109915747 72453628 824783424 884602563 370643059 929428837 896600690 964451848 951093713 805718326 164063218 540315236 537463524 939626469 640031986 872478300 354749273 839597499 560766390 884576259 253620286 835726504 115533398 767670040 685055313 502747616 942616584 686681603 410782520 179549806 731937465 229609124 144192937 539656133 720620930 933979256 829099736 764342474 270812678 782110246 819076933 308915379 650881431 770836043 782224914 882609785 738674970 759380681 81685021 596567126 964372888 915528722 16993379 66858081 939358099 875331390 832089352 432459848 942122165 206119301 356862746 85054754 179197535 314499988 844818934 818541822 973694211 744368733 35285135 670989236 713676951 697341891 290061100 437743692 331684639 737720019 700244981 25544053 403536929 84204932 877481512 404326953 70302813 369405971 681774024 101732857 415239751 22562607 205834248 976982549 869557511 854834957 198825990 585091573 390846391 219788049 826870985 590310532 810759136 804294909 924588175 373381654 734900002 717219335 739376609 140178055 846480551 744455438 917888309 845401353 679783838 911791629 931457908 280286072 712726205 573304499 257015025 795892400 671964801 194790003 110686025 867985388 587197438 679213735 323079141 843858709 395000578 945849230 51809448 851340147 688976807 678535519 142570330 211046554 379193793 411182792 733916669 778058975 738738169 983908153 307229447 670989236 827314927 132833075 956623322 364303004 938799314 804108255 148099745 68292136 560681888 401980213 100670324 785291484 978380885 395411639 978358710 877462569 282867228 750118485 227740897 919334112 343203156 615121162 125695227 607793051 22554635 702759723 995874980 770759516 712624170 433685649 684162811 468469585 920485258 161864179 795688346 752613845 965938374 683768371 749158556 607932588 28822737 410455586 559328578 91805802 371243541 29244584 732565744 160869944 459100075 223218967 698809229 88668953 493757911 963868357 247275839 973084023 226671252 457365754 511084997 931956555 451517136 814254236 881227242 792579999 670989236 845950324 799043091 128439606 775129799 961256741 201391860 301164394 431681430 944614657 119105583 54425706 832489476 904180980 689440382 471917893 32462704 938750454 341961904 401150457 681460426 830254139 709186526 253831948 709000391 221469288 585116290 252029506 476210390 895358409 52065178 839102330 169176275 406824447 519004314 772646306 81339795 50728903 941733249 674319511 778817289 754577854 895931805 908467542 319698350 912085943 14428236 793514564 36592552 712536083 54996113 284642515 563276756 476922336 583700070 527111221 581806817 961143870 957615141 580023991 851642770 28415910 91755456 990954367 952061304 288572271 860007075 112080454 835928238 190460431 661625448 746411068 325368818 689761171 844440516 121070126 715352456 962228824 853578956 787564975 303649546 97639488 70540444 9579000 941423130 349969546 109320556 194132704 754953076 152510597 654999071 949977373 219757205 962916066 52350560 289573154 777506215 720836743 536335364 524086629 808940149 871761715 914881800 692368099 522229644 571532121 286740684 803143118 304371911 758073075 652055156 802947267 805591612 829974698 878964247 782378455 937460922 887906766 770965894 487118930 945559780 35149811 456424901 901206335 33014570 985233404 357821805 120798770 885333960 515973941 365475513 186954888 354198336 570819530 641447222 117741284 698190052 703028355 611902507 675996722 844106945 974881376 942385688 965138649 994197728 636204506 81524880 920080935 737184876 798712979 886269237 901013202 294721090 869681737 950094875 17271945 915356669 73954735 878188123 783327701 149065852 296425715 667036988 36311542 279653616 842669824 567535536 256540120 585814907 850454318 27879698 567334773 228928756 653758211 869449477 770015963 419068493 76925463 900578594 918126775 866615075 925201577 162879202 640487162 296399235 746234585 155065024 937739968 401830310 672330150 708436908 145543395 764708354 678517811 194460043 61141135 156547671 831198436 950039406 105506302 470649740 842478943 686169024 964578382 703590531 681788718 981152850 442400886 820255895 25081216 317172508 790256495 196808824 842276245 241293823 346168630 712176182 640262198 487177755 810631004 392671563 29440115 394233291 781137216 784893910 675711505 960154556 799639024 948517732 911057438 25545809 916526300 70164436 806349737 457848616 129163551 63357392 388542425 934285259 711388045 933131274 80334536 884031799 468276985 814977039 999102530 678639202 690159905 678561429 755137112 819824610 627842443 259686676 222210094 57682947 633247163 310750521 274838889 515205082 511989129 887638757 882817089 85917736 854846027 952861618 62459574 925719572 765990626 66879327 98046255 805602855 807735831 957793792 949762735 856782662 450091599 22379763 874210423 432813621 746464591 277222601 156348569 854023414 925077607 907485870 698409992 733317894 187691157 765139154 857687979 278504216 429703387 857236703 937992810 245720044 762608192 808380315 725304210 802356575 887036286 993733323 290145028 862577814 862589381 518312232 921706209 373268190 750197497 220821545 922133838 209658396 982808675 332736738 685352535 44005313 785221699 822177550 823510490 889585568 182007690 353019394 846588598 761469983 301461459 827904538 553341201 690825216 774361680 324604380 836193788 652212628 265314931 755730899 785647817 921531528 713242818 395729640 880864169 670989236 794221936 981765010 336249550 783401365 933619580 842265064 997733603 718103203 900544063 748670730 610106512 187420467 770894526 702272685 684485763 908324933 239823634 895280842 716222189 612814085 34740598 833238247 15835893 695553068 684042507 774226987 265681618 728627206 764977344 71778125 601743363 42931406 59011898 702989783 931045200 46406053 722122706 338679894 582978590 874955142 840266767 753529449 261103781 946275281 768529198 670989236 16217575 404575808 583622739 396207638 134181120 679654713 14777696 787938074 933959443 299392478 250447304 403830695 986619084 921596064 231389730 961494853 799910758 809811357 226069347 776577633 384926942 709826578 314567909 775471422 992208551 976200329 865733114 949230714 815595769 830707678 941652108 234831129 566889518 800339220 941466246 394555147 68023479 702680403 348025327 178427879 694092417 495326412 936149774 710037630 514281871 782439736 811852037 517934951 76676267 866018229 774003755 770700216 721092278 256809248 991265629 512304504 159390708 910661541 432165884 796805138 905200457 681915565 547276967 588008347 147995147 715209243 127812421 198689882 9161781 687499657 283392236 651688533 710786916 69827925 274826254 59273669 185047192 837972820 240736098 693760712 398735966 176511045 775845719 293167624 14222723 92880984 508122140 38708541 618531798 680434667 315201906 813580927 138731717 472342244 815039605 841016641 545537474 432010506 670989236 693563755 505452369 626942841 472686319 352828325 430985676 332096790 663158880 730165763 131638736 961021595 248969570 471805977 289835729 179663987 452728183 980095562 792905257 260907534 413331894 783498091 946521775 467675441 537892135 597333740 279951758 723318494 583069643 449457381 359226477 942078790 866213244 870047058 204780809 843330455 699388639 26418563 632807946 593850360 874810722 781065657 799211418 630080608 112200937 510585976 953161706 492729715 813511366 307668376 837479500 825505561 782685189 291042746 829415741 755496446 909575821 515043530 938420797 632536931 957964758 951251117 690455271 791637143 844408263 912755053 427535733 457414462 666668883 892541025 237998755 340250716 393618797 275449876 725729025 954032330 315497238 986384470 393227906 759036986 837344780 216795246 151211413 288764036 713510140 826930923 429030698 117492701 897704822 324340754 620716146 743074040 423264577 830124484 92389776 743059550 657805585 274926195 963253397 696681167 911962553 935443566 521171152 879973319 160160374 550967109 375812177 798673636 670989236 328765354 881276179 929632615 759336746 786867060 481249255 815342503 921966613 534190510 308459022 371279945 42061851 541845388 992576645 118674566 757038722 892082973 946532564 319587846 978247273 770874165 372646283 459216726 145064857 99843849 660028452 814887643 937199132 879272038 264380014 11008041 811569711 866043471 554242954 989742821 512684519 665422787 545180767 442992528 383703506 821377073 749103588 159519616 931074783 824290390 565901187 141855969 578683817 999719611 590708959 989791745 78893589 920139262 576969207 460613211 835790114 989679976 962623075 888747216 266709877 952218337 977360636 700657485 694252296 770676320 615059403 460181422 884831067 438089523 750491479 953317907 256157471 586622876 43134909 402886852 930996459 979588566 102030557 196097128 137197557 817844791 531856975 917570138 424996974 263094116 961702835 834518073 636678338 377601893 721785833 6254669 906433897 621503054 916135672 413271608 679377452 993373207 811834094 628449900 854408346 101407848 952230981 23081130 976041932 116236714 902813560 759806715 737727550 673509034 801790512 48540340 282846239 747722817 329479244 845786605 912475602 811040209 570678638 207169469 259169939 844818300 115360402 409178698 482900773 804804333 870899342 462816855 877836580 920686619 205214103 527779659 228782897 735576036 612379500 854181398 723001134 386634660 237604460 765076660 387378561 158271887 122190310 40900231 290428230 282785832 938477034 782464484 268792152 250496775 893565007 730452341 446395615 591179339 559642053 155959270 285887873 975171610 932402350 897811652 500409455 656683272 922032933 623797158 827060589 743811913 500160155 933293990 670989236 945174469 737235753 652863813 670989236 741928492 762328560 798878362 957707707 243573667 807618395 291538849 721574106 792048356 620193213 459386739 943909959 725816849 768416058 897765410 864905878 984518281 295771073 914396376 281039529 670989236 336441398 887259347 995985187 190383549 874423150 835058432 726265110 153552706 805602632 766599583 478431050 697790295 559616698 992338704 985068215 38527856 876665717 719028578 831190770 126071556 334972198 280546297 770895213 701680200 810292283 811742281 921253945 216936149 426470155 853867481 37844796 836895644 473714394 727784823 960750729 844078889 729109520 202551465 100485879 913264834 547249275 815226986 808491833 178865287 547624449 920246050 921936964 938957806 57063405 980073935 168461812 73774981 714548879 225408905 33413284 542973514 353236904 882448496 774794045 751570050 487808007 507632111 902720719 281902444 757680971 751537495 725817018 416555744 58799943 844822483 193587206 777333320 802452381 899247117 481063756 984719820 750777191 361937562 966352986 669957640 698487118 785702397 383886432 270359128 898027939 198868402 639558487 600921186 830890282 249419460 469004642 139777117 849079913 149346997 211133443 316599562 556733732 184820867 874490378 116500420 808978458 778327882 374263109 721809652 817845728 867867184 262130045 830380500 718850641 716747538 194463420 90150819 909780223 992400460 881377609 731018679 713911269 93285657 923704351 955383968 385893773 885303784 788841993 292385711 977773537 401269590 758855953 887368465 91912925 894981054 870036315 861007679 728484090 875716043 763435505 821017896 596865309 785496807 219182447 875879195 25511781 268658921 865757463 590401718 897850032 197634609 136725138 658660995 627890415 282524300 213185046 998997696 734879645 456118024 705460633 603241698 963959622 913229934 81099049 658312220 156865754 956285718 584700622 63350011 222247426 842136768 599119269 150763413 665265353 212108617 208246762 793493021 795977484 855054092 515031329 33545022 79517383 791996694 943146814 976054032 793258473 699866414 44173285 572277857 720966054 863704128 609712323 222159741 405914653 449986417 771332941 670989236 254543855 931414161 835237454 137537323 856398326 215966841 741467922 199030637 613391232 894397325 700029584 580701959 670989236 595644357 342815841 558496297 403030563 274529899 863657938 819207056 812132812 388289389 697726555 990100385 460788887 878318371 358383170 406560480 969343074 455126332 252245632 466695178 370796279 248442459 545448363 957647877 713826226 271279793 745552705 71151564 836578071 270388815 192354217 705151950 701954802 246826187 861615028 965103138 444653417 509928236 753692396 197519908 104198308 678300202 679206713 439210200 347861916 703233792 473067072 751545739 377561706 954150709 922544418 924854421 373415896 151428647 872267832 794141597 655186993 286573222 740448186 819343649 870911134 775651927 658658353 814198826 148144311 204123307 731814997 690749774 666358054 147936290 564638047 391264446 739463543 785925675 129084847 500009625 552659107 479811392 58473363 440706243 219819996 870962307 670989236 857433099 951864025 45050659 42563833 942002269 40598524 690242824 432118880 100605537 145407090 679214053 54144939 775425392 944963739 770497475 124009637 718080693 131394449 264287959 236226527 727557793 904753927 720321328 925899390 545253381 825492718 843593806 734205333 279512036 624823792 791012425 713389928 179285692 735475138 427117477 525427298 88694704 720705275 206232703 68033171 878122358 668265013 264453497 470477329 891512509 686086393 60126297 772377731 493929192 26020152 881281231 392252936 891089630 867031795 352790979 562509172 339844511 610348947 149144539 326480535 26123036 735236156 845793262 483207292 807076227 769849661 651682694 677002135 457237044 683199067 816044083 966137357 445645294 60687201 195374263 790404247 683741425 622905520 619028857 460882890 977531127 686923731 990325330 673397810 234835300 692514612 182321066 393766585 765787321 871799884 683893872 920695622 231192896 642410770 221300840 810949438 833275254 377390593 946069171 86710193 765012962 670386763 357524614 173726879 806625200 134973176 406004863 871959674 405261244 879488472 939669641 513555800 109753010 78133472 47296625 206803104 942525403 953157979 17987797 884720372 402176095 890455792 551822418 173915431 942993130 502633279 541591013 660957381 719754704 443671401 439935262 332644328 843587978 750642116 524334213 986797834 429042302 77745389 989401239 885328574 672826851 136919855 384465184 648478047 268630002 705663769 999340582 22684477 157307892 294967460 862672732 430513098 906779939 973922246 660234856 969746352 400230549 954348812 401553675 973979944 60679841 935802063 855507304 832318874 468775195 967149867 625090521 725093863 837086807 916276104 962458165 736229231 858266984 794632959 947053151 443365990 937901963 190330541 552731733 986222415 224270890 361691981 885166029 863343212 691753442 218833254 877723944 988943968 972502218 267380069 602970368 247077630 846958661 467468931 347855947 90797329 726900191 980710326 885562993 181903240 756577023 181847778 770404507 599418349 937159354 139727360 953036401 809509506 944644883 945792590 918869253 454256955 690221075 916984564 815952454 698212723 186590239 692083227 768886913 914470904 960220809 670989236 337995963 733817348 296615175 834091187 291255492 950754866 659996500 370688764 809459742 888712127 728549650 75832845 982805617 393653409 712547154 101679852 419645165 164742557 86091353 254046099 848280940 271966151 292223690 470778907 673598458 670989236 714631228 955727919 206440246 717729721 928091928 375918931 861747632 629990370 149244208 71010158 206758583 993087936 923516343 37239212 577169877 718857194 21009094 854037665 453191309 96045444 698949876 673434753 206781570 814773411 955664311 399980463 616381422 156362674 775312309 879554253 544362479 595763072 60565291 852172880 436515575 926268721 55937990 569614089 682533101 805540322 882749391 240870036 749768039 130686340 891388304 789287828 31192744 926977657 945633843 868583160 936387468 583564450 814449782 635035524 682278780 681266002 150087725 818002843 699443913 607225455 760815103 781024189 475344751 121708175 324436976 976073178 297071026 614326092 571065130 829842621 615003094 305848503 79432341 639886331 501625495 199965130 253344540 850903868 721266583 543184502 365960767 563982758 795321000 144933791 485796656 401958473 862140259 371381767 796268122 851924353 644686417 3876057 987877476 659118310 782971635 878559993 951946862 373346949 616319678 967946636 132877859 718778571 206711474 989312771 158336470 719382936 56363571 670989236 508359267 124153946 615470002 535328886 939409093 759989453 838638009 247424161 797600957 646580273 489840233 711363941 792690484 843765840 518925359 322674520 470598184 443091055 796429197 425042726 748839535 928107734 906537610 821401700 423537649 843177950 705841738 44546950 702121436 520222601 490476524 724002706 293349474 854061584 799997347 923049639 736667150 675373303 165378321 693741649 757465384 614868763 809970008 450628797 988518143 970197854 877850132 818124244 815123828 700761484 246142165 26082548 881977377 227749710 821239275 179005707 341949686 955995586 971270956 446267004 472398006 130730102 112815673 266775971 509110545 766253332 845823904 776527502 709120739 744663132 217409492 554130938 73042345 54796572 785042538 886389492 713417966 656573134 157533866 301597942 813910655 832578737 430265987 320300008 55947723 234492907 829507250 884512475 791398365 683147133 867525492 384351351 374564331 950920524 332791636 877292902 865290405 504291296 738197660 433136093 759766572 957744108 992310598 577023136 754337933 310875648 658178506 843768613 620244440 893077035 100950921 906826013 847642231 350208619 347406500 792494819 865216665 11427710 346400325 689146411 857031839 773693463 878809117 375556442 942728562 832823812 909301666 803558240 817983626 620836149 728405116 745571093 699725362 720178118 702762456 960427978 902898483 774182543 40760098 884388105 576583379 993961492 993765553 762603155 886817359 991682359 730066578 993352290 867291886 770446402 66202419 968081439 947092983 886494458 445770088 725247970 625125779 70920147 688432975 741683168 804437960 475248827 568291442 356274590 135497281 267525422 810343382 14580637 653746442 963367232 238306083 182037144 64522542 692754064 375152725 595846467 380707738 110011579 262362376 125757851 886054410 892387576 844827965 365524805 905852708 986996719 885055608 338945755 885514435 567345639 689111773 761891279 50274995 270527103 162214358 765945954 321915756 208355132 998271252 636265057 561817615 982865428 888774101 178673456 840879880 588266259 859884072 670989236 755108134 968882505 61069470 934755862 40721214 809043360 734322065 184438034 729570403 309984385 488926885 403146480 993614412 787447643 931538216 396387324 331320262 776307134 272760077 927654009 896103750 292924160 738055050 994672280 806885129 698054445 821058996 435869286 724528132 701527739 157904147 104998395 201651496 861531250 223142876 414228911 179703987 761623019 769489111 202041900 806929095 716758647 172082464 686409988 915135575 723217448 53898910 15216586 313888809 582474800 766695821 488240063 262334672 440989836 869775013 703421132 965429432 151025554 992014068 271456120 387590628 596335759 719691565 979554689 855306441 719803999 891759833 310901618 321379188 376945714 319969451 908785832 924698645 356186309 894647312 605849309 794838506 530448118 753533403 312465102 714881106 173002930 484116135 345193411 736165422 437157635 444798389 714881747 670989236 889259360 786376883 18608434 361020450 944526573 967940202 196259151 281690939 627824544 760715509 889220312 776681861 789157543 115872494 952611555 25533974 867733858 779768408 839998284 354996951 59479788 508752651 73579738 829261805 130855219 725161313 950115967 838458686 744050201 938533531 292905353 674912791 430379775 827930861 745939239 567366284 885571945 172460937 681649470 722285216 332060678 28850452 215533934 388402573 279622562 114538606 973296056 955779504 316812697 3288405 670989236 660403304 146640431 69250518 429508955 959339589 822974424 727470047 299933361 846011737 133130242 519399480 26193450 205730222 488547743 890568262 6281691 616159967 944642793 795084079 556557876 903832400 761430800 62930436 938238293 846513147 262263831 822330610 844556077 987617669 898616290 138514449 818766978 401065450 588550006 265941941 702293285 810199659 335947111 469802796 870313679 688940289 697008860 554241423 853759554 573720349 812913090 680542372 984073470 927445434 829893123 986440157 737070104 215390505 985040896 725845837 358508318 133421359 956159075 950174550 678200668 196314830 861926113 863217040 503329474 771781786 715445599 838210585 603507263 777666623 859191136 408369618 920067542 213329669 32633006 478227639 992966882 718428725 158330116 328218917 556359737 814947594 682985028 982853509 689000079 913022350 830090431 848202784 890350114 349543142 786011643 172146614 854607598 37087314 827924600 794898030 992393324 998078747 771903113 660294411 850168434 913688975 886180748 798987628 883541722 600570813 143954177 982205489 876835212 447959941 724221559 808851740 474122225 299641402 384764871 698477500 26457483 682137673 247320696 999285960 68537897 802587601 413228866 739065780 630594204 48313369 905028018 754883473 899278406 533767872 772583053 550935929 25085537 467054468 741858972 506303486 104791426 430369706 90091963 887829939 864818093 882414128 962036820 937572325 56297579 841829434 196554285 77443036 288203047 887922331 974222172 531037010 185545903 764365675 52239076 467158212 684413271 670989236 688381781 520276174 798487589 525248465 698631668 988582109 777743101 600304706 991923161 840294759 104402432 485201739 30490965 628793486 19439594 960482058 103165174 453447047 341297521 191860401 815114654 434875457 899387769 739522810 474449166 919224720 345862124 847183686 781035282 475852588 976080542 842218570 617669722 972717268 719276346 928017512 872493888 687497198 601306679 890745572 824873529 880857269 739294785 515859602 864861392 275551445 769291810 387375116 750318071 612200140 325159070 477799854 980964878 414314189 755706611 117895045 804401150 790207368 408272405 38853418 170251483 921039895 285688214 697993269 666785091 57128070 793804927 860214477 472433295 329286247 121173208 817174127 356451463 424554566 691661391 610562729 678145306 295538452 715231535 670989236 498281717 879708780 424804707 794556746 952643105 683176786 958767028 404187982 535815235 85292489 676908694 948184216 484898714 986028130 687826096 875027023 759324814 400509481 276556943 961638655 816510109 973938746 520545028 625574742 175772416 946035081 620466432 832049009 227152582 292990181 672296595 450449134 684532630 965181498 493828272 309599889 323096436 899211637 426345665 206671333 129266408 565526821 67211962 690210126 823644346 193636386 506247906 635776160 819378570 293855585 359418006 543966669 733947309 392308564 701324963 649043179 975569664 950834622 283480711 845710840 887963919 965839878 676493718 934136788 956674755 613014493 10337260 485315387 428774259 902590015 784674257 699798536 418291593 830863132 508664201 377168468 994652507 806788238 704918177 930036029 741352394 628637030 361440955 904955662 122717049 706688229 881261160 762808155 303829115 670989236 270172845 745182254 657416526 308543390 604163137 823002360 511891008 608941444 97702945 963204858 653187847 422116921 303051958 867539286 932293923 571179373 532250485 238005936 924334587 58695846 270904314 174265133 753401118 980683287 132969160 591319423 23070374 276977450 308692046 929577449 596441979 754417298 379070458 903809557 868847230 732090256 792297705 973257919 988303027 15405333 968432178 885332275 443058697 3711156 68399827 42346087 817221403 746634854 79018292 897170342 884298145 785131370 809057740 710618078 473488051 299982887 483213317 962501807 915565139 876861687 548066491 985231158 828558087 876798632 771445387 274222516 794598836 864950586 967463857 989787088 613744868 795589876 719922271 200867089 899113157 972919002 742261436 474225062 338881241 878171652 977062429 780742178 87095746 505315865 469462650 766512239 50078564 565029396 883436888 963013911 290549298 190407218 105577527 903179570 821491690 512806635 960200838 219410787 239713135 683527778 44799241 959024906 238133381 563247493 998986534 988347186 680426996 442517061 783688979 230551032 649802901 749040137 699460733 948187929 728922293 560671846 955628315 775646473 168159772 463476834 788790464 786692528 947706699 920071496 802520286 853679343 755963997 536010415 844495364 188576155 420525383 11966788 849782611 61952430 831643380 703991083 271631860 669518227 911730433 375968730 950450599 863007795 241335334 577810762 746321681 809637635 523243506 178353193 644005745 44528762 512505627 129022746 836309618 931934757 748896206 929172679 555935559 786914111 960481696 796895067 347629165 263294635 862848867 519956251 836604325 335461757 954964491 774879779 952301343 982444859 54019082 909790461 83107287 879765920 265833667 775364215 102076176 943665117 877185973 853923599 995854659 230805160 66979929 55050020 44232355 404459289 492855848 349786575 45415607 812133098 786140684 732433543 509308984 893565507 747540595 928863635 724094519 73956874 908732482 930127285 30280906 894672625 720108253 819274826 794427318 776743440 583863829 862781239 939203613 278916458 710256803 854232280 550412894 540332 604653808 234761293 595126863 791556284 147858725 291743801 841343016 320598815 685234844 258791335 119451200 881703467 518637333 213241159 939065175 572430815 85636803 288952736 213710580 317069781 514386434 155446242 102881047 415772181 778250876 298524002 781872714 928626422 94786105 826455288 495310666 535827475 251248795 835911970 884980015 336575617 201947197 917813855 60579249 907773481 853671259 256585227 462734956 117352116 918575303 493505088 858816715 790043100 998461636 151462587 206799245 634009073 566534904 393244547 932092824 724542511 702423874 661408414 731859361 822044651 686409741 63304509 869066755 107452928 480349907 426546764 159610282 646623588 35014580 722787160 185259017 736851239 333305841 317805143 475858317 811072380 801553067 922293842 927440115 254638064 420185836 364205923 826096449 670989236 551766198 699466513 264312031 470582140 777415536 140229619 897394945 771985510 775019531 697118930 133054048 57378059 841800027 878865028 501195996 407016123 351991831 808279825 714461546 745904288 904547951 236926195 380087881 711003033 443835632 320371706 799178074 9273417 315717373 784989340 994632064 794033791 867218541 834393787 844317429 285091895 170841470 416460173 869384762 932468698 120658564 950120198 87998008 844210381 984654792 803975316 599421820 668088526 417448533 727846200 128283822 860553647 49264572 727996257 929622706 862067172 820655367 917038662 889056884 542581937 914130055 424685953 837562521 764186220 927979210 408952513 727775904 996829316 87068732 901995708 237637323 538827318 789753140 196277687 904927233 238327508 462621442 374778916 666930940 875581277 604619509 702691119 797393042 879660852 877742341 333296985 245309195 565562320 901266360 149662598 733675319 987712834 676997087 810505675 29675727 133005771 308261306 790001542 178672010 888181182 910275225 464266164 587146653 963580449 586824307 105416431 947534133 890236894 984096546 847380672 486644837 822515886 513495483 555236142 720654708 247158724 322403259 228198619 497268386 649533388 848825836 748425992 179669262 181781825 72020466 223945335 773954581 513663692 88415284 887136027 114872379 682098770 150364947 982199299 681047068 933779574 733664617 688558964 515541098 839472256 189989143 726835983 827087879 948706217 427114718 241693788 670989236 171727329 906848588 975854062 855290414 616943973 195912054 784319320 888012308 472321647 925222989 740006272 885890533 909713612 761659468 166223473 734807079 445760820 994083326 377627166 904976381 553545992 932734180 850260013 839928911 808669133 794280257 136598230 188038724 449741876 794051796 910393248 792167027 438435884 955724484 196469638 560941234 897030913 892610115 375026243 197374072 264885287 769214022 686223433 921920758 663864959 327306509 796527954 670989236 890687041 536426193 986065413 825596910 726970493 948407044 336968597 873863363 167158112 165273937 849882316 703766810 862941223 673028656 380151182 41386313 41604140 724665742 675849905 810041963 111951008 86193301 902539273 27449704 699898041 977063802 187974667 857746805 979092432 983497969 389730925 594976666 280887338 471363209 736487953 276955603 845113475 523798 30367473 264236311 59870915 914427909 857903480 625243090 532008640 960257950 144157501 207359777 765614098 215241159 670989236 915304217 520149530 293924431 958103828 372706129 654012861 921364413 874168188 809055121 670989236 67204843 904472294 161226015 842039606 481396330 365452141 15682704 972157471 901773091 887081887 690633906 211848298 938738724 13972556 321973227 194163131 818440214 718161896 707690473 730031206 935680497 113889423 904515239 976652711 280112658 936061986 2356382 766583103 802191692 537288391 811579711 670989236 523423039 891598073 342241257 370104768 906128681 473279803 846517222 783704662 757668335 393758568 931142623 862355971 716864411 956229771 776044181 712576122 411689893 60956562 910529161 943604430 222968357 846647993 124889717 692476696 107639412 233069393 932353400 63389482 865711576 717751788 832902456 492439197 868840291 815702780 251525147 813381534 853628517 815221728 453880312 14753068 698824572 1765782 346594241 962416433 534428262 330548191 239679431 902110453 890535963 982504015 887304422 717498406 997525083 72734626 689701262 130112445 891066799 735664354 958471436 799076317 682699487 165844170 263896630 960827838 71491188 926559786 724464100 670989236 722833090 31047301 454079079 577348849 798002534 697402515 761415068 212963607 863089232 139211656 446928109 131594627 961978060 72458158 464981067 543734862 712377596 818249283 104017752 176640740 489075039 672789288 256450093 762415930 839505741 229384500 351463124 228834492 901756200 39497626 789980728 593071136 290800375 961458058 904959762 273318696 713614675 573637636 791650064 935834851 863056930 584152807 270332770 775892698 679053726 298886655 528982624 517071591 532682660 792971963 464372590 749255158 931790802 926983312 178320966 909572843 783766506 139749092 761487382 823777111 17154669 782735612 102988265 904261397 170811679 358791822 38757456 529051725 879498368 687549408 720910267 674485650 926585834 78401455 37327829 510886683 779389155 992598036 398214622 760168625 120281686 838073001 998213461 185460199 756733990 550542196 988916909 814705729 494945920 689264713 516933516 779719534 221671778 563841055 176153393 261942312 897818377 929913227 407646788 864223260 867399244 63541865 199269189 953638074 727138193 999737727 842131194 761294766 374623297 378670871 701085217 215424051 528792569 434533656 731121245 799808425 790232779 852383322 207178728 981397103 936100772 460746640 772892880 396488732 297651339 372631185 263899412 427959703 547009350 407374628 799453453 493344793 250563960 359300995 916676989 759279532 223026280 819167845 682506818 66969492 741162179 969334733 809714990 136404651 806625853 682241239 287934424 925731646 100405029 768890701 921290369 94403624 980254013 6197960 991447891 310274371 231603011 488095508 376229658 242204355 217149836 927441060 991873525 569429047 783928826 774024954 757661038 327882376 440249385 356327248 396709752 632096763 93699925 67541758 783026753 283144860 530706057 600807680 36128625 890923454 757999274 687968503 561553373 776515312 602451497 969936142 778539394 370536696 817990465 866040246 302045516 519125877 387577108 827610726 846820002 8586238 386106928 768527366 882673484 452170398 685407127 646518819 694812328 753980531 704906886 49118493 468734228 518610016 448528307 670989236 770947161 799024907 867600574 846582215 818326883 820191031 928285574 786669819 622208271 883141026 921442611 668615159 274759179 452523200 359897006 735614335 670989236 739870002 823928298 716494878 125046975 41432519 533557254 588473486 819025897 37620371 609068589 230721304 987349269 771173223 203043908 365356768 55353890 527036705 266379336 461547621 938311463 204829502 748610143 653750500 922224778 862590707 734059577 734832673 775145058 926181532 554357947 745401670 495287685 795791212 519230347 595141735 775184305 363815909 578043121 988789583 984829410 868432792 133773072 679768466 792586450 759289867 650813592 890204995 896538635 270580846 898327704 969628958 847587890 763565472 318458085 279700360 699905642 67164418 693562351 838631520 610085027 618278785 995010060 167232171 973022249 623148699 267144986 41629724 824743234 291938492 502962822 645055517 645102215 219999565 847949114 470611301 289169174 702316151 663141441 889741668 737441314 221498089 317295272 35444356 844954498 434957084 14684725 87247691 882345511 957657500 29071913 582070706 987375663 716113604 919433054 548067680 259489684 825158864 840425447 988275303 476582680 970027614 957162916 618994193 364829501 610107918 564474052 730514164 820570642 520261318 980018667 907900299 648429583 984270580 746177407 223183517 783657001 283321721 686113514 315122175 458176079 707675033 670989236 820363865 178423744 469137730 939247011 678873991 996536303 803847670 633574812 422217115 742168283 922315859 110854898 923498233 829148564 882158639 156067102 584887343 724432474 90852752 372154869 565706497 898018885 278551540 856665219 345194657 914043938 989552103 27797654 313790224 912736756 846925733 660357686 898511854 664014693 469040186 308481840 929883301 874247844 961708593 497779146 10245819 582950797 437887224 206571081 46353838 792321731 808313140 714256943 40534293 268314816 886386071 811965320 110952640 845215687 370793135 723445360 581340810 866735123 944543218 302690939 745945888 975721141 560237960 852376916 914729128 156883589 966238063 242786538 730097245 240557421 905567788 931836207 78823700 661466618 922511770 957815428 677207689 725753979 599041813 615033333 559032144 902522989 59713253 690854899 468923421 27213881 145761458 902085138 140882612 492708429 886970011 657367655 792089818 937664866 808613998 976665931 359211644 491829548 455999284 509410425 149145193 856942895 692190833 756787804 787988244 816919265 220156292 552499206 876835252 776905172 69176701 799278659 790092092 479616506 884813226 160066131 380680765 878014546 882222743 730535653 392104306 19519093 492003661 847118654 776328533 72701947 322739697 973929288 880424540 902111449 673517600 315960301 554719666 184719080 223547683 727852195 899373741 88650054 875666702 710843833 674919492 920923078 769164350 775477206 937223254 567901014 873763720 118736703 44839978 613842525 998064237 684201537 873317998 784700002 941258209 872805587 278785968 438449731 740882537 157935135 258407325 580346308 787233022 110766002 936322044 345299258 862637462 391815870 882287068 431730073 747359439 117503051 986839239 488764721 797403507 614971499 862927666 176322738 117212329 473422780 187375780 780333758 923247366 631798198 885882430 162257688 757371212 327851567 733830163 858966870 995125158 674063699 781926236 770483315 579569507 781533821 848457437 249130068 745564399 782820069 14695536 421703980 972642948 696056812 712308770 247637757 428139734 291498108 670989236 702523515 164460640 147437446 289275176 574450714 954720866 535767739 333892985 845023366 216899826 868501738 234852818 645185240 371449916 45693846 985719931 684889205 480107379 449871251 130324409 944856808 887310157 14915875 901642377 765126357 940395515 443796248 848709200 961439034 562420250 891048550 412306871 915099280 697171397 662498610 710488921 749627301 502846203 463092779 445753132 263631637 904105096 685452682 801116816 509845084 872138081 732876177 488618956 255728157 66401657 365447873 862368723 148481392 761324200 145332742 268492252 964586300 6357195 147459328 684554311 574005096 683689930 929439002 963906050 834780484 643841865 739112345 858923764 268329463 840454247 34034609 168862459 620419857 778114132 838727300 308045396 862384900 916732450 829046967 994880584 282791394 399274209 345905671 694694970 75711503 969246614 720607085 622723608 862584821 567396418 879937478 55422847 884158211 849033546 350775529 637916954 473846573 511535866 391604803 908451327 590642212 749247322 854867890 874169685 484892017 728638500 863786740 81839283 494572606 764560048 698596865 573098604 934713403 598452890 944067034 353647975 922323721 863714840 132260984 402080652 973619746 397138079 292667146 270678289 233739367 943774915 863232306 953750019 208987245 855524103 292977909 879165847 702399141 696574839 662579178 734712913 36691312 752298006 285228650 896000494 908527229 350740709 891016560 756246389 574320148 206853926 57377744 984278533 108149968 664469027 826295029 988255365 22512823 861884837 812018300 677811083 670989236 670989236 126248961 269157784 424543596 954119738 602370685 946094318 996729943 859534489 237997374 938681661 487524846 525578894 787348654 883478990 950962288 974443326 596873233 596773702 299455437 985629664 969968397 957978495 378361073 732320367 659109485 289701905 542289326 682128376 367838701 434295641 926649365 31789010 738549540 249897502 989644048 878141462 499533507 541739564 81458255 931723235 993439643 881236521 413006301 217905013 301158991 39794459 696080982 499044367 698675108 18509673 709534386 605776046 20148399 275000339 572068568 521132103 401849591 502684149 978222248 838394209 342324072 496894980 438496288 68398312 275753312 831991639 958248225 784402240 983486904 722843987 888006548 766915635 488206586 128387857 809435947 296208010 969703841 881103254 778196101 748685771 848112374 296813117 267735837 702656972 717186629 280362369 94175278 398795972 358557509 733822956 274454408 202743908 960322351 426503846 977261728 152083682 160551072 938598104 706081561 452232015 869320767 174914833 823567192 332969835 136386016 815960571 484957519 111382798 917386354 174040698 441890763 770179852 684712930 808882304 174498312 759852935 361419209 780865880 456637585 924779700 517472933 57723702 566024022 362813052 328435248 472739583 826070145 509330755 804840802 790508661 725594525 798479624 172697316 849168418 807224149 808257162 410465575 708803623 749279321 896620622 801680971 509674755 650043547 471401890 266998890 752929777 885535123 592984753 31728457 690307743 600078849 259404364 682127138 705720466 959395208 972788680 94553748 53785180 645359174 789746860 967650212 902582451 919759310 892737653 2781448 800727675 760132605 987419778 891498350 700131564 693974891 912784017 637091311 352295622 403416320 755001105 827624304 338031106 696536129 893694049 176808890 298437243 329024663 609976037 699032999 884934671 965380990 472409058 780491359 292885627 844916212 110692996 179073527 303935294 640837819 329031674 825915968 653171082 513522225 987793514 759216057 854262006 715805481 720587830 243940321 954869632 719572132 775971452 760674062 734955824 627716261 166380398 850791098 899826260 904436178 48027595 332484869 987231827 796584564 915550323 728661979 601734416 916456251 102334125 962019701 430924838 936340891 94341420 616630988 110535570 670989236 138055217 683970365 819220038 794758832 609281199 796249876 634959948 968303812 71444638 868394348 170506928 905856218 833785433 528998560 495348651 158244629 625388864 458288654 751946233 618342561 985713088 895848836 97818225 866978463 461918748 510282520 96196875 707184294 670989236 918359884 906807244 694405145 869947340 715271752 802050798 361890434 997552077 703847428 4388732 520210392 268505922 789266210 325123540 63101035 487254888 931779551 209033398 133476594 531748240 251942141 135095856 721108748 445284545 171777700 367471814 628798629 895434232 733708915 698276798 678071238 680138288 243449203 690682924 443057130 670989236 239497634 122555910 668449744 386885242 197272203 976445290 927929257 710650650 140373791 824284456 29295473 713369957 912618345 605896930 511312277 928926835 349893245 25165230 162800329 264543062 844960186 996764329 180407529 715113368 942144420 746932149 781969825 687469330 46276162 878280532 128454211 685696723 411317912 994127930 121560416 851816353 942317414 466366035 78717399 932976968 561958444 546407869 30366682 778473296 405877613 243225434 558337951 939926768 873911323 779658945 975687472 729040226 652967378 250040816 891147707 734758381 271910536 300488524 962111327 419562203 549773133 33437252 96664524 946696540 673410032 317821659 953402068 646416490 869943917 856539567 335459914 558130219 513820908 810944030 128183073 831816017 457871087 494792990 851018988 50182339 843887888 963871875 805564372 816878880 853444583 902905493 848053257 865014634 65660076 424218475 786356650 939484257 457388301 442298128 943726282 23238644 841864659 715879519 617792530 609737586 705731517 733281425 492250482 28128560 756013937 62001061 22095031 565470440 377996935 849877576 490457124 758680206 375777262 670989236 638852073 795833862 34904331 129147404 379639879 796356242 343143981 950131207 29379624 197204351 511182223 842967021 224402818 525910249 18506589 328944222 715680097 107942468 587432241 855318975 797921637 737127749 920545310 670989236 765443199 896186432 892752803 960912290 742293786 682884897 652323107 801897552 871509899 108170084 427602541 324917224 945730147 420043147 835411890 932844305 477076043 592214836 882289762 885591807 984252503 335779893 68096460 352037996 790322340 562168672 248722729 996422725 783007537 732745660 709417935 970573628 481487258 935633315 681853956 719429454 677031211 283438043 593950929 533109973 687664812 9455099 799986926 295130904 896294036 200934953 760162195 774832641 533777217 820831507 597454371 271718762 843730591 67304665 580640239 903884315 604671665 898148375 785868976 230709052 890941957 735076128 653195083 487885870 251762882 87375293 907841943 180757044 989428494 202614374 40253618 826399552 687290198 687452630 543140938 650345550 849978183 865402455 644856108 551946289 637638139 88615061 800010414 756029989 794513013 863337086 460240796 906797267 859282863 14548392 79082591 197697912 731731739 808851432 283435936 753865868 895391222 747566898 453572185 462446798 626417256 394508445 772723785 962824266 196526023 565022641 750147359 721048070 681045187 670989236 911804158 871065666 740810588 939436040 443237833 15312802 853087686 850539537 144720329 87813634 817530619 322082582 813702202 710359066 808149057 617753069 696011582 699057221 465762262 232292261 899752856 923615511 543939274 115359624 904233277 464621264 965563447 612340329 930017042 636889427 718904620 867316549 497553789 759205755 801791025 425621640 752948431 218228354 313621085 320727158 871882736 249577101 939640465 356559552 455023999 432602937 784106754 919726674 451431713 968924160 701460594 688729156 564969546 754956132 730000397 947412634 848645716 456978789 929350385 333792582 704854663 835205222 558667593 239041711 808035225 674736689 190946217 334831632 721689603 896222419 500672829 800318905 199903798 911346844 706650175 645664834 107997101 603081785 819746052 511224908 408944847 936824476 981259213 414554896 222393982 964696311 738296836 196188128 546826465 988562664 936179415 200411297 765707795 489073910 653804122 794107787 876045065 827017124 252987956 895015326 463034554 924893564 670989236 292085974 492779547 758425210 796996758 225514678 974376755 729279336 763500115 930459921 512868156 455018112 292799069 791289850 776212982 763000204 608083215 910449171 19273429 406684105 653587471 953554034 317132964 277893497 768682359 708721969 98161147 310744639 885125813 179684746 871572855 878145777 660479899 896817652 274103121 827928481 217214501 179111592 240195462 162091087 709615737 254349777 96344680 708181889 141880919 62985363 205907358 826383066 766456855 871185337 856095160 750117247 907946034 563625710 253413216 446598007 843861072 878058833 759508575 882867276 879891402 308663493 992282815 807560518 760132027 993835926 953184669 121018159 702717045 725125595 933606712 664565324 976212365 5414912 257827310 849865078 422275788 690418319 484134890 973282262 987635807 866157017 994824353 363569347 427593235 760504882 965900409 923304202 938189041 123634617 623148336 193021565 15240417 723369071 397111838 790903356 676462451 828342860 837139895 822898315 748749394 493609322 648653028 502267046 689747018 459564691 726939319 65466208 708303788 955200966 627287113 74580582 839137451 613289642 916751813 673091063 431196728 343286647 753247194 706585673 656035383 914475525 667294818 452935829 624424815 48947978 301485942 554582355 960358292 967346625 860448216 825806358 564241304 550094203 673577962 480663560 710752710 663754780 787732103 186438485 576617306 367491021 147736526 680876774 965254808 9330583 823627757 729469595 830352252 201544540 383097415 646740362 295106955 670989236 968945415 775530222 698617210 574867631 902999250 689177180 167762551 236532792 953150631 390254319 492987043 948039315 432582968 547392809 268602670 890841692 995534836 379909447 566138499 668829111 638762942 169707372 986405856 765799523 444580890 178771723 991400705 77900957 242905257 311804210 873919239 535072192 558291811 631357747 963045051 169227507 863694404 796282059 922632257 744963194 806794736 699301337 756144021 825269732 945753848 34503328 172284039 574279938 370131967 760617915 766380055 806957037 931750059 492353371 931244993 452838893 288825884 269441605 847279882 255389707 516153130 933978339 627521828 834307402 942683638 935565305 580511547 86970573 492887132 217255071 641057187 56987103 54166824 636590394 800039409 345126785 240568585 643520082 511144099 523530932 474020133 732937804 89749434 833466621 563177593 241161027 697136750 573515949 887685420 839849972 555310719 935219511 811045267 966062050 881626766 800711355 950700590 708068240 842979312 449635741 196971554 911568162 592031535 201886737 256655160 164943754 670989236 897318605 874608656 813134268 421780255 946673767 612881945 437888957 493603811 957635057 402912130 329686887 49449397 165883179 880375150 936670150 937515527 847170233 484825928 82348756 89321288 138168188 218557003 520412640 685230034 2218660 750164734 523741335 872857872 716754034 179015654 525777590 816733758 937622879 814488032 61615178 872329620 826364541 409323838 53306585 912923542 492088344 670989236 903270068 693869776 123094295 833130281 266441712 367310237 868401345 955714305 866279394 474618582 107514030 659088891 676499867 427752275 825652556 759832830 943965931 224940243 813069923 363340563 993396216 251859241 917827725 223515974 220004032 976421724 316486382 393831160 6843214 489291892 920729372 701035832 624306406 65337728 890273228 735925500 316822509 202557041 557835716 628666050 972942412 690827245 414540984 168386189 650690669 293585512 503516498 823260966 546549320 978411459 215337398 672642528 921310273 876273246 489362911 866671755 767648335 210322544 41445706 730237656 489510592 730184894 946162550 36497970 221646853 432451260 725218353 304977086 713223584 5098812 691046666 359649506 954140536 167434545 821564565 504424103 782461935 951255439 941408975 531422071 208523015 427864829 941298394 52578377 686173407 913979269 185415745 635035396 763679559 530866963 964611328 99515405 445185546 874042404 92990291 335107926 900586475 425551423 116293884 793736169 733666206 209698328 701724103 109274814 35903609 841016569 736396572 768371522 578418984 874195974 310580 785264888 27237448 620911903 897207217 828822399 839174535 89022287 575139373 907453435 968645245 532254091 942086402 637669217 582475301 114250168 985506592 885510469 703535705 735826262 997518046 844595054 795356545 370061894 163326930 811282848 972305879 886471579 925889420 765065817 191912004 997121512 196176400 219688854 922080217 566274778 27116029 837153413 545419790 288311711 830569410 42635005 188904829 892294934 785643681 610222331 79003355 744786627 515971877 405083929 691311647 690171490 759251302 274739234 120688210 411878855 371165487 38768464 694222982 918458536 117401828 3016697 926507734 840387556 507781155 883511767 960005977 836833372 651720000 836978399 820659385 735196790 458316448 726484447 574899111 892330434 932018772 807099527 16291875 476175184 552038962 267616518 771249945 960140283 420649664 241637048 747867851 216437267 910884009 865772662 900027287 853269966 247374074 127841277 760940697 758142409 709247969 4286576 492052722 768046977 564302301 260570867 719109728 939114454 699153330 105302714 516961411 649372428 182705986 169864168 853196178 975621640 995724396 277974284 973876557 603056437 838822495 68726121 414295922 212170502 874597995 674081809 792055093 958373365 878744816 754729992 775130484 134832210 399456151 670989236 9177970 523124277 710262101 820116473 766620951 843996517 961229228 854324646 503969739 355501718 718724069 894823228 719886900 983712602 490615 201491745 699147932 367099641 685590341 936937802 696238499 186360014 700150374 955062006 468662034 634485334 65736898 458164217 938935440 269242419 766002356 212495280 952437376 541127131 15634139 628350729 477620040 844206000 708710137 970057172 190087064 684049771 894902749 956145008 722199217 586789378 727120010 903115662 566008040 515632637 524111872 869921510 985215828 792826127 185034974 126915876 343715643 965562642 392458943 830179786 358920403 102223970 765339695 709029080 922801540 996285762 307327513 881995642 908916894 489665834 957991562 180622232 951548849 791062358 995233501 665092543 815239024 641232547 872405692 298586677 784224947 721234781 151900965 739303616 558572987 737523330 377956199 545652058 849721128 955082229 779495414 183090295 167048007 307013671 438734705 765298795 333574589 768150508 957901297 593318815 495632547 961059710 976208016 360166038 26813416 525917820 312024765 797166997 805749092 795945637 728177751 238017318 572385989 869347514 284253336 914108672 769348810 149509850 868313152 800524507 429539926 670989236 469415413 249839103 802286703 937682149 191276123 812546633 919067437 766774633 597572155 49276350 476294333 935318215 536620209 567395877 10070128 542568954 876987434 791771991 652744110 745498082 749757104 670811213 848496226 549932917 848896014 834019133 70025536 968907323 277730434 917432300 254461822 347451540 518004253 838514158 468567282 843405793 411177375 442853840 465851498 717848675 755370995 115549406 727966838 869694952 455571109 843251738 779611320 138364418 303485492 296960890 699604004 860069213 111267840 143245906 475514399 165184228 751100654 204137922 744558905 708004863 415977952 179942093 269393039 210725559 670989236 867642044 989159477 877044555 953228152 113347048 125841890 207898958 133810560 354434858 539845371 399187964 824883997 99324944 954381942 206097120 290935274 772159452 464496955 145852121 959971746 558567329 770462506 672188631 670989236 313976247 984399654 716130473 30008655 368910844 845012163 797283238 64577700 794617748 28623623 398269853 713630363 687248702 478355339 621427724 686513809 997043475 752747977 487469729 447506393 769811289 883391337 6843961 370318382 801995124 133683506 795287153 491124059 958374920 864801104 223995065 670989236 242893090 609762921 670144076 909287665 904287750 733320423 72309522 695716192 966555860 177581903 873642891 315767212 767952020 970776256 960137002 751352625 300428155 910356799 137137935 681271586 983877526 958595021 617474631 710992219 331807787 892918460 311047312 493918105 927612275 532071843 919397670 853336917 927955509 929551576 442773302 382339161 516050631 670989236 868328710 675674076 98219811 691863309 937025123 211878307 249435449 551075671 926262528 889139852 439687604 741451424 984314211 991761642 937637389 676256177 145061895 593912234 854562761 290214858 765317420 88755127 414778825 888629382 690635832 867986776 735787314 756376193 787981208 698286496 670989236 644037272 991087869 895249739 524810348 444519400 763149591 812098796 522599400 467126866 358418143 689312586 895040722 723070636 289192107 963065449 705384930 928078513 722807135 773405158 358574790 883120055 194872530 620417327 402996305 521660131 55849998 840495067 671087015 700863202 891986952 704780818 158770022 574598725 733130064 474673635 902320353 362134152 93480193 780986352 465443106 576565816 717244955 769361219 583914312 555751214 378034937 915100485 858559045 321499534 805028959 235506249 88809177 967299930 799912545 766935181 846822940 628226065 662740192 830541548 877148005 145883762 28002064 957105610 215265560 784307348 300101518 426210895 851609132 410156872 781161530 699695275 10664957 626840170 638284022 686109972 732405907 313492987 778533690 264770419 840098819 590078394 959594547 168046579 765941528 699025709 282854563 321266332 907239087 430977319 761955221 567429970 960896138 716670351 856463767 788648003 714375905 671725296 297803928 856734238 961396930 722913652 760665994 331529113 541174197 843351038 157816085 839968159 102448558 502314659 623370330 396824923 822705646 756379777 909418495 927466213 598386035 574422651 959160210 603776838 603100036 849514717 993754297 923312347 545619122 741913520 899889261 380694654 842218719 670989236 970866692 547947746 686435278 419629119 705392032 740565842 499640273 820570204 890241217 62276499 694630234 862366483 610444583 575317542 920542419 503043299 974565675 277633946 423028211 902312941 442783612 739227005 754594440 63404713 779327779 711309758 150136711 457017413 725686059 667387121 43948135 946142189 501183047 314182878 976662235 571460655 116390497 29425926 360428909 735458334 576093215 417275661 54026420 856274320 977950825 83696531 725047432 993871864 830598896 15453635 766398659 875294932 281503977 875989747 524781709 992190922 352174666 19562323 977123104 793742462 856626324 824633516 476049585 464106370 791778330 976845998 504768453 239218573 927458818 754954138 725805285 399769945 564095461 148989499 321592379 842309886 521176721 970323041 985689588 948506088 983682547 670989236 826704526 126351608 82283239 447821722 971977727 957068738 794645961 271293746 632680428 556458765 142075399 509174898 448305011 260176326 951467877 703838227 584027771 930588438 431162139 624034301 340181090 740136110 705252375 842521834 903393688 673860072 670989236 915366214 775486218 958910221 815852825 715569803 684264327 374498238 746680012 986033558 960727452 837542025 384648367 906910085 368951011 810103198 270068838 152169063 508132188 541323360 298242172 838432706 426886356 813906516 926152989 604349344 305414999 225106574 395475610 961872224 316534793 127997416 958741839 760628936 637564591 992443585 761496537 371619832 25073352 680474916 841313039 404476357 823339241 42021641 707410667 910140912 769670451 343717527 178833356 743573957 389643209 688797465 239384173 996823180 456869202 840522304 315562158 504962377 887684790 892940887 785259417 909760600 746819018 10193413 832513009 244068630 172534505 672149412 203169937 643192120 991467299 270413979 211917619 854705111 274167983 793754083 386122958 723539794 205926353 636085936 75524155 511102092 216126845 682382508 542125897 793892447 277509169 238809680 247732420 241861422 423694087 975801083 943192039 827520949 366206037 719639922 495702625 994055452 738949953 257986542 952656995 977613049 524323719 541330895 745734533 612252192 679281546 746344357 951807369 793200399 120452770 145639536 103166520 548698342 967584338 604486926 29622427 896922329 428986669 933245179 289237298 874081371 593762937 631107658 357666973 700013492 873585711 513693809 762517203 76876510 327018594 38396942 263194830 398509073 858132936 948885806 956242487 439202894 902231477 167226707 619883634 991033438 952397214 791392209 618217722 165115286 338155053 904528550 551000991 270782319 831098677 751333126 588082028 905519418 924051640 359675214 958771746 311849952 905054982 648438759 814969330 455473331 462859733 575873968 292580507 561386559 711490895 997871174 850679705 754757216 949629951 857471205 700207755 629244749 934001603 917005438 951709858 992590110 765009833 62885548 671789072 942264652 827863314 219858539 626405624 800676093 679175593 364739401 587781208 807418756 788273352 903105191 459159699 931457806 563607997 799003665 196831272 874085686 321380618 169365348 443739427 414385218 860888606 797553488 562650008 679253886 370250553 810170077 961892004 237370363 660182375 884456898 810148911 574787073 719325566 923796376 437328694 425954776 320685071 980624337 556223625 328345241 490334623 555912070 923235298 783570617 269091053 736567590 48456716 960816566 808400201 585136640 436098570 568149592 395678645 415136204 130138924 776336519 423452413 745342434 684866482 905283309 884764690 861708731 298155671 932696083 782605971 683509005 228930216 601075895 340000866 796237471 718241341 869736122 964702343 68636117 108135119 246384649 432476118 693092594 750151270 697117392 471631230 543026221 674561211 701348757 339397215 595305891 737106799 992077554 574702331 645617380 164045113 387097086 698032238 540449835 464116284 678318487 409339836 791127634 359410322 670989236 994477545 314631969 837533573 749107378 70562155 706560093 103551728 698887982 702737317 405158698 80132250 337618931 843745838 552366290 274915731 670989236 432178500 799097671 628610362 734360163 797915153 780649628 141894882 755312434 677354676 858609558 916636315 252674576 553407544 770106627 874352696 987297796 707932141 414863584 873132745 399013382 754576562 564945731 616529850 835361621 810231844 773423670 406728895 828161949 619824355 432333886 753598895 995957860 783624322 343565232 983489098 607712338 853041492 771463476 992023837 907273166 173257744 481126045 993620016 521860711 241487626 718687657 380434677 782588291 152794948 827222263 41875788 116737742 670989236 530497693 448718339 464710365 806318403 871337915 14765087 567390550 490857969 868166631 994546958 332732678 799853729 337519155 954035887 519831829 78871369 785836124 49254179 999371098 3437917 161101446 841262161 847763499 41636449 140935427 217662096 732423067 686400872 467432777 966081069 948556170 849019594 873073479 761192264 909935200 800326705 677910504 850901351 813269470 937112820 151461688 155139573 6119271 257545011 692372891 346553623 871191650 774960768 888456220 998153560 347618546 854625008 459924034 73233254 599271604 102457779 960455191 729063954 595985865 679570729 888148742 869686376 283362389 951089678 413675077 376017515 761447205 604192268 585529590 260113739 735781166 549315794 399164070 934418260 746160365 821217876 64716868 893117449 987679054 897315110 864262339 847399659 667704085 629883628 21934650 861558484 36766229 22360542 413665358 812379456 51312068 679982265 980075933 817695359 799722299 645324419 793848120 902187699 892287462 815762647 310495008 812362410 555658832 533601896 276482786 956034768 460976709 59412511 777724130 857790347 700187536 609100727 593978985 812733694 101900135 951632456 911392969 781692137 729751310 752922491 953370308 969467944 734831911 803737345 5607978 764962246 173535614 799714615 434547534 932536827 294536182 734550817 697512229 856319697 179249214 546263369 8935963 879951155 900929066 382140111 918627788 734713287 975061394 842865484 84743701 129360612 215707449 734050403 959363333 903260960 840031089 720799642 188557305 908916456 312497709 930154956 749152770 457738501 528034420 670989236 837832235 226026362 947448756 524620233 780199646 419407988 797474608 837185311 898695826 887427964 745464378 425980167 113746299 551689460 636188302 638842191 189830465 539873996 74470286 994126296 727583414 990718320 996706077 496065512 986910486 865869190 882310081 734646872 824834496 845407270 158661315 816816543 165245459 969456049 558715126 428118907 718182452 97365107 908218053 708661328 896156223 714850344 179613647 541190925 343160264 22363910 449043208 769359685 358020301 587398328 618110590 711140215 962208365 735347949 690933766 783496289 828694343 909710272 174674159 685254047 598031300 901799704 962116848 170935505 672334847 387434704 798622857 106817414 162418810 42169487 230952047 945366063 908024459 223436871 285766621 316582567 778818842 777287863 587331423 126702962 719113821 631941427 432426852 205956503 448559156 916388651 558439652 533074276 746478162 944182001 984358240 913848258 565692401 836237492 996692859 757615738 286739809 798854480 307526341 949052510 599591892 246607231 121778641 812523156 132541814 575744609 109334672 592451970 712954425 813380427 220814194 619670219 854615639 949208404 824134679 263863254 849892046 923854206 59582297 904490896 62211404 317828739 455828770 771632320 690149032 650328324 830123738 614279031 870454508 413263591 550085865 753709507 907312581 731921969 598288940 169048113 987497249 717287128 831141457 263887797 594272549 735617740 893152628 106672702 809773636 714872764 632655396 796082158 928206065 359878460 656245452 817281456 842099886 770295028 963396039 730494157 867795079 726843864 859990718 621043426 535202908 695705694 805467054 242467393 537427621 909284970 938221127 243211158 999502144 841001244 328642193 764828027 502817862 623102130 670989236 366001361 449657602 749896144 928765828 557447765 725415522 901416747 636957638 846459658 759883564 784299009 164294262 981713400 334512485 790094220 718407606 186280421 761045784 137609270 941998020 875494208 822279486 754072847 952185258 992518583 742607464 173511986 829953694 436017433 701366962 674874067 727595073 818475986 708969074 617819529 850495008 597618227 682969932 685931045 494273702 954582939 790502002 327758495 857514645 194368947 949803008 887236731 67909225 813270337 762255776 622622675 713571352 504211674 1702383 788155204 391761816 325530540 770762342 678144225 914748751 764748275 624041070 500380585 727531174 861765907 214430708 786231403 17792118 286539363 932367151 874851633 80255808 159448931 321044152 584286480 76629828 841259243 288318318 878885740 289450014 788611512 136238916 969442633 777043474 543598733 606050342 980123373 372061821 875147554 859243077 622127604 285708502 192682430 284468853 514187525 29057008 914716158 795962552 726488384 912877132 559302086 791355311 951941519 355399924 435796140 781886662 518106865 80350771 583620164 670989236 649919671 329038051 685269060 7909311 808793236 800450557 762186104 978146699 235381429 31946710 761817897 882019971 544392124 191802378 702032703 800416032 751320432 232627388 920279438 619955460 635128393 846935216 916887603 457821383 591260 138052080 761003604 372996778 846107391 979714253 670989236 553017688 358919533 881871787 344352477 878028266 267756536 344440980 795957121 821041631 140258823 309965799 818639726 194329909 181272885 244609166 231845640 113536282 909590875 353178349 924900901 414532626 779734154 399690158 821916950 793032686 623227174 30107057 790316733 729656177 201860165 70813170 620991772 375778218 390881069 650367084 450130830 251410326 408499869 447788400 818014175 796186538 804010552 894841667 929230335 918754473 897889017 71111992 909684025 467037897 287993719 62642273 940057934 125784488 469560151 249378175 572906083 907092587 308375229 929110820 670989236 982615191 670989236 38418993 929047941 810156631 818886791 147059050 762426320 238925233 953473303 902489207 473011674 736645304 392911598 6892738 421396965 634086999 834460685 910971491 914097235 744484630 926502212 686004524 744459448 343232348 552763873 924078706 727274488 230533530 449127610 220134515 205429176 759607002 174222706 379495839 399190627 370773095 438592264 906584281 38041445 776455592 676683275 816028939 168492807 926280368 670989236 767594760 238228536 32835474 303629958 491145767 657477986 52399380 606196085 122191948 547060244 851099430 752900984 690417469 953992132 773372608 414157116 933131410 695282795 813114819 437205420 650018496 706254019 832706575 756232916 50411025 109398496 779942370 798997871 766101105 682577894 757710566 702893421 126446872 774785859 845848076 739403434 882004113 939623277 682719240 274867959 971641017 869867475 794203461 854401436 979872585 60071845 999739209 804743871 3912340 766233206 309230917 490675072 463566849 796667667 402609694 970103992 987955944 729071845 767702106 721104306 372802384 238591534 565560630 761279418 292588007 437729335 729863337 928772569 871200510 13650739 190499123 108494619 936857280 724597242 165524872 687634084 435097278 923075933 33476883 560655161 638936525 131400024 235380723 676377254 321830760 601139377 799489402 172536796 288292496 942959381 381888363 890908979 36018567 649048194 49555635 755354825 284862513 469359898 825863622 741029024 876324678 952500118 977985095 679561817 590165012 938947979 627107192 188578922 892693345 874768000 714701204 231342112 251955573 673097884 590323111 418962161 315382161 157222535 673029934 762440402 961820409 299764948 280016115 390226787 691537183 839461929 276547888 695083866 187881186 676434475 420893287 724359425 39137047 394550779 873276848 588025875 348695500 895453493 684381168 997321215 541293941 990046885 978674 500072 979051768 868510090 960088443 960199450 741937117 243712577 87186218 828628522 779497697 150462568 87477385 846534544 95758566 474289282 84416961 195926409 85483999 999028563 663426613 381934924 845718580 961762204 174573006 385618548 466543310 158204361 784873993 892057581 274881283 983639274 178826508 863118297 768307335 225447220 670989236 147248424 261302443 752286190 777545544 899862535 860368067 630213446 929172210 506400588 730276283 541209690 877399387 769875197 754725100 847347482 706921993 750043417 24233662 217579402 796949560 747976034 694712513 778267171 20398856 710082330 760205374 816487823 77205632 863714964 797190672 659814096 406869896 779794091 972361012 41447337 656637410 853450850 462260788 759900221 894739158 350734404 652143100 896867091 615614887 554819212 376872855 724424864 33384576 249347749 996358868 737261303 897248751 54686799 766655877 902789186 111141243 754563826 373472169 102118757 848730045 670989236 885999660 353935561 685421635 740573462 945251263 942189801 839261312 920506816 607977743 801192501 803110180 389366651 156571839 674472884 660351148 477176821 549793084 83605126 712639393 75414611 831372952 699004575 961525281 642170820 21195415 980501311 765352819 717828221 580363427 887675522 206169107 666860597 318487181 856432242 268857439 190263153 942640269 574804051 21211762 424652612 95265139 994628539 436702473 396533108 421131247 189101169 559389036 5018283 945669564 815376042 326568493 685309963 534228810 640010432 964478294 816805702 781589256 845373354 431502372 701907358 105856979 994668578 957456184 232294413 219715070 523641296 713938830 256066766 698128940 943311598 291198010 735628489 599279171 950485599 961482647 403867760 839757770 888400545 894431088 36817642 626410921 891450918 101161315 984898252 929293567 885336937 887914339 883053764 451542958 752924373 857694376 899762312 526455871 993400963 750234799 831360347 271252644 813473171 849354831 883839416 162699644 101079710 242990815 537443455 253743598 345522987 515578914 456413430 914705693 440745538 233615214 914513591 895653999 68219623 643885087 746766129 507517679 427338968 923764364 813097804 216455913 816173746 720327468 578503875 467209252 314878949 385220890 276717644 882587002 689898764 507203718 683207180 800889456 281819243 711313005 875912752 129254409 254026873 693388666 915917472 460787399 373329937 861429242 405249036 676152828 322043303 476443643 940688441 652681807 695627146 348630241 544874635 214522880 84911694 704549112 670989236 824741929 824775787 106168950 427923118 930965152 648918029 333937512 518613171 904323354 595640909 728087524 159439219 144910429 743367250 888127297 79644272 546512213 119752339 279182005 168741527 518842965 404843127 705955947 778435205 351905532 701196842 562454942 361046505 838915647 860031287 581726627 764954853 924971848 796773782 708718197 805107194 987716477 938823264 670989236 47079789 328516586 295126962 80889302 326217447 68344822 508908770 586299431 572203167 603794313 711187780 905623980 43489663 975570474 932688391 638917440 340238167 942729142 804103174 304115311 860661633 739222831 720723092 591756072 701282829 796084545 357187708 220607040 78052827 183443956 993863835 25099604 989101709 745640675 528028350 4639334 616742049 862028039 541400089 968233200 222448496 380297465 672857560 670989236 186150146 794255900 879110449 68453045 34364958 369732815 807765983 935902435 700595027 846304578 700193324 391369001 891957140 856617096 632007533 24091977 317550441 693554631 245115050 738324490 927049663 670989236 252946385 550348389 713114164 773667667 185079593 751251775 548390796 886379510 382537942 512203120 192651208 895594639 213521279 957110481 955093260 599235084 54307215 946394411 814926098 862697422 328255335 997868453 640322326 294669486 536581682 983626262 552515709 257856561 726740811 574006715 418592212 513557975 304344174 789452364 977171283 362963775 942192852 709899500 994263821 522219427 690121022 893179590 49931967 222801535 191295077 670989236 262313476 360453456 957129387 696914552 895674989 427014011 403037447 951570797 450020392 433894751 460208237 977773501 685229969 457713806 244192524 798248460 47272210 907449405 469720476 743070232 569295820 711435809 564831759 770544394 282727098 725245305 493530475 947810235 678517964 648882684 534462221 845583017 800140278 132290212 803102059 774917680 482964027 763858067 810831924 410281229 656915219 894275349 431703181 841725047 740309765 325794664 687993347 531053576 485854023 358284339 174247746 942658753 453554282 208964163 432286155 755143283 978694064 784083225 117238120 419898874 302124824 919958629 918278376 398160760 48073459 275942287 908888228 165153560 736208902 851770440 999968200 21334723 670989236 682002672 210257919 961778094 388919449 735780312 859073256 619389779 217356852 722158066 700443468 714095479 175284879 558832709 911468614 46427854 794006776 517748632 90274265 585226550 866739131 427922423 166161108 778893220 313246068 653292068 93287160 670989236 606902919 465380151 928581149 686708673 38091107 598580977 707419792 358597047 576191952 32204102 66916973 952104380 969117210 955688151 941042043 4160238 848036953 997868884 925291311 998527287 865406335 966195756 864905522 149094886 988199720 714312090 698475535 790000259 532217346 772556451 427572710 734193078 928319175 176895876 678173879 596036280 185495041 751314259 430668854 888050114 494115728 692836059 532305572 68674067 91970060 73635470 359499647 655086674 814512275 842993629 595820390 135656992 787352561 748291161 745214566 447607712 119425136 670989236 779613371 52297391 638428399 929224617 923763583 882216758 299026420 276387177 52881479 840524150 583934471 834479909 953586760 616346223 931658111 465939491 454150759 818611769 181456537 363932652 979631187 339768418 898189109 957873430 748613650 698614164 399891685 918312007 593814267 856626096 117254701 839171261 941743918 691498258 886763177 122394292 854115427 403766946 723019047 342028691 827220087 211483961 598279338 351635520 35175562 613445642 187051493 682702548 856974271 214884253 903311859 885754864 749963655 843229771 208588440 440874382 858488727 739756103 670989236 377537761 190789247 821234094 747962643 808345978 670989236 311479634 104623255 238458274 141118943 57186184 953300765 260561292 636684909 546694597 116887228 35278784 853613262 431309319 306523189 609012675 764096276 798128675 101483936 778323484 979272899 103000043 553522121 820314352 84601329 865855734 596667236 860285710 156650900 649924283 670989236 812886881 241618508 111072401 900510151 663097740 333832308 894419341 351436706 490684645 32183152 393932440 805358561 379286901 628471625 332907760 114097539 256378352 861196526 138467375 444663813 684330857 978166760 853935730 907159677 288903044 361959302 901409943 970118694 830612520 790783834 867567702 502541291 632692511 534119142 728810967 227914949 3118119 852401294 396532719 755046517 445484213 818641335 864628054 695635638 529375736 826158883 836487084 257494765 179162852 882724197 693107978 174209465 324580217 976896903 842304471 702690223 943580586 586106073 697747276 148199629 125166605 461871354 221931081 375531681 808309027 695530189 735541150 218510053 235384511 48955506 623474610 322688197 876592174 816018218 893451805 421951908 394631238 108516092 694779578 904579674 531309585 371111411 902993500 645233235 434162233 17131526 219500116 996553250 803830260 998642188 963098591 846011506 967561571 984962841 703983199 76557666 898622848 386897 631526360 465786942 314623662 975196882 631666794 200849623 870606005 791849145 716614525 680665229 80912296 108401868 468368451 183444738 33400531 842302123 964704225 820430347 936279619 834262132 294900087 972245658 625825741 157932308 899399777 529412320 252168403 820102171 595385287 804233418 692941283 408872930 990653804 418536762 829933102 113146473 520376899 810656208 987111044 123445962 497517538 234577768 931353980 885304999 970522015 913828939 877565048 680922449 681516547 826918360 833857933 528700007 217621252 466215477 87359471 117774556 341970226 550939609 548224618 340209249 714846414 513346766 570020881 435668774 664550344 412262878 316565718 737667854 568472054 720009689 647259069 536358807 995469418 658987219 243665035 160977430 674336831 850852448 317774182 237267427 893604664 851573851 681191237 255338855 517955657 349522936 456528753 804416929 247956699 755477929 967432309 927757954 71920554 999903742 826819458 587595458 896250065 919707692 562898969 526577657 328963259 808438767 150655306 220345002 22345211 944482079 133705122 91982448 78642650 355219074 846176191 233281205 907304583 755578911 990394556 387671664 663150036 87302026 473085795 169361233 289161813 670989236 806955342 741482856 691809256 99875463 675771223 736558122 919045319 190543941 417827973 692197541 807866887 367398000 293619689 547845048 909694570 99983005 311524532 50387561 147782926 684021092 736335626 751912908 113805632 33800459 802056778 444093475 299752962 806378626 758121549 469221650 122981304 264356197 700813615 319831859 533604183 424409698 717662407 241291917 130681780 765772772 923306868 933841391 282448682 795653963 746424154 155044444 29415960 831585873 682892245 606062815 905459564 509676647 359788790 119667205 906552943 369107097 336097188 378378022 961300513 261435142 57943838 529448246 830622062 776122592 532152050 99570283 556479534 427296066 822775975 875809123 547424813 788468970 753537412 752992673 276940898 947820070 185554744 809949794 208565528 650437739 758514110 278663116 917384755 651521960 142170050 467937732 646759485 731350283 905513317 426152395 716502334 85791906 670989236 77674079 22220237 835139356 886143345 901353649 586116812 641467618 401879199 219266413 649928317 776874448 172627029 301286032 986456842 525652346 941536777 817574455 77309128 454142663 253823135 849306837 899822590 214760048 793733990 699913599 817003807 39145242 558814985 299665770 552748670 376631742 115789028 127261065 991830143 670989236 750102620 866336881 816817501 71468819 756849349 446752740 873837905 388209307 839697964 124268413 682373189 715661409 326841131 750538715 295405784 680828425 767943561 948832584 131403918 117568922 629998923 979234909 952167398 750595970 603016808 983127284 462680310 941833295 967982148 383702251 334164777 594437092 773832262 529296497 811750002 387569230 85109822 838213391 953537960 55501428 964237978 808247360 676415842 706330756 801606007 54140045 121262598 717457127 722241374 750941630 910824047 943788757 95280217 898020163 640699253 306027473 765052861 449769357 735437693 456069574 714575368 151408117 502258037 670989236 901569673 823835526 743429992 596122588 850455784 613177785 840283020 358827051 142833868 456404411 649628910 999780721 133393984 670989236 920495763 105399738 700069763 465027683 92318460 431410527 334481287 153411130 52370521 674963377 990266930 81538809 779865001 139599219 371130295 158674717 193733903 953002177 407573818 836151119 979640709 710125999 205013037 548912167 907264633 777352239 351299212 159526021 790280190 564770398 889958135 850919450 915044133 338450157 56924924 685199293 796692853 521713499 515531935 818061604 853759284 670989236 473182574 365009398 925155589 491919745 891353225 620639857 433633299 252428981 203310943 989879054 764373567 297536876 882628084 820776782 946324112 705729711 287573627 881168630 993969839 827596657 876661913 141149551 75438387 478748524 862675559 964528498 679426472 761224765 176076347 372985792 204006193 337008543 310996703 7833184 13904173 288726724 614640458 739919189 895866211 943266769 567551402 790815397 963034054 709904201 696112484 324005752 678264974 732765818 329790005 628734592 756172202 219247760 753082657 282750157 800733932 184655569 771744160 346914805 416936301 4466880 880193071 129036291 410824617 178197462 802704485 457472869 829234010 809209319 272377867 771598141 377400626 663422769 935180084 827905771 893023674 961656094 271223002 831259652 852456187 79540647 949094081 114127483 904599664 869261431 758885217 997416913 233155716 319056749 935279822 172622121 670989236 794375379 811933449 821342021 304220702 161144703 985631992 709947969 710092575 726303214 516329681 876239106 470194451 24667200 515098459 517911768 273570253 538128732 662776298 932966668 890601412 219193051 277672278 760791473 625711028 837635256 883534316 340134868 245504950 868197856 233900578 209226502 275222394 607032766 822569823 898452739 781662810 370041233 123611948 208890007 857838613 312392474 790372103 535549852 891263638 850910505 843763641 798008376 732018590 250500064 871412803 721858368 760286573 742778123 41801251 982341138 784477341 892196623 413200375 44634862 309161550 855752830 944168035 684665304 822905775 768720049 599874793 943541067 267417942 942759107 317494466 848277012 768219938 327041360 889681721 416918534 291711032 215562398 865657937 852795206 45464151 691925323 846241167 117862831 352177147 36138949 108813273 700490578 626080586 257765823 598231375 670989236 838281430 854382030 754869255 294458423 157291384 307375660 495987894 711949905 613908830 954581995 237467399 670779327 396782748 670989236 457178073 764903132 294594817 676763509 9459865 742955571 814001663 603489695 500820845 987032175 726029752 460105648 61120617 923645118 205529274 731648264 637377270 833811917 705268892 788182528 339107508 686281729 915505001 88317611 110625533 671879957 683500397 736964012 939055707 934880777 977562120 982652113 535750445 422548796 722843249 381717508 677725291 452385202 976977078 15185753 977795252 198027141 533470766 75423119 971479104 567628064 874718497 83544216 7260401 838364765 946653870 675499247 350718821 438967156 639095961 749356328 750270379 924527019 856443906 105260218 310917954 727117521 510011838 601200443 389394699 551574748 691056386 9085892 940007734 863985769 914828538 44004026 712606920 570417229 648863841 558464975 326218036 692403545 57996157 975974953 404153004 189173104 903411078 408790196 632091342 844767010 598506047 741739848 185333243 749959682 152489310 171395743 109558964 988996153 859089371 532552533 100694907 627699919 152778259 728801558 211035443 521639336 854097763 267927226 831082921 366919973 863604218 743970425 769899977 453638212 20585211 124808635 504646028 397591838 959887530 676356243 540364856 995714461 578848760 588254379 859530988 598326401 675910176 814241752 957562385 966100982 334258705 87210464 754341519 748272795 670989236 84827374 259350553 670989236 553653232 50092207 201145051 64483131 716975844 999836155 494081354 945951197 210856738 790264686 234552575 740936741 670989236 670989236 162188197 888240605 73542572 692300964 801183920 730590462 56567066 812802779 192031201 783900038 871727676 913333856 38047111 162920267 819120480 850557236 211834838 687309468 907133039 240686267 556193288 363746915 740212730 913869970 140076960 785078354 689838171 813725503 158678541 402109374 833417513 445816439 736019479 790315906 912246744 108484394 492451541 336038201 746236150 993146650 987643083 855662412 761182287 935741519 446947530 553366680 110977114 835850883 653792004 204852356 825031271 44408369 86240997 585768834 180780113 564601818 14234246 696822508 152616645 968119304 629999052 953142959 820102402 200815670 556491217 900928757 965611684 272878449 718042871 975450512 868959755 290976300 178456626 223865215 290346507 794258939 209066342 740033838 555557028 807357063 462187682 573853057 917184043 929809586 892460020 827605750 405516115 79248841 24747571 774873275 526072962 488309044 425869470 312784600 891327453 376285249 721484489 85002342 770225853 405735071 341011000 317385941 997453165 760556660 782967194 33697277 204513646 967026418 266986163 726468557 390179336 494645142 356360021 706356017 921645748 762033821 707211758 31607662 778503707 828212274 996162553 621936741 132238940 350806732 988046592 175174099 860976159 35772697 757692325 402549108 652054725 992769221 895566267 351464243 138233573 768688485 83364529 526540166 707348837 835393203 146493704 454348915 474263671 762456958 24443168 95301743 568746690 294557728 606857826 933495067 635095097 541874198 129655575 947722458 963229636 746082375 716121686 977058986 792213076 530389496 450065576 642451927 849884015 933064991 708607901 603085234 961813167 925452583 830400077 997065827 603973757 789330427 675667073 695059435 818350781 858932063 858384733 243463342 115748811 258234159 682035231 688789230 714092508 353998377 594816438 934344166 4536383 601442873 437995195 782555363 597614609 883339965 691595046 944265026 950953438 245801349 921000196 807028605 891024635 668659680 473509827 305452781 799830122 908026215 446013908 235628981 828337450 156433815 973443375 516885509 27207603 273090996 936058701 928372094 156773183 457984039 700747883 360725796 957372895 688906467 769814475 495549458 942927911 424742440 670989236 602979040 385749303 98454241 685114757 607854577 340235366 393975418 515393921 174617212 954652475 870802299 787376156 422833444 925143542 857445059 92647232 953878590 85679158 833256923 780277216 165458349 841928811 190034299 423652198 101563300 954175190 999636027 157042599 292799753 889149830 748169624 697215872 478209861 244540929 570419720 739939786 670989236 239100153 228186472 964436556 775575311 994312770 61786727 759989015 557592009 864086686 870199750 879316093 734671872 867843875 674727078 533165219 806211200 267289781 150374397 860719161 596944386 556814234 680312250 910888939 126636615 932497297 15368849 721044078 810272526 219737856 837934528 69627335 23585819 848501846 200733848 211395890 171986931 973647582 786332063 188176865 341244391 13120703 888230008 27628341 168105711 211731923 629195576 547471509 763894315 261468293 875724040 197113221 287155710 65767854 944760944 104570464 994053203 462136098 264720223 409673505 448542991 691339531 636496471 562539212 98011543 891866266 907027283 838813985 764397617 892330319 775449360 473990977 873390537 49809953 939479556 415680112 344981593 901093338 670989236 600276472 88312063 66116629 555494387 170092738 676076754 742315518 881785307 376781601 542203923 690391751 858414659 694186546 604580300 818208486 616905807 724706191 790158880 301819675 104558388 603558148 974161079 205286794 703230383 616773179 689346262 489283969 36074645 762680162 209239321 555113829 958794341 858657076 638971861 895484897 355374692 979858303 848295343 219387263 68689062 885292667 196883827 784299405 829665845 718377300 900338242 554732184 38548086 200140643 8208074 712302859 534700721 885098823 645797913 771779454 877698543 631262765 922922900 751716835 167095689 316325382 852748147 950352664 62922906 298168431 802970180 797366705 855759237 298480084 839293840 701698867 841024151 990235439 931693688 907190574 670989236 812657627 733318401 288896287 307634646 200101049 900667716 9217048 870981537 539562784 742811884 413732475 67246307 652104513 213542667 664234126 770442026 703692359 725565308 551201708 670989236 868649103 99640465 837160919 859553685 742752346 31733042 116055537 788943951 670989236 374822839 951360730 126693519 102409565 808083117 541512722 565398195 670989236 957674265 197822929 166459442 815744458 760375831 161951303 691552325 788994798 588330478 672924309 560386626 110757237 236792118 436803398 824784120 509441905 544265852 731509237 161173159 513428265 778874427 970128487 230244448 582646333 831704629 764032144 334275197 976203827 737153027 586001082 847532163 758459920 777468903 981927890 817239969 382194464 896063855 931525697 975146468 478868616 744974753 891392277 512117708 207238874 68601886 227006078 906039390 819438934 473013429 871279413 947921706 951278693 965158479 387479268 95281320 706465530 889386919 839978048 676735589 901773489 358075234 203914442 75016638 958882831 41414896 737650205 801002833 846708 325480637 738186535 109019280 327625263 970948154 910378323 375585803 210208761 547785237 772081615 678479518 904564915 164859494 204674859 79323336 587644287 482068 880795027 951837592 28209448 370061679 949974403 759486582 363597784 81929004 906353622 348844551 986936523 128641158 133439702 990094053 328900402 279851035 877214611 386920157 643892678 291168851 369787931 201070632 713143399 998480623 446850512 21293859 444797977 223432092 609660592 999950327 321053299 866424356 315961585 24592780 231506990 947605911 796248238 32470987 742382643 974712329 122467964 723278381 592751303 998216934 784620069 731397345 88543462 648849244 189050912 644463578 926337942 968864988 733598006 554656304 769204810 520404955 682302540 799560075 783593048 995536377 368596857 993184223 242607376 520276906 861663213 704418529 795312012 645066027 91978032 260423747 822793285 668438482 381449553 458828332 124616056 909648807 963414203 670989236 855222698 895224035 919359768 667379884 955782638 609077216 350223381 231985752 880226709 494103698 735216040 189907307 530231329 728391596 753409483 205777058 747587361 270234006 888984380 127832446 366770316 249360089 466909383 680045162 763053624 374038452 822597237 606841365 806396742 144755203 18179378 315072694 147931030 179459437 634141642 176307841 698427917 999401408 630476950 873604845 414882318 305641090 703144678 22959529 739929161 820622547 364796213 448868127 764247358 352619225 774351079 120921620 51686897 544094817 762054527 980502742 81474462 251743520 839308372 772224211 577456159 773070641 157024489 289605082 808198700 742912462 708774081 605993023 393186080 980573890 922617654 783647509 464633317 845064600 546337645 143087139 925500151 804675211 781740109 851370327 602583551 835703328 357314328 772471157 381248959 827807875 705442269 991598311 802179146 955972694 561046043 156329293 36784734 71764377 593798729 710117651 94798753 370580927 159619045 247544539 259176981 845441020 144116787 409346212 849934791 582650635 832125908 891266514 904340734 127791850 820479120 724528705 756156115 414382758 484234594 709716571 729330931 664818559 782726305 696581369 710231484 398000106 750253693 611004302 88183738 144625368 865560526 404303665 677418714 969189138 282680953 123851937 178115139 61717897 880543297 894995228 682000422 11193034 180337986 976198724 975336486 691501514 515863597 277869080 216804432 672042702 810522711 739218266 671189481 740720624 868992950 35724111 837023097 146247734 728517590 332209195 616423894 6789342 901840695 872135040 62690131 738352391 695977358 149342686 926136661 908431547 983795378 713112996 670989236 382005445 342407027 836036184 800469236 571722296 430101783 738716133 557974488 770267574 301863183 407622869 977266584 276628360 894776682 488518516 740621024 468652410 345275789 756506883 304693568 214811308 46436625 973497051 690416167 298133380 985683571 141123976 453509155 357003282 962493632 268049138 670989236 448528355 933297008 67169914 634255764 75698314 528421965 618593901 846745093 732277141 35816258 286581330 26562440 494288473 976878943 376925156 632959476 847714615 546673711 82989040 508309801 211780415 171998511 109059304 160651821 796415556 18170922 757286600 854706947 873014261 931433675 551917836 163351149 452298686 925459371 531516654 238651111 50201726 767052014 203132141 532860615 702517272 929631348 76488620 270722514 391673234 844988410 751301049 673769100 546081442 749042509 53536377 179620339 951677217 934977320 667207250 143130182 741769393 414555130 83530471 958814037 749464877 145430639 670989236 615517571 279216943 40831573 434281448 247583251 495772640 154037270 621744053 998994470 455814056 111089355 836802511 938320637 830249028 942285275 261122136 818984193 180120158 835918009 814640950 424035977 507412360 47463630 68326071 663493166 991746862 893083022 988707699 814084434 204559111 691334599 611631115 707825373 558951348 818617871 984775779 853739389 762391929 429903336 489712010 130215733 868496605 708532770 95971742 564801641 731295938 785725097 418763337 774610529 777058263 854480413 549067097 780921576 585387134 106176521 880651135 388289100 489020900 923217896 898445250 476591620 820540819 433442320 325333610 452516960 117928807 270114820 337790084 1175510 576721716 393465299 318058933 678823222 129329447 340860380 579028191 265685709 997060517 187001605 805774908 187276185 212298755 183864724 857620176 690457147 508829685 276381213 588497820 369968482 678031328 186215017 926547448 670989236 944837558 236173942 614101726 543894852 626139364 246252409 245326329 680022293 980725523 2040322 817062575 715078957 61119162 855988349 358686057 744361845 867323270 856830207 366993065 938765662 868710182 734267959 910907254 632294149 974114320 227121860 798410278 37983045 684586539 982552719 921737774 996805018 268691838 622581752 989941802 666509383 852849677 964112659 729240849 841656812 234222974 76537806 390635742 993116069 252528211 36193938 289591487 802638003 166094437 951533525 268413033 338283606 783780119 674868577 203838155 515549213 807623993 766743994 471554819 850236634 446993432 410474647 399266402 216027460 890379923 553299579 480574549 945332575 281636640 940017201 820506240 830106736 497964497 702861895 249795697 630279289 761442289 953668911 978652862 520637196 937024738 534361640 249000117 749446434 835295222 756091067 974824421 90402843 763847108 886944659 771223478 174789800 27954368 908478426 583292223 769475131 489754219 328798204 786227417 432803646 991380483 755550636 877971982 887766449 27032443 720583478 888582085 541661931 229128316 850006407 619160919 342124917 136546112 312169999 756211701 812480297 843120522 86032142 860501745 750308862 730562911 151813204 31508389 304744394 511299345 987475215 531913367 676211763 516619866 131573474 899939430 380464374 530973906 790773358 43360717 971844281 259822094 108470741 356859491 95354118 664089644 219805728 740413756 507892753 284440126 692229372 772268021 965840423 943532516 868461665 908801887 854771955 902959540 670989236 885327635 811672659 75697291 556764296 715813770 829388652 654021630 181830261 343599570 670989236 889681912 656923299 896874848 735087447 708816989 615802847 887269973 725777974 647832377 630518925 432166702 219740676 296402788 729424684 972704994 624642256 806789454 479404508 414987943 930946769 140347209 535382204 548343225 789752592 62152840 974608817 535952555 251388634 857696965 718567814 963229343 601041925 574019490 454601850 649009603 116675191 785273856 907276421 935909954 798126140 672020015 815030492 458836635 757443174 465390014 504287542 309597727 44242633 899278754 10269418 372555467 867473008 666350246 912614039 682107086 634327519 887864842 165501214 336920768 363004357 505430018 182070575 425299166 706944638 806440682 842502158 151826795 959952739 538977123 906460899 982958701 988811418 809781650 364365293 802409516 805393822 323206029 17309 239255701 394450229 196514061 921462674 969936694 734584968 105264472 934150739 3693295 448755202 921256039 665893625 857378126 572582270 562329677 700311200 327259883 864814329 941326245 627968348 158107159 439529024 20515610 701616373 670989236 969629244 726459483 490658377 488527586 135769282 840550932 687160901 270646893 765554431 904221298 75924862 413412805 439416840 460315516 689450806 941999743 704570014 895230207 559994579 823960868 670989236 977256350 318059326 960062709 563527224 453150 898630398 890784551 370739034 904577133 615613618 727332019 873377862 865468375 549331606 746313745 24355648 624549257 609604729 565351558 877055369 925241650 877865185 984290312 968869325 754462713 757364352 857600507 170704578 225506930 810762958 974681840 244251750 395793219 788849083 599716745 921044033 407081563 894237763 23597321 958137437 573702357 457707945 52379454 832549311 778299043 289137912 704715969 849522916 523265449 979602320 245788159 276838487 411628326 760743767 979905656 953929259 581481943 307153501 891098537 522652808 900778173 86189135 450762347 364850544 174952735 147099334 785791677 31688269 774376185 731969182 874175372 97993254 767928172 797222909 684272564 479912205 149154049 508355550 679496564 594437534 162468087 666563718 848272776 218533049 569179952 843336065 985407969 724966796 881534124 959657850 41316004 971447081 925501409 970924433 950588600 924322100 173034924 451810869 264093937 479640216 916540599 651624758 337127525 797450845 991806868 798330894 784067686 726459454 270396186 678658636 596110891 821570130 399799366 734890988 418523440 476984788 315132344 682210192 719450006 212835442 544359477 808917117 897626096 722435174 307829256 670989236 893127922 725462793 44726686 72542329 190038240 831236490 107974657 686664563 827098354 968931076 670989236 752930812 755562954 771372382 858642516 993836562 684884869 476713278 539106404 526190783 706410196 876242781 924532403 615811717 271571287 902012476 896999831 311382118 25082100 652671544 248279311 336387902 292746406 442424060 698906565 583822200 923767889 450223258 725544731 261329541 844634691 988599090 94611979 218115110 98641191 312313333 781581906 991453615 536832488 698288228 910341255 616152650 902497479 2268137 304646120 894719718 814885091 548348280 633085844 87557972 852783732 690949300 26087510 948271145 60201449 920300549 550533663 931560295 707299716 781453813 706041477 683308187 687885227 682412982 256269861 898373625 688912167 825397784 953608812 846417611 311398825 384472233 854385650 744998524 100512695 803283419 259870836 807414703 536261760 852109529 721222375 333938636 670989236 475077985 283891810 441027453 765999026 704671367 99838004 850005933 432546571 388222926 89546667 692416035 794658460 730462582 942484823 367862943 590608324 669831705 826940990 204031315 813297082 123840226 291745063 62002160 992294574 615916857 480801903 631469372 654911599 861111282 282832031 821125763 670989236 766139483 806568954 316374878 387334463 109957005 748922625 938721903 325044106 940836906 169633358 745216189 882264968 154477543 480660795 997069208 360950537 912532128 804447674 674517112 927318835 897348996 812265682 696660724 940600555 974620311 511623979 111102702 803256490 929084985 9659229 290448361 110073949 883678215 966768710 465958801 936502086 271542548 653259452 674602969 783771990 49398358 208757122 302958894 747623643 895835941 163209283 128974156 730932945 261344580 959307323 976084272 751981589 321511022 158573600 32185049 282608652 668257038 423999794 277441403 534215777 219096139 945905286 383593622 778923494 127891779 762418624 971505331 237376500 905581509 763254777 156127994 928124215 913849945 819566512 682585449 919885665 687502825 337117083 465281231 579187927 733801578 400252652 927958117 635346271 922373130 493462240 414984700 708256169 969062004 51395516 780945021 712776702 842296761 150697953 995039285 635909605 606885153 396487503 447566025 317722121 876355747 34924130 954526488 641178720 16424243 964146512 476531969 175229572 790745795 408344840 942317880 29351524 491052841 641725086 812347143 656489457 150759987 622816947 311199771 718153754 757647453 997099843 878369317 740294542 401835596 385729794 984894609 160681635 446694787 776286028 326351974 814097813 832810177 393468249 888648694 828114804 808984486 993729705 835026259 761406092 943271551 900989974 406109933 80604754 382517200 696998862 131444858 174819662 110960718 6822466 979440264 68163850 952493164 455978509 220388898 45220200 966825292 975529008 199363239 419786646 946689369 874083155 778259087 545390931 162596663 246891337 708973430 344677710 868347988 764916148 517141154 879589211 385223754 767650218 62973416 541674590 868413749 832696854 440217089 620488038 431349365 676610022 620214789 995895132 699634264 238756843 691924214 809114126 578976944 824309939 436147875 792828088 271428150 355671712 736734794 953055095 509969742 947248360 462165106 796553613 55096924 25395075 451234844 471685301 865351238 296569294 128779377 484866207 949145822 871519439 667834522 492869380 898416144 396011806 758910129 288180408 848178344 915188325 863886028 768126669 957406707 520989013 712987767 925039246 603886012 128072155 225333424 255914512 824853370 288217920 302004048 907754790 491187538 132736564 285730899 300788896 983241511 24188484 993586334 716297845 172799103 392102942 360338247 453912039 308169587 371688888 937748805 978318726 802894097 888024469 56282903 817623370 77620944 72394043 752977194 145209253 759813667 196718533 790758085 712119815 576749702 896619785 158329902 785667563 989847573 853974428 160495506 681968144 80582736 787520456 46990740 150621825 961713797 990635515 726108620 754620809 102975863 558123984 160844634 460025054 462499420 285604180 788499793 212611305 711179971 705277953 167297865 391207906 812909048 741106452 796586125 764220779 505779748 651312237 988695536 974395366 512830532 668661558 733701059 690673766 50166048 705672945 19770422 165313111 683898808 128466299 833019370 151096320 685187878 973821966 833821672 804915637 832528153 671490576 52497690 904278274 957670679 950115120 950778393 241112995 954607302 887637764 161971174 749491743 606722761 366126658 827886956 727338981 761836174 850437396 206005081 539674817 742222191 252958143 793838658 816390052 846817293 751632127 680389595 371599320 985521925 57323264 244467424 852166612 469631321 695546518 830701384 734575920 613359339 450224784 261771104 409985401 983794323 777557929 289355013 785261363 179200402 688559070 123485586 865341193 970642582 764666755 512074457 8709828 874254224 392482126 588203881 902368673 823073044 834933993 571957278 912845707 934097166 234679738 967921661 521703016 495658780 665373093 990374999 858171393 610280406 248402375 381678071 922740149 736879202 843556153 783587964 970764237 220650433 508725067 378076307 557851918 753149705 232033074 599487648 779475287 711737711 941020712 40321559 984115629 938890535 903197528 572146099 220597092 78574140 673011221 642628248 892335091 899485462 399385904 14175152 706633508 837165686 543403410 897357224 620033403 178107402 900667093 133988457 742217991 996745431 645205701 312622984 301734281 681980724 844826447 640726133 26212506 787413196 890070201 118970232 88149998 150056464 671234618 562329528 770700451 771283544 563112047 670989236 556650180 864500742 688919047 816947369 711348619 854998636 876509585 987244312 983964029 875404200 780972883 929207381 699316301 896501249 958636742 896252752 440773857 735974870 584887906 357729780 533703596 837560086 859761763 708546161 715261201 415549306 251145108 848229211 119560876 623874037 70493829 688851226 944515863 7783379 124221828 223771224 822340289 38362080 302313465 61493645 733227297 602446722 596740464 832765784 759487968 59150010 74809269 204914521 847471639 349942482 725188051 669409395 675240909 761734785 776534924 416098462 471955020 445710117 416649468 594545674 84546834 877097822 676721398 281697164 829506396 785703029 436440512 714853814 223095485 563614580 34025836 686371613 186744016 114529712 770208677 553157454 973116835 933540762 704845983 292146893 388243442 765770336 107305974 426814745 202175095 984400996 348491743 831040777 689649874 455484399 881237809 872462626 888632697 670989236 66732276 19226598 472591882 274869882 805816498 621875799 721840403 295945582 73771712 959628262 914186441 700706026 68394779 247901840 953422996 700451012 309419019 936430416 150982957 322050408 972510329 573566113 217503890 668003270 735779038 433378716 108529419 767446727 997095365 903970014 722317873 691231182 316378803 754106361 467507458 141263232 475634497 537783490 703372273 353468844 297264870 969492991 930236937 915740031 795194272 808464857 670989236 864037751 121496872 979211778 989519689 218487388 299452740 700065094 1943250 619010471 748672010 887162811 868233148 442702863 276850923 82543145 165400081 114913136 674975689 434600808 668651210 932437194 774849204 295696175 527149656 514359318 796559386 115878468 924097687 506102671 782749497 784182614 432542771 404214590 93065873 691299496 816109766 619245385 72447328 886897083 996553891 373111680 598047798 623695490 502696644 823469598 161593603 670989236 693550133 54531469 699945750 774091416 988568641 707651061 720190462 310046059 516387200 971671224 591744923 183480138 324509991 951624292 411183741 760850474 645471934 665726631 233671077 174990781 142189649 536525570 943781551 586744217 877191429 932024950 821627227 294282828 41814913 782774443 891478549 975992538 895666164 829665407 152344756 802100488 774273655 997590711 973569502 774725824 840050381 69165913 965675407 10209685 671640774 875995605 593621716 863624572 112311923 789421627 347785119 764580487 165081210 340990015 393212935 851424726 247329085 393273197 250220222 976450528 513338288 811059133 905843886 560404701 21644986 699573958 872661913 227257162 670989236 987482841 884353542 890170625 299281581 960870817 941327443 807099601 216646000 971728692 673917873 833127353 670989236 265006359 736459667 309959236 124738443 905775245 607063595 766142341 813530615 944625411 90570876 936156716 849209849 991732473 957153483 723395119 797910195 665506360 931820828 152653656 937859192 519282027 607639594 341348797 98006310 732968930 752042643 346517319 734990398 236184625 291045215 72814322 631251823 795063444 841662994 733887470 66492558 480531558 261807281 985367657 991482220 607468593 750515435 688015452 941123693 346674273 840217210 685769956 807572220 670989236 977608995 365070832 955032333 400449422 736146322 994641908 487984602 676226115 949233404 872312926 948850528 827184634 243889929 869713528 62978499 231178693 918614450 382675044 322448791 562005546 837379683 746943859 443689359 510089066 559609168 929053468 774977562 728566750 104581526 777991610 776367811 48472641 947910857 275438797 849787293 719200270 958143644 897581386 317429217 967005559 176128398 579364266 492421194 702330486 882756576 136190564 798228870 994540724 713726527 751207302 693502039 829231862 823263133 108242773 257358875 304478244 589782705 370608923 909902111 781849126 833804926 418520551 430672878 120649143 10275791 58728827 657816163 904096177 777462039 576230853 363307329 877673874 693302496 280315789 731583691 44837429 761620163 683160353 433263592 936072154 269872956 772615299 142403548 978606584 817719386 86671824 493461309 82362374 719242590 895093669 964590946 158501643 871309302 979616183 164746379 41378695 103982947 222823992 712321962 546061901 233059502 144538256 670989236 930595807 117258663 699642227 948147025 60034520 787505668 670989236 707255324 665265671 452628108 674792315 712761391 819328316 964679518 928039397 400813390 478861959 578725849 325743664 729995642 758200309 172032908 773410642 987379993 677796654 788468443 807610235 983588854 260867993 683965371 443500717 111861725 961277429 787399082 795222965 62689619 851605432 834551970 578626649 521667504 279423267 194892656 597156984 990716027 518635638 321986605 131345208 78059560 555354137 379622543 897585148 942501071 447396235 601787277 714304332 886248698 16450002 336853612 675907130 760892649 850366915 36825145 523452146 617035645 236000765 931930061 756660074 949560532 786778685 206616406 84454904 732602327 965925082 693063848 98693468 751440855 266479526 322396090 527617795 543657712 929754377 694426661 959152958 174820135 901227164 201371680 947705233 342008761 590911288 941306891 59417935 517852427 754491916 95465746 220510457 499259259 298237047 843697765 923921977 942791752 690266606 898338853 722177279 569764642 737384113 472762767 221870255 679196064 402601170 440218914 884755091 788981001 755038198 453415274 886165735 835400320 891436006 832055784 576746221 26923771 883057313 929082460 965025345 993385916 724252837 390747830 100512282 202245700 630855636 800609944 680662942 770922314 407533212 505707553 34974129 254761052 178169869 425865006 511836210 901780647 867323191 137983976 458907993 614119609 737298820 940215147 874485387 852149262 690593440 87050072 989083570 670989236 601150078 918163120 425679324 910919375 837726938 188407338 914796474 983519750 102448263 764369371 245225725 24885085 770683100 817666607 633458828 264952138 778607019 349931101 897075741 764198540 458823323 186893561 910905329 939890129 524205998 746300664 808959136 951787136 557361636 433786088 964311034 996123229 570178816 725795825 792131273 75427754 742955220 900658892 898514778 969714104 645403529 510019085 356275472 907051962 760690043 875095551 739758600 840038605 850100213 691335758 919534679 227436918 854391916 702899464 830354918 954269544 99207125 723936429 353859298 151152853 818847915 259414897 471934484 983889558 723861197 800203839 338403506 42070970 899677557 743139315 59307288 472541244 902855387 675542954 990628289 802650580 765755950 873780290 36237898 842884342 771215918 705275622 616852894 775173970 477203807 868210781 826677816 47944301 990321311 787628717 611602117 523594845 854551726 774264535 370445928 924119730 684596130 593708438 508155582 693987064 821586079 190620137 898035039 891240617 707050380 649809420 513165248 930216083 942198747 7302185 846039426 719365232 117175003 800761160 802901629 113191851 656925928 988791861 294861768 714496255 384999899 286866915 243350810 832298256 95309933 985642018 889039363 968829845 678771945 532180512 736289726 698261420 112571027 481696128 705933561 913032093 65332009 97771209 189911022 878485216 963538406 208851519 113171876 94482297 196635345 428737648 812987566 733068570 30796357 42063219 927914779 427139095 16143398 718410268 823505320 624581355 153879036 843872661 674135780 983096087 553080541 650414032 271624203 319007380 719642648 646233765 614429360 568598986 937752159 399494789 6695615 967245707 158579308 935179665 507798579 662669394 990697922 799903138 352240678 151821431 991327714 206581411 818574106 126042795 990183020 305616794 685157210 187015943 952595237 296969195 860827197 586915765 660311613 191964140 967225713 851168350 188580453 826655577 626237362 695514439 85820785 501096520 847266985 625583001 574923719 741292361 902533008 685262960 187531374 732209904 622554160 918224773 836704498 745991127 934160577 936630244 817685250 940822297 327447014 374686681 734272371 288531746 874101853 866977123 164086488 883622963 548909429 427612303 19259039 148273168 653058673 770701731 347457715 474693837 951895538 810874600 706257734 395893003 217738270 777492571 149228410 854368768 651264795 362112992 978376231 100506959 447136917 987644276 749945576 429074948 681533872 883027677 891003894 543128921 492870103 790013675 650021510 163704807 745182601 471461180 999487659 924749440 15662144 465462911 842333741 73856842 96149256 938217178 195621825 706552470 463982468 37713767 722723247 694471232 276583634 362686237 793530443 55007537 890845336 701608357 905247595 578200100 655012915 897959084 112228532 902478137 799115362 717441293 738424693 961666544 968855543 417759160 350095130 751012340 335895093 481120895 966037237 339003848 97330962 711372817 678480842 185358553 809599313 989260391 889165762 934906021 234744336 81953772 485966758 53945918 464259875 321201730 22522514 987324921 849693675 683192483 461481806 366807186 819206879 254247546 674798952 869558686 459192776 895251365 582035526 768629676 833330694 453283318 746993233 809877903 622077121 689452940 749670419 856504955 907138597 779435403 342772850 927960291 989332258 842964232 457773340 981478844 562633014 208833182 209962143 506439929 277594663 693686682 878536496 920703748 899132962 22577132 6163055 754812633 510570927 866126776 843230831 993573651 869520923 920378006 964487196 611482690 339557256 844055180 758061211 906447797 898223581 845024368 238804675 918891133 757870349 845993589 500110143 177524901 107932250 21386422 526872181 159407717 905791623 334246821 863804464 469566161 171765430 926947167 983776974 691782584 234382121 803024833 298425670 576916511 922676765 479637331 767179826 411377775 752568058 311599165 966758410 669407437 98627630 7050168 338223639 810024989 390014647 753791848 512046851 670989236 242962836 988318369 808999138 28576826 420625808 103351537 741543034 387883754 444683295 918086538 288404918 647102367 554736976 933954167 896645591 946035421 871140036 681759655 824480016 766035511 947732432 899926799 755813641 702402557 276635137 869007668 735111964 155106571 22558778 658629302 883561990 136112780 443293873 802123369 845319874 352208084 287229818 577430522 931087584 490599779 909703239 909945072 865330622 902756608 271848549 223620094 931421539 228216190 807847527 17987417 875564532 670989236 507964175 870059167 151073480 360264125 494181174 855416943 819889794 453299685 104920024 523322846 410361629 933257712 221548433 791303510 361429494 467613754 737081108 952500032 252622709 223800518 925103230 985855356 118663108 883674843 959235838 57624242 803825490 854435708 981813937 768364544 302821356 155672573 850355636 794877437 446222448 406021175 644421181 890114606 678991981 253215720 535089176 954504719 375137820 784804115 785243076 568154765 156259205 994186016 591638790 788906335 444107060 812685485 680750056 869220004 330008871 662477775 896148447 784271961 748842452 18528952 253021333 902544227 647179347 965872674 830292614 756735062 362700602 774589058 269218310 514879812 839404544 864944352 775188828 715613518 353704409 92634510 801489431 894345336 162757860 817624360 307819158 176682057 876703798 570776077 652254064 459159054 750560697 725958329 605907793 687477287 141580168 507317346 794877662 885835633 380454852 751107681 89587784 806120346 216618816 855253806 933281714 81724776 440118623 226951427 424835191 844914710 564943179 767453315 129332684 221897545 886508558 113987483 337815068 388615340 97178781 726465834 384232698 244425752 119468124 587766817 321355113 628431184 15148810 712546298 654099917 857072027 786386570 847009859 767178544 626625088 815437375 277209494 442920028 994711442 932122082 705333633 281896635 135002679 903254899 373041043 353257702 561848503 844338079 601718286 302778575 566323405 861575308 397512209 532835072 407343232 737738831 529897044 813769841 740134757 340789382 963844015 196684315 948795822 979527730 549216016 847727763 643712162 47034562 49528574 692365379 250814399 980916369 90976261 208476479 878623481 737226625 981924508 135866322 953328350 252317436 683018915 326015214 195441357 974283587 709980858 720241625 702897248 867816110 363548588 616245164 671344624 890343816 272814212 614356395 55879971 468563004 863712944 903679703 532763554 231167958 212686765 305483941 598338045 301305283 915948814 567086491 648934630 525427998 959009429 79084629 82864030 675683070 956060363 387904823 994678434 606163610 724433212 518500144 210233453 703034827 497202579 684299417 693613796 741495082 57389987 420940443 986711878 596069201 749411331 35102230 266597731 856748707 208476244 716603516 852262270 341352110 788895547 473302642 908095609 549547484 963695194 654165306 298455573 742336914 983951334 497291436 739329826 91747005 773381477 627825544 915738937 284213288 817864897 833713666 565903202 678259698 921803970 904609108 779837329 929300634 302843160 274210649 704563325 516037148 781069030 220690824 162064283 821831261 793916812 597110814 591189210 662662017 991247935 824203608 916475465 196859131 932192182 417167639 836861530 620486118 779248543 903244298 995632153 634604675 634760396 822637087 915142629 852197390 786202270 924399754 264747033 974104594 772431247 857882811 24999923 177002548 849314438 388472723 641320421 997333185 625740037 693512204 751909563 290146051 533097430 928785837 799587510 946840431 520441782 469273003 317986316 694136333 827381600 945850501 629717205 300226138 217039008 911709611 562800816 277818946 713790129 990939542 278164459 104871128 785387213 354440643 706948297 974574152 924109885 320863881 901196133 89903059 517507885 108631229 889441532 588229993 890437501 955816136 801299409 868237441 949417385 813976695 337368210 974961797 553735668 965114488 275858936 789343350 259895168 504138077 342238748 205834555 750680309 871342954 383189675 853501508 68379371 828941225 943718488 984134027 976961248 760942103 245781495 51932011 341826676 775543416 709576901 824125906 992914447 463438243 517972730 689901677 39299750 686932932 665834886 985012004 136167055 150271957 912592722 205076064 91489695 822681347 670989236 217272083 714645214 754173929 543338217 5015516 279841966 760994359 763618397 784638096 746817074 993634128 804928600 155011054 703142141 730174243 754964078 821549214 582294215 766985282 868132711 221967087 784752752 671334176 920471858 822352553 4899231 973345454 883462146 454218232 15471118 438378588 869467535 974258760 116889034 134142526 673598343 904447894 628710547 907575981 243887985 211547467 786867303 210456730 16755379 26552591 963761574 617657561 616876860 327645199 547137621 393792076 794243318 977347423 942885663 47534621 606431536 894254166 633038583 817903306 756531626 446407071 783229296 947947102 397452305 49313875 788396661 978741538 716991163 985298939 895798599 332677979 563990538 537836894 72641600 361882243 660741132 972693066 695590389 704069803 964583608 261362070 815459839 855638657 705797662 506611112 415342114 699194718 152346316 801491187 702506989 901344824 924299454 895769049 188097220 276898436 132293243 946105837 362707267 60076990 412436665 814078012 951163373 751049820 172366717 281798663 768614960 734314326 31001263 670989236 802992342 506602710 533709470 952430457 816968358 784174448 664231029 636293342 987847855 624954663 994774118 661732809 724222668 208787453 735829736 848501626 83042703 951117955 237734333 642474879 743537626 582255839 836289416 929212833 706712190 822108395 726464188 542833099 781999780 720781466 549086156 63187259 36572125 967538749 171705092 712038778 114509873 80762986 556156901 118391076 808708333 258427828 971905783 905747632 155175358 576115834 975233687 363913298 985546670 635380549 445736283 7861795 727350070 540021723 139479636 754101101 715569049 988556455 508880575 556532525 727913769 511898953 885004548 988515270 383953169 958440297 693543782 26253314 904537957 454301152 918049698 173861434 954369291 412658557 632725720 694079913 574369443 487071107 880695556 660508477 710789951 393609155 591602625 968149441 750252021 559886395 680198123 872714094 19480160 328497199 367008247 868808292 3953893 171708620 823755846 977001382 926961952 689847639 228190094 374972183 153332511 185705476 660043221 901364791 748064409 858587776 490165669 949523481 9277252 125174741 700254831 932862668 119728507 322435874 752339048 187182429 142249646 851105980 983871453 485680981 676679813 666843629 670989236 935015444 515177874 795102902 457490056 277197030 78092238 340712634 277401111 787633771 75161807 563984046 484007070 366912608 744810054 601453560 164959402 758364652 442882278 352236296 848612243 972076418 987962006 804235601 684916827 822182879 46992168 631165400 326627122 377318121 812293823 704485307 672468728 988612692 9208483 719348785 250005601 957002875 412973547 280545559 939779781 820851732 797982928 420019834 589003431 23218029 100447865 344348009 338941078 576173687 315931297 104823694 329015734 797497317 964353723 187982752 297467767 983548521 194644097 395066134 981664871 957686705 355906286 478027816 835446824 387059744 911578249 673797034 396973113 954174372 939004513 194612805 746706423 897548201 676613835 788245588 915951128 675610017 828254490 214577298 130172982 718192953 313333662 952909486 767084633 767685009 249801492 433424433 792887003 542235883 760185968 149244387 843009113 208113500 805841780 907978676 670989236 58251063 371541560 40987 941289682 739415839 778725048 863564418 877359420 335578833 930878508 401993566 670989236 482312200 644022535 839667870 218661727 396053796 710484755 746225333 719636873 432422999 740328096 725346751 759748911 990455466 80972847 380925535 14975178 938737051 585677 907840901 469065037 799097276 656215131 316317941 6420357 782304247 28617587 366366639 724435209 689737426 791304417 414204680 32545704 703507669 756526079 650031116 423871971 789900824 518476660 670989236 653469045 927790320 997503948 962230215 758611071 808097913 919472654 523832171 684408985 876866547 375079759 713080294 944523358 455379267 280368332 42151637 415306613 9469404 900045058 770280621 863373718 992119384 163384747 881467240 83836571 673155777 329875692 949092897 901437261 135033224 272510494 872319054 363937095 75668655 936925187 89679563 263985205 421783294 875085308 689070677 825180775 10383947 403353242 843451999 985030747 966327319 403857087 897099092 176644175 976128940 476251616 634944487 766680924 776591735 91213396 362414518 839194207 930415027 706323032 570717136 629803881 632756507 317176740 604195910 540737395 115236893 786961401 884957897 284535474 490085142 377629975 42655445 535640892 751610000 270919410 707325077 142511240 322941073 277268679 681232979 548400767 898788432 753712895 969198265 256153133 725434184 764026722 822572647 787240348 989278120 115015125 59292302 58274608 634710203 852152559 384253451 993397807 485500577 821328610 974456889 933596501 728165074 573769067 489007985 657818416 636440608 804766875 751787360 789403155 72329480 969916670 465873918 590329499 861400030 855881678 347088382 670989236 697486893 165283160 589901510 504901551 549168882 667633837 876156440 712727701 596182334 870020431 901355317 775608621 799519172 851393420 286089636 794163370 812849207 808578497 754548216 228482676 38621946 669729337 880341996 653466044 240554385 351047006 278792225 963723149 81318503 905823327 626121461 627099874 845484042 830942428 40771375 854068432 232426000 670989236 752496266 541509705 912997590 626046568 392246901 678302432 823982527 975185643 51103039 359849987 580506160 836020553 38341635 940140560 667026662 895167737 759750890 826585558 435439095 835242721 839829694 708355192 43552404 432853613 184748868 108870748 616141493 90777144 97020013 221310162 159352145 774905449 682948496 959079853 580602498 382988802 789359334 649607007 921953760 178338428 978216098 68840929 858876969 430880922 169242693 243498240 176333917 80598281 474055053 494559645 573026109 680981349 806499699 743480036 965029172 375375306 86688544 19015028 568039022 759958496 861889011 828202539 275205728 413056815 146137938 593971785 510642142 147316458 120863008 192086661 780998862 231087982 776439805 799064542 845302378 212224085 767990838 898980677 428583340 293042283 238644498 179418302 779991714 964580234 588805254 871733152 164069798 154254007 720455715 671568454 31738839 262128769 949212236 571051244 361744246 828261480 319694239 330640871 775980867 724671846 517221101 829740494 517590704 871279229 835217330 784860917 809665330 993730663 474215246 353581070 158926733 191140725 766899478 705117497 120250399 527820272 905421200 897992880 932828925 182695106 221352802 149532632 988376492 778024924 934576004 745986476 589624570 698036576 72598912 501107743 238854731 921544994 670989236 319808136 808527576 995877863 801956019 428718344 552315775 969927502 393572416 102854862 351243895 10156679 237679782 943868745 663298995 752980679 373663091 772094559 89308985 29731702 646202823 790976476 728359637 199752640 191609104 941532869 213595891 114442137 376964483 998211690 855257058 119590523 962892211 858085315 333287973 840595487 671933050 880497717 934526313 291506503 817208754 880256147 688247126 470669638 925495224 589365567 16440860 979401847 590195031 289181804 702766439 551066814 517521305 7674941 587607169 143651487 355775352 736674950 829267603 902295283 843665288 903373044 165285553 523898671 548623149 861892200 721886949 758194739 790612524 588225197 237235471 664436382 527617378 588653442 46820322 863705848 941059186 753579702 103279932 958883820 824385234 557504771 649363374 708849550 833805214 16692702 250550991 689782596 394588788 684465540 702564595 662101974 111842725 540422174 827647673 759664343 554842162 407146333 872371253 636318856 608378814 827494161 936889105 779424058 916626706 576973107 937199381 907291495 138053129 137388789 821197826 684390653 625800776 42659345 556386334 795585049 923536884 449275258 80626244 910570992 273380166 974711030 768264669 210207446 801701769 856288923 850906645 422093754 846602766 82535175 102675303 780614740 635130848 800782106 754882950 155969940 683791274 66130478 584111852 990349192 197269942 669696697 953139368 789186213 949592090 581587484 453157672 689791812 895947842 611222471 339038599 16782567 258719609 514703041 323716352 768109049 692323920 310813421 283415775 27860072 349340374 785552718 670989236 821186524 635448475 845868923 724816454 870095329 378523594 342511545 610194710 975372167 674183344 541671809 297067559 950203353 666517393 257748632 555035053 286128585 871623731 889830978 46431362 177419258 56558242 578070975 337738988 510580890 770360009 894322510 158575251 936336438 862999754 784039088 772349731 75783765 490188589 172133255 565997395 511369089 358221258 177791160 588648510 752580650 289317788 81376342 742615505 802491077 831341728 81241671 813409432 443441394 61927175 805532477 411675477 950232574 139654618 114242634 204347446 187315394 764216509 976219542 678446414 741332356 962192342 600951406 828171350 776755045 284014267 945863863 41919195 508979853 927958633 64977481 811690594 836397402 673256167 998497866 646357994 711198139 743813297 749213243 670989236 413258606 657948564 806614063 801587473 822102906 405800090 660310606 767837657 813650802 560067932 752393978 756042297 675329470 734447814 802532477 855743301 65687902 414403445 666080484 960285993 980456492 976876987 908421960 240897753 690631624 87899012 254521148 192934858 6329953 932959123 749589708 859267378 714444509 662182752 477706342 973129506 849076171 930593215 692533041 478085590 253983262 609691309 254354960 170389081 398036622 583285911 125385973 360597154 565642286 694076978 947557644 635547181 672249711 417902127 629932534 255056715 628258595 194351055 51321023 246978258 760763930 582621936 760222698 289277279 328663984 720176084 138348452 354773240 336720478 75236540 899938107 830167643 293580871 766629791 11125703 205265755 37275603 328340450 878433688 814218577 358779829 782222934 152581109 90163302 95287317 720458994 662153055 166923501 413745863 857009716 29801300 776202188 675308856 927184886 913654555 429480951 812607660 882730015 540927424 248645499 991901678 335603 945590835 935005168 837472661 490718815 8418042 126075725 976757070 851221653 507221152 495904266 705862867 353091878 359295760 453661097 727867998 857353044 670989236 862322986 92529758 957144960 837593154 55756221 597644673 301884905 570437423 986316113 670678174 624222281 672601485 617234131 816294588 795890876 528341575 152092830 768336173 8135613 706561319 688666940 961966533 191146611 733819844 977973199 973319607 734516420 875869353 766577649 85652439 553598394 921231435 27239193 161697054 950284541 882678677 160351284 28449321 431630334 605691906 506197920 670989236 73613607 394676088 804905486 17778537 633660429 849568590 759390652 739575456 791822759 169800899 843612859 923919196 705095158 141745312 987449844 920396193 670989236 713281597 910152452 482114704 953107240 453782057 830700937 519176917 663636839 281294310 612243711 893349580 786206465 839237666 998498854 840636235 827060988 672666638 728902149 713801451 534921059 858383042 968633154 379237553 862087708 42068054 798599827 482078617 799912469 896405622 27762709 404746547 964883710 752382638 195552833 275784945 493405460 99295305 895602767 942338814 191615178 697899898 79804720 605023921 630977356 318138046 903061405 718354255 922521277 670989236 984677416 693916324 525817822 135198600 23984113 93644226 551365636 901069871 683264074 10781115 997064792 514816209 907266254 718539472 926584385 999643771 786623340 401569062 40120767 480184084 670989236 538889839 564562397 391815648 926999670 862703911 732643948 131368975 205412309 471450977 472817601 325363871 928233939 898689490 821235068 343996935 966246019 342221358 986541672 638424740 837308577 374626893 635630643 986951656 841116452 624799633 381562510 908000146 850595137 498127934 839344936 911968145 883264790 28335842 740197238 981567229 187191520 774481487 856984749 559783739 85606819 940163520 440392605 999303373 895913624 155758650 925265074 501821745 414993606 145365745 747850737 918391226 443375237 765362925 682666419 276247267 990055956 626923357 555622828 450558871 734788426 388995594 547160012 654859324 574791509 774645819 849755831 803154809 244073022 516746450 681092700 741976891 560538579 857762524 221021973 336514469 970745604 710903605 878344718 885456095 33308069 782552498 641876478 603083699 882083315 113828093 252699664 411517916 937260422 470871671 865978910 547588913 124512908 245057464 236349123 778102072 592890945 819270938 721924835 354249659 496205673 978582168 957041469 671116578 670989236 765604050 208266107 822299328 716443485 426491638 212317422 607296990 931552918 182280665 815353145 984394919 937397513 707202155 782134243 947043946 16160637 396680167 718274918 14538652 240053986 447090012 876540284 243490794 961340137 399387669 889160026 502896871 730767018 839845642 679898726 828573121 258242344 743561205 95036287 868809831 250499903 783804276 633048167 712686104 691620372 657853250 472847261 506351226 279429039 372156584 824215626 770984116 928933881 881241123 697044602 783664577 731020785 706728420 43126907 188697061 138324465 989323437 811715660 167066748 646350113 811837982 388065284 846782244 636501066 832870462 886058115 414694245 732488179 777241919 918601334 371843939 488801594 315841274 104237397 782461457 95609489 84098147 485488497 834763899 737736095 186746465 780153236 97084780 927140092 783694912 751960686 835063085 175923964 952353297 30337035 567565075 915360372 838436570 820239596 954023445 774817689 850372938 82812959 899426403 775398927 334710024 823908018 262565374 759805540 678811098 326474061 763827073 801919703 981288129 977311488 743736247 224174554 552131521 236789514 731601120 689815651 771342638 658196716 504103053 725994994 452814427 450921634 885875114 861151902 687469339 587847979 21245450 852641977 728883654 589570921 863894224 803764066 972665345 371205976 994561216 474225891 873451863 567946874 769089682 686305124 56680271 591757379 840782695 496663497 58771024 942774019 367213148 924871979 241769918 752479047 202549960 689182137 31177157 76663300 255604356 704252152 724199401 162498723 805522182 711414862 730101637 34310015 829814878 498493414 455089627 969457479 837017501 467946951 913449233 982311978 670989236 889146596 41122531 890179746 530837971 414488022 827439530 623745806 719014535 967789568 456947516 511814748 808661495 251505988 670989236 440654701 143390754 923377325 811820482 429129465 962137918 398755330 965304944 783280389 798542573 967590146 625807790 979895598 962337162 448584070 270174455 650557622 136877393 595679744 707850807 76734863 347524599 64136220 321690548 748285584 794391455 953387455 811889606 891542553 315247818 983901048 270426100 900807417 52951560 774085547 791357510 389835821 504668674 789026149 750737500 754309469 608255762 917836802 239887977 312920973 720931613 722405549 699889549 670989236 941200074 946254907 366192382 54253768 931460247 308660917 690136669 973608175 680439000 950277823 690950398 708014534 693151186 594098009 747791635 862859677 983516527 902329971 862551100 678808711 864255816 299327178 797019407 182560073 596095399 961317432 393463195 747577563 261163016 420322571 822049125 293810555 721627540 505419859 822773527 760996338 927499439 458541497 849814316 546283467 948028788 188364281 861653593 789745637 692946276 972138426 372899704 852939204 582270132 972992244 701601134 243221877 310960916 650362326 289391887 224803552 895876926 45005101 994923381 527602365 25596156 897957527 568650663 504426888 927821267 722579392 447792167 493556699 813393533 86717427 863992760 764135373 477968682 977231034 832746105 826562443 788511479 253139746 949581291 888133634 245691948 480830124 838126166 463518972 788452258 297088613 792172987 621758172 795809744 334111568 569094061 34556550 690384475 265471484 790104876 699181787 717959942 241560111 610646825 366646265 885133709 425687391 857829192 795625865 35804957 868381553 933845449 861846915 968808906 787349624 982194603 630886405 216583505 360028115 23577766 473932636 671818038 79175554 747676983 431483998 816819406 572001443 890678046 353154512 879102606 380017703 517818313 45897186 175958048 343100047 889470525 868598404 490795233 577816419 280776420 945719359 648452311 404670248 835450535 819648181 604093241 133988570 933724437 114727264 856033745 676442425 532057305 670989236 654588079 987468163 776806517 282055436 709685998 46253585 926350414 595713605 874350081 735863278 910580960 214656968 927678888 756405000 99940195 482430911 939718962 985101477 673436152 657839188 480280030 960911649 790294434 723674503 823314698 786159836 722634211 181869703 911580338 140737653 417193483 741583774 901838152 617388822 258220723 841106166 828460065 700523149 342603454 575230343 926446779 989321925 631014209 934706467 435583835 754834982 674106951 763202444 159406102 208333890 566132664 395372548 633973101 132382980 285725958 838458708 495241730 966594587 731431776 416969345 116730508 871245047 280095575 772874983 814654494 240254202 788815132 862196709 527110063 902432140 202154163 713254513 883930574 363793419 870151772 707924253 497119937 516282171 891620816 815389442 907391803 733280562 910084505 827632274 774474419 827472622 946968287 511427509 757979748 931722660 492126536 11171432 866471813 781025070 26136694 103111593 961767715 893349713 992270436 878609169 547164517 714373992 450790404 759779453 863268567 945864685 870485898 886760203 458957418 195492368 82767722 32825430 242162534 404941060 38314226 689184042 901430774 348025956 910904788 490503582 770352245 284662878 633073231 281116082 818129633 871576438 940657233 945290451 267442984 198123821 825021397 272986759 113057271 816969794 754924394 585401453 764779563 603578275 135394247 125348508 976304449 100388371 929863713 180130236 766008393 862285370 664745943 472615099 452428818 670989236 807294290 870919785 277544200 897039829 866801457 392387534 483686318 801507015 803316854 297092740 960849002 564182875 674699526 918666386 882713413 385614016 242480287 10573960 878109149 567340178 928850351 896249381 390465563 849327600 724244820 520266571 609953331 824894540 628354600 238559443 44840552 701196256 750330221 583867930 753589681 147842495 354624252 399246264 950932962 253026328 66771121 40661766 215358188 117167185 355570280 459395450 890646837 410477926 563235325 814351958 760415439 249351499 189655582 868499661 644632586 950565786 392182165 498418084 523239533 979979829 955304850 392475799 391270385 994493925 327374797 242935845 944749696 967612860 663369510 262242437 315585770 801400963 570975170 810772184 732688396 984493550 670989236 115882970 222439104 910600160 990996405 635500754 915312737 426578461 964553118 316735864 929698452 359336770 392112860 725356871 116449477 986381421 691343683 708682732 788444899 203563681 789301318 586160014 987037218 680463649 800475962 366945571 627219943 762043853 928426354 846818286 670989236 641442605 935491609 728615401 255187464 506184794 573186634 67426814 335191054 836325768 751199811 95187757 378150510 820379985 902742509 927273099 435046879 22854836 824129647 487750842 393654688 254742163 575382513 432041960 425888467 740499601 495064419 516062010 577076310 790909959 195649852 761393371 826757958 63868286 161090819 697783329 840780562 985542723 904846442 278449439 883079314 915296704 790818636 297999427 930223763 197273537 699360757 241461377 802082128 649243074 608921554 662615686 224384721 521756829 394235428 918252871 688283730 381491830 982401097 235555718 843650912 870176983 313605282 860356341 900569729 386856476 673835785 776240381 452919574 779621733 744179443 859463243 399711229 727378613 878154665 713521474 944813796 120158661 970499463 634967844 710876349 770070436 945811006 109364192 638501048 881318033 457050090 426209438 546016685 696400544 555809153 843039555 294510703 681661991 715228122 19260457 97604078 886005254 932384128 911875098 960645597 70849186 878215191 559162164 814801070 676137595 56463724 803475108 270089002 289281016 502295538 187029056 231940334 186667481 831784338 387232075 945777902 602363222 950248249 612020997 292166732 747494071 26024518 436321384 351851785 906922191 497781593 988489570 899059815 619672752 190451287 796586904 902961614 846958250 344278418 670088365 654376308 293288422 373857064 732086423 891982251 785103263 42730767 569281891 636489369 517757306 913029043 838066241 748683341 73314438 235530597 820047499 215583291 816718978 149851672 195258490 968242423 947775943 54991728 159283759 396978265 192967101 371314202 871367599 797470657 771789132 358760377 221821194 984377237 93417288 75208888 886638717 87537929 947238114 9645941 856938275 337364202 274576657 344566671 681033899 579147822 311810757 551049555 681033891 729686423 304066990 889836669 672845051 320015437 337966716 438716979 126396325 437280107 859975143 366369390 485755403 740828589 778753342 299191649 238191301 171533883 4758924 360549170 423440352 745621147 974741823 825543308 79861894 351069253 780904406 543420079 699284693 154567343 390513292 195644500 690198446 368896886 877071392 565858877 674860181 392162922 932789621 337261263 699298914 2490181 285771220 980825720 384677347 901526764 682289797 824391308 859920355 137992800 765679149 910986171 834229686 888941654 830495590 538285069 531354405 607952679 985271122 804229281 688174546 690792743 766697579 907870275 46746775 937923235 963282479 601229762 311099159 781679333 956786665 61071105 679092420 722967222 800632436 645009884 231687912 225624010 839060715 166380748 454418762 68227047 636764878 25697497 970355081 761803679 924129339 245670888 397484876 63726575 863438310 912248862 361481072 927012671 253570269 672820016 447606362 961230597 944629217 977228424 222356448 969484272 682009290 209656720 546092628 975346622 797760672 778459759 284061802 675464205 782347318 720316773 873505818 718032423 528920716 985418027 839308661 27550846 872062382 880161788 779394958 572352147 980159038 478517162 980195151 964780746 820505203 894790633 988517765 751006170 9187384 541056964 801471341 312133928 493224725 945310452 280755896 922649687 920454511 975380347 370556647 248217143 381953686 900639748 619057360 612017398 703175764 978008318 11002452 737660776 758271723 757511055 586187445 843859016 902679017 38145973 887904765 783658730 276193258 872700431 730217369 691710367 474585845 714215536 494246733 824995332 862083380 431202240 503814086 79370414 267311473 742994366 670989236 778810254 447503010 229554972 525993550 854162463 290721077 177798943 323912539 655956445 503715168 501621351 965031489 871622379 967599806 679453402 451518362 837450730 692456220 707224987 829061387 329383784 888531719 730054579 35488477 841466425 801249775 725718637 290629438 468706478 670989236 806742013 658054934 684580967 331352510 786691115 681417505 902817368 65025978 692098055 677586698 912199439 654183808 129408553 245771564 326403380 939019487 877218599 989057481 515957931 860860347 911896095 243652272 230601568 962814161 524957856 492798864 844494502 475450368 235602001 374865006 455387016 128342214 156916076 33319522 513812343 714914193 505038164 104997319 919990142 828676065 23064323 779961868 751799845 70023405 744521100 967544842 49997559 838994973 338008984 733531645 609210301 770911755 673378111 842162547 893192190 975367344 762842579 357546063 659336797 524676027 611932016 940862414 943240837 518090400 595754263 432640421 516850672 994827783 630057435 120683917 118537454 107716729 934655199 929375411 858133061 673965995 260613320 196274188 953715654 968689742 900419869 360959669 745935972 144671997 642037166 407032199 782804936 847952802 552794402 502629664 182239527 701752079 636499060 969989467 786456987 780111012 816655761 850949934 144168746 145162336 378022079 791644513 971577076 791518222 670989236 359194489 590154489 302704341 534769595 795484413 450907532 855660532 878129747 991959490 926504073 817000975 670989236 470792964 556694337 272059594 774315527 884681285 808956186 196313972 856175271 615641991 905001153 169014422 157126202 451002765 79515577 143364981 920543255 684809718 355629498 237913843 461728112 991365668 361974011 865516891 437812353 587901448 699231113 574141790 309173910 537967149 964648077 789277952 516126384 740341685 842501624 865532327 376965896 776971021 656021100 489445261 600984035 636802752 572688060 273521059 823165076 309922695 857818282 77786056 933003378 357648098 254941793 654425136 343637158 359034468 745275097 163268018 894489190 958190667 713417864 659424793 869322738 894901202 122838439 358304792 469113399 915316776 617669377 422750506 752271917 53717348 791907385 184928795 979152660 917456020 878486175 61072284 777945701 797159624 382275697 516617499 355845533 852447459 902147920 530214127 406673023 858435689 730317813 939736253 544764239 530418244 990398567 639332644 58002583 564343119 821578672 453373133 84060310 792959961 462094302 280606487 699497873 875213158 792316015 681794485 924643948 995014907 605311518 866318872 769035575 704168246 974409228 676925598 717265937 856926226 382011008 922394442 145892166 686947765 90983943 545429084 945226932 350578628 508772453 126788648 364788961 967575577 339118035 53837910 502881745 751678756 423445001 417178929 906282477 165952497 932359018 59385191 521395089 176338742 107140479 713116844 379151062 973031125 549917758 871304708 705370078 618780742 359886126 961031528 972317706 682793908 760119176 854427154 380267280 998028532 970125710 10089412 10439237 733786296 945884012 347492701 951982482 957662268 675357414 147668679 922355853 423686006 182789903 504452419 856404279 507845302 564504345 812234378 904885027 670989236 718875817 633858843 688798294 9522894 185050843 925651387 260366236 757532865 698267384 499966124 796680400 446526806 352921973 13344809 844733437 119580548 795404729 240757481 768861929 977042541 245017020 177290203 786257637 848086195 917991831 753581884 698903981 229346048 793846727 585807762 698211018 891337543 242756693 814668960 478677375 51856753 954228135 50864456 850365807 555316251 803786159 976860268 796345933 837017994 786545317 798117330 457703095 676985726 711174925 924826172 738225876 401120484 520768763 423449816 795208751 898042584 611090264 188972507 708078644 264484240 504489258 424419247 293344403 388016780 713929244 874423610 31167961 949533043 713044363 632134351 318474715 379914100 773265224 992583599 802126095 239083742 626976524 531984864 228628623 556685061 561162845 751832835 994894922 976524562 511187184 637673188 527239627 686118630 54867850 357232974 26734996 666632325 653187022 220521771 579133149 838179320 978624137 301812936 991884532 803314821 28512679 608046760 408799068 359684127 109659550 746759247 220916690 831270287 435305289 316205528 979045602 383601700 135318486 575369480 428065301 226364630 78561909 286162716 886275156 966276714 479579571 903886222 492142960 666837098 61283731 787203592 955977771 243484727 368878797 34126097 872229399 492131312 923524522 92452008 976931852 667503827 867388445 806264036 661481584 971374939 965601949 743117550 475949403 833776620 778068802 910295293 898904188 635190957 577751028 898891322 761895499 188826079 572442220 813439330 135119370 840304838 728811036 524723954 821837027 674796706 83567133 502810405 929361117 54097316 178772908 525689932 867951401 802755921 396794502 47680339 902432642 935919319 670989236 152559665 756826842 136931183 301228282 571531108 855324326 746960130 851833064 997028171 541121275 508127802 770204508 724412838 411846625 834219347 267527327 416949343 596474673 476892682 776533539 290194713 311934555 358961368 574403027 187816949 657085497 774981538 205891512 818027609 743935839 684104612 246728322 742134751 915093416 843923945 620896842 157037784 335012564 268109488 449865978 949120241 544490239 855828643 593358602 734071409 838220407 934508130 967093881 397795028 590255715 49126376 940350136 49762431 319394953 917559485 210356211 344274029 849505254 108696680 847406817 754219917 260299168 752959999 129494741 187620040 693361874 782729009 836572393 427729507 364709195 54999384 740952268 872531761 680067045 798141583 977467778 480457788 561647068 705853980 510097957 630570705 710303439 954028854 10645179 412039931 974393783 833753881 859447170 354155052 745226309 24238851 209456166 31346847 181647828 898076734 898768426 754089791 579344111 766935400 847920047 818522013 30895032 881990143 804513272 821340847 933823235 876288125 727991376 986059624 948867523 881819025 717773653 947433487 991195793 747945937 489085143 814291236 647013457 375345130 851115508 714526399 719486617 595464703 997358350 181329060 349592107 949373810 670989236 623454533 338241194 490944374 168339264 861168407 114548426 997179499 659826075 113803581 918566409 736158503 874767995 879210243 760435016 331121330 333370514 485300002 696239997 957582279 793743799 994502356 635781785 947578940 867282791 357838874 727592848 720780134 409694100 801675630 713947233 640016376 46114871 129794657 808693821 112860562 168346212 967055850 151877957 746585969 262240893 196757721 117411693 974047639 467849359 348479364 295171257 352954575 834657657 752859435 640040323 306320910 267557502 924576465 335948054 213794773 463910864 442013214 353042446 210664928 759859965 835814731 360529924 773029080 399659874 857871043 841957393 728835658 254994832 614913124 47521302 920383209 685867228 554293290 793770212 523160885 674950760 792001094 836297836 283352411 967673024 907666709 595966455 976085560 699185851 330322639 211694022 372814116 971706345 967739534 689278764 274096554 193449046 374828915 705490609 880321756 302865037 295338057 504488686 806968378 357921779 214201050 606011578 492678630 947804292 713517849 993425745 881963383 18811423 836032168 992703797 6779381 771023139 891901622 329131187 764657189 685061267 214327102 989880529 153320322 929542233 764161887 847980754 920532660 649413535 226010187 564369271 519141014 114538108 987539669 426402518 809910441 672002104 415653750 893662039 670989236 926526720 811611441 696484598 879710780 494239981 948757271 235731831 133180696 345860918 788478414 987047299 36703866 874316902 775607719 897304874 846455686 382960085 982217590 789154845 414643420 835879222 716945061 109746643 407188566 325576752 935189804 752875613 271131175 936131996 746935164 46687843 699897289 719065897 113703625 654270251 444213341 489176961 58152774 528675735 722110633 641884976 433316072 698651270 652342641 771636290 907339426 823628970 975376419 715045378 19737374 960508714 947764018 252725083 963012975 151271572 987676541 423204925 277130021 561848759 633657928 878697436 304309075 474318103 846800075 14554260 961831661 721717634 892965372 860103051 774139465 645976525 991012079 817302911 516653045 929390103 894202379 503981446 938168717 748544706 729564961 482001641 211270462 920319185 864170184 456434238 978162229 380361212 925771265 703197099 674771298 974956333 295570866 864757880 1628368 740259613 968997855 33964120 60598249 60129959 167387551 502102359 710672985 999132316 857568335 224847910 595443891 843045727 378595658 974837841 805485732 741663124 35535739 756480350 847985727 729614843 481152530 776620453 498008211 622896232 329693224 126385181 897261690 379033067 631774686 698175083 953085880 603377032 941600511 862052295 657585798 774562479 878933661 557999499 756592433 670989236 229064009 749467295 397991954 398331499 344188723 883299412 732796797 969746166 676114776 511179341 905904153 611981598 679607771 668443358 248508040 597931631 857265802 745372261 713570939 356107642 923433327 948554816 17384825 670989236 337462983 697015022 670989236 766127482 844911624 726259698 728881189 90036053 66908978 930438977 707626959 385641443 853325379 261902707 253589240 982112836 323677626 880014446 616470284 621329785 385399824 192501321 923185188 924033347 905672152 616905232 968969770 401894801 851527804 165120809 918935606 992389281 889142733 35332454 593458331 786309610 407277394 925029475 622850395 416181924 900129417 64193643 306805711 483237620 978341859 520756739 686243691 772743779 72739871 544144181 652609318 844036590 234852167 100346304 448144251 349149281 685894452 106429326 800553239 672738912 618062877 396529040 269645461 688300703 844297495 460572189 780509041 631884899 949441124 716910855 388123747 964068231 110815215 510048994 796033727 579850476 951018028 854306125 219043889 709372599 727466822 862070640 55971486 758869214 455239145 785456893 920099159 229918066 965285986 736705182 847114394 905448023 802749245 195964701 17417961 914808749 309122072 661318588 276676791 782769444 762830941 850046247 356873764 612785963 927708066 547401965 500412183 584007911 128868539 975160189 348407161 845963393 990172972 450266766 862391788 191202032 808978401 927381879 393077651 667627473 135868277 898174539 771725937 673078279 839082848 652956383 13855810 291062618 811991380 773265813 525980878 106111594 814344312 747813101 289237150 222385806 727035279 513535206 759927853 659550010 843842110 934368476 26261889 848866128 246662028 996737828 519270904 746752619 996163457 994107527 771187695 909964858 736766937 35681306 857730991 930598105 498433758 702261708 303371230 609002082 901467072 168287580 205707990 724350281 199263931 881091209 489788003 405192143 393390713 550860135 805129349 937019131 28023606 826106286 317132607 644479171 842573766 675014686 314095247 64954604 701927786 300531162 473072031 510598142 760273708 812913687 537871951 882308896 488285343 922958261 783019562 468836493 12949142 938761153 708007994 865129155 216455887 998664044 216645464 773804606 947479180 687784147 754602422 625067885 650583730 339660354 729495312 306576031 33434062 271354156 343624977 226988315 950568487 505382432 458983856 34068587 457885867 740528905 912295142 864727059 790813627 26281745 196316557 926977218 790399448 672516875 932973460 432001368 904698976 392430626 266337920 852372967 990121910 916075719 701893129 919789193 497193078 151639502 213116905 190413968 155473550 367533146 796015126 45573481 661804905 731647151 453376129 976023181 773317816 525894184 734703791 586827890 993657992 749403222 335260983 361832729 41304735 74559964 989489400 779054567 844711174 213406803 997977899 331912176 386038322 965215093 690765710 587151041 85289949 724099415 892093668 735931630 851304787 670989236 756018372 894886198 778905162 220430384 735567093 917234434 670989236 721605978 587649345 763473161 953770068 827803094 903961856 725317 142747723 356891499 251548460 670989236 862330982 895641775 805193463 458007892 608476578 695891649 370739882 876105385 742098587 513606471 419711802 750078306 998091017 873247215 582657074 541193895 498434875 701901396 72772790 149115244 678607223 741464650 403748038 68523258 512103095 606621283 87578076 873066245 536898292 495950496 898693704 719579811 59834921 684172681 797114442 707821703 48086155 572357932 926423118 685207429 670814439 691793999 37718739 236292765 842188451 857199115 187371624 438041156 881843843 512607578 572275241 933462615 928590426 119989122 25971324 982658921 648638836 667283612 946565964 874003669 83225960 356969416 709969465 743741944 749659139 676441212 417969901 197035800 180883081 735220225 464723872 619101691 394697599 360915432 859646647 125974405 848269371 983458697 799081048 42864638 929679371 100841577 477567739 268428753 172489875 112071944 727371512 567179998 914732048 448947591 864512390 643590699 398715719 914463358 208080025 579283854 992182538 835366544 628526205 690947921 822350666 862398489 67640548 648167513 74478605 718777390 232131959 683383114 17826846 199028617 908726469 329740600 239126127 372140469 207177832 464468224 297212740 145086849 886095427 157873713 401765424 419486047 384167178 404773899 550738102 871056641 354383276 766268882 460563006 949682768 82378456 905290723 726715641 765418436 435127373 92313367 399094114 954167771 925941504 307141368 997622381 822289985 598377294 497366273 853510816 494494971 927746972 759838855 720975969 453730398 611881731 924528774 201293759 885405326 856734631 892938791 409875665 51170247 584160028 791871117 389630156 377755055 329025822 950619181 740395764 195091330 721056684 547636258 288451888 682132299 431764587 427574990 936938360 966611313 765336411 914738440 672749748 940186275 694428103 670989236 836324043 705055342 587416769 905476048 925141608 802486012 837123893 898646324 729171303 965487413 484139155 131288064 49915818 256971329 773458266 942951151 934704291 769222357 54093819 648541450 644944985 387605879 552622569 385172923 540963859 653324530 783117723 696911418 309532234 772463373 283988773 64538729 24755493 620504932 934108792 493055226 929823946 881124431 104766055 865455067 172811802 152878535 805684094 609252417 746804149 964093669 74817669 238193649 534286802 70984576 823451901 753644295 139951597 422608175 314436859 163796661 394485667 799803239 868445970 861001057 475407027 374197390 676181299 958744896 85774754 966434725 542366853 752545601 715232063 831545125 560752451 759719591 681570897 907451430 991563403 832846815 571610212 283715094 727076851 855334384 305010268 392819487 973592254 985090034 633966932 939593842 725115202 607290998 956949045 473080656 867811999 684503759 33334411 957616522 293846661 455845367 131342339 190274894 7315207 749807012 678192647 688014189 688119550 889697975 46301264 848895596 705954393 763755863 597751678 950464639 946589903 686781615 339856998 342315921 734043433 941580664 912928512 210074797 761123937 109218402 585955671 575267161 14041594 850215740 689162324 394488222 890934535 973215704 911159707 590417390 248850258 255125347 404936503 315298681 336989806 495421087 869024472 38755905 943340519 478596832 434775530 822345381 266286453 836331162 895189378 196800926 694927879 774473971 892049489 521189199 447159104 930712749 713584275 394779284 843098260 383766388 1398402 855031875 890194242 322938041 842565062 611069614 659320263 745492271 555418296 923893499 224970498 785173527 330470506 706375713 272440064 388370798 135114495 903398397 765017259 675792231 673126836 6065969 536989357 951243592 237325385 725776771 524349896 679026084 238527167 282218612 866876522 805762795 951315582 460428804 193380529 848475410 769150359 515273855 698340580 962805088 732777327 768970505 728385201 736253743 759340247 757004009 840673779 903466671 335224181 891468485 685343817 802899838 965366789 853805281 661064648 905037898 782076911 890630016 443507043 216977258 544554526 797123203 278713153 850802862 324502599 699546856 790135535 151498424 374020992 769397843 271666175 484201147 146325859 776395417 13305660 544846843 670989236 742986410 689809012 972235003 885155203 846594471 881177154 432900063 907835796 749656424 390010356 87789777 911806828 57119125 777693376 857204113 967503431 528747209 941181605 670989236 716326600 873617433 986743092 909154978 831958851 143757151 727164075 361360608 557026102 217843372 712482605 230994184 322656682 103611826 476671779 962586887 495941020 158674042 65044145 601044899 879341007 213402381 755835028 548889700 973236302 874174897 108910568 730350967 701066092 686646329 915570301 400638823 660814860 200658521 372686653 649363711 199671414 771983717 604219678 440760180 880962134 758249849 178651395 594870345 853857034 139116714 207330766 475374057 81928315 438491142 113332963 670989236 434035902 954425991 524343355 759104594 706108451 840758394 223154648 389503243 924385642 61528831 731802541 957427934 289048793 813902704 10045176 351824516 556117332 277093534 458571679 493478893 985061035 624204941 55577827 762113730 50764968 954440967 771004789 928204275 324542107 702387423 714362669 99671699 831244784 972094214 937542691 143246008 902747840 44343261 226658155 350202903 353487892 743546115 391901117 829934239 671664896 157275400 268120399 744121439 293822138 299130097 613660713 413971732 504909433 737338539 261767860 848278905 489609944 391943654 436729116 221295337 493483668 861997505 330273979 724305629 589826064 70770792 861035974 112547411 13457767 737369031 884236435 787276588 703769403 192544114 61292595 859159422 912725031 938399416 78590048 920476110 108556582 315751107 744029067 452247199 42387854 738732879 899008438 873919518 93417837 441961406 186718941 973395775 279526186 833199563 578698053 500785983 732204144 998351765 973184609 139263961 931800911 132766697 12175825 681821342 499086294 903631492 706518131 891081745 905580919 209693746 750993172 705303759 598183575 880137007 899756165 801881464 206807404 827903755 73809519 968047915 871214617 734291415 409102516 928728153 232027145 671074693 701242727 325563134 493148794 57364511 881014769 839888024 87627068 730410317 878934624 862761088 402870289 804776130 999595821 166022057 498914543 943093005 898636674 962832167 661440978 340737464 962296309 957569745 379880649 952952006 430826133 109820127 751313355 766333438 764469739 76566789 920587060 518342049 30387846 610903434 793338873 910820481 921630641 798688005 779703561 446924507 706662923 713709000 702864057 854226190 935956587 523329229 477497534 672636177 298190683 746359520 240660882 749295353 785068134 61110283 44376445 920197515 917261529 711603090 376209072 404152988 664191271 670989236 671834890 870401852 720862204 833582320 849095443 693968155 770668761 949534627 912183900 27735719 712638670 67680117 867893992 624649428 706700499 906872978 134339402 964672162 855400775 624073728 688952019 22179930 349134598 482808030 950606946 355643653 869634670 468259329 421116710 770358557 257840067 930368357 476221232 996384895 314885484 962517297 72216853 263896355 963301295 647495406 855260655 84863777 815591088 508123003 2525969 853259358 770539014 111195076 548039461 118422122 956256621 670989236 961290909 811660775 606381314 876506045 691099842 789921898 799723755 926075282 742105531 281106772 666220293 336830943 585487920 271107612 417234676 572813591 759468087 39850925 39825370 19278230 846049629 32728532 559375309 425066529 419922008 881672055 865277851 133341337 974255337 903199290 669578342 491172471 928927850 977967551 560384600 734075298 750206454 196621128 702612450 583333765 247652243 223145579 977977157 66225872 862964116 189343984 574874631 568701174 675816465 342212767 110220357 167698477 205750246 979747170 412748246 729881425 813256942 82735362 709595917 670368752 232849866 812066933 845295782 227245669 113525929 666122355 156172137 195105701 353916510 766053231 587367704 285006008 804564748 650165202 126351097 388686420 202384862 372021174 979450885 873805820 73049668 904446056 828786309 892119182 856031437 689094011 798446357 972268581 747102731 264782142 497839484 703540428 929592173 741067466 602622832 422508309 80025396 497877153 508187351 246808760 446966124 465948693 673944236 714652159 176986142 942484535 17049768 354300659 86608674 432839406 760842619 742120978 670989236 566008706 184997760 691953310 205898942 296989823 347347903 798945742 907785853 702239970 685492687 699869037 19587834 844473220 820643352 670989236 666195495 957913803 315935007 198953165 289753508 922206693 758831461 701868890 746214297 604409420 860049283 881405005 670989236 980297390 929616258 604045675 503379161 2143814 340686271 392908308 925890075 260513165 432888137 55898677 418045379 930482026 807707083 288611067 985538834 344979315 792193585 726455320 666171409 802581084 989860883 965217722 225259446 688846765 106173860 461265814 821124265 781906278 400063689 823151154 847948050 180899600 29880203 49344433 871190122 990639002 178560000 48250538 915874584 312322215 698101112 682442530 790712926 537708243 983050469 236410622 744685189 883163732 273830426 831186119 656323081 692696905 878875253 853155134 849195757 932047854 653039326 618966101 859848610 759598306 692805424 838366907 887412807 930863136 6007621 791334622 839984808 960975668 30364171 342803415 297006617 932697077 730099176 900169585 149107265 810195648 979273177 188167354 832654360 982902940 604072280 368661285 818577985 814336058 893406103 941223711 190120518 5737448 569760806 821223564 995448700 396909147 724982124 694336283 173333948 622753059 718026877 995331911 108820831 512368830 185754429 40528634 330295456 882599469 267277724 57816776 966495000 972644042 699215122 700405934 122344102 333715840 445621263 606144443 667035978 237248058 974493851 620692336 981185620 600134597 808436155 409379714 454999903 801548100 871114916 995599587 803274266 924759840 765387056 628757044 256826082 533621751 596282604 301421183 604049839 349698605 59856186 285755361 638817707 853253539 153964097 963648632 313447994 98861018 729416902 878454367 678067184 738051789 730542304 827390577 120780105 190082121 301971840 983799292 404309050 870233945 950663842 791565803 33995680 117970805 780086553 416735925 862229585 878715605 157588982 975234223 813160641 502030590 900492478 503490643 112897481 80557165 806989943 955332933 753734875 611839081 259625296 550944971 231063178 688173511 695081071 651246015 171812724 683819055 815818361 245250159 886174404 639546154 535393593 792327438 871696527 952348961 275564553 905482291 240412023 702566258 369669761 42688758 290267547 854892955 824711230 533896662 832326425 824588187 142731753 900823932 990192272 838878951 815741610 27318762 42039949 233079528 22181305 788830377 957126965 884668209 809830122 327059486 968039533 585061416 713056265 338989480 270501024 482031169 530157450 754235099 699079998 772264783 124244796 836457160 200464674 373338848 816976889 173507748 670989236 680016819 518855986 913300185 211025408 683696103 346830831 48342117 716994091 491102358 394362710 29558836 348237080 714936813 35346613 992586002 865596134 666107361 272822615 748137641 934048375 802387938 882007198 607761899 603858119 26865150 457065562 982145922 290951330 986313108 751668527 881852796 546133485 762727509 799794027 765082885 680308633 809239635 12632226 105474502 670989236 467689871 673464076 876929946 831597260 764539303 419337583 807083093 855517445 167048649 398874933 43283353 598856479 31362367 615093210 65362904 89376534 767554473 967045653 39485610 390539150 898026023 200988014 892861266 895474443 904722471 949654386 235336436 773232013 704754958 385382366 892358537 558868624 645305962 941202398 417870535 1557737 927182254 421725542 686799269 874537903 697601729 670989236 530099913 739487999 479406257 744325691 983555396 431243857 780595593 49729024 665635695 168482673 171046108 630621043 143460048 163190458 344619391 870647505 230402951 37151677 525162985 798390387 798031052 670989236 466550384 800326581 69852771 984099496 169700071 365049761 307602061 748457111 595071402 808529442 840549807 898775994 583680378 890506431 751928831 752841680 436101105 991073599 94375126 442940821 621870153 252270973 852182498 794238445 814217552 463489110 908841187 403424761 510037840 323255687 814774989 169520250 803559389 670989236 231255792 17234844 2977352 948284858 670989236 461735888 887185295 711882114 472472882 786519617 639652378 611517013 77534563 723794226 688228798 744600123 593954701 655436204 91469302 684164597 596304291 848370514 32425451 952688775 897295880 375798759 294900767 122974103 652997592 690030819 636833608 377361624 5283183 368492450 30006706 924358152 60543581 494886611 164481806 884154458 878726778 708713507 82409671 789762867 993601626 136324795 370779922 897212259 855025662 857075198 403507305 741972700 774296232 482319892 732811026 670989236 859923052 826775953 905297401 193674235 709664101 778668623 778215747 737703786 754011202 774872046 871905386 256421636 643830052 750618406 958178078 197315188 349151879 13799409 169966882 930110982 707343213 721394870 188640314 146923348 772584483 962991923 170069995 119109632 362091412 535204733 264129283 555357997 528701622 778617519 675104319 801820263 160562397 605827355 616358270 861217103 844736906 411145534 608261141 607212157 46401733 514958395 523586497 765955547 670199283 310030425 764761354 961228678 886522294 725042373 556110347 785590486 256327119 734528387 729159141 128679708 245753953 779452365 215603639 383056633 855340750 502854332 954082866 963824498 435382941 972347894 367869293 643006466 699005412 16931201 754668853 768379568 684622064 619315245 33952133 423979822 823116390 674399396 675623999 704272830 863198957 997561947 365074983 295879200 903543232 723233098 741751544 974622723 886885769 425450733 271566589 343438467 455224530 671858216 456431402 112734969 703820232 964261699 44610784 142753323 685176566 845692126 732957172 708715135 789936001 892748722 899261873 749755898 434361857 997261219 106481554 736621830 201494924 828006640 939090078 227270867 167166472 425017966 85550624 467791328 737064229 965923536 760192754 499225508 565094906 950752642 75299441 525017371 429860565 536849165 538737670 433165653 732010654 801073958 596980601 602305594 433818663 772503761 954335347 423688860 923613607 597380960 796132843 748699772 971745992 809590092 454466662 916851012 441825208 276480667 852359853 468140170 365720921 843117293 888627265 351020392 229998628 253651224 467406863 853261594 795614962 952181349 801414008 100594394 977985553 952537458 886364217 733008379 216216176 648269768 667967539 40233179 883859851 908974302 535017862 687100332 671465311 485687157 950623995 38638341 648805043 525740305 770806719 797720676 563552284 11603855 792555828 451585885 633716034 453356053 979322789 485641714 310877400 716164169 688750230 275484739 685942875 991552189 715156336 883188173 11702314 810424757 234068735 504567487 670989236 476224358 151482461 727808031 411060799 519306013 538186424 200578787 24625830 420876144 84301764 74853615 567272095 931868048 889308801 989590189 915847189 280114067 53141493 935981076 764445848 570904518 918218151 182631120 577232576 931181023 127281415 899904836 557508928 972277702 248855459 263218240 919928748 369705493 30450265 433948457 715941347 740061769 799068766 670989236 716561582 695357709 829242949 849592346 987491174 721697833 777784021 670989236 462331146 601184429 368033766 683126348 159667094 801661538 498282756 454847229 197559622 352493532 604871926 868443125 40183098 170956203 670989236 598865570 491756786 690186537 186676994 851208503 807803530 694771359 457480871 283789168 844190300 969276949 786502534 352539254 941871637 121146790 609158464 766947054 823763980 882515722 303126256 366272578 84133215 742240898 817603919 878667308 111603014 811959086 242148004 673142917 617637297 843944204 843885407 626385489 872372760 145152326 670989236 11757960 717392978 987941362 737561392 350945984 862799994 781284373 515047733 842711035 314757636 776114602 741892789 800815766 925234673 772250869 274955613 859571110 337767055 913419398 94875287 106581364 881525140 884501515 599899044 966226035 184732935 360760425 893947300 393488999 663396340 884063316 296844247 744888433 415866601 7588223 78857279 956069922 736948670 501433889 755854811 709738226 669689038 533509624 800159036 732359628 482564632 499897609 866765621 465274899 460999555 981171538 460991347 723448690 931941751 842954 764879769 571906472 970253556 493121986 539390286 407002791 554496771 216269867 24093457 897654581 849255278 748357454 528228338 797014676 332101963 999360679 258074928 778259828 953224387 266450078 993696716 786263866 382496502 888517841 53195370 504215047 697299504 814313099 186518130 987428548 894562850 429277983 244579011 759086088 106433118 923785932 823445683 903121986 453824146 326537384 630445209 229243270 674001462 856067826 722446165 481218719 871294976 925519922 922111170 431202892 439414725 271557059 728773882 947602002 969478321 736683326 830265189 820386429 340671425 761386044 852497173 73360017 687646032 494369721 678361533 567728521 454068970 390990156 988000915 670989236 965293157 46719205 633888994 697217305 784597356 132259662 824420208 715893477 761619065 126536004 673910566 749145280 702370177 613678375 357683986 818127424 969150780 853062390 284184899 180379005 315593428 377908606 970589347 753277000 408283117 592648265 647435739 919115054 799355007 914993546 670989236 68869587 508905536 487527570 988054456 127664827 520652615 572487531 930995676 771909849 637637366 30698408 782162247 130264366 226309356 676850523 907698453 321959362 137232402 347617600 663002700 772380283 595509399 953778194 58171514 707717627 224429014 864615305 541660022 60427024 686004219 21372179 526520976 405419062 241429221 670989236 450261461 728536974 247027058 955037675 264450209 692183898 996444286 67481479 738334670 701740362 694307168 377851671 752623518 419095906 886912581 100292147 954412321 22007254 269037986 739421297 893777236 864801221 764801147 870665213 112376895 811122682 681421585 170589814 180240978 690068018 969915172 670989236 178397682 58790401 110947008 46802217 67362930 369027650 388912452 235654527 775912371 954496048 582835824 815640599 741624823 444739210 728490736 456060724 688031835 866769351 963186472 906415836 584552832 822519387 696767127 708591290 806476078 825449645 25838743 145819141 389241464 953473674 493160258 479979693 668075495 463733332 966052411 888532430 18288638 349717572 247735667 734050042 972527720 640190995 871335121 812948576 265135144 17485999 768708782 778352771 543445017 769996865 214708156 798607178 421554269 740735377 761734522 113502396 843254299 670989236 736108029 954884022 839703193 886140405 359785053 370403678 549041606 744082991 162854313 546335905 955454925 699126663 765643518 636920412 416390690 358560319 910839134 920721102 670989236 880676105 602142799 740405047 448393637 609855171 761875700 982869060 364232788 623989246 985175662 426850636 789474090 971559836 496198136 115909472 944577010 644877419 152037151 410688839 690418815 902645241 310140834 426860193 81147727 688500700 800866974 830682599 877284173 368750991 832260749 312088862 532589580 885054143 82169209 855819836 611383682 85587815 707185397 470089884 590112534 505848228 71481478 880683491 881801064 732034528 946226465 932915115 902032281 794144323 634233492 603444551 639303356 447641568 333789281 111307835 466234156 822642607 947147857 16639523 687225131 302281799 660216439 751340391 845372509 787628401 873175883 715305275 984065783 892576020 148275494 887476434 828338597 952824523 532127295 970360836 944058727 986343626 967478310 219486247 670989236 792616133 852640899 18614934 38632009 599130776 670989236 878746310 936645718 880185706 293575901 759481964 309190003 64062708 573483371 685990620 968861626 443505254 994182324 865101771 471951638 401846827 429354767 42345921 286755557 273605579 465679583 375950996 808825450 537173726 409189200 855635514 299128096 340717777 680321969 849142426 56303673 936432154 641163061 509038494 859354405 391253392 675541410 258553009 697304293 320181649 773070294 333658038 727184679 859686723 835037496 376182421 315587440 799411059 6089702 876133169 282667562 794717696 822419643 988206711 777316935 418451256 262620050 773285422 821371552 729102162 956776278 770668971 519890745 634658836 991177318 143080674 320649739 253785486 863226827 138111103 793904895 805264285 846074393 195468453 574615987 615498968 874214564 302108555 349032552 404424036 731966473 81796397 162077082 917522341 541461088 823929704 709786488 933610067 8509680 999291797 351835181 180581779 736259683 306562201 930189089 897587967 879623015 676502952 416229042 788422174 781849239 771804791 998541012 848569642 948923414 29891035 938247783 533375780 300814342 946253036 922424968 701705211 942610058 943554794 844076959 877989148 567743082 827998259 542209414 190989232 55296002 754546161 711910955 146553015 680447818 599907740 800837692 48196777 933944817 964213629 743458623 122371454 764249680 966828997 902480376 25427030 324882279 76460350 992350199 754011921 781986990 962044542 535869951 759226908 982790404 830766606 639846209 991967835 766247473 753332261 217169865 72816242 669413300 780119039 441916443 901104647 513014581 611884577 760762240 882346768 185458805 457461566 367670102 907652034 429361695 615087605 856350870 933035972 736567465 958046474 242301427 443154914 152763305 913153943 670989236 459648201 199037971 886151418 447683416 998903684 151131212 833522871 657498765 987413633 987751127 185841328 134462752 965174388 397082522 500012929 152119986 218495459 965451920 111423462 613125362 860669714 901959946 292017392 194239361 780284523 240360051 757246634 648512882 684905591 629975752 944839730 788773814 845431080 544490960 881678518 178268432 687619260 129110209 779118995 990846256 434812023 295690409 495820403 827121308 825181349 996981680 33473384 849789137 997786799 57405017 824340200 474295650 850572952 983485856 768552281 721945528 977956996 133551161 775220075 819764295 290929096 295227556 151623312 640615485 339145859 875931519 651758978 628697629 730238165 813020359 841269466 915352791 887164434 565035759 974396776 298154840 681835443 707423651 69723691 109406020 165253319 417709869 208434623 102147061 940104706 499835060 843525867 116607631 889137374 932155166 932861774 992255082 831234198 873859055 975500900 999217297 550372908 12730168 804573256 731106693 705494823 320079230 385142143 989487772 763389220 947566266 765965996 86014735 442347463 484550956 949994878 898379979 689753231 724952289 848396344 887244624 322352337 882634925 250459777 455564605 408399357 626357287 376772982 322221257 770883388 815007065 460784429 158699458 826358452 346441453 748216532 304429400 212229485 95758931 637156730 769031581 64796980 284537333 648651102 356774189 903251738 776122210 277452029 712107046 801887166 426857239 734458571 26297436 364503978 283191485 617537546 719129948 708836028 743152511 770185125 718662723 969137861 113880412 397198288 267609726 822991447 518881773 162571599 933859950 648494105 589416103 784765290 738090982 735587622 340495969 58371025 727602388 369084392 820814504 793888765 518122105 18905603 733692044 317153814 760210568 597061017 225221869 670989236 226894300 901233151 13797201 768898391 688525381 843842982 611963475 640170058 235001322 830199231 312963267 778129949 414244395 955483342 153742069 565434713 8150450 618960478 753795641 7254921 255627711 800572084 721223237 17853419 935618236 606174792 962630847 688841170 182816897 412651285 573184723 360743789 788971711 267288789 709785337 779237837 779440840 181362364 446521501 651615574 873421539 37796206 808305896 757335228 602412517 275584298 865419993 891505585 390761596 356973168 405083316 892703386 553189265 795343598 138263428 427016285 141873070 936133456 172754599 431947594 306000291 290228251 661995264 996114953 972450485 925710247 228772332 356849772 381952907 673522698 93615682 919256988 752290294 364193040 164337347 670989236 852943473 572887950 187242460 356583746 718029297 863633372 134154856 351187762 307584309 777741559 762207955 65951221 948959827 978964107 574104801 164244477 422983683 813352361 368351223 163218679 656529510 891263536 782148439 805906102 615257384 507160872 892160118 864183453 504780920 750769842 766643557 972226520 899476426 823120349 454893648 21970093 344283220 724279688 622845052 752955218 254388336 82600418 842537367 807067324 931710193 595559275 499333523 462224668 73407287 577695160 208159798 250195807 781692409 914385753 822791596 849532246 651248800 839324774 772263523 784219128 275040447 425706621 679189512 952640351 699995851 861423909 718549265 479523313 935628072 347631725 166034663 824201909 977328704 536970859 704617279 627208827 577169761 383798426 933206755 714841169 452823687 954323635 522274555 711672739 840374924 584750343 808510838 249453246 898473721 861892198 608237496 451331724 717902498 774726553 756365676 678992008 794010729 199932304 724352714 801866369 430649677 312982344 195540201 740275426 913836250 638522585 215038384 952511123 507332679 811562721 409546638 670989236 302935023 126995630 444262554 10479993 137204406 990915925 15694658 934821165 95061486 997208661 770368663 763652072 781907170 250553642 778821641 689025656 860507244 320249721 998227331 673011160 465476502 839257916 867863935 898250367 753662267 623207757 308789968 473168785 403180778 246607029 771858762 440417423 169687084 432114274 185995950 880791239 688156489 381633775 708976810 717953304 370708699 502688207 25357159 879541756 985296712 970611158 670989236 942258593 948465355 909488076 930866268 687053022 311176326 743928889 389814570 739568057 582009845 200684751 681745344 873302092 357375160 331047375 493979957 720997878 327246779 730984448 998073053 71391229 488258463 916692315 126861529 773646356 768605359 944502479 23436660 617560738 707432346 73579134 194866360 631423351 733919055 753522461 551610101 857750079 838552565 831813781 685495198 981955059 273223829 116583071 670989236 536986786 670989236 950949635 240596506 821188047 45403322 892207941 963589672 694461959 415553121 13829958 670989236 182959334 9902848 996271030 236476859 996499755 809441040 843864962 113000645 540468307 276244747 74725311 534337862 824277515 278534668 37452178 530675434 237598331 823872523 797439994 905634814 520523666 430134379 813220413 769022745 521319801 853266994 842156326 899447101 529687080 528192801 953671824 874188455 914764808 412269860 297685566 460286376 12856149 882824734 506192382 670989236 55874967 493336347 421066915 244980566 588509296 363504308 522268077 825072518 12157677 818815876 785716077 765104570 11472948 710767154 35071393 757886039 679093983 656604153 176197295 687786770 422318394 995827002 989085274 32626265 670989236 897309643 709321459 412016419 863667142 617778433 825416308 728315823 727330579 846702976 994574945 807682948 157973874 440311593 392807143 633949106 803342551 400503786 184870458 117657995 783053168 153820922 501622205 533303653 93292115 640164790 204591408 450193530 785010379 844374081 497634643 907109425 324802613 759310476 858798145 714675398 697998201 643771598 972244089 299235064 750400743 980309549 738646004 880896691 916010468 758539967 120062430 670989236 100567419 482575986 362880815 346537781 491599476 400760782 973602203 136787426 197319865 666564065 128355720 670989236 852816968 958464893 912253153 710679077 467679292 357550819 245166935 894244280 960807901 364046416 199538816 52837512 747007564 685732904 913536370 143611075 108507535 911028483 310272238 670989236 64206047 76254403 316254442 581760643 942530537 939219829 677251782 937904821 683457923 398207686 198644788 362246311 347037994 204181652 965840214 565413620 140037986 930293371 866387944 592112034 479264552 481750117 897605362 667244679 2853113 215597630 235709726 963577042 774468139 707943035 85689437 495213825 347253136 589462353 243961729 851541072 8354767 866039316 744812443 575732318 28199643 767846464 871586716 225875414 994052771 185640236 880088367 178146063 573748378 986793336 641439284 214182121 956218324 218850361 7057488 146629995 758491314 978959228 346951654 667770045 141933657 450865409 354683308 826764709 201099110 643532021 612344975 504097672 559734438 927645258 703735500 216510911 10880886 907331492 892600374 945848640 763641007 397788309 804489849 314055945 720088271 927702625 621916877 894584482 773200903 447689414 670989236 263015739 843372556 483971465 847440170 134380722 868202352 924299871 114472334 487341265 210985950 353956646 497286599 624617433 799443773 784402843 672474801 539251297 348613435 733788835 709020293 831319941 921616968 124081511 914027088 751544219 821578325 519696122 980513765 604085929 871797687 148839247 867372110 595857111 279269723 873344695 731447827 956125602 529315453 701099627 58660597 130543694 670989236 424065065 783005658 133254589 926795291 411777159 765673417 395229697 851035089 31051159 248633433 754741850 843528412 910710369 946341574 814636261 820205066 967562866 592488973 997893788 273169130 101641098 253652044 125950473 762777469 484369576 491208252 199555336 934723775 791050340 435622821 581928183 905168570 976810865 720997381 336358950 877503206 996170485 250935614 173139652 684075214 968745523 184091593 206050876 846032521 675363306 160705566 191471673 953442201 403374886 569003903 41907449 947776317 160106310 193325597 131055178 854208421 739229897 808097674 891285689 181875169 366520537 123443162 258261521 796014772 422032138 260071522 416106462 454395447 838787616 502270822 155533910 933771824 755115084 815079514 571616585 700838345 788177380 586151990 866282157 381828223 455097634 859036043 923692046 419674534 582156441 586184429 264055701 836669333 761867331 750835420 364643562 823813007 935208736 441637629 74380398 50867569 633853694 206578542 775310527 790977619 913681370 510470953 844853955 696055712 913195866 723185877 966781077 967450092 519134591 714843471 672088321 952505820 961406179 926266585 344970067 919896016 787263931 983578743 877647473 466823924 673677171 774679970 938259765 644211141 841137755 633367086 464302669 931819864 935030350 384578300 28462233 697684700 920736634 968502543 72426904 281591145 771952863 593108598 335633058 405822559 601484149 313188623 847848522 820496366 886574976 869254405 955679727 788382625 771561946 985360668 681479875 442298814 853984164 186650997 967302462 948749015 100480680 128551065 964972333 849217919 479630876 938303220 699856619 868476189 670989236 278599425 110501648 227753086 750503507 576157012 825258092 3610724 869561132 394213779 543881770 184661858 155469389 194547231 388960622 693305722 917422666 857517368 365484071 274783923 6685721 936747479 234508836 788837423 33657531 178048131 150738904 503214034 522177008 905421838 623305789 808849331 443032902 538829265 845958604 269711550 866416040 802043845 876063740 901918113 226276569 549477820 670989236 3728033 815304087 634471660 765069831 251458090 670989236 633237785 709983980 265028095 777994052 424298920 868240515 411959629 2855888 230212568 625990006 878817164 28778746 223101102 368087322 981695633 876770863 868193050 682087959 775614786 775830308 416828966 772918479 737535809 769231149 967834660 625516630 924626380 737502161 781381091 810166957 809339747 92044178 963982976 980264917 86302799 952202504 193362570 333755335 885079212 357437897 375884263 471498268 917954879 707311908 742339800 828845256 329644341 907274948 684718782 440741652 323825379 931240868 546879613 940406978 195154870 487228137 848244611 901681478 22020271 917665234 800803888 270273232 703207042 831607561 580198339 610456116 90260831 483305439 422278435 700956290 97790125 145427663 665146709 965656249 270894560 865565498 204365331 916701275 223004627 845981120 756547144 973356294 701047554 162033631 764627202 696177911 964567832 418303131 270191733 383909336 698402251 639568446 653767131 521177717 970711287 949027413 815098763 345033904 408449720 717129997 743599725 718543097 410113029 935774767 937188583 486352592 223257236 802379165 854584450 692806342 868849722 754242814 709834419 956244757 976525420 990602769 940866726 341457226 276670968 248626842 167054105 942205876 687717408 32190745 131258570 944914122 233836391 798308822 983822551 993069604 755293645 909883344 69200083 288263494 703359914 932505698 671127403 289862211 325794244 824972425 288592188 857676252 696472213 244789631 768797851 752725807 461040515 797459753 479160632 24433212 838167773 706448965 777359745 741998784 133353408 989356799 557841549 938017776 781940095 961995526 684383964 839646687 814519316 795584006 838264026 888723682 852376052 63813581 723483467 670989236 670989236 55758763 312740050 347445897 921907248 460083150 413536306 893637682 193306469 757211541 277039370 678850018 684116756 836984384 66938332 856860760 733028019 679676675 934420155 673981940 320764977 142479711 886960376 838487095 936078214 73399919 697209621 897870210 673776345 243515755 863225606 689047034 696694894 816894042 825938084 504004958 496220265 596287570 563385808 710425643 552838643 908549085 657228776 253059269 272645689 4522998 708946393 431805176 373331988 989482943 57806195 868026687 730408323 11296017 260863000 10543166 521386059 688348623 73219851 344946023 747880197 484559527 988688549 453255087 277157158 857747230 28361385 910998060 717235618 256966578 754381185 317989396 727696236 9316221 423016040 825963382 555894922 442471205 44050368 270161181 856031054 670989236 933320572 799523848 678526486 837829496 586633684 875479501 337472817 986720474 14785828 152066056 470282353 747439872 799384955 947523026 401441967 440734601 843106818 485399626 490872472 378448286 6906769 77759658 731469930 792854530 722170432 28094276 741211129 867125580 148244928 926025343 29127740 160168145 676682704 580446703 734291392 475269309 992217106 357000867 779025565 611168240 611327484 921348192 560009606 49480142 672987183 449382553 582556405 107176594 903585560 911734044 287615968 244321004 392402997 651390252 433631985 889797633 94038290 988130891 354929381 992149108 883656420 901520398 670989236 340417128 892996078 357352869 864346765 791424245 115016804 903630789 480960379 973276373 839236743 901472426 84177801 160472259 286073308 988831672 217145139 703309081 983902850 697619015 817581442 696567882 92001305 806856654 108660871 722617496 213227468 774141986 892153477 314944282 311944444 851134524 182831140 773337937 812855506 35068885 248198935 171351446 204383087 436933431 380010392 865368271 911376307 420758605 415086041 528172789 143693572 813914481 111904942 632865785 144991688 218242651 927199536 728353852 13641216 744791130 760623350 591493254 225549902 299274390 923607060 711054372 595926954 551045620 786156608 686646280 491089175 740595249 459498287 18119089 711776002 223349782 931040328 377021392 577552875 928307468 830895712 255385479 734039138 655407798 122519430 142501466 881007303 769141479 804618026 910294587 833880166 811352469 758169104 811886545 699251874 651313906 731312277 541383885 986913981 841169022 204042736 413262118 174363289 695062255 806320019 702723919 180155572 21560449 614177022 886173355 652258462 670989236 821090988 615935486 716833219 283031718 952627044 991404352 852949878 209005574 140912397 526683777 890421169 780269774 498824604 38404758 800546688 790787316 11586706 882238167 784106825 235388867 783381356 398343474 523854480 642527383 870902004 709117751 709494979 791016224 730044412 720094163 340999759 54519116 441120268 942132161 537469153 620281190 979522895 275424934 247115655 574226146 706957336 913461928 702651984 518590075 589815746 86519807 679234492 800987641 706127704 884063305 738003687 982767800 970160333 693840300 506462681 970987070 812286791 373774497 115463968 635601499 432969661 852144266 857390870 798878233 320724618 897489925 382053139 265976961 574028000 542427522 948574778 166028032 997571654 143565508 654864718 64051237 607308092 197408405 908796913 345253562 960075104 499787275 740726590 670816686 809965445 861228211 638803730 529130599 615001268 67403447 894470452 192433744 718732320 50359876 102445943 14819648 80809623 896444172 296386049 997139176 190553887 933796209 963473291 463332432 858501809 510079657 749553739 819796642 584599956 744119777 143274047 643219381 992710299 69989183 349515000 943169935 189179449 315751432 828392758 167408122 10138914 995018796 989418301 651273458 396899058 789200798 137629364 703844818 103856044 968184986 803810284 855924741 744295399 855652531 277058435 863928464 316520493 288974119 503385740 248116736 783186228 300646109 546564841 521538811 183519796 863281515 985727674 229598082 493913673 4466694 922957729 989152839 798747305 400368024 121212840 908228078 819422001 457743128 488004860 814010918 386225069 862544747 856971255 888159771 740843310 985204285 85323608 749069862 724857671 925320321 9817420 512309271 198679264 910054055 677285094 916379487 860570858 384041497 931740906 40848866 748486322 699200001 958871667 405308088 54834710 848517197 849136765 482736155 506430210 897937162 983773961 657435914 703916899 274419866 171014888 671253539 503208477 595470283 764549393 684731830 369378673 828088209 345097820 251345265 64748535 554622655 60716408 285510147 638298466 217138426 427931519 322483137 169194462 354869199 924472436 969315475 704573038 899002757 497475070 55213307 776109688 755840258 154654210 656037839 922106663 594375865 516129268 219040706 1263542 792157229 906420699 980423599 913393249 185213834 976532305 670989236 160356934 281886100 814989463 171981781 326113884 7630572 710048564 940762990 882977769 671022127 393244241 480046342 71470596 727362180 256470594 638398802 169673112 385180386 991748955 945997231 129226374 152569378 742545405 843905199 269351273 203458938 674354661 653545195 658969320 830297831 739542255 525494840 592391475 388608723 970242435 370302780 531334454 871276505 688776246 728849228 813061593 100566299 668602051 879418932 337969138 501430034 927238864 217160287 655349214 500063728 536738581 289787532 801443855 474305869 583767970 499536602 565687310 306199913 818084490 844112038 207256281 954658631 823660971 837688361 742813231 793117394 943105408 832758619 761685442 587792966 631273845 962985536 332351643 407225646 691376304 802794069 133016213 216766890 865527927 569736372 22100817 949339662 490231273 317735861 837678555 898313368 781829979 980615237 856553876 693950238 651195301 302121105 989169850 928777684 614695440 863171986 25171319 100308830 855905857 452875123 445656204 745968536 108464407 371560666 960021382 766308219 663235913 780042952 118076149 475286402 923817991 804107122 874734196 504944645 797921777 560791637 882894110 999040792 470481444 287914965 920713623 772375533 801640047 890859347 168349637 23775555 290813890 404516243 737011638 18968637 435031588 446009264 140322462 880474186 581409025 568365828 350494457 467053820 990224524 966381819 655935465 806812111 53167994 807451190 163135965 512362417 687902589 494568967 603037676 842684700 958778303 441813555 998979252 210214481 68887597 423818321 415744545 767332958 718729753 818017708 645051006 606664565 998920734 751973647 195830315 695532039 615384680 677068732 670989236 428495265 854732572 503029880 705672502 221356419 99928798 806660341 747707926 658024193 575492806 902094235 744337979 934421349 540260526 386045227 877909479 719016500 911327277 888213287 255102420 347594531 441387431 207248262 112084030 255491575 218887816 950287067 156007206 745480783 99859830 301671369 795641474 671280475 810451307 726315916 937921478 811909501 309564680 107069070 841410903 700643347 796312910 936121404 655895247 951889913 117027024 788812426 941819733 210790033 679683478 523232108 868007204 811398578 405924684 878587945 80403710 83860578 678283947 894626773 844031917 152464303 501731353 690695925 865454912 217138207 67157951 935928837 281055899 581718918 990800425 807002410 857938839 973109160 897422674 467379755 71825561 755915918 780759406 670989236 873250508 856491705 211604039 738217510 695150298 254305034 90495793 560538834 957322293 146681516 45856884 389596313 942050114 662761313 808238536 797632869 724229949 630910435 333367044 982757745 233440411 92021009 595905974 489219963 992948190 717701706 623357428 385275417 406331903 616764157 513337111 677013706 467189936 714019996 991760736 969726832 696221014 971250891 967712971 670300969 965095338 115598026 400696494 458085871 496765447 685785834 918648167 670989236 911753481 888244552 912425808 801784129 189853791 827017044 853395937 41605374 740212374 907656908 775154945 334827596 747523858 901897949 646523831 409993982 952812314 576921758 912579683 971853247 859432099 266710948 679673352 730760270 725250073 811064482 102342590 51136778 444323298 943139471 365005140 706797668 914175253 292748706 384658467 732627676 588279158 897197072 771235374 362325485 583610264 877952713 804819287 912570062 756788362 143297679 291579275 795501292 996518493 829302588 934455405 997958554 983487443 149349958 426942289 520286257 223981733 670989236 165386358 804973838 728070302 106877983 542884381 428240195 736105681 324482489 849800833 674136233 267887307 916347016 776859850 132578236 963154995 695350988 606769272 809503558 480007382 465312472 786258370 695135683 971903474 346832012 883823960 372015344 508222211 7636805 249489582 315116346 406872784 729137279 70437831 818408213 912588315 188721721 961110335 600155203 395339 103007796 66134890 435192563 685453542 678493844 44471757 193802367 363282859 515810716 916377252 940679553 830804172 429891004 733260301 982580091 819780907 830134720 859986283 790503996 933935465 589271323 872910549 810143950 238791864 226866806 226390393 198689097 117128289 913233337 723210388 361749373 460058821 894155778 892447056 311379225 960777838 488283571 924292369 802243630 790478549 875520430 955059049 920128829 88024180 283799991 418747603 714295318 745796918 934736572 754643121 546207342 770735247 70287518 376733814 422590159 594772198 370890429 638980370 969545838 153125347 748586487 934026530 904927591 286519356 168633914 838926787 775691067 847835270 732162206 993635412 993834358 749298289 758162208 850981145 640254889 719155398 707310982 586812677 106263808 808207970 603944416 506425440 305746052 839486282 902728567 928664961 536995387 918636292 988365944 547989013 370394671 55131652 889994634 822967805 183399273 763999959 537370410 346508545 274082350 834869938 79825273 645746536 134045685 862643365 171999017 964691249 870811239 788041119 940575435 721955560 757593690 869560367 821657805 990396180 905007796 777886115 896405712 440830933 839616803 615986182 485874873 233335542 113585695 906196164 69822547 655063748 914221674 961268832 215134921 803048972 786939590 940521204 6505735 281913049 477172524 719556590 915305560 995750391 594010405 944829561 162474847 621557478 707988343 960185610 89244352 250802189 853467595 845483801 883156152 62657716 819962921 395261472 234887868 592328887 281224125 787103849 299403829 760460621 962179512 772941907 651420115 821550760 608277614 259347455 81238950 257382072 911258479 953000341 341768559 763640544 340731124 527204233 876274415 862884327 135300304 716866507 732894021 849718295 49390889 860784909 673566044 793210911 187350558 443153431 348914838 275522907 916899610 998933315 505243590 953513020 733695830 670989236 892069405 772903537 650807288 531250320 905298305 535258114 541142159 759312383 714528119 582080254 875610156 721498005 44564023 194849043 166189140 574042383 706142297 397297644 879766566 742494226 93651115 153373495 998562220 785192476 964125658 89328036 247584470 748861402 596860376 63869045 691303378 910743293 147956778 711183959 909724310 557653230 45089889 789713893 296955622 771278849 538218762 522789828 770997778 542811129 583533395 455104811 633645320 521825035 173535417 640419270 488552786 921809914 481941600 456921961 844424569 480594219 718753334 825438701 292706009 907277371 848039730 365098308 989784914 994950792 812265003 684966662 146831380 651274889 851895167 450053594 888789964 895202055 150874545 694841301 734014928 200635602 523145137 574473606 113714621 609836326 991992196 63744777 600991352 136450929 551484998 538400402 930067849 999471939 649125026 698678764 895835986 432311266 59902277 936088323 166421887 872259974 911101066 795700460 227676529 718163679 942647584 920338555 792736612 373995034 119328061 315777377 978921819 106896499 808051352 815622151 954832767 327132801 82465071 597594201 377275392 601473444 435924228 808180837 898166482 662967228 957549634 545459165 336760165 155708525 670989236 828234113 177000351 951098410 931165954 466494513 930695368 275463731 979573521 828129845 600479973 990287236 234491821 719700687 236646906 792585665 802887276 212986290 376649582 551686106 2721401 105883756 461842412 199302923 788919920 4920983 313549073 740961046 309081023 19968550 771370698 728379320 58154562 718859587 620856539 546830615 885257341 146033554 120664879 708492766 437482478 723897883 947469648 438469306 938613984 669449537 781756865 930704068 908705940 899752761 136796958 378947793 493872739 270489967 798967303 344195299 345413647 22887321 535260146 114649139 651068403 670989236 579082050 867982352 122159881 761820761 127144505 604800469 749780294 904713170 933779553 861052207 359297247 856912732 784661553 841878701 956859429 327843074 693316020 821362225 898741200 929953399 602730016 683782028 171484070 683172099 797675239 932003757 262344751 833936428 625903028 936210579 841994970 742761659 151307550 950107215 771486159 926391254 658660856 747059088 735105361 666632610 275421829 258748484 369801336 412861852 671090849 160289516 60201477 929548674 701942028 858306290 969890075 388567818 4195563 974352394 366460907 919016176 787696559 553133202 990416289 243359212 789046595 940189655 798069185 263042201 182472681 164375055 254899044 513655245 806736282 821365646 797918302 889298376 947014701 767806033 281507331 331377286 899115099 795312481 225098052 284302380 778403119 571765383 410795716 799647243 293181848 300743926 26801666 979830383 924664707 709239622 566040726 874044152 673828604 631956343 682128771 942086681 54941609 348363169 818594054 924794913 231311791 522394893 502501706 134925845 714262779 528056581 495713655 844463211 566493400 259366526 245983489 324367880 921330350 295003553 822774537 355108598 982347701 943803638 887644080 673398452 762185869 328081579 814011385 719055038 85609295 488966360 118254962 713924452 670989236 828127384 913433453 869531697 424321623 708868036 784348455 978576279 152417417 150965382 52691493 81414316 320817466 626644392 896377980 885705838 921733417 187803987 670989236 876183873 727026896 551347119 689230140 808571778 651626634 977961447 71078751 102342700 62403713 823920672 191003141 24312755 924655458 675782814 689090835 196820988 269356369 989312908 373321232 951823206 985465861 553997778 518818059 262451276 686102575 816191067 952178613 136128179 653603447 432131020 702754503 82749564 700813843 133505365 877001980 246609620 881332183 427001 284703215 796212893 691703759 2717647 795341143 823186646 795507058 68660264 849071497 294675042 741223301 601045522 136162852 365668766 986892428 993535366 222377209 675525809 287553410 216984214 782077217 247806224 949515227 726403740 890341842 686030829 745320685 899941542 527946556 655569539 588038573 697066183 861658796 670989236 959173975 785150835 137223998 467790779 245990597 225594169 353344683 861291529 846500755 306240023 789622391 811114642 582670953 692550095 803957215 802071760 728273042 954145614 935223386 670989236 36469602 922418370 856662277 627081264 981435296 928676683 473828028 821688853 785489006 926483283 828685724 66734515 31306356 805266180 224568824 540721444 841855996 728785375 889367304 188538860 8320700 858734712 587001453 26315234 62918891 848462297 970816677 70305630 555827706 670989236 373099016 139798747 517179584 772811540 547997571 229481282 984807947 123211421 643111045 808664477 820472465 692921138 797918318 865116528 670989236 703963213 730111702 696658520 601788628 426802499 993341963 874020277 52511266 609159303 123032693 915638549 232824101 947032938 939835699 707549816 711996626 672971069 470135806 811793272 671399883 756183019 422563956 710449172 255018812 542518824 224987244 958221040 918004331 878955419 739890720 374231543 434021369 994786466 596491460 872220640 850759472 643144034 371556425 30099028 920341946 888743982 740010690 921063285 759347576 881169816 210905828 535551813 746899177 860297190 704748641 861953790 553316894 985853632 22512912 270749312 979380546 213845527 703197715 902322061 127633617 616746556 536814656 278654893 633508322 729483694 478619022 111316158 884722892 955786950 599177710 766072048 946351482 441066691 461925254 643443310 119641299 676952973 444399849 603731877 928348837 895477014 820555903 790588903 460264977 134245847 651683978 421101276 841939615 635079367 680283557 941105019 353418136 841323888 968302594 840519093 257084565 670989236 787896082 510223573 729262743 439529456 912242225 139807761 921719836 900984277 915515173 835584242 660278470 13920221 922947021 279523437 828399711 488184966 670989236 874743100 43735899 700178018 697088445 950397952 267101638 542134959 670989236 394452004 56325436 154050955 616863908 984398474 37168559 508636166 655119980 197555896 868700545 994729598 626303405 971959968 461664532 404984236 41664640 363822442 819352746 721343732 47471013 924103572 903525940 170208307 678933414 279578078 316350991 623070363 951076402 717875831 971291260 63493005 911385865 999719003 475348509 903167550 993037867 538637851 999180237 670989236 632296496 814490246 467638186 243467515 147773148 892266209 433740419 243099264 913085339 787197347 754601402 646556526 255032763 379163755 270909582 704305116 569313196 726685176 727148220 638831007 557462565 410172559 892398551 834085552 204378183 437800529 938507554 866528713 155166512 342731603 881142116 836546544 592861409 40651948 932877260 751249223 849767753 884728447 759536972 419632670 427920086 862883154 897792679 161930592 776747976 783845778 373494271 789047572 749104552 858930303 419539340 724170372 409969227 740041902 969191064 982494426 493227011 147428310 855707039 839881344 982115398 882542529 15776706 929817514 167718797 706747658 403619516 854697658 477390345 527425295 245806796 188035526 178751710 998445409 778785388 802870456 418178752 644057 584638182 160707755 698444883 892652717 117940989 11210040 631827252 717605071 538149277 43458813 974604879 411329688 732755375 861949670 408154648 554801267 856205599 401264106 966094692 784236002 908234192 836130754 842719033 566739003 865387329 214754473 784279886 837688517 20413616 928355669 964842232 627068620 948838747 888090760 312825991 881939617 414296954 687419012 635187818 15579439 314051949 187146110 323370888 182196620 170980420 404310936 837942386 446448477 955303006 38538457 753521959 971640060 666706932 911700446 342996170 901534676 420436839 986857969 764921222 744475222 735407304 196730625 774388561 586992541 694422010 456918194 775937273 570547181 994900777 767988680 638130346 54295771 747797149 448943172 136374263 92853010 182442945 844402090 606697467 407968014 24908977 284648219 544882144 876114956 313538786 799421264 882988958 667258824 950065931 576751632 117139854 950812967 661098058 932217959 739981179 323038598 978350035 703404866 800431899 495407756 914439369 161081248 255967031 818530197 886561048 852782666 692048366 143319030 453360824 22083521 171734504 287314533 684341515 475236406 476475055 752272119 798967971 675133130 611998800 137903433 391954960 751902990 610888157 563302469 868508840 196282503 883141869 990644453 921314724 481954060 8643766 788392152 713468247 727193438 732115041 224978065 434631139 979078245 922781307 750809360 697819026 334384756 228702552 518198166 142915148 924347590 525491474 707553442 990001881 831029336 654215085 770385064 281514073 849234495 932128782 315019914 386030911 752935517 987373288 315415872 372938027 988413905 708204126 943533789 208166502 598178107 396717590 915555280 30741919 895791429 901345721 454222546 549474113 37350294 427986439 793901267 816355625 47940896 709416160 713197385 930659808 935467792 517555240 257968356 305923924 700188121 193720256 345973250 325811099 767223339 986742236 828542152 833668390 957181124 186726822 153089037 605471017 950109887 903248444 514100252 147037357 750799413 937133193 175540614 766471667 118014047 868354939 991632042 883676262 979397126 945898007 331682961 844202403 745051502 563270375 720037103 930360318 998539972 145650692 834824376 907786356 339823534 956135911 426628777 875210272 407773034 559206812 815519420 959432645 798492338 968045429 626968941 925064492 901798747 535969193 704483893 471841218 693780860 678091658 953177131 671140808 202741354 452112412 189284866 706116139 757767489 377149223 130083779 857615930 166705014 156599692 225296126 595758308 831883728 883019166 280009824 993773254 585406560 866543015 863958220 117008289 986920479 802208800 645835546 113775656 533878878 569522642 107972952 50668497 195664386 680174906 703336275 563433233 804616019 174699636 126052275 574498671 297828388 140543292 973251546 629376185 957311911 144866427 709257350 692332581 899902153 982627237 957460662 966726244 232647436 927150089 407715841 873478058 785039023 800860351 219120237 437575144 815376845 163421734 657781572 589087458 496586223 568233340 442372464 674146882 272169382 688572000 985453545 916006077 832500121 747138343 952959164 849673832 768901237 634990610 904479875 397483213 854494656 565253037 668128591 921548616 392136643 718947258 32463436 540165285 699753716 393255945 976329487 110956857 885891756 484612054 487426620 725652671 486663191 818147390 408075450 139897827 613371102 88862706 121751598 917241138 579177033 697594974 328388856 673447174 264165176 826845826 960783426 431258212 433002902 703733920 45384398 85002874 440122089 449132264 863777684 941925391 839941071 689545854 690806631 423242756 987964278 671458224 660267692 820580077 927546485 968250719 995605564 791332472 646827180 683943903 528249393 331275871 804263485 868268487 954317649 829211474 987233042 678595197 304522817 126383462 248061105 492808476 909059085 865247266 105285269 516274051 503466705 129489471 967042016 125976956 962641499 429078266 717258759 940822847 375161848 130398419 550590293 884022399 329181073 542094274 107503455 706432353 646820267 920845845 400690166 681797989 431865294 997658927 187935486 908971754 627790136 439726983 34479855 541696628 475416983 142123208 682886682 681289726 743266174 520207437 923384288 240069283 494997697 501267448 140390390 200625363 289844443 245228888 962332118 897721803 933756600 850692041 800882534 655166861 682547033 610083037 714604568 635946448 956990881 875352230 180544099 151837642 575360552 922734188 847059030 140024792 619199128 813396897 920518408 544937925 255055982 812700264 692419194 959387283 641035888 937834052 166597674 931596985 474178462 44983775 83743485 759354851 950804221 158231792 754920990 284261921 361929275 631736349 530699856 340756161 761421934 350816040 221146958 959175864 770059595 530864733 962759540 927511273 504182651 889876060 50288099 818484648 979099664 799274320 180544818 894867687 860231510 901587338 301587210 647014647 48522830 949190029 466008930 128726523 984226506 760728865 801354484 933306320 235143039 677227117 662662662 113216374 999075420 212125831 885783413 989981255 69703096 820263593 349522430 607884227 20332639 450307652 370552441 942032913 244229262 40238000 804566116 390105657 84023942 704670021 723180033 863749813 915184387 77122994 741063145 859522555 943766596 869328197 836510696 422235451 537755399 753023405 346398573 866333661 895276619 740981691 703330450 385712453 813811986 335026293 680954363 705342198 38091206 445884635 64584097 997292845 156316959 398890879 973508004 825139293 423893730 974191540 723021119 833925439 255602147 757389087 818313599 245652794 908901382 983131598 904974244 41881982 498758854 455544019 336268122 677772923 696776777 734558886 703898356 984990607 613048569 981502623 783117723 857957904 421364149 992826328 294058558 899081448 241936587 214889486 560446429 621091150 223707621 243624683 660941805 43682957 458332118 70174508 301717706 871673463 793882116 766030771 551428366 655519929 881270934 713005634 936201765 135504428 649452444 906702831 539522895 97366019 777724367 443971584 297633356 435451204 432842430 314808693 575803536 890955838 358971841 591965447 739403620 496805117 600945711 796573538 516333172 507979604 565014926 979981363 858062299 724318005 680707454 94755807 993171073 472403599 830284000 996937284 472772229 373420181 827049871 601194300 993502949 388842041 802871143 640604003 985642330 375268046 589485408 696389397 579236482 662193217 616146556 461823232 849740566 134167733 280296620 740488614 983254527 496144012 30858747 664360310 872675696 833153776 352339232 570237419 937307780 621812880 860942535 16592102 782406677 253493476 970466811 874512791 879954593 380753922 862605868 820653372 793749699 670989236 992490699 212863942 785568863 340564258 819592193 746597246 826332828 7601366 740479126 839657324 744049785 593363600 935680708 773010527 670989236 733942444 85698440 889791063 883851202 20835151 303437238 240075464 201373387 964664508 775796396 744867588 97262153 848446265 299781802 855357303 691282266 775374908 992240640 950670666 253725054 257757836 929978300 645275610 900987468 765172783 953155648 126169093 345685772 371019288 670989236 231181912 692756475 961364080 816327541 733369698 885480609 422429909 823280506 673751023 922965767 844740696 721335130 255435358 871119871 670989236 43178079 911580897 50582141 162789252 139757258 903689261 889752025 375723993 755940769 612842341 906514664 451320920 618060282 527473176 390347676 615882077 586268694 545681334 185023273 974186720 57213706 366403232 670989236 377691114 772387212 833773001 737291388 712424683 512667265 695573201 822870641 744231637 914550017 856331196 923022140 382292879 51905092 879034477 760264810 877082588 862262210 737665024 611692703 670989236 759206143 659493865 768152251 31646954 726364841 91718309 571194100 803178083 85483787 960328560 36834428 717400520 722705697 184091605 91930381 929918943 873046063 659107193 895032509 685297268 688696655 715907262 912219896 925159290 573825546 884715303 24725060 723320083 761657174 39220669 60557141 174040766 529186178 993503389 996521961 124523560 735258941 670989236 148570530 25639109 57584007 713600216 149593431 554684837 906959942 461032560 527738152 932323806 857082428 431085242 269521032 776775704 570964689 681986686 395005384 685533506 638984904 996767242 800713868 736329365 894482080 714990725 179952232 135496020 87962052 662137743 146753553 274297570 729649531 108992800 108441142 435562915 903396154 168904636 261108947 492793185 845566491 826351573 683556321 260100302 996949749 969614234 311462649 692153366 89646772 973064136 670989236 728421927 159506987 551465697 923763408 617025843 281403533 366877682 728091150 81859724 942916062 705383562 665154738 151080400 247110669 901479394 940912055 531806777 145074088 887724493 902592191 512881285 998504263 33484842 929636237 758777940 241871921 460059439 675268162 760750197 599647526 880811710 699720028 373460064 323522084 47738378 833849359 858166839 713895538 891748257 705119850 443564012 702345973 275517081 935937369 919007878 179760426 351777423 892386816 716015154 16766489 11414453 816311646 961570128 556612965 957226397 258464025 152739004 800238545 726578574 40786088 404401844 410336839 985064313 886988499 135339798 858155546 576758464 169870010 705467268 67855888 807912784 765376706 739207553 988685481 393371312 992103047 800565260 418939899 16673690 630703090 848555574 977619985 555472397 727577364 183857558 979707157 483596597 968544459 976309739 352253572 872590750 880644656 382953811 31438752 326566204 589304838 546895214 334047926 779964485 489968017 567838104 70036900 348743334 987880285 828243666 750863020 285183780 690183841 429265934 108912371 235179339 708864811 923200244 453602750 730577386 305568474 963277166 94931087 927750790 960769025 548510122 848122571 454763066 543450569 788380327 171134432 293301051 333469726 852157157 914284249 623483977 874815976 491312868 674884502 876154448 504281451 952443183 995506991 864997898 142385544 916090780 143657977 349845538 37008759 923526236 753930824 219511195 161270021 71189593 681889655 238844992 892144313 138711524 867544922 961591481 569083630 193388193 134532934 988972771 301883348 726213633 595242183 238116412 698761520 842286077 738753693 138660257 579783811 427237729 127910799 569920454 864848892 644446927 944410493 852358356 856608627 521422481 522824816 854459157 822387343 910063172 397043172 974271882 951934984 496085308 471234374 365323992 888087189 704762556 326516927 541900940 527798076 725829975 75049311 722326548 346960136 684056545 198232475 260754922 769911912 627487811 818158353 980795073 659473449 865154622 849860056 110434667 803946301 766347898 121680018 803113475 617990201 912624585 381619846 437155241 460629421 340053262 289802125 770973107 171829253 149204520 808743028 964473801 124283779 168138920 918033201 848757687 739387266 843734875 31783649 960517182 931432595 425382107 682019601 631749550 997688859 131082457 672413059 944753336 392996659 315986729 640164779 688786045 80012994 590005453 685585175 932342928 826643994 922144054 538403504 487196218 424599532 935140011 670989236 67027581 723732197 793812987 187653117 774192577 689670210 613209016 570993808 230232073 900526684 955458175 705796433 439335071 391864568 232612307 988240664 835641379 325954910 916466778 533740361 764465462 828111128 264721669 688283026 889981206 40624631 902699187 910619140 744954260 600299868 317301892 803076957 890112563 508569169 313591893 474721419 780784501 245296650 155760273 637946285 45061465 216969897 317634769 778124714 321493639 650885528 395889033 913717295 265593859 704878828 216612102 782902686 830518046 301126633 747953393 753903183 670989236 555385086 440463867 310035239 716212432 779002124 318899450 282354891 48249513 363298158 878781831 258532141 647128761 276051940 877796939 986664982 739241845 744449829 634907670 530220677 694897496 413235514 773507142 744630906 138646477 986234392 9318811 740510986 393387106 577251505 668703904 960622493 831058370 373922841 665389681 871702087 692008145 907521951 928609184 191350176 116456389 530913220 720542178 94113723 754037566 514022120 128339962 205248172 702166410 812547820 978245118 301864044 224786374 681532249 952596976 925757363 629032379 802449754 14610046 572061669 441960271 240459714 737598644 213190173 910684415 813692600 28703117 440271197 667400551 535527175 962239392 397629461 450568456 872377330 408208958 937988328 223300110 225253283 773310177 475169502 850892579 478459898 893585040 985599877 967651754 925812366 307912564 459423914 937091997 584550969 79805789 917596197 421011944 466865067 879854894 444080229 618916966 935610613 917303569 579506649 395280177 828222576 493042872 501017144 162726312 794897493 673285312 983681142 652785983 812730906 356704390 615391215 421417471 905605940 860980145 604751972 203689973 399190123 235035469 333734257 958572207 842235765 15796152 731051462 689778281 736409055 586956613 619612323 335721858 899679822 845704243 140677340 990163291 171231092 25005787 828064643 618940384 670989236 987119926 985115706 660337183 259907132 34772964 322799859 929059448 729719431 731079729 769871582 75685885 237087610 581427738 627781692 235590246 845524288 134467172 680657664 7626964 116085229 947245800 491982626 790562086 821753011 990884991 702102454 296445162 277011431 641149269 682176811 943392399 345974437 271285203 626361088 677148089 791127720 392659945 530161905 657448595 194702898 681188850 934704084 235518698 785284000 57568362 937998584 529962291 913462639 526615635 250445312 983074886 543158417 498841873 210018537 832668715 881155824 661578624 115107567 873695919 956973225 272210229 941719759 548039625 882148025 972795527 758227754 641951512 805675133 215794947 699958530 616601942 576856986 575156224 395526255 683985071 295892586 956189943 548113724 506103427 873772078 703076761 399898294 114347099 273934096 516289369 146224735 714747273 286563977 573443641 999993132 316724726 491180535 333748741 370259527 896859917 612361349 59241785 46013266 63055635 594448425 766751015 885435925 782903053 678562044 300272797 862859347 991483569 950337880 868325964 349216517 54255378 584387293 143837615 764371133 174984536 355191934 969214545 932860875 607483045 352434458 65881256 780925220 622511014 670989236 822739737 424505923 806635414 676690037 725426350 155664690 664559894 982829326 111915753 343301404 163054478 670989236 155499814 322542037 671764378 668311377 376965441 288195992 174271542 835661129 588489508 333722607 954458197 798653350 956796306 994183286 847484622 997581536 683096309 167795884 715308546 70761382 546902813 981774891 84972192 469072863 491352910 311562722 684805340 821950183 330566698 831245807 901074235 892029181 670989236 619694610 233167389 987383705 684300077 891414507 890724350 267150470 722920759 699082841 672098535 773034593 997045370 347695587 484801805 882108990 225723207 792512446 768903352 500697197 420943880 748528987 853075472 832696008 719019734 919720813 698999413 696338062 597658025 764182952 122734973 24319985 932135863 225232455 675592052 641497269 935335839 496973018 284704648 340368605 857366216 425222916 7551004 690998648 28665650 893584662 211781132 966770535 575531221 679503385 43614191 101360403 997662419 726308082 118364561 80755321 882552422 889526340 861962955 637982681 453815310 427564732 418181902 903941996 722031085 672981108 965975114 358639006 682363732 845286041 849726623 883782485 178519291 661806867 396408413 732754815 760910143 123816035 788732211 589476469 739576330 332955549 979007852 410980905 733117756 373463702 82250687 928285599 454309470 850591012 615646157 247397053 54637583 908756708 279427674 512822106 63100393 909771371 435285867 827284631 905749228 670989236 7119619 62638432 652129919 263316869 858742380 710959413 601335156 737986759 122048340 174777791 773926510 940005358 798135287 690335019 114577599 140870943 567143300 562133433 122071310 787562989 899890473 153870411 646492944 933110695 831396073 827560151 760705719 224674593 97459929 233580277 116620658 431044071 53846570 880916933 297310925 178539596 391646286 615962895 738605939 333012882 973469506 314324210 956565158 521134239 810565975 938038216 765829621 496760744 796136783 960587969 767665722 134303593 369445129 988067436 370185617 49023611 980364423 511151219 982867599 755810862 300462056 683603221 802931332 747453714 477895589 743049644 60914708 675909140 830137147 927317896 473497238 779336586 188564152 824456064 818890645 841154186 466424163 893114580 206863524 844169371 284667730 58724284 190545053 567981230 514158885 181342328 411847603 546492802 470532266 585019809 557181825 893072521 841781480 293451026 701968209 205489681 446464943 522501262 840035962 634934313 936326123 907476336 77753899 171351341 161988610 266918917 677223517 840124783 924997084 905517074 333728989 559253066 810084810 653778873 740190197 747917230 818475368 182829185 402735595 659038823 728990247 402179677 231496729 849548367 834107612 192357484 351010853 834125 438999789 476034320 688452921 949379310 147023604 889986798 429832853 779133813 812421988 956770793 829089542 475947382 177520910 687906472 651510181 590472590 66724365 425203254 973924705 971408098 321537019 885242981 980535140 913289138 596390256 743171909 362672738 47792224 626494638 945533454 532493615 4545109 364808098 453825767 927710521 189016787 732514851 954141877 658490088 519427380 977529744 308167699 752277672 564260325 955691729 803471030 260905668 979885679 480376294 331943588 670989236 780450435 854044769 12299898 72214897 666479955 210852482 606496443 700760516 792770093 535565915 733593125 997308085 692706104 547720244 911263250 376669935 809501986 766856651 100377710 564790997 864885346 800731722 950626789 965543221 441191083 678048541 93271681 560733775 869074957 126985538 513710969 421439355 985831684 875936700 687368340 730365505 854203067 816595340 427751344 488276880 762597907 348800950 89554580 860312253 802008904 721250051 91887272 911797365 859210475 85121821 975476366 766899011 480600491 794224021 725707776 383087570 518750372 719919474 494012419 936779088 564264891 670989236 660731242 878623240 922672921 507206275 819204916 705888642 983975869 755163361 859317187 512299818 698849543 932937649 166525962 671401403 874760889 272719453 682075579 266837193 440470858 715868794 77746951 369762434 265799890 346403734 480735927 430788836 375327120 848655195 882942989 63097354 730904224 801463150 830213652 12668908 505885778 434391645 531102738 238914330 472162395 175799701 532791020 359743434 816679832 213602243 512950385 7048954 801976796 997087918 244025951 624833986 99010416 101332597 786186705 615791546 915825586 139132655 834269082 29077890 892537186 190473264 901443795 45171997 915976169 903578815 518297262 739778966 715529595 296041171 270550842 548811894 670989236 90657898 773578584 185677158 988813721 503417541 973211643 147951883 818805542 789303307 403949520 8913140 349039851 679898046 931859955 400548600 302847582 646052761 892970222 577338476 618612801 52674366 766662615 706037310 127206147 270380265 444149400 892924216 844741770 138026803 737079606 226449208 973728818 467883792 481580584 741424392 96236976 930455370 89262884 576667408 340041523 877118209 196850003 428328592 627851935 143985187 142061204 793979945 747509507 127804108 372814947 841639383 673342140 129107181 892396261 85276573 846369316 885699094 721592815 548574580 349658689 788602935 230731824 923817340 755504126 713394236 247102815 475562650 698332735 994263932 810254953 924702754 714127328 634999927 762307677 673291924 293966213 778154779 910217981 735292502 92672065 479721363 691554388 294060503 843707474 772761266 803798882 977760099 706094063 355970675 849510970 228176309 538300084 864960501 970749124 536054946 530395800 221611328 496659695 975863027 894544919 666194393 694946971 942381753 449509757 327314028 913185521 889247907 962840508 573532854 542444809 763811830 705849898 985113983 878950969 168736178 760191606 535551567 727996438 644227534 606883113 782950885 423071108 957168961 12739360 776852723 769643421 953339729 722117817 757757814 15264147 985536205 288709289 799316668 346133377 598291960 644335277 62928519 47753141 928222079 731924610 510919753 969705435 15828851 468001425 881367225 48150197 937080596 797640218 600147196 837364095 438836142 179504733 988646081 563418122 381243547 602973673 670989236 575527870 832534535 302046544 718657450 383158313 183500395 670989236 2546501 850851266 198974934 997849276 704727930 862318470 851052950 514674968 670989236 206166435 349096079 814066034 974667002 411257188 330049381 777728732 350651883 860282819 970650592 410620889 274848866 902521608 670989236 969263041 422698624 862996393 966349343 763224935 872924821 954521581 713437201 349979465 721869321 498798451 671088559 671341618 992704568 54254426 317738349 98957968 755581432 740141420 167430808 866287679 895410187 714193599 671047264 355001436 322113865 397293607 888403428 905509282 697155326 36692198 777640559 707630342 507216001 572261769 982497634 572316159 898561909 790000637 900102645 364863038 893973506 969606443 983820721 619958813 121311449 730824872 615039772 897224205 381469597 843683875 656681803 191751443 9474827 751759899 957539877 965213971 188736358 879177871 881999677 856272898 351764534 729757674 26830458 846035909 820906070 284172498 670661411 785084842 756378190 344225010 954708920 858512838 821197859 814342252 182513896 926279918 521713162 792159963 699480769 783845756 478628296 785161839 909016361 719024375 574873431 13250867 977449969 251157696 138732691 712579745 787719069 146819313 462251242 867026680 204223363 527959604 386929552 196496455 895165915 405353694 481076532 849014258 198795066 303152490 862023524 779797451 69212379 835121518 996137471 116902933 345606938 729826349 99580658 706866459 696539753 794574171 252464290 61738008 983192182 773379278 371571159 542973743 751248345 991033336 426711887 820980501 847791762 458633851 846080430 617667166 719523599 117212951 975705058 938625020 761185096 5479092 43164164 304178934 799384776 947074731 197539569 944652381 495613033 982040770 965607252 748450692 735535145 503663460 532077136 251260821 677992712 737571827 918704561 437735067 930188906 28067221 523744747 655691887 665841798 558199266 20897852 858161646 970533003 110751886 415939656 106609848 583605949 815232635 394851968 348569058 958562953 614183288 636523169 379246107 822241891 45268107 892552198 296094029 997044605 205837181 256749236 400518252 971234393 335352604 989984691 580506569 601440445 276614682 375316840 527900784 763030922 390171440 929391282 883111475 893016092 436755830 522572286 704141731 282915999 962307721 801917565 741247676 898294143 528903947 276311404 444143764 219426127 971873849 275375853 741622049 97665274 963683346 944096577 210560691 268902730 831406747 609259535 534796585 927156100 385875844 947606317 918007293 984480941 846156862 16604653 799770063 892933907 746154700 843176934 670439056 880869170 859344132 103380814 836159768 27334188 442517818 137897281 74792461 842835647 996676208 698146906 958972080 645117039 287831414 601291338 971188711 670989236 477193239 688414512 849127652 984602465 259973542 849921247 530536123 289873204 570911233 788948702 35949386 720984935 953936387 789458172 788268613 810635132 606579157 339872168 508875031 419174148 885781849 780380507 247374197 746831787 697650521 944583327 360250720 935219477 651550553 720199500 770000630 124547500 895990898 673439695 803594365 729491629 30436098 589325376 695122249 511788597 717957808 59243262 825331102 744812025 834652361 967899787 46098758 709397454 712252802 559556163 841835447 822238006 364379802 542396073 525719906 184169852 329400199 61935405 863595755 905624218 831445682 353992762 96881018 218377247 560548523 29542384 426585036 640182716 932292268 207871821 76190842 239809756 631818033 799940536 83160184 446327834 244151421 735774606 792435196 670989236 344694835 329784944 16771232 927262274 229986605 306007442 818028509 156861785 636548484 766830770 735883836 250067500 772342395 970309168 576511791 958705619 872307037 56915488 20366064 127148779 870583783 818851888 177137139 78616841 990716746 885988552 479490499 392758118 158481011 801941829 560494392 826312523 385673153 860879318 779666497 814579117 619386740 886133452 806026393 605137058 432498187 871801788 288718580 448219680 765910677 614177068 623705399 97497869 260781374 191507795 659441948 776777012 973285183 120191798 646481267 978878484 433844210 806674354 932401658 748135898 840101841 707155862 583344183 895884651 486650780 864900060 208144862 373993628 890644459 467481059 447285670 859016584 843002542 122563441 795041896 205288118 269539135 670989236 27715638 605990018 715703389 14327507 961327069 476634663 970315307 537878467 539930702 529344396 13952504 914022936 137671601 605019796 78693702 855374080 171909134 872465057 813003340 760533910 256454482 670989236 499531618 333026344 711825819 889096861 784836222 498020147 808292888 42367668 626899863 359243617 866074425 333124459 670989236 702112465 303551492 664266307 132244468 665313538 967932329 747076557 529944372 99782479 914268998 896855343 440869995 202726059 798433932 19944703 87821818 804078917 885912298 920094409 733241277 917214535 673558292 914898151 283802939 235564780 982449218 749287117 508467642 952423904 924733601 44690711 481845543 177811800 371224124 895044891 534778668 240473225 801536901 118843748 800120562 107047427 346793569 136475535 76308301 877938134 768780124 993401553 997862682 999805288 51250670 976316907 539961911 428981720 813951443 398809342 231013099 841683994 46846828 702543870 763414975 577661742 524629263 787253060 996130304 632773887 950303608 485448427 473629280 209885983 784055488 868854234 747752050 179920113 141522322 939876402 786719657 831211696 719315108 922949392 908484659 847451361 677315288 10511333 688446153 167973086 991107086 956689790 78181011 431631935 299371558 853941650 224676736 846006070 640153275 178685613 276281964 60174567 883166947 133885025 622620542 620825806 951587210 203404619 152537403 202863809 961666186 537675763 674892185 849929958 347338166 733961479 13502419 147348924 686461883 715878928 998731803 450784018 601984878 934980293 854444021 503487822 493240367 852049661 10061426 344533916 37853597 682041015 816878624 495390849 372510100 632011236 326390298 713843896 103472282 924356664 760355734 997427611 728680211 981873326 857793579 839469967 792575049 464473176 419396741 148795347 653606828 570559090 282892716 939856902 403394730 315520792 492680194 348076714 630494677 490622435 301563732 736635661 723344023 647931040 173783225 91053207 887142728 655522815 986053750 742045691 518902759 585243181 775834568 723449975 647844901 601210401 264177970 918248482 771217279 103254010 956071215 277713110 880008935 212679014 423433800 996887744 707905903 356601489 563042299 95009060 104631197 292818730 870916901 940273676 725106388 361965889 139394607 664316046 371453113 850594121 638485118 885844383 718562101 805667852 293185652 760307663 990474762 450135384 876737564 910987444 265445745 291520637 107053288 939238221 496108472 671860865 79190362 690227997 726603138 670989236 760411801 768399247 716583899 680077174 183994267 219569222 824206313 280664463 401985537 388617938 966856547 968804863 587756120 963730908 518288331 7786897 692290805 557185163 916958875 899916174 132713739 824624592 765367321 187789167 590624662 335413493 424072486 670989236 843433786 814959272 693507342 300050565 657865823 448023934 942700089 820947245 419579687 891208159 946555008 605773538 25993859 552531202 739322621 417888206 116084983 64914791 847135446 418197113 681295255 883757061 196857198 858940690 684193535 738281425 497961094 942823046 616760194 704836479 448304961 454339557 836698661 707997951 992819280 134401700 231043304 675787208 44894615 876366668 422824339 598676795 882497916 927311143 834705608 388402430 878488532 307218582 895421995 246022735 853935150 569032514 337426342 811331305 457866033 939634206 54719021 670989236 70777823 732204416 469503485 497878704 672738353 364963994 404575074 756973402 59116372 697945725 848490768 582251909 953823733 174145892 50552987 719342538 371489096 25308653 902841858 703729449 841866448 526186091 724271421 803978500 862661449 207069284 861454163 256212220 853079324 62727221 526798170 997703496 963025066 955782782 792366901 276822791 806895930 193835283 578114772 402234447 945278171 763722788 969168446 977789818 215672291 798594353 292950830 357302172 954017399 135058281 637025939 773819079 302132387 973240490 932451991 822476251 644051489 106892290 293580035 123311023 802160998 630348792 108172450 746887025 13376586 876022851 936517653 493844922 938411004 301093436 1205823 56722765 198933210 801043829 992940742 802277908 511293369 150955103 988293613 764632752 513771597 74371822 279179795 947382521 694268128 887399708 314066931 944188474 967495470 717121016 810858382 582889907 227645823 833657843 298373543 707244510 757447724 996141297 977896522 733300974 856777387 353311909 976779404 84906525 453694066 68396934 893936031 156773863 244260816 738449793 671279320 430567516 768916029 744655781 942797266 893875981 360975416 534599170 834836743 783568336 923854338 902811286 466270470 982163859 396534579 950471183 798351319 265900613 627756254 397434242 783623530 523014889 782382423 931029668 579601512 911370028 18641303 627849373 488840953 477011786 24603012 687034812 44083803 999999729 161455903 663162708 620188506 288498590 175618368 729038969 115079409 358645489 946895123 897558615 187305191 547865050 844455793 788901179 445802801 909273691 67454744 207349352 225815509 267377294 441880745 922093239 508243557 508164737 997745227 19892419 743359190 485333837 692400962 543675290 836322641 24691520 951722598 961189810 909425699 212508947 508686643 885273113 988328596 858356223 949972741 669497071 951332202 714836379 805499019 940613960 356622482 68607417 848014987 681038284 21065312 175794904 339719159 300096884 847895975 524380192 652432242 194614454 613483744 706529900 29005719 997776851 838575203 943006313 391453163 810993523 677132686 230116296 231465239 107815 740425792 226955384 771850576 283209182 686555211 700705586 934770762 997037953 424461401 750061989 47402827 760535140 286588409 996043259 868536970 700310386 209734938 227031215 540784388 857039097 491848268 875200736 723164693 15408173 680092473 709115565 443274525 344721039 926030268 607820464 1294041 821101024 984830901 622746855 686590113 85119499 392761427 103015 665949211 670989236 916972285 929118379 48846561 30810785 949358570 817711632 608401332 990487752 103190935 884469436 783304452 852912827 105088256 244351779 968296889 516260010 791056719 688648445 716184750 291257019 306068766 193054206 670989236 737586191 52079148 395132733 365192603 849957527 902397094 330613349 62611874 858780790 535940664 830784646 330825312 676339458 788680119 568978010 910597764 496488782 815638097 695088268 311646931 785152258 693007163 68462761 899942374 895943649 862946712 949375060 932101741 260989995 920970669 630136477 717100153 727569270 493973462 464617155 954870764 718332420 473962612 431280364 974692202 795199007 681190735 853842860 692711595 767903936 184926393 934085143 686640657 840582111 982926428 28282929 907401018 730965602 969562130 874543397 143543336 120742700 801732616 638680122 947780753 346505719 787655669 715636521 818800530 113976804 409446182 792454608 776450755 458810244 468802391 312983195 690459598 748429910 415574363 725531866 274614621 697414159 706366526 621221731 973461002 836252267 662490437 971208218 314989221 569849114 419270011 937096990 861047081 687321434 478750314 965423506 454741974 732241940 670989236 227441673 948639879 892699560 517142971 804996017 386806319 207468838 73616600 880480161 555940088 864772403 643236657 231386567 911039429 795350395 453714565 613263165 734021679 115222597 602505346 935801944 472501981 925996187 175262455 364072491 269022864 902713808 708956022 959517584 678884284 74204101 801288233 938688027 343134931 239349795 683031518 806484496 57369242 21527806 609076912 605100201 896176650 126673129 102378915 919931985 57910180 690273329 391615669 969500103 996732718 872758666 123200546 532982182 92322069 761376757 646865070 595186639 257800676 591779965 174114414 806966909 713583289 106768175 7028379 270169788 892609714 244475868 746878674 407328287 268338057 860056809 609788937 773590390 850113986 891482356 378422326 873021713 777911506 105676451 180806819 29431514 995976980 929036791 42155142 171309510 972840905 476558865 924608970 658443972 938339366 781966952 377341050 120811568 837739602 75564531 863958588 810409010 776163340 396053641 865125481 726168943 866629117 991493976 346016281 969295343 719191217 206695913 671367937 853664815 180958892 564407032 893239637 356429885 761097772 249384661 577553102 952698142 225128853 614654734 111244169 802412001 353224296 762890768 762082851 751163329 73076763 69639961 895552839 723965039 944358520 224268660 936284803 855912821 190323447 413585609 864514045 200764911 828919260 369322490 841966042 167619023 977838570 965892292 244229339 496136479 476897660 162081092 158271462 866069012 722785791 890395854 753677496 309718940 583873834 70514528 329886522 928903238 499038093 328186205 868733618 882435235 845370559 519702952 735343672 998024231 676869997 10769535 774024264 260404370 894053164 515253178 787951425 675536476 486196319 670989236 298732616 960539977 803639479 9827639 936271789 804583627 439572215 984515746 14538732 582096828 881679871 345635258 234787832 260617853 609339279 938703312 674613653 474083830 434494521 531985067 171688851 731336586 881612767 810855199 346006932 216298214 12461468 85538869 265862005 760019723 342101880 701390871 848609492 960517942 793981951 776543292 864431313 465638695 650631118 93643462 606065914 39965906 947545908 495013645 529823054 191331411 67271275 698053762 139708439 843092556 845788976 984968710 688437029 434388037 503804933 645679803 480042748 791059794 219682935 495590988 679358975 929922243 297094135 757478341 297039955 787599993 28007910 668095577 126967725 563303788 756891137 208456059 975032087 746262540 846348317 689485827 686109631 780063313 920308469 890760840 811105943 283193603 677626017 504410119 207631505 32119766 912876068 864518862 618569038 224512732 821493226 773006604 399076554 623818847 159908410 363008767 774891090 655038258 969088040 268944538 950233130 184142557 168451398 3102356 255787317 656359260 834975993 12121574 748421294 290168262 130945866 656445865 808307430 344649995 843004524 922787816 926582004 468492831 570064177 269031759 865935348 896423604 945360574 997673670 821442775 618132507 627427481 657544384 564487366 618492342 16406707 66172895 314104755 968020420 892845680 770526149 476283141 488194926 196018142 22643006 584366524 867605988 200364998 420584459 824501555 671327987 219609973 616617305 898842877 742252018 932679770 40586256 813083387 68299025 587722652 148388839 765676291 144824744 924196512 670989236 872333325 943943645 278558932 135808824 427549622 276850960 811651284 961538724 392367259 251295877 782960952 246515335 709791685 940097103 28160296 916817261 796912417 779672253 992285228 444602581 388600786 806189213 169687455 856586553 995849252 975883466 893364180 800570296 249990067 2660501 493074408 978401219 719272693 832669522 861891904 619388785 199939499 670989236 889650093 32087062 904627647 826141413 710121599 791496252 45049817 728142182 582130312 957234655 688319642 889341978 902109590 368836730 718455464 799510527 679487688 113502202 619087276 966092805 774759190 692432898 790238539 835972216 706343327 765572927 255668022 630609923 553849889 586069022 960073757 767027814 79531165 814547899 966754416 777602994 888819665 126254065 916311764 538176102 993397920 989606050 335589104 493094498 846539695 844957261 931151937 806246922 670989236 771118767 807810636 726604316 772974250 73969253 374094329 228767939 654342169 16445781 734127902 981679957 366891585 760115689 930089544 630194061 200945334 132305837 383694932 163348370 765155856 238470346 983526900 967031420 237037176 938906103 934672535 100261140 920704848 600976130 815596389 847822419 772897855 673530828 242429422 56715252 535395032 914377987 692825634 660206841 927730306 582194497 747743101 602470006 710368781 590971194 732453422 13149482 747386464 867973725 191652913 69706812 902779151 180440255 88559671 503367804 404996772 325206686 278204525 985326570 338697893 561832670 557357215 192567687 744443620 237453809 29433558 659390947 395226088 77296267 789710174 800777279 772020740 984285486 212894523 411631221 337282425 749992158 434498215 876836638 708633329 409191108 994989905 987575240 139994312 523246729 710859481 691737330 665743876 566454329 212617637 712059927 22401271 266324702 730688939 649380975 947510542 172093032 543515036 471098148 841924835 230176199 670989236 507664062 981423941 193487775 153646753 579977180 306195050 395236808 880795970 135897420 161619350 678171486 710932827 754199035 417404053 832160994 766277704 959353940 479022836 820005212 643402364 565582141 611126765 503057430 771043289 900022989 305320453 910347848 407498449 300264926 424208835 612099143 730338825 972216368 910703353 68365616 315034628 262423346 820233373 881268553 297865233 198859971 782471961 740587934 775148073 597635778 955237007 12741949 730795585 116267296 683589606 508654348 501168058 954567406 528750272 846686157 286322293 877450473 670989236 673186890 334184295 648878646 623753829 115245123 10483541 38152161 875665369 317645533 104154726 698595984 955456188 209094810 765906642 639693382 602177685 178402741 249313348 911081723 670989236 731078916 95488377 750597108 874548116 173903962 318281385 442690917 898408529 734864985 40794129 769915870 135577972 801980140 351261445 377474204 866555923 385195887 567465228 458532446 319550001 324129810 291431215 883189422 765254490 168553898 89007977 433140039 898160350 815336456 690494710 800767769 589370901 665910089 313331060 454717728 9897514 680662060 841822823 95047451 557133424 751658468 494206221 712783273 134793725 563801246 383779232 762383542 801524586 719055425 960778784 395753908 993224095 865777483 934909565 903391892 911960480 538036489 3794572 266698871 518428644 783470240 833671897 324966300 931471823 952989302 505640672 735509537 248848348 757115051 893021228 796687872 676347380 990685679 989490152 493206000 26672051 971075141 179104638 216156620 927621311 574014474 709423289 640339733 53535655 739967713 846467726 911064480 911082498 426851819 827689764 102579776 474041813 485388231 688097697 555083858 995523270 763820473 437733205 873565922 752981560 808282217 812598732 860582797 543742341 860311364 16034892 871583022 924986644 37269611 997015647 667946784 617491714 796880674 666078596 894777338 970882688 298417674 797710463 683331902 811477274 838786791 429449001 328407141 167289588 348493946 47091251 14404889 884659921 858310095 282591967 997064423 688133441 810023705 699757614 135954329 857574007 752663047 582216752 944082826 368557718 742191412 941416103 887042548 906185364 610501447 879848954 948949591 493255598 734141154 915891264 922995708 314516061 556986272 872964777 822813676 254819647 250731060 895233324 417609427 933427288 30573974 725642648 799117848 244506701 91232612 295680558 350229510 848364395 481461495 175233578 872853446 697110795 670989236 881613036 532931789 622685047 24535366 514220877 91141629 772975716 808310606 427264367 371626712 373995951 874988781 838268960 640310927 37545202 575678892 981666184 643756367 512194687 994678780 691186821 952562498 839913499 865716799 693230063 996793900 409124620 490422935 119848999 612802220 978152778 987310749 660446621 767451660 33786914 444078105 173747677 950308481 187156736 627077885 897219361 658760996 826838519 548936795 26868077 830505383 444824408 650133089 890482637 851266397 475355640 483757325 336084283 723121709 7840188 238534607 253140306 235679082 246063121 733232420 710023942 241230839 881651632 949272798 962692570 561358572 829857792 965216663 184983038 706027827 914380091 910684278 953074881 429642604 282362387 580877180 826727393 343566742 162514963 253498953 233211796 373249636 713935559 208152025 133069417 286745334 788312413 279833908 959499176 269788819 761697193 123266093 365555508 34891635 161355971 742792254 775132419 932638886 796297783 500305130 979884858 894953538 761738206 865283780 101095952 149395282 375315195 60654078 568548006 646914883 258093087 28530139 679699728 768338871 364263961 696859247 499387237 475257207 943255267 663280316 267557676 178191031 736320943 466335013 808511283 810026505 670989236 422292260 732395519 719174429 917484467 659832480 900994296 91600590 187475697 679012158 197822064 670989236 993043789 546245374 561060938 931169296 891939918 887182431 511277986 178950553 323423320 893372108 733098216 694306161 264590225 342453445 5141860 147514512 119853660 226500915 118877308 107004805 318927570 703779720 54362675 22864010 627737933 923817121 742963676 11497799 751367674 205128469 242397207 807318175 223082802 872590989 574134540 166992436 778473842 836923682 972150683 787307419 663394017 792395511 935175923 261141326 687678602 310788061 796378451 736285428 212040236 401283304 675958221 787771260 992469595 232723670 63264360 282851315 63745299 849566109 836314893 322395355 779395968 778391980 406176790 948710210 902648802 829960187 928425822 834260416 775129184 106476170 519223464 793956211 936538710 692516228 719277366 452676729 933387721 276599954 718822211 781238879 775866333 474980164 216258420 274483628 884286398 28379547 947810395 244481285 808655662 723553930 254932501 348063384 670989236 846264753 375873115 67720905 45442631 214478381 752480776 679657681 762692123 155423623 704815918 369670604 749743675 118028764 939390816 543360093 386728443 945343815 87742314 361501234 900256482 419712519 845973577 202633609 670989236 382422268 237613141 893927786 698169633 277373236 64993606 27944780 713450311 875318862 20896290 215223901 926970746 338781591 550636627 874655709 244651901 36794917 797862717 288744810 592022286 748396398 990830951 485183234 146470534 628603677 931945140 680516702 497111639 939911557 780485209 531449449 615351875 878727196 421023777 208279252 829474815 450237436 8611364 682233635 587451539 747901245 778432859 521144841 700237575 879570084 799354337 246531081 217941673 862064075 707739576 723010346 33170784 877389820 660224442 74069827 993395533 991830559 832883925 3210890 948651352 954929926 441574751 952497802 514292969 530243303 741981452 730729984 364830584 893363755 350105270 203089251 921900592 55708939 670989236 233292285 278438140 190507087 433733093 631567865 892717269 890634356 967648275 18927515 911072812 154789336 679775948 642652883 597931568 558317069 883232891 274610950 833764825 888033418 835930690 670989236 994496466 510805878 953349424 939965971 897930094 787838859 973317298 51896228 720272389 154670264 975803588 857536848 614228768 799292559 654323014 557420427 917434988 163475306 619501415 419732785 814224571 78364590 982487540 807526015 604571259 706126345 772347144 402819764 409028407 977094752 999349211 340940670 373080980 263660270 771130724 676622911 150802737 692292852 793684193 109351897 833563468 707496675 544267604 224892187 23174085 695419550 600744294 5601118 140496536 459387380 949160247 136864067 227405458 954959353 867178934 158048235 72584516 330623776 477553341 918629486 95030743 726469816 690557821 755042111 552838310 583298121 772987439 493884673 826075239 209533586 748625340 980642211 518930301 527939065 842114299 149203060 821823277 842541111 703010155 823822594 463766035 104703381 219861566 601326490 770434991 956861202 109077177 367141853 183902435 300192243 835932972 270060207 797599005 867502132 361942283 708340512 949808653 698210347 356802626 29197637 310095992 650896917 738139924 383391961 116590910 794357373 552112526 331167339 992175763 72714681 610795929 695580391 884020692 610223316 450879868 899932090 683487271 729268218 123973602 832773717 626825832 772092387 692030181 433622320 793480393 815854766 957826568 774387089 735514396 709012670 454630327 704883339 683202735 996321936 84935619 292452396 765554519 767460430 909619320 562508386 18591885 983445453 31116399 219409833 469462021 862409584 745237286 274441993 359636122 438385948 868724443 936565922 299171635 113354797 45849884 818445966 976969003 831161235 821355269 787217375 939001562 813263791 721141174 326472719 342525984 868267129 288965115 958996048 910005393 2867567 167662248 875862739 781660996 233292511 654411343 956080616 776016762 175997203 853698616 486668370 56825638 178312227 410568847 970739026 966526573 757537932 984296590 244524128 987478621 146940956 805279352 339811694 796858951 369823187 917080031 753218381 185885500 353681632 94226406 961060924 884860524 293693206 179250704 501857086 677733750 68860522 810012998 789138691 687909572 670989236 289502774 678642903 731022938 734966225 245194255 448448092 432912692 16276631 554814721 712683634 495935640 704829286 553812297 268197923 785489500 993260138 208107792 591707902 379874317 101573979 775694353 66401422 604086222 819263807 837282709 941892655 703313525 773893796 252370205 647707809 744172869 446422762 990842054 162283857 429357497 807149114 666146529 437387787 27575546 203814781 952040830 895491698 419675171 752892920 719233225 792860159 401255525 936049748 973618817 811533162 969006461 209164208 864760530 18976060 777193988 680784029 143399148 452127182 119313709 894231995 381987481 171805153 964990336 901323979 195832193 685808653 666336986 273914890 794250138 963676046 867223301 461831329 829145720 796851672 349168906 819103202 620175838 855179771 797927064 766019272 127830638 772473584 670989236 709884832 252240234 895900163 361366517 707498419 121234301 974697133 670989236 469610276 925269320 559024779 133969685 695194948 673921173 315136484 6839536 288487247 128801316 721842587 426187943 829007718 648076777 835117604 844269335 698249184 823130930 995003717 902124237 572505704 235295257 38708652 190111146 881563627 112872895 48531685 951337122 788706990 733730686 710374949 935282255 870653713 976623884 819923751 344689939 791938401 100301389 311676503 948030946 57045334 694937491 260870687 150931902 843566449 945417928 751713107 817022993 159104809 947765664 796997748 485858731 51786114 498977268 663787078 454698007 505238833 319242217 738471414 219988381 141792312 187543076 280280367 359227987 689628212 204649033 870871591 727898333 566645215 405676445 877747529 617697666 423768538 268321312 849369054 781597125 294104947 722210442 693421336 768459826 765083293 400653295 925446443 929728028 950957173 690523452 935746875 965680151 407563219 98235353 305922759 817552912 527750929 707068697 771834219 897133592 789628270 47561600 808584663 859547198 786610268 687614529 560353106 774181736 663846287 721159228 813372635 944100294 100927163 283873258 995761821 503782558 875135754 724742248 376185478 250399257 677084229 904465501 667510537 31592035 625031819 287196482 558622067 760770247 648843558 893573000 780849117 938088673 718612184 886662708 487197540 852657901 752983871 242313042 584652915 847517929 107052428 368410334 525708579 248943894 867618771 753861623 156247868 268878178 884964822 803291383 566295157 958044566 163591806 518784812 453577412 709091467 181992834 370608042 817709759 848509440 774281200 831979365 890604730 190845457 928954302 497456806 908608051 921658053 343709032 759661283 733470586 871125281 522769988 883639741 693498925 319102908 928777436 449140241 413402936 303892318 421609206 896926540 993063486 175004441 479719341 997515804 757610666 883747110 284597371 417902472 552544377 688639209 687108119 353864219 725255752 685467850 542464184 687464282 571046111 479647249 843297794 933347786 729631684 768693022 871187264 557777448 740395245 324490512 332387934 91736665 57046413 912833656 890763125 376720036 646320012 598059693 229319554 885546878 858923199 826918462 674308705 545191024 165980737 147837066 895249972 88257573 991127284 631148591 929687059 796061296 274708305 482168286 534645822 754529263 426223733 945956241 134533044 9819543 431201991 460140234 218695775 304502883 253494376 834202957 791749715 987255387 718018278 994416523 170913485 932448493 837253269 835450450 2926714 920907542 202308682 433461145 130744377 211771143 391726029 666664520 623156066 857927504 874012821 767381079 300211143 59053090 799363319 870407298 695730603 536532315 875899776 897037934 896671171 13979352 643464649 373634829 670989236 900016000 675923495 897884501 328088718 846669806 745019806 478617530 963811209 19518392 922277676 998588243 155635764 738638651 746149028 946182602 565534987 874860732 812938776 890335409 910706838 944886381 761902288 814055665 224784266 20979234 786114039 144700643 879775087 792845535 85994036 490934035 350338181 683106520 965243574 518538819 256203989 519843597 548909252 714528072 611401073 739727417 956409267 371613526 732012702 159122954 374806971 81957826 417666442 720239067 816770173 375522135 684822560 613922790 428593106 985112831 633479904 124737295 934984148 933712185 869935980 341816675 727863535 386574606 436930362 13235699 887563255 222030864 765126816 417566433 1802243 770178602 391821306 897536034 117628424 839468955 748886674 922337071 331648161 222420503 308794545 567765108 483356377 788399902 261407709 504230032 234640839 600903129 558452758 266307233 309273982 730928363 714224506 730047909 873073704 408325741 873346935 997273762 536900526 784185928 868561991 850887361 309547594 824510019 820244356 147977305 984776792 800610496 210369517 195522536 656544488 992431532 131924739 296017572 543780633 403132111 174470612 38522817 781615690 929794812 520616300 952898185 827912009 935245510 608149443 704007679 513339890 297063858 917909693 431763611 20993361 822109802 245868364 671214922 957603730 956610472 990547946 996824140 65795099 199407286 718206489 893097190 208874315 432063835 74806950 853557913 691959067 222279522 961993415 804304054 799005369 602095777 950330706 679620698 802543700 566478814 18610864 837522979 651604424 125036063 31279056 878738381 384899527 375882501 109231987 31295722 319619050 733757295 6936818 254235856 191400706 246329094 964260952 348003170 794165352 676875615 324375446 604922322 953992919 519284167 501463030 505848821 468255425 242589937 316725479 993378379 763804321 695577353 747223722 289819624 704376799 995975980 725227788 894788558 762562654 174001673 601399133 782715119 967915904 438001208 624465259 70955896 918706046 942478495 837513473 791757557 837241918 808707312 73549702 778181237 866295923 511845989 687256269 472967297 444736646 829824385 257313934 649039899 73724477 630182094 500046934 810774881 830863809 724973635 842164671 191434403 325364744 499741404 920769882 581309681 502262464 520745681 856519910 778687732 768373928 999046291 992161270 488886180 994662648 561961505 509467104 995248349 646439048 328701997 781721298 698466579 890721576 981680617 66545194 999773489 271819861 542025255 843377892 854012294 781384116 714196780 626204848 864190909 94714129 507321756 906188542 911252341 902415088 463091828 338094027 37233021 404695307 865367941 725158146 284947201 430432356 948807402 823784690 640775717 848560167 117202328 956144941 971134391 957424873 79389851 724867779 129587619 847637858 557991280 846425572 494971082 79401616 881819888 941032362 612419663 913243358 262065047 873717592 818175970 869108127 145582787 35181913 968735571 879124215 927030592 785891006 523233492 147701351 854767397 981429905 54324268 655223737 111743926 677671592 627663022 695073502 83111127 379432458 902789807 317678634 262521824 653880199 914876467 851077734 621756229 833672963 175008257 224100554 10369658 287136994 679026356 782768052 994901339 417303154 891919867 360660375 848544544 845404476 545336430 564579663 862454219 88422662 217137065 647519872 914293317 687307233 124920706 907370568 133814331 697482814 925004716 212014318 850616043 466841025 908401496 660259596 692644924 697024537 434643152 586506590 907652978 686100401 854391299 421601573 701965112 754698613 123443316 732497805 468942003 849636022 678756175 268695745 181719305 441103855 858694193 670989236 588237780 806911072 941753111 875868501 432382497 724064353 905110431 686202105 789469325 504074777 568599706 810157006 754250515 721661744 970997030 670989236 322953872 615457456 293718815 400655015 346972115 154546842 805804666 502733154 838945635 43813721 670989236 813270898 387382051 64051718 491470072 310707896 345951568 986934621 140931719 47922772 886753246 894050577 206505226 658673059 93631109 237258674 419792092 939493087 268695878 833191624 349008557 310636852 17545709 751135670 936800644 506645104 543702224 866235989 709415411 962734771 679586601 93304090 215556585 135382565 61482230 455520979 869780310 571016511 809655639 20465138 602083638 549820695 957738353 967986337 937307306 744895938 700098909 676770236 796047836 25693944 986403917 670989236 738061380 824788638 75042173 602827487 990797190 162533550 934989946 729348084 532978469 561464979 464393179 158810152 247422089 518577828 496049723 217037111 47153176 316910662 574809974 792984078 678269173 944542163 95841620 960279065 572299491 969838316 419825825 184130523 212743823 874862057 587607102 383936691 943513614 396201204 951251351 783186181 960342808 833426340 235748999 787000161 28268439 616741448 129301727 956280851 182846862 318582195 97598649 260876072 732806403 459494772 257519777 558356433 700756094 542762489 849366435 546806956 155335610 670989236 538871682 498196577 671266086 596901692 779864320 348081370 515879200 895231082 900142238 904455839 771576135 86057200 722252988 656275446 116378306 721418236 711676448 679845647 423735109 566417066 747163773 891122699 701811836 710961296 899571569 674017020 716382672 742148691 710937176 705991321 991757153 454831255 479011854 425342107 226297875 525805548 850557668 875318526 643815352 911302105 813291532 954908986 417930781 326150690 742219684 302239416 943640032 493995550 943454820 515900910 823158844 987493585 695546794 593284201 670989236 802035469 878582921 837655283 879546222 223901537 199720716 312498209 344605398 859785761 677295168 783299635 965616824 737950059 757324224 815534562 831251754 363777409 349205088 708658937 593708983 695685395 266445551 793761120 634360735 50646545 660245538 189522279 866782823 951653621 928141146 974926191 803536003 206781121 279901995 482265022 723958641 380055302 47557092 354529414 289011870 369920116 717936546 843787381 864807795 477692307 552568589 176039865 128222857 967533068 670989236 583791102 274380651 2062608 321498920 939790126 562461483 999121916 91445361 459310375 230699975 862193849 993495844 885623328 998389707 693480941 444715044 803936526 345472810 663805375 815543808 878235534 553904121 934326121 415168004 716688246 810484192 888800267 573201638 939840956 152134841 56115809 961305626 843993189 896228212 855142027 982717575 355040142 912082060 24815783 701871730 599363041 322323577 894443392 297286938 741145961 958414827 52908044 911740141 449613633 711730784 870031340 54667863 712268405 80030334 163215314 918585386 835058288 42829577 550430784 651264807 48910994 927448827 865995325 891947329 762910909 131862191 524204865 849924330 578270772 671490750 948249484 607697715 861979897 715206413 646746273 894385414 748451659 925687813 932212027 517134260 874035765 456475873 759576177 38742952 983411793 316087008 398237768 863130311 787696749 877337218 161338004 913901724 565771764 869651418 161576388 379418355 991069672 817133312 877700011 86048567 795217489 856380108 627468144 860786623 695300315 482389763 976629444 670989236 603900995 58039222 125802477 624890161 531530329 985132746 921862076 724173450 254667407 240744097 278564127 215514201 959134482 823209214 749584107 926894396 900121896 853832210 170962716 760949852 706378082 867399963 539142344 73906901 865239986 953151280 316732730 867283576 439647736 869121227 731140695 970568501 663467698 688594700 82830380 623139456 463777793 530082312 720276080 674712493 78798981 41003592 297348456 409791228 972864150 977023334 479982374 871257264 679501158 489663983 735294890 744044317 755378591 859435192 224407936 295477995 727797903 959573653 997932592 698735845 696543218 555614469 739926050 872596499 195958274 897567314 698373578 537430819 399386118 491893882 83298218 72490277 808113405 818356196 117946976 966917174 573058004 101746293 970414358 222014374 610922616 677484527 343682116 465848764 56136254 834263365 789380582 218971101 439042143 700435000 75776151 231478702 861291395 72202359 451544753 742635734 882493218 567482368 592890080 797322351 851994848 673815327 218432002 67358684 499433502 505982874 905204864 153299143 26316487 710952201 740068652 876852304 938376001 485458754 944067040 695300348 553800570 502602354 471098705 82691222 889515345 303802326 325276278 892434805 786898958 575647211 635138223 703369080 40157353 554043407 385981172 978150243 885027199 687141880 200643875 948962507 982079136 651202067 788342773 769217151 36173673 285573412 755211754 760370711 524990094 767993361 163095070 293037854 833342572 813884435 267776495 847827704 776283505 279382225 187277293 740919876 738953900 550512716 714990969 107989122 847837040 762096105 749447960 138590502 978165324 74378226 18664473 868098410 918634440 42307934 22347271 947690361 998748793 971675438 939951864 950055550 976383960 79705869 557441147 314703858 387061084 493977970 828621840 128339460 770174998 132188811 45275997 205581061 990598205 154291906 766940081 795867979 63451987 699110480 983191973 19105867 899006786 31154494 827074227 311543509 787632219 975903384 700229884 670989236 416418455 373443808 734947856 611387114 878449992 995017448 414944807 783751084 834440512 721152629 160938918 101764309 647975838 902912644 969037971 797272120 10095724 849664847 420000144 539698473 329578279 433065311 213919679 914502772 920541194 811834661 693902166 839723668 511028165 212583654 914305248 709799817 107961303 398037250 554256555 39840582 660908339 405975772 809584847 357941631 749927771 869589542 499618022 671720354 405685292 145848232 725437797 936600011 509666396 74487225 874149381 979937596 993780276 676684916 261807185 670989236 201734212 235648255 6017057 952386889 889597116 894282610 104925975 806040653 96198844 898029319 206556027 787124487 426424299 796956038 677431644 920507771 981252427 722352004 846812453 485512035 648047754 604416472 829205301 462579376 945096618 290919722 791467072 805416361 847853544 4580494 616154664 904480387 900077690 761646912 899452132 2247414 739494074 208524732 783553381 672036959 528678587 989023492 757239269 430049295 991536626 653483092 895964137 935990134 891862377 919049975 830486109 656083438 600133917 753579776 544922 619080763 722863559 703057475 322662468 448039657 945507690 527222235 108064924 955079567 394832221 985136865 619642334 465302437 469985055 509288839 121825845 960704163 522670660 969927646 148651325 801707611 4102500 584633311 706476531 67486452 163075299 401528842 675377677 849410834 592099509 960914034 706780109 472368922 755190889 283130085 887093718 519009216 917678398 806922470 288947556 61490819 889156625 716009871 776518510 448933378 998483845 894234647 452989488 873583713 921518997 660309771 934942438 415946305 173950718 670989236 308050877 362071964 714797906 994374417 671659243 410386413 613091884 188924181 990577638 684676165 273417997 900294859 925966257 607583675 828087574 620076778 772258257 779959287 933240566 749679485 670989236 754966718 752700442 279751135 941458992 972220069 845183174 376948581 241186417 739279969 692597645 765750698 463927946 966778867 586498533 209284585 282715263 709149586 160275789 903687901 973400154 936720932 932930518 487901144 109209969 400265406 161691283 350131456 995237330 998358448 963875267 618805002 104979548 543599045 391933301 876238512 305662948 267670202 15592065 827900929 196361559 710605359 785539839 717564459 650458226 570439946 56269324 867971335 571030955 852974485 688715765 484418481 906377157 31526266 843013797 615153509 656950097 134061077 245870900 991907689 864320251 670989236 124076194 87844880 981874541 162853078 908584072 150732453 691098182 824163755 586746792 865150576 74531819 557169497 499108908 890608484 70101653 895848780 383709636 797153353 748292404 901220289 856300294 274190206 659226012 541221305 667742163 613072735 104599812 464569772 842321372 670989236 759742028 420836826 683396760 846652479 670299447 504245648 819775148 710821638 920978178 967923742 127094778 321210 993516475 416178689 833399358 92738362 853364259 915075828 106988890 887512530 805839508 968374118 616483224 674636920 247825145 220260509 560775746 22735886 370856572 699354330 62741832 930975252 670989236 595683517 161409845 918919147 749149737 969334856 820086634 751430530 747063584 259682432 230050933 798666163 709342212 947453224 941808746 662417776 931665990 540507725 991400993 686572188 876672520 88033023 468871211 918776213 485289493 924393662 6161112 882705522 423079041 154365130 766262273 726501950 700829179 553208701 653932811 690350629 698299884 129622571 753383675 271090555 681400440 749036634 832685864 808204636 758370833 157644748 90862885 943331483 507687171 78772853 957432182 648681770 935754745 670547352 564622275 156606564 769311866 710407357 654215094 922148041 951943134 877045586 988155003 831096158 470359361 737123978 816271521 106932033 925866108 961118656 538646258 778712231 536869995 670746864 882176171 409411849 394827080 19373007 656346496 822852336 753999968 792581056 688440902 722044546 798323455 151042821 380738270 611741013 169114078 282183281 341272242 686847792 212497008 276378797 103337502 345218304 138511283 767549455 923352489 601896940 713699972 354005346 10451283 128340776 546015860 628508627 317613117 440814483 659481829 405149040 763348575 699118986 698180259 857374766 840193830 971467345 737380790 363236950 643776318 883139559 715409631 912957641 341480957 31706415 276739672 6572129 810932421 854880376 722080657 807430547 493089326 208026942 2289173 572774904 387084243 924737518 996201096 90039528 288517503 880623573 974279264 448741707 992293785 786990260 323154923 186211731 84876260 41340682 572313244 522141502 727420728 73995599 733696633 641729820 836880876 200403927 117844371 715129250 769683319 87530932 549631001 260587183 472973472 831329339 611312273 123026394 352988225 341890224 181427506 820423462 669851387 597365505 670989236 315754076 89651925 814031110 383831538 395071271 947593625 913619601 664061174 767943427 801782386 219797975 467615462 29835512 421720750 970627075 314604071 342271797 450649125 9786788 107496836 787121119 27376321 803027783 832781981 1682101 680297887 681685481 872013674 826415453 760991856 7753596 670989236 891350862 760822317 571576568 195910343 921066567 891178163 494078088 418237606 84387568 104123897 137247480 884416832 195859762 821256600 785651544 697202001 886322827 92584046 515557339 250852953 31792333 530845227 305242437 903047081 472377194 767513436 45767103 869116243 749103424 2411203 664713582 483766050 201541136 832698689 756205149 246238758 854547576 864692055 865649445 700035494 676821338 795281294 817448068 990491014 5757827 958514837 400161919 845081646 394917046 692465250 98515447 662863075 738305972 860364508 181795806 90335405 579269529 223500461 340816961 410382773 122387354 403751090 889087298 207923731 17292717 102896039 389346793 833007682 538496124 169812430 806462978 39275196 847448729 193370982 819482110 389704120 732116476 801347098 898071897 785595648 542901010 87389116 706664508 143236220 805457682 235596582 213032391 916524333 468545266 759942398 511502838 941664002 866630148 858717158 598606421 436485501 830349660 965768070 469342811 563517857 554109733 670989236 224080862 913553887 468954072 381104986 963064486 365134898 236030303 130161398 139542268 696489618 139603862 258911598 780140334 311975042 884839196 126586647 650814081 540860174 744458062 903021626 115950758 760766445 843558094 670989236 177239637 963321373 546565518 877939068 197579954 139411472 625202049 985162030 373411091 853678930 734763517 680439047 758844403 513038634 536779824 572755669 29918017 886672918 88955854 849798798 943121616 71026223 774370918 875141312 574110991 159304841 434192650 2841978 3505965 313683597 854466260 791702479 945599641 648862213 839847303 746760047 915153805 972057421 815333117 785350280 677804343 361292562 771809407 799850634 686600022 723595879 988527564 314173476 685403878 987691922 804563480 764815466 145402865 410046137 785168160 938462057 779468257 997609384 311040479 286864420 54660011 855124410 95003054 314268419 275653949 379864733 195102847 941865603 335823284 692545915 945190244 686964752 80826070 998423882 789285033 141106393 987540486 175390357 851830526 271138833 748341308 988445944 157840218 931493545 413999479 734744522 974209607 24517262 877035853 918642831 134768121 905475800 720449495 746724989 193272907 786079328 450737461 861854252 679914284 866018740 670989236 237702111 742068314 338456407 781239849 121047346 366584399 769782033 397346568 114397484 682779561 870674248 619113258 796558472 328701928 758905804 879115276 716597835 805072879 13974210 785524350 195805259 930074796 121761754 673937681 699097488 984359566 927649870 164026910 648996447 352722595 836114070 790743470 635321276 320317311 733545581 517655982 967969540 356268691 849376621 434489837 506921197 858654396 763815857 208319693 229680030 985831544 813839025 475975913 107083245 918024238 454148973 609423056 593729067 217612721 58145558 17069480 61115333 965483034 976761609 751390344 986695568 648045536 184106551 937741693 128649262 412619545 797586693 53740210 139202205 61654560 507619398 914832420 691268999 844929270 902451550 245159685 636217178 999525271 689900636 943637285 714425677 997209411 970001841 718062227 917490415 751235438 442092065 959253168 743953128 610442936 168642002 765312775 15529598 814688643 926689410 964262308 552001691 904647714 920372793 635499919 671214635 295329449 871929806 939765224 487410199 100299557 841051711 857057572 764737487 969150664 478110077 670989236 314543721 860231096 776206374 989872058 831074672 917027892 838504062 684160630 899445470 973957749 805443114 974087242 825317772 227236945 95487576 766993387 283596986 822862506 917149037 448016068 789888936 828941454 997610447 734322571 423691960 770979559 759285091 820286904 615551634 335158549 156829384 710914052 885040823 842042733 719280775 808627885 888591722 509418087 909738341 438150493 901774741 882315310 695107004 857943544 83128676 564259855 831310696 30897897 378607123 41214011 39626668 761512625 637372892 167753407 894324557 719945013 178357549 817114180 681007038 877205176 643357536 969348821 718283433 765269114 870219605 479755845 657750454 705552537 911466724 948471396 977195124 439112287 323042185 461901875 840742796 470392574 870229067 738320483 697455285 231187392 649440386 350850733 780196358 578244398 749679220 24560647 619920045 803354727 854508051 25522993 858948005 483755480 882105951 978768134 625643602 574384819 819592776 787149420 54129776 765704954 189407432 454888803 2485826 816208972 792830014 315835061 379714443 114199663 701362346 893965316 670989236 324229745 963110536 956203137 915816588 954478025 775458160 156072651 110964700 99577749 614378424 855534680 153435053 914948223 353888766 328882691 841873551 544549707 617369544 413743511 843266087 628106459 177015864 766097893 100020765 205409476 513307337 36712747 399539737 410326618 590404670 872642039 914277192 27057020 697361078 981485477 690321317 839911788 151398956 702962060 887383385 842515988 887357978 181803201 709386012 739320980 361429691 959408892 842118184 744790234 564521826 54202450 739339023 59844355 880679299 773719833 995665262 887463139 527913087 796521096 157681596 734495562 956027988 529750542 697991726 333372606 830415216 577352431 745278915 761168215 957114063 701992909 290433387 815793246 13295039 698172111 709086174 326734814 893081766 829734454 437886550 323494509 991607437 691303961 517744600 504012173 723786815 224030450 949428641 260840596 58754161 987166398 287168867 539866173 831442245 121251643 887956948 131510135 109207309 87666883 744495697 198151895 509299636 967451444 919475274 349806046 157584649 340805467 42845573 772716552 87857589 961207373 941712404 875190496 194761303 390803302 795556747 504762766 747889960 713540706 821467074 440800159 687291822 560155346 471719851 751895256 830827358 23728681 562833824 898366868 387897251 867154984 427452763 812531588 134214177 872548548 962175853 297026834 201478440 345658012 614727592 369579857 238572321 816338544 967940760 930644932 909580964 81700419 713944945 214092290 722197158 380284747 694274972 854975270 409983751 757763725 797871293 826299412 440254190 652964661 792608072 694852307 474684668 673390814 871364406 304354097 100125773 732191333 716438251 771101547 17589923 685514864 954556371 627569434 595770592 573144428 761301087 853875090 704634728 362676321 313457827 975811280 533293400 995716714 992460360 115290968 927021714 221842075 252720042 387898182 57825903 255689903 100096590 149947609 855265837 275760321 830818973 160292500 384372079 669137961 670989236 560011965 891738470 384208908 27558468 783496159 287859993 405699048 988489101 377973642 537570657 851713409 903791327 822280685 100525078 823163575 3289669 817089263 824044174 904264298 858964210 900946 636060312 656782397 922084220 471521533 763538576 507013048 912808704 162857699 115153779 931538420 678641875 767297783 566585092 864500312 655080076 985155117 834449792 965820802 871577909 715562338 84233247 670989236 823955242 343585404 940173559 94246097 786873671 467236846 946734647 516978650 922289747 981851110 621788326 276404582 679561530 989186550 913398872 228525725 690207141 376528092 97616063 833852518 918386675 700406541 977654267 720642043 784740604 812451022 112142989 314418591 713920379 99583728 748110184 22802169 599683856 691282335 353392448 149479809 816873071 9843780 12564509 670989236 842478068 841961411 762333000 930388704 270491829 635486260 928214470 813417321 961073389 416350106 519938105 879388979 843999926 752113642 962444115 55185937 895651408 867709949 433191827 843148256 117972466 472257434 327952193 928738397 947574978 266672857 917357324 225712946 500932354 52714701 738132613 398781286 901817218 195039108 946537801 238908775 756508220 549561250 681576498 767269239 338450104 455904922 952473484 540562177 247018271 705298502 847854072 31531182 603238643 323971581 534481771 781724481 246699539 207635635 670989236 640672167 437751123 928491605 544151585 225820824 743842584 781664327 252455271 551911639 649345126 125880223 823009967 704470441 662897446 408291844 728837512 985915258 782917546 796071719 740182994 66248397 44933841 970831630 202024839 984381213 717408465 816681208 783764405 339600375 868991847 833258194 359884092 945632817 891797827 498352700 640679800 338940661 429146248 948910289 45237255 520509942 890029403 510674901 14041354 857052889 884217155 767552121 399315606 294917693 801485327 898898412 430330522 892933776 909484236 733162877 443917323 900245207 910161027 653102907 990919303 932872661 321669450 746157316 489114487 965688473 839418214 27333298 926709770 670989236 169470398 590491425 996984696 174629205 363346411 536050767 435614979 978718308 814346248 113064981 131887893 575603331 259139205 690471301 579024127 677568354 808766487 555662552 592368557 186268331 263417004 147037177 974824703 378233860 41268517 255772194 894821085 926190044 755302209 994518247 975275482 972824538 271464444 948971022 832575789 690067670 562060688 56381845 661319572 760312161 313043513 871601471 834931543 643505194 673544661 335866750 789041338 496862712 411468115 623190832 743766700 509611197 420020044 331599530 43877118 687142512 823141725 804973353 654957727 34945608 930147952 149001961 519940200 211396378 930273432 407200919 43665754 202867516 240862706 670989236 423264274 404373290 967645857 867228649 859040500 587276576 819347027 482998570 34107324 682308173 117138986 353875903 568439358 644574143 715349841 820205453 361353808 407798370 458087826 666181585 6330001 674616925 285681123 890676084 785323908 941087511 142055853 795340260 822174682 925632773 830981026 66276488 308591366 725568577 322851663 542968401 13308140 973544220 917537219 900035945 411748123 947098088 789175652 593300904 61470986 592702840 869380804 893706460 883627843 926088481 630053823 623247131 808007547 955570591 626239225 860376939 821893464 594695263 791583636 977844037 937171967 683361659 854041947 174704840 839168601 664572284 962281291 478233935 911027628 762379692 880290472 722681163 783106410 72956042 379106511 512863214 782332079 175917724 985283548 329825641 652455859 772769646 183819027 990885560 940413632 798535628 864736969 916971392 933219764 192674017 216565946 801718001 400843684 504889039 738719852 254215762 886995116 904885886 851262213 937722169 792909420 732739014 962465792 252819265 35038696 520641651 867785970 733333539 773672804 847069251 694215050 956882132 570578416 838347484 757307087 555369460 999316902 594369557 939102825 713971488 568945148 192857323 775950665 728937090 786619234 8348541 410120111 377632590 682349905 526638512 670989236 772999159 31404917 932652473 265858037 741881889 944935126 782740732 158943839 954197417 581009600 369323085 997803388 687763532 802316780 44757266 893210699 426085600 125816818 439240691 569956168 769014718 786105192 921628463 465816736 195668619 983682571 383804690 120736784 704603401 886706739 864842535 773615808 944805119 354617148 671013303 729787402 880975363 770671503 346523049 908549779 438247444 908866425 29909439 149982398 93868318 850256499 354060431 926649024 559646043 773728664 647259249 676802373 367228473 712856047 142777927 946379396 863145114 800538518 507355171 585495513 642656240 921091225 41390419 81898288 942043687 824352967 637268636 871332636 723142612 904077926 690554559 704889167 145640225 348194085 522541693 754390416 883635460 733185981 137941356 884557998 249300663 87073316 741703562 775436902 41953156 481180178 13315319 927081386 744390038 870333964 594036671 744970935 737067637 541662488 485475299 552292103 18304869 825212988 955650495 625831584 443584530 580751530 179793269 746117566 903002753 933101396 958285227 759271742 454433763 907500589 919866334 540471768 962992854 904394055 875027457 982117462 523346504 547329284 812422768 99204161 729510845 985408634 876212216 792613466 936121410 644943056 785853409 992613051 15736340 479856847 974155744 24608697 949216264 527716675 814937649 371695645 87955852 889580166 803741686 818316212 415729185 222675694 700772567 917295462 632977473 397816617 156451719 733398122 835225493 142539058 626368220 1420743 822541148 102066207 309273979 856352143 677312847 894842121 594043919 391770720 470086547 866964732 103350481 309821144 92731787 897179104 297738063 785787529 976102241 872603557 573192529 27558643 846969110 688242304 113157096 101135659 317765487 769600739 363328312 827496523 593895326 816700866 856496563 290830251 268114147 796221751 515422629 541505740 583939906 297284984 875872733 631868821 909526819 512238616 17675719 821353790 724738338 791979258 395659495 767562609 404398961 957796375 722282040 735230877 900728060 671954004 112708703 962286350 978531230 56993037 758012271 921579058 374667048 694270285 818671426 546571098 288260161 515229924 363447556 962456631 15363016 851306684 839956751 812348412 954698795 717130276 833618121 573529679 151201054 550509359 949425738 117789441 665735043 301820281 925026570 796951032 341373995 21401603 20788595 969164174 837200180 606858858 555336499 879710361 610160566 113853503 727274898 695283687 867955233 942698908 163398445 973614232 958480280 737832021 358940717 457031392 692385458 700077722 819011374 583337319 840817910 536845460 28195807 941485792 994842531 812776870 959873174 267738638 731262625 72565612 866436192 677579216 90861327 994803316 805983383 918541167 620327408 670989236 378529956 663575192 901086221 242497525 895771761 614943370 555270239 785886693 733832204 843048059 359766144 932896858 150348899 127431624 752719374 781553026 415178049 101758880 914145085 55273395 936233447 979217383 685289015 589042198 968244865 529176459 201690328 318845283 891157569 211372311 962618314 985196076 292570403 676921428 621065811 957410025 826300900 352975263 480557151 949336972 489318413 56898010 345763448 272464053 491026083 553782421 388112989 897615468 758889203 809818062 882591845 970693456 997548362 674073110 655330632 879737265 949090057 159339150 383125791 438125020 827222610 976552487 959193185 939810853 407188341 550881178 815817452 828192734 829431703 985363854 111981471 985214144 493623970 515943874 452734121 897559798 931799483 220180796 848046411 75890647 545369161 669861941 955374444 689636578 287838823 731095982 679828817 386895365 718011721 269129720 962155361 337686263 819757892 951611268 669461616 103518900 935284534 777942843 731208426 876404923 898996890 867783025 747834203 633906142 776479957 756428520 912898201 157155345 473243082 664292881 288908554 469908495 925222715 747966490 988292757 940593808 170792519 959938542 989793405 750935498 426934991 368474786 921659035 925671451 670989236 419222600 587122085 825461432 737972046 924463065 718122958 929061046 973489366 706282656 923298410 63320523 905149249 773561985 790544378 580424310 734907458 714150149 900638046 618541979 559048231 877432752 312065977 619588245 851501537 306143571 734232908 86466066 614577049 32984695 912887895 202706312 878136912 773973868 49020384 483753395 60017077 803661321 210760813 604737312 825359618 703353717 822397679 926726568 711318032 483350764 769409884 615143207 906216017 757219579 939412598 354324900 825522454 599044792 776568683 793770017 597118610 23609793 874711434 338625878 670989236 813780926 751454836 900713931 475157515 834576971 49414476 191935760 357878563 591717824 930994182 402457708 784143462 97093443 741816849 77845785 945461069 601006890 681212267 111639378 951374293 987459023 139719199 628083142 75657296 948456521 737608898 832708994 54872175 831613245 378457635 81142530 738246740 873255703 275786997 715382563 676390756 877996868 464263799 882646027 865962386 687997356 235899052 831997645 751428201 778782879 686326420 559453663 950257842 293011943 857772863 689871827 23772902 778644680 733572784 869280172 528278245 529677453 838092230 818816047 703172446 225673281 670989236 820483317 728070759 426241073 873724532 477858849 760871236 956288386 957785864 335309044 55674791 731741662 782571033 994724065 201144166 325192221 788818794 281008096 811977024 853041754 746528370 194680262 249689400 298311197 890966935 403126733 797205815 551848411 166652735 835861998 989990967 873663336 741945528 62129111 842582743 167155553 7324027 960621062 923440174 866098814 678170845 999435671 936098077 610311041 846136649 804279640 472047274 122907849 707215320 918105747 887038300 709560869 629468144 114219393 798419854 55959818 749784591 687629044 983123977 184583739 431644277 861715812 785066764 766370857 579186289 898460531 579940955 750557493 931412031 398942429 754048782 910017569 315743865 618427372 348510511 771511589 894689550 696646420 523138704 725995085 841413825 920930547 50172013 917355941 977856368 590483545 176100409 702363423 937738613 608702661 58437349 985464041 946349846 717039752 747606620 866628953 690969149 8496291 413727070 836737531 842723461 830028426 850323319 858643573 683947277 865319344 608932650 758842039 697816472 581435943 169472938 807972052 816055230 728270747 639402427 682918182 420592285 669388761 946449611 442927941 383358473 745859774 181568874 823249278 175207494 997094677 173652582 385399569 880977781 926720997 335960085 773804565 769475724 677431675 726463646 956409433 385389131 217671458 799603429 950097827 14878594 363519665 482490608 583450779 830759882 122078474 7414626 932971248 498340442 215631249 618170955 755840486 160065934 955545783 741138213 852668234 376460923 810757225 573427979 458966078 153882124 117107204 744173174 417716191 310929566 754458146 334868932 850919848 877967684 464258046 722631180 750905672 71722951 691154405 825555 354443633 660823593 845595584 316903885 615318520 269504872 440200345 672695343 977502708 361554123 980984438 631317490 991308971 327632968 682007528 827444032 789092584 468138959 780950208 253407536 102410643 797426320 906159469 417000981 976676574 914024464 922542289 21713963 474229304 828895029 470660069 421090853 929591190 44806634 260893125 568982611 880660881 730877812 783563945 677314979 782922352 763281584 888347206 693512531 9756139 397218196 5431610 710472950 719775321 971229616 571065937 962668449 121399048 69928376 594993396 719429381 166336172 967232305 435737509 570380213 939826920 863306600 994995858 940222024 868529326 682049584 519185964 791105459 207366175 18516277 437716062 444414053 328454365 508276018 438632659 103522918 738253789 275029960 98028058 757373774 902775115 699832035 834367578 16555999 106307643 743160472 721801987 201585091 885408405 780221604 725694705 172077017 694218055 121268205 865862912 700025322 888653183 503482736 674155369 949007441 24489158 229114529 735134092 226065381 280175073 732088237 409219588 63648963 197814746 287309766 926655413 837853225 692283612 779843415 890548588 369016541 508147953 137606645 822359785 890204425 35649989 721844906 739533539 249127769 143623401 939042701 430446740 476742227 955170821 882717745 886917929 619376192 962146663 923545666 835482110 749562788 697827694 733068772 972251077 781680707 741935946 933215606 338545388 520935928 317605849 168758077 658661882 794649172 490340936 590275385 104729372 984069980 621605024 616173425 492278203 534494097 913925146 29483026 46617261 915579669 396478548 259504914 987247187 874283739 675790303 848964154 781533088 724166070 568332847 34146848 312952364 166953186 355175083 670989236 579942002 525464629 737534361 980512608 498371929 880648163 132980866 695390263 883063296 697457530 254281243 994208514 285279341 851305017 697762730 945188702 631369369 307577138 73849787 248530839 876764093 790989554 13453849 685197588 394917891 248416761 365134866 37907149 611238823 850212085 785620379 339890435 670989236 754975598 60459193 825904526 498719924 24356675 683891175 968751822 845361274 544753510 747324167 924648663 930071402 978265021 818168370 837892768 936786283 4994153 669150658 93024493 717293718 160073244 320273840 616184103 811598742 347643121 363807838 489324193 959922064 832795584 591664650 547394923 61806584 634869309 862649307 331457065 626304909 706395125 260258179 759740736 652429705 4239926 978960761 32017957 962902865 892639758 988034376 527330476 567989671 136497564 959661865 642383620 946360142 718001882 796764698 752455564 670989236 915157932 799887924 779691891 519425544 793794156 707551653 889010284 847195447 567919936 954074084 496534551 819645743 592526035 286034229 566811456 684402057 347139559 846606406 254793491 842745284 858858893 425810657 284456159 870746644 690780286 666379763 408173537 162474199 527765907 255736935 802526034 518188257 465979961 368349912 333201952 915676481 770791465 90386929 749578781 76080553 758876956 295393819 832295378 507647439 341882368 736871090 278801379 666043855 847200202 781513073 112880937 313136294 36431671 790015161 728658722 899026092 445018399 623357830 374586953 32279978 627360145 421413779 343990902 414177428 793951991 207331224 698124990 788771751 466592100 687804735 376299441 495688726 152463715 29919014 888518953 953987403 801265157 310911481 199231783 784488823 721921287 400128956 673728068 781290705 934013378 516411351 925982579 700774436 926212477 511590431 829097209 224582082 747078261 202151784 919422718 22621193 670989236 950657826 862957652 719310401 692290557 232173463 659039644 716299943 805461953 840527736 671325460 70422518 843379554 70295531 227189128 925278218 305255120 848617455 444476964 666142850 382249255 747578709 277772434 803495941 458581812 789556018 421979470 740746407 303469249 731542565 765571482 835640183 119530576 80947974 918966450 856488770 488629004 718447362 360313433 890958248 92242027 920521569 318439016 937778425 473204390 779059145 64795157 165304334 148326719 555974070 389497548 336182539 108530831 999336659 240875901 742457594 670989236 980795190 753044009 118437295 906956613 158196460 681661241 432960018 791674039 42839538 679602195 760944261 964609672 422312325 385623377 682046425 875331418 895702379 538995140 628583349 587058454 651401886 23278090 790865785 81246957 487778660 861733829 744496582 683018125 969588975 679657939 752146870 922124214 981264503 257219155 568104984 899164925 45471973 697970562 976755093 670989236 162322884 214812730 684596557 852247320 682406640 854027103 61795246 631358146 255548506 931508313 866993450 863510265 798333253 878094072 607808255 769919578 228531144 800176237 820913821 783918275 20205317 670989236 898830171 519709507 889430442 825911791 330457646 901171259 289662852 175691371 925001794 777278466 656481446 80032927 614744311 670341264 685239950 901735830 152134804 481849635 155843521 131805105 468298089 171343459 432164795 281890064 934385226 538307880 213827027 427966458 761378236 945497877 323142802 853831433 527520620 209954189 800462189 453594229 928533501 689002968 843831009 296881906 813978254 679601424 687112643 912513982 967273535 439975349 636881584 803555438 285584383 908215605 807514662 366938084 585848722 185497413 998719102 702823156 911043297 887768142 895778107 152192743 802092854 873227332 901581973 984144272 368340619 836683609 419134222 165056184 841362208 957332157 670989236 670989236 852266105 474964593 414075866 720796356 632636242 250742351 673451622 3869340 371928335 569282041 441002089 806219996 490613064 288285348 810456548 133210525 481513579 302756140 566447210 378344928 178983236 123829070 632045778 241787904 979730524 865384618 458369455 750932267 65615039 744413886 689245532 472595650 805298473 806824477 428770384 128444085 819901626 689747993 303837177 947539956 91507823 183977282 324829560 671109800 959881135 165397520 188698018 673695845 969957550 360848892 670989236 460890251 670989236 753490220 277628612 947355427 733200149 617028180 136602676 500971019 937240511 618607022 355855958 583988162 144229643 827663587 306149517 25271162 873344442 779900221 210583201 121457920 842366566 845294545 114657977 444392083 978417439 312134083 845987181 904809943 239080251 688069973 378816162 226615685 313933398 798958118 650112521 670851307 37514642 864143999 471137955 157071850 768419427 336352087 863078935 319512828 127961508 969314709 817026688 897813890 971457433 304908808 532828266 996999049 771357526 670989236 670308646 833096382 606044276 496173121 208687439 102277039 146868999 541498375 793116841 570080906 905808056 820716960 127037352 670989236 374764223 87282988 446686545 693971715 867618517 614638262 588133003 277100201 737450896 771566258 177747669 377901572 244838073 634092813 780192140 482735935 723610034 259703553 686053008 788885886 34691305 984511260 837344318 633706525 491701770 292289794 375158361 374257668 971837220 999977847 189314838 78052497 508481340 92017256 610487350 703420324 347703009 737531876 906207717 129993085 678080861 15573385 937610779 25170166 446854864 749673829 28938414 803995344 738213855 661445507 938736849 699984087 845485272 159802836 950652026 770427218 534722792 908929999 83824274 698454535 655569281 818878134 925992343 650973435 521886612 869433887 769766513 776836643 995902352 374040927 788498546 761811319 238944536 737695516 758379788 664722766 686650438 741012589 486735206 842433436 614104017 709781602 730756349 969685746 577674975 452786712 267123946 161047140 263018913 935877057 643559154 354277615 279139710 925121855 427076400 409734663 934385940 216743395 729293464 599920253 443481465 439559415 981522273 286147798 519829968 472635964 755370835 651535228 3486950 793545696 892215755 235920576 967612968 482702841 988614721 825828806 648620717 911861907 410584498 514137314 818981944 842905580 635077773 934736435 993660251 954440614 557257837 895297980 492372196 615364797 695817311 69584542 718162918 71128662 956026289 4393351 281302470 514467706 264951624 727095465 934501240 732698012 549649963 780000337 911619890 20142906 731720767 650613796 691376243 256733308 761146276 407449210 914958356 349333433 708943500 3243115 22051505 41928545 162334351 81691885 358399953 832326943 676897028 341822943 239590457 676863883 174185358 386087734 631964404 555667624 447445453 548903364 824012481 619451078 800678725 451341361 556599441 278932709 773448651 754237369 820472015 845631989 770472581 722372842 382878347 839936883 452081433 342132374 981621448 707400576 910054493 169100644 683940832 994419521 121512751 663595702 973936884 493050653 418890141 66051499 653732944 787479163 285158136 406766337 713720407 216548018 898157080 342688417 960273757 650889175 379210203 2218416 760086109 626721725 702007743 791532509 241189366 794478584 708879567 187720296 498115877 357873861 306910795 842621350 875731880 681642755 516416686 838129201 747794132 988583660 594312738 539800866 991505190 576285131 449911698 116833806 101168732 824303641 681242615 874789403 111085713 434958852 610418204 976824447 822499950 855171487 375425410 565847997 827305544 863488944 625870086 327687082 141168115 670989236 976698035 980952584 563435456 362992050 925653296 127383327 950162720 596807371 799590702 130875693 796022413 568157900 889002503 606719488 188134712 281720521 178934859 856270431 873174784 461364265 862877846 629555782 670989236 761147594 117077355 322896476 698090036 460317387 471242466 865406705 621924645 870735963 378772704 691767182 817955344 508371295 480205846 332907835 49340156 733026051 568017859 165945246 699894763 167100615 983221439 949462776 499222420 130142213 714412726 885476890 775749511 887406011 57755023 302775253 127991231 491318084 985623934 606071834 147221597 158583092 891627304 745595549 963198168 952678039 970176080 337996475 253433497 458786831 796017644 313004868 701894363 393258527 589575289 145311927 57960023 737959053 277569890 585948143 963512325 354038649 221138927 946045501 201961239 789987484 852195502 970343480 922017230 629562968 240121331 879164510 934988419 479223158 846563227 595940722 867352470 504330114 282660583 86227755 958058476 229876646 711140178 817263279 239366285 585161553 793764248 885742999 847502076 654076123 180560108 373064591 319801437 592295648 705174617 451022847 991514836 199283540 210129513 632351529 989618902 726575884 842991386 644428808 989770300 670989236 162036059 39808879 63382834 656272226 689340933 980655627 386302813 772248395 670989236 118800320 862644357 37352086 148406856 770436710 517941464 670989236 836416046 160550027 33134934 313804648 857760674 777845695 839979549 913294070 687320780 612379730 708478455 144436809 831599031 273695550 955054082 205680704 880477488 849096444 429401369 310087923 642446769 124649698 447673248 712816976 261282133 316969325 798952352 384698991 712286297 41616368 621736456 670989236 132656362 994371687 90222657 306371717 151787036 230184076 964665907 752347549 252334438 758101254 711985964 16634951 788593771 966052880 149127937 924600739 829541551 30080917 846826938 329733239 755982902 999014230 461281474 427604434 733624341 106835038 972636619 215027001 218092973 447612090 453942159 477272803 710604032 282093827 691589007 452584785 539469750 852191479 503933433 710761155 843399631 939369836 79563068 738477741 908964115 735176745 795748695 883312739 854590540 863555224 734266930 463351338 248222831 763542633 773074446 841235820 965153354 861535330 295211401 644102396 908634466 967007971 182009125 492792057 271789778 820964962 917888835 775875643 670989236 844342739 675864230 925721662 529033959 402328573 849144750 540321869 742571900 798276472 729725091 232894944 628030112 901805876 645937124 689541981 835067532 416863365 696857670 260782102 923694701 243278525 496842812 637222180 881517179 21435959 135209427 964349407 448868670 618116599 883699393 895415500 943329961 873352315 651403184 692425580 156101736 373653513 621178391 625103453 171993662 242876689 826885458 905371146 22921804 259754918 943977659 242587339 426748980 825566740 670989236 310196442 495512057 308020844 926553723 907617224 271722129 672039353 947174620 670989236 614456175 816429546 970325610 149193442 964893399 279277497 184824558 521287695 3165988 19477837 777445502 384954034 682625946 840487114 524717887 957960795 400965135 667590110 959493799 77475433 514939181 19528300 970903958 943201286 639413453 803147892 941856717 382595969 289631972 878080551 923673611 347791829 946956536 611497752 624260807 712520145 578777016 990619431 477396318 51312855 932387733 660989598 473468084 812811057 914930404 387613373 28851033 952203691 560552116 569908744 6390660 468523608 903942676 783662035 685607284 707252677 539930327 653038240 723929136 771187963 949560047 898162178 702972112 298432995 7816209 589644982 693648437 820413715 797375794 960699086 527360332 473594926 112554650 477902659 341913231 715102697 989169878 69143222 440850676 387489238 947116520 135372226 616245525 643198670 811479228 321507831 841757220 462303175 161433400 977068762 919190728 169475571 861017797 773569651 432847482 982281487 843047099 912811048 646985395 671738439 964043435 1681776 928435955 38404993 922584985 643962047 929094580 19521816 700579052 181274134 827162692 821365906 849983015 675329154 275673741 760997340 706198770 936207858 9041214 277252133 299949872 746748359 184539219 887561607 679578472 698888923 591001735 5577485 415810454 670989236 375047408 280413999 772832128 445089631 598627699 151506214 767826723 24301756 810596769 426586525 391645208 701795353 219041044 334574878 159763504 834988704 51207015 675431981 484354683 895980167 673484195 478123605 727689994 736072087 715649229 727289488 753174038 809001182 196686426 781222220 980233469 783954982 767714878 256722831 833289481 939984629 737404500 913874775 754591745 893784294 648333866 45431172 829394774 712816970 695493989 217370012 324129522 391172718 289962961 175806376 802826306 375904680 614730423 115414708 752562497 600475812 251523419 956964068 976008370 737161921 677097314 64397260 267157505 341979282 314524476 500395309 333047457 724740520 858559125 576807361 91231220 287343987 853380505 593699862 409350491 618203505 731926731 729856587 763369102 544083936 597422508 395526530 894683454 161548072 284476811 229345348 586253517 992701365 619722742 985169079 746186487 759867779 228806324 807922494 774432400 961489727 407651779 984360017 429698369 670632103 159169640 803025484 210550935 837402273 862774403 783645433 826863273 715543362 917051943 818658115 900584868 536530469 11872102 951202937 82776139 382517428 861792986 324333288 869396834 25939876 926284484 207718374 958794923 499520028 856414861 536704751 623219060 758078121 379992730 487274765 866861375 646718969 396914434 358072999 169672137 439515958 944888505 987879391 625960548 908462915 961033540 299175529 827850292 817095219 356651733 482625034 109037090 896748289 996158210 907071754 197961802 254065277 936966449 428248061 686756026 26765525 869413688 663985726 200457752 413488533 542131355 177078758 377069481 530482084 227149813 55219708 284083782 993578430 587489913 450370383 170072300 465169112 248109819 748134690 900850803 770210304 873086446 62551947 66533758 518761901 459195644 709520289 664873262 608845911 758113859 943021914 743661630 621020154 172247004 877256064 900683233 885555407 859374136 299123377 18809468 40316387 12035995 508643973 470086539 238847005 565539929 869751357 702211827 961405635 477148535 649789726 755747254 559050784 920499304 323937764 880024892 406596443 572414998 947756729 892781271 278559951 809231819 431515360 342583819 190391851 766944968 392601127 785334690 889125162 944459213 545592573 851870621 752733419 995200717 337749294 75722285 899912967 777448464 446435577 560533265 830390413 157738956 954482467 907886328 68265954 804746475 847173717 912938272 540484651 883755626 809379567 905896526 422937252 970286110 539753272 137584434 23883739 179853669 336728744 975925851 799139083 542217015 657411586 813982665 751300850 400031370 921961208 688099569 616508919 966248491 309345033 705361167 180829195 371088658 249259404 829595005 717551895 782360890 687249821 670989236 715685992 137386844 882832533 278134949 607778325 232683196 950591885 768542320 994877038 699186797 228863541 745621529 771978438 514891282 615567245 574323360 128259236 433440220 674579900 415758082 179392288 697430245 925058169 285950459 170957314 388749929 339884290 326355759 122108791 112544861 690405688 94594237 692481339 811915174 961090500 839959227 93308379 121899373 347633190 66013113 973932489 753647990 103055807 280110640 179450571 586185864 441853789 646339289 780612173 713662871 257934380 619736354 200175535 583074685 565864549 28914561 744290003 900355236 780154581 13220820 469581114 2456671 625408924 757697161 662623262 51064363 797779431 674334492 849527203 552315884 260482166 489268185 572092152 625784237 667773687 73065622 701553091 568102883 492028380 95243876 89394295 402856594 698492808 23534702 631230263 809828401 231550131 262493999 903794563 469777387 953828196 329592028 844252333 371060384 419815472 432477239 895295474 487532696 927496102 343756339 289822681 666438333 493768932 429085510 887411134 6880636 439789858 647484745 259772432 25822002 805552894 92610807 139789868 351696963 599865806 714464233 138789154 148282926 915866077 719059620 915792124 181477073 915202944 538982343 801428271 483217724 774663386 702162283 920378055 447925104 803843418 518821843 768859236 296514740 893536792 429323500 790532137 978051368 670989236 193069509 980542632 798576563 72223996 849332713 654141087 528387510 792631633 232612719 777289858 951062312 502550187 700615489 120664134 925279004 449357424 18484052 771345446 128052515 376479066 714874832 57069784 672267585 618049810 85344385 245902761 810612628 680616667 722743390 879868042 686459120 792560564 62025436 938616517 839001013 925686632 685080740 634542116 416412920 284407916 516039833 771379718 739238638 830454360 523980728 467352076 268548260 934994842 634428502 184211495 932801637 749886960 927718525 749974142 49066446 454371888 594966914 450371989 28524833 189975008 936613215 559721677 987929571 997353553 938478230 24635130 754514550 738953160 302886403 786992316 343142582 732225976 872731727 208819197 730029157 578204936 990526548 893050778 694604398 231121918 229676254 922504147 812219100 862521808 771610246 344897800 17289996 991565348 441933296 700135558 812880747 946835284 120333947 800014427 998908835 94679167 973727861 644590858 927693376 783834770 257060360 875512043 738594647 221651915 445268446 791276053 770714443 316544197 852904092 964623141 301014918 115958129 279928005 360524517 17538789 10939053 513813621 137606560 15863547 319321220 940464475 758496035 821791338 712503383 337967898 890307579 669718292 671772185 808116232 927258306 755923348 788415562 758791159 454985275 877383758 795660170 373682626 940061285 673053661 665604539 499899628 338258189 361330295 219477548 205839141 964529868 779170646 987221109 146290824 807169318 564177239 592019460 446034759 348902430 654371698 146950349 972325031 860753233 97440471 797399099 664201446 419959350 777820678 859088488 918756502 261726238 790176162 690987487 340628585 404973774 110088337 59370266 647713698 371641012 722494176 74507557 367820689 19198484 80497725 735822523 413162006 701748429 884824367 868031339 950724729 904684978 296114876 419813285 533747389 211658158 840192056 981707723 824373151 138933899 776534084 520689962 846291729 682415055 989300164 308515174 820732204 601348769 725035720 890144387 152690823 750892589 579087463 915461134 335621936 660811675 829962697 129038390 108524060 969796833 238575473 678668860 707638842 718764282 880199272 562385197 548795689 775920524 307699607 988164906 61712729 971198435 86876186 396811228 331574383 750479684 997437242 314213013 417222689 350918416 446679876 647195713 677076369 263619 994880524 781965398 781297267 861563301 795645069 9012064 168341955 511161752 713967178 476963087 785420907 756688985 504864954 532745713 939499028 363296530 788272160 685002417 793728962 569483903 748582886 711374921 478301952 33973721 743276525 864848054 187474230 976812535 541985283 187392066 169417831 390667827 749361204 838878541 832116953 832879640 110822983 50096965 65228712 206550938 37520162 981974598 861395442 884560108 677153798 899020139 93803495 907923254 862157991 819711989 162115903 408578463 780570841 353588922 570960027 978046657 612499664 842150128 612777707 118719112 432288428 797739148 718061291 729628018 825472333 649317414 726729100 864950816 735736327 976704546 670989236 837023389 600036330 624059637 714761345 704079900 904064093 811106079 496059000 924590708 519773292 636111414 585717969 490149220 749991850 707265148 277068861 909119838 101225838 912254397 571353274 253552192 814890727 950045913 56408900 73276660 428595349 624625144 12005979 714445488 637889831 484751564 6103900 132159591 927026703 640308571 782092837 937387539 325967577 814525643 653540471 8988967 919110417 136507178 890227640 207921225 957681674 666502537 975444400 76511476 759837174 762171684 280263034 740275904 259341609 437171159 670989236 714371215 735015517 258856247 718129120 551902810 758165320 241790177 241925008 751682527 739391675 960094504 136611746 712134368 745461709 398375093 246108590 19770038 763026748 88485716 286616575 973374387 124869326 798312463 606467291 670989236 904586639 771468416 586724596 998484027 446086187 907506500 714573491 19453590 81958542 692992333 447579786 674139839 985998020 181673445 492282074 178548644 149502412 851476384 969305688 852289378 654593298 217035739 997864269 670989236 511843286 97157630 368298990 835496551 631669706 727594727 287089083 670989236 265226293 18586429 288682334 719206884 555793504 783703388 219873688 185029896 767244450 973792467 285877531 330056167 144875503 136663322 475904770 577195899 992096667 577522991 853103347 179790061 869209711 120716472 971167208 450500709 819153983 677273344 350180807 830841403 929230411 534706024 835458098 844347847 697125301 855161819 783551129 584531828 379381904 921463022 876255936 529194704 844033372 550827166 757969632 675027841 753894211 527721366 834972263 480987820 46895960 648133591 975648252 762300738 692095525 670907125 732701934 903904049 708106270 171614354 5905490 684829214 937459321 878016797 9740952 252906576 58723583 884424920 940009049 897617217 864784749 760872147 384812754 941416042 116169345 783128100 242533177 549547225 682978594 933890638 906097917 957505141 643262094 251283344 999413673 394142593 879733983 614696145 982190288 291370556 396985713 911322950 878191112 788943957 785614616 959611720 725104231 652346177 708746654 949572336 102613291 161938816 987310789 272737908 871787506 260916903 845707254 151828242 793572838 673208028 836609208 106283183 707184765 76238492 339628373 864505147 692563380 452997931 319005761 901760723 754082434 670989236 490710762 453948447 765696169 50509131 837929380 305050113 883046351 682538360 260570965 330045285 347837049 462607581 878217792 5272525 885694823 424614471 692749899 462431143 520929764 832390407 725735760 516678696 126579744 236115905 606503423 989953644 779329616 249858342 875299044 597035898 674582577 39633152 147218700 919816575 312615828 95401107 540883818 433619480 492569057 964263326 530284612 146965015 823185112 670989236 914714170 997363247 44046623 112567814 278799636 824003131 209204437 861302587 137632439 498189821 296541472 36480923 267556866 773506742 124897988 158294868 986136991 955702921 332020080 785408535 612179598 553350041 909899563 414697749 741958074 916055786 737591327 235503057 268374401 950077353 541633080 336236077 368987117 988497307 321020529 991713235 924867828 886272663 75646716 886503092 729896436 744189643 614260116 734759480 793903688 945686915 80848761 660150530 440050034 506148841 176733984 198348295 951227271 168402503 613591190 744880945 920737267 866527765 948210835 268763123 911261946 737932835 748053987 744272493 295727528 312784765 724462665 282501906 270058304 616626606 50589308 764965417 304504351 396205266 724271720 963382342 230731364 314483294 145959811 986623814 220380013 864886558 912168878 986357740 941006441 467950412 967856508 619034220 557496903 577331961 288940319 694435902 773353657 202795304 639819123 790064880 177682768 595066143 952405338 982380003 787836673 786515966 820829108 706215780 986993842 164509717 918591446 114998554 873052007 532490760 453702985 465254754 679617862 439165482 93185834 940041078 732696891 681044374 478006150 712417356 809130390 360240852 976493461 933922872 422448508 594787672 942759414 768490832 857111720 645157979 103275891 124877794 607658355 535047839 197001874 762013454 17481115 121961789 1180165 404445801 837148317 947726551 799537529 710344479 956220442 800308877 171347523 967176598 868751988 407784063 27801415 833810352 622662691 770790617 245854948 170779821 525440261 890370179 488896809 952797089 915853986 878677647 678231091 726034501 621463193 867459547 819057931 678314831 106046129 534526596 568838152 563798237 165333423 710766475 153081708 321451584 570706093 268320970 530506167 683186344 807207118 51004621 499733007 856879274 745625842 834211799 481538001 553024031 415327890 139414772 142812658 695677028 291646516 555357832 287106750 175442549 164446933 562290382 607956044 453444501 267882241 761353147 365548805 143480424 109420074 840670843 313404143 710528513 851580395 743858388 847403605 535302836 803396892 821584699 463920217 165359935 765355349 80249364 45552404 509749550 539812102 895028111 730357900 830463253 934777924 597728366 133947955 687322015 903762416 972954735 616048893 910898124 843996505 646301362 936922491 881353029 352930951 339429251 12909908 891187157 24393686 470534844 762258497 382860441 424323052 646740879 523494186 982670298 789281158 466371026 348933017 148329075 235158281 69263305 981041001 298484327 84262202 120891262 938519609 835195864 945515049 88908546 979799948 323409935 997794931 706898054 762333143 537187291 391403406 709359907 675089387 774621623 900784353 489471086 556878418 523607982 990374291 670989236 64892320 733471941 798879775 155949297 513932291 804386123 976620077 540540841 796387948 414030877 158600478 445841133 995128619 899255882 800622134 713852649 46023951 929367205 870133491 676500533 378345545 988797469 769523183 808324381 387044819 533025123 499647896 777186722 626993991 147868901 834150870 654127693 955359960 505757425 768247987 592379988 795970158 843913836 598230416 960321750 863167298 753135632 18817382 302058093 688315988 701584088 861878559 806336344 479088047 812761007 921737901 440990910 831457011 891300286 775087200 664051378 779240452 631891115 755822319 784704872 643893371 830744978 1762020 819603756 694014904 600646043 449672302 933550540 547424579 418940383 990774623 674488238 856266080 670119989 864769636 583233098 372006203 840305371 445564348 969263550 798037439 716464602 462385026 764061490 250176305 917593690 719310444 811272219 871259563 87914090 992415330 193817400 361024192 390619554 165329271 893795021 880967728 982414486 279256515 839695841 84798925 932886284 844927082 796344462 937345008 820902919 433502227 327410640 986541339 503365572 133692871 772184670 807441035 860409555 646706234 960292745 196737960 984792349 862321131 835984527 10035606 317085745 103284953 908949723 692672396 27666282 386311946 415237462 991496245 159765351 836655307 944645650 863319561 882245507 455016302 515268269 825934575 238817310 464121148 242999228 783577804 804958541 274683107 285378424 831440230 358597685 181715470 675669856 486285198 82197566 996086170 965930498 872903642 492744046 679306132 282786224 128538354 670989236 963162503 628194125 948266002 716656565 970734951 329051502 621045290 538149999 349856698 947792664 664121127 500420466 102863171 690232885 947502252 966396779 515604744 429496027 837037609 862482725 486665466 289640079 713059025 13771884 805237476 985545104 399759856 3016906 796088105 358573307 926631593 445118682 176660925 941065624 510572959 223814900 843907348 202034626 532328070 435032606 472448355 819480571 700123065 977483368 35047679 103982338 622923330 594401348 811561996 219191594 706480305 948241028 516549423 795955514 856640702 721036552 729475926 829624622 307974640 875953185 438167478 857753739 566029009 332357001 990431899 682440238 570399385 143031071 882876589 592982497 335631385 858496421 670989236 571069761 142765157 745320054 900174558 741374503 586145568 23766925 955621274 213578702 97485553 731637583 822760588 82935830 951268880 712462261 827093009 864405829 931719862 516761521 272230619 706514540 919935009 677645358 718826316 653800133 542496040 920513299 953087908 245246302 763744337 947957297 960322628 683839044 921954434 523938309 695391397 259334314 293298913 995249946 699488236 522000659 901740237 91298586 865873747 986111135 554202986 807129380 752054798 308084812 59438066 872265916 995051140 409785611 799095388 689386855 798240165 358680879 858502545 237964591 765159092 990722870 807654843 997931019 20933303 309692318 709447150 914699959 812055112 670989236 302612154 435345861 617468513 794119269 693405718 378536661 965619034 299535691 765557882 460119185 260021019 38911307 639917952 311363626 518159610 749214753 917420771 376694520 926015341 128024222 283856374 70154674 376241626 21242482 864786395 788357019 918998603 254435320 894947531 660184177 719532831 648789996 430351982 964345588 65062985 157924701 689177292 472697965 702578606 731614942 945873744 190414302 670989236 844323049 974358838 840629003 369612414 670989236 748491396 615873483 487871858 686419976 530836982 276154219 560272066 802368385 113925406 273326052 171657919 607597343 743369289 760400551 666679850 19467405 700226782 927175775 822130907 88351162 466296508 126408133 206233889 958710470 427932477 945857661 843662680 760521961 711981264 591628390 445635889 365433677 800846312 27219559 690063917 376349548 754501470 258279531 690018834 762208082 820102918 96466818 724556872 893643057 424032261 441645545 943367624 602481069 911924215 518091494 811336101 391045485 845755255 847046127 713806561 954552439 606580600 795720127 682809450 404369511 936928278 152786054 277875520 501319698 422375096 360115486 670989236 723926667 252453208 709151236 761736178 854777724 999869823 179189661 771550601 809844819 893831351 973922336 875357420 771494465 520958341 589874629 111592235 543297143 71184902 349917061 283766557 147664212 915860626 726294774 960967931 249317131 823545860 604923739 902303524 966309060 607555538 899459852 897157338 141941866 111514240 649340458 249360999 180634 857373544 155889486 495438933 823561151 111148143 991999731 324653883 658917442 823118397 579969569 662550540 739586668 716084536 394415061 994018715 580240823 10090627 726007791 172031043 670989236 355097994 362464711 839979342 118357902 895791729 676448194 281047386 939513979 682035950 652958719 249564521 304846911 993900589 565625272 369930503 439001435 859764245 345769335 75527763 467239711 644999451 109847032 725877758 799752782 486199274 965041755 542045642 752817500 325090624 843443475 361932854 301197894 586216996 454468182 235903737 935045526 734625843 953763378 274451734 949692940 298007070 968313357 992787288 550846075 106103106 576307426 775239800 626624790 765236805 967616301 840172749 875803610 436485265 557549358 94374393 853420368 956587717 76324198 115096661 89600024 748760461 964820461 567929909 49350826 942656510 622482450 804336632 489715598 701027680 25176312 785676227 102165908 856949801 483767000 956253224 10590422 65018482 825182107 682597550 920081862 933260296 457462832 202576055 489628740 406156279 862756901 331188507 670989236 256889140 817941035 156926332 732852506 775524970 137709906 838392315 876069663 819155316 681929727 936192649 902472227 920835468 842955019 425052764 405316503 957850673 456224838 291725959 199062725 387065668 547694006 261445056 627103953 507206492 774137421 3078894 399265350 360403262 966381630 736812843 226789658 904235484 823261611 874287108 619083865 216355591 352353755 613662382 142794735 872463911 374211193 591187850 872726511 62252078 836178858 106477770 978085401 344296560 509149104 197858193 797521909 922558118 596460962 162677391 212676954 312614024 937534569 194697407 486307635 194449072 544366644 584480863 955065595 318687079 685380387 298483286 943559410 698141035 347484828 670989236 387460171 828703352 227910495 982625863 971302577 252514861 536516902 353716178 819475145 743543737 567592266 750602111 488665811 230766318 320472207 770191585 234844503 670989236 394131524 914763527 905073377 498689787 811025108 187370408 938885997 711647172 284491875 827752982 804276785 852703141 197747807 199812529 313109537 60213240 704071898 727319824 952415192 943091844 794577855 63379318 120845446 805979443 911166435 131637050 269107674 859212255 992835091 100642840 846289159 831154185 831499371 586613528 911262940 736902246 985556250 19756237 482102468 715082874 777209052 961662476 326130200 399120799 751838810 231261276 973460565 774798885 266762299 488347218 273956054 676771276 958792637 558948425 422937789 988688028 773978025 52488454 577855971 89566626 271645629 711176812 705035593 971529317 823690222 447716032 253130015 874890688 826381944 624245064 505137226 436794427 804792767 939245896 973233816 688965326 542013407 679550990 563424305 426678513 582579744 802066166 547554408 742636927 112407941 644029202 924343057 665511530 707969766 439298248 906380319 343480065 790668339 855584497 693978018 93252633 671978282 243004028 645382827 927477652 788463773 214927066 717434881 492109130 441672110 972586651 668465899 937479635 717395797 512720948 387319602 857960356 111820522 190461165 186584908 803995403 157712768 458928706 662270875 517845677 34071488 771181109 42141262 629175886 998341231 376122634 827074236 675183980 300243224 812314165 793293361 594862842 687251433 804718505 749696316 890936164 55133261 469110302 670989236 746407065 713306455 670989236 862176014 816928044 470243244 555796052 382722027 290756816 449775940 981821417 670989236 870654502 975009143 721447924 8810143 517405945 158968268 408824162 140477921 903621703 677570557 618434250 931581987 482311779 40444859 745412120 77423758 791273740 10795871 755084817 935304907 903727204 670989236 92332404 824676140 9040748 973761284 723341113 736508809 346971927 763623823 152718838 114443446 581598004 253621863 796852140 838924482 670989236 990067792 561585375 840769430 981730428 91405959 852474363 918779650 963648037 587550581 844227506 466247371 451236268 757780794 687792664 6020376 224076501 769557570 994442841 941330978 692755207 795715856 372172388 932916736 817521262 101267137 741263151 222382008 74649218 843665307 373332501 960707750 785902732 717439486 848430213 50429450 615880528 426468731 792566443 765216070 173349345 787054369 800644096 400750809 957208550 982828139 124488569 257614659 4452736 7393424 892647990 603586533 796589989 651838215 792431158 56332626 90219713 761913070 506107606 863860783 242283292 491159091 937532130 787952979 364704672 974677950 525693542 717914538 9107830 987329427 538127695 673141598 814983217 909964699 48797826 163772185 586468226 285907460 690317311 881706738 12256129 486417410 63246089 886023792 913829677 736708359 858367236 85713154 689373017 703936196 290427293 631334592 909169565 768620289 283091180 63058510 352061778 482753394 964569503 864182290 171554484 653551054 116042045 303594034 488963384 525999996 750749192 378013548 579758229 952459523 69000028 851985494 250417894 776775967 425836225 643564771 317312387 886907148 892169054 142802172 901950998 739656135 503982180 432685160 4180505 670989236 307731114 91283363 178766955 754766308 202579383 947934285 193096334 383634909 832626194 918680212 823549446 823016145 467331837 806965379 66704041 154090417 712040509 935267666 924152298 691424250 252035180 942199381 942269480 961095471 314464358 18902085 775067925 762250867 879298768 454877097 748189044 350825800 784063065 840518039 940364509 281380277 463135347 996130920 929306776 300762471 955461332 339194004 396812295 913771731 729300798 342617984 39901405 262859011 344232459 825398552 659367829 583345242 102829456 571687301 820525721 947437753 410317654 943657336 729361914 855745179 879956560 630537831 869662307 75917242 223059928 761803688 687809108 670989236 253126832 490142137 233536408 309229347 66679844 24581436 885944497 555926554 801774384 543307153 656683993 737381154 770245562 810145029 509836780 798524518 245323014 600992864 827891406 911775378 405371463 713856045 922502131 234447159 356658213 588925445 615422284 724803784 425619111 634282896 178500034 948053570 728022912 107859145 891903077 982965870 670989236 177464168 367348704 743272393 747339604 733404470 791058131 976506367 744171465 923176129 928985762 759703336 710844371 738298911 864070342 840818204 896429970 567418233 563888258 69673341 823279611 759290367 227074292 823335480 101769 741974084 427030483 754785263 731378514 793697781 950478558 204250751 603165072 290017096 239929767 188176005 790778094 111863743 308346192 110119685 426079431 902647467 670989236 87904583 692756053 861116378 479271719 535783701 91311065 670989236 82800382 817017694 68431651 166051853 101778701 599336586 660162951 933771731 363758167 815874788 932258953 727099115 132382890 234984499 801281393 719450648 939181237 271839857 7016782 865052277 885624734 670989236 568409309 818162636 935255341 773173941 900997621 771680091 920958507 470701473 376490020 688853528 145092144 792155124 882914194 549664157 171638288 921571364 859513094 890363338 622587640 224643569 739444851 670997244 934901411 153568775 895897734 576202591 441340580 736070062 714141845 897781066 746669215 168276807 884849799 499544196 363894921 674302080 299368233 229992573 768501196 782737438 540589126 154190570 935305957 111023732 779842127 596840971 330238976 320278784 346648398 929198859 269283002 759089192 987130271 873148893 92878549 861029082 675518056 23338030 176363461 233602936 437848854 970624783 855635303 841525189 151099460 400980473 104469220 691595108 986538102 291556828 274516093 879046902 976863692 681477756 288045458 743487301 103825606 3499706 789007781 922225796 313689987 820883636 263420917 96169774 248177549 852109658 938507715 223413724 670989236 376067820 485264796 973145441 946751463 163476400 595528578 422091207 324354533 440666544 655609861 223117885 672272048 88705184 882797785 812096496 216311755 570916698 670989236 990553145 114323224 766927754 670989236 510274952 893022840 749996545 165821040 144636892 927064259 797724750 650777745 319658799 970311013 891779036 698904986 709916766 902267810 416184011 679005283 638807965 592598473 735006879 908372486 450441624 955857059 736644241 451279309 345456 63286998 693167132 954224548 748619438 363290540 708609138 807689969 802097566 16525506 826006167 805547117 670989236 720044095 43205473 551459004 813620866 670989236 711192774 718256743 724259910 621758862 71272073 438131376 953367533 964175060 983752238 882916250 47860374 694241760 101249138 431383973 710636083 823767900 728311657 863343418 624929921 374635067 200081817 863277897 986476039 293265808 658828667 905008406 989916115 209909673 118997541 479729352 846382402 552585270 953424572 76007789 698118465 518376401 694284172 802172160 812288541 923154157 729587528 356086685 533999473 390399160 591011969 409924810 822843861 909394362 251932112 45870306 101358142 154860545 435925093 227517550 407859114 435259343 919192260 212854961 733548734 175574411 323653148 46245132 289136849 934560072 869667743 587557899 537825385 200308860 866261930 772303824 48051013 400994677 940284815 792690665 20217344 995154976 337085486 328114924 942683926 868450851 893655068 780646257 73487303 992832786 866196802 763044157 117918588 425395129 928403126 965297361 868273817 240924164 70830317 747438627 830220539 34103041 333071337 790291986 840207099 514559392 124433041 670989236 120024907 691609524 747167941 15254930 209338262 944049453 956088512 97075313 679633723 712478974 230057975 728922229 2735196 40642976 556064587 797947149 838080488 966885108 670989236 19913920 697288589 215810069 943766809 923776648 540990971 231382967 833611773 932460161 81888051 996537354 611372534 232311479 325720481 715770104 955571948 530854589 48687154 756600978 487050558 65612728 490385988 185083096 63097602 648241025 123609051 768855063 951865864 860008708 9228417 772826496 318869648 441894062 181510048 885669120 888388484 671975108 559769654 936071465 455812344 330659550 702924974 365461126 696275951 742381838 558998993 954015100 724290296 738044101 862633283 887021519 849567046 572595883 978320687 770507448 249546324 118626691 431694907 919236012 599270031 328153615 493807257 453296441 935940900 886653399 437934570 241195009 991386232 936009211 810652350 222589453 228218931 202248687 918292091 877127295 757161060 251246391 7450569 189150949 773357557 960952351 738295839 987009359 772209374 407596208 893328401 948832296 99770130 682739231 258864402 920015031 693287365 295574321 938695181 978154878 898150596 867103216 724370210 831005913 164958096 137697588 700532176 729244541 463965862 248902252 711092165 927515669 708511268 439661857 672295271 832640159 554774060 690149368 632462387 894537629 986522493 576306751 329454163 392289112 787299617 908158490 674175257 149654474 70619485 905225519 679710805 840830881 86681955 497827402 841919273 203317195 682610451 974915999 786409446 358608316 700167248 90242553 849175575 232034454 203088415 488241871 771288125 785288992 808282975 709629371 688451111 349916020 869617512 748838410 969118031 798152393 847564741 874738523 128391689 655327532 703963758 48648446 913026450 401475101 211389212 691799693 881012843 898303194 791531114 932626121 201768061 380940976 667966855 795956759 560252119 821524336 689735895 222866391 88515301 532565675 231790530 934955947 541899715 218952066 663643206 713599395 188885285 530199771 927615051 482077895 193199590 204005636 447291551 58105098 948212624 892741602 683403127 723095358 617807245 925158754 266046810 558636508 101196071 776371017 740488415 373770364 518108042 760485593 674458669 994636772 807975433 610823858 316538533 202569467 483102463 962734021 86630612 606673203 785937971 211406267 391110704 879720487 503978750 687360504 961964999 482162270 585135152 20267478 190801384 648025061 552687575 751885843 914940017 83074428 451971744 991519146 516006962 707064746 665338818 71191066 58113773 764396537 679894964 77770415 89599555 706133441 473504891 897945679 399151935 86183075 786580431 93003767 153030104 853578692 183927695 193044901 289948148 623384266 931766573 115679954 927205721 883123971 716201830 386592118 231265429 959468358 994538626 466456388 852921215 756308042 852442419 397462358 693823582 613871484 515317829 922703142 901603302 945979008 142566944 184081351 873599276 707566812 775027770 789524921 640338097 863078068 917161517 511834387 87274533 466069796 45980977 884795722 214860186 926160372 950235838 674360024 805904930 350467512 815893953 887299396 743620561 512398493 933099609 405589019 883404385 138606970 734175172 211145881 523953647 444437428 821576799 676679583 366496905 626816953 606763871 561247836 972881139 530786923 745794368 207426191 904676124 764061842 827227574 720530311 114302617 437503013 115115388 60506759 277675283 748923136 982103787 391282595 992271409 438793437 513316247 789015293 784328511 499206971 35958839 765974382 761040588 637116450 834100050 757021793 873327912 221711218 214361500 702027739 932607506 858873564 884283700 175191428 912785885 763059216 966767239 201840071 371070091 414291344 923477416 797628783 712241073 813912303 910951291 428221783 72758180 534266431 146443786 436948450 455801210 866917727 559010015 785793444 734363833 787322212 88555427 303873448 458157420 470107274 818877492 931525969 601775735 968705942 656751744 672305059 162346628 383741104 935618597 586016908 127787278 791188859 614373290 833735279 169785914 361368990 357714070 826207092 592559551 591999182 760441419 503802361 271224664 670989236 241940804 978204682 475076985 985981193 720506165 703778925 436011868 902439490 698030367 372523632 224504175 179053065 403461467 534283492 33027534 988629449 633355309 196231383 361804735 770404624 350302429 644326038 79907046 956442510 170956421 868492144 237783356 950611145 921891617 193081576 519056317 622338768 869996711 394935202 151163514 858000099 288134639 629042532 95205194 937654575 232783583 399166260 463414688 159480135 246322769 520841905 94547563 162888625 521780316 607135522 411145191 541120967 562789464 88176196 366878585 682371585 730102638 943386006 800685792 572871277 832862054 562322233 717978842 255996924 907044961 1184529 208462071 817617925 764322207 608063448 921137927 58280768 536580041 731232479 106966740 670989236 490574296 735432218 97474591 639703378 966715574 282574605 314883800 926303255 67546504 921530525 919248099 838171411 712253251 846625733 689454831 798020158 942312410 818044550 756183403 891911953 594004434 932977861 807728074 273015712 750288459 983198782 700444698 263078814 14780651 877756090 110669823 493299097 515127705 948408346 562269794 548264642 518849206 56916037 539314950 571552806 714128979 869757643 121657970 861454294 234127258 227487034 674953625 939011664 877950973 929545755 122822652 533084019 953451031 908777271 528076741 815004402 850112139 1991576 219388557 386075800 874361927 469352488 677202052 535029526 230370484 724690203 291471871 661216760 649721477 425335154 829550003 261172408 456770393 761943009 252130251 344708934 513520687 842024335 389439105 826875347 868674079 599025962 513121717 900984478 910561220 285484982 731491069 986949892 601375100 394390741 605365870 214896213 200428333 573926744 563670783 832515473 929029645 604315287 852828791 190990017 574313927 148175842 26755833 784864142 893214996 810703199 206462538 961934525 498142849 914274799 754001420 817718533 978609418 17278746 571731304 407889086 995293248 491378810 328874235 533520242 581778139 985910898 100924047 882282036 707372457 818029353 329861644 644655652 424743230 85622213 693761583 378210190 994563787 379592972 253892956 560951792 247869947 256376117 165784130 78090921 865288109 935186300 415222675 868267279 695816578 736463650 352453142 427762499 926405745 776359062 734495885 792593551 454751771 689275748 656287769 52200611 831530758 265301451 714793368 984984254 745457759 390365057 985851200 265398511 266225116 188343946 517541308 242366121 659410770 490721811 826314060 90871929 44481681 443775889 5162347 174261502 736183671 980120501 734818756 736502458 992863247 590578591 650361156 524802926 262850361 534814252 885491861 178461757 156332712 159442137 990297141 189831003 660822991 752903885 83196014 134821138 67368498 429837260 476447745 708865458 542290249 829388400 693265309 12648029 210082920 487047736 127668455 635865995 771964926 499982268 687370388 680912315 852678607 244325142 997915972 620153868 518688745 166967386 772782100 548722985 704596710 562913509 906419922 912881971 520132355 886775066 982739933 515155804 862466710 921339935 340299128 397725037 259343096 876449923 805055011 756904908 25094148 305443967 419688432 899149358 270541560 724151046 553822354 972095748 914570844 468922995 247934477 905825480 114172234 298338777 181203290 963404336 674824385 670989236 552292896 219466050 701320493 900714631 562597108 780593919 843950723 47818406 648951845 855032122 699737010 630530202 886011037 60631347 831328958 876093952 57600659 962567534 830786644 921389151 466139424 393387868 179036007 712130395 345711950 944786251 838651727 563664837 927393924 99303110 256765726 289057754 894967753 971526016 679244303 718310191 705512084 516881513 276636588 65987973 53425143 648187097 872864211 701918003 782028409 706808769 320165377 213066003 675602030 849178768 444187328 250014880 168189867 504780855 753373654 693019146 858392657 921475128 594900166 619172116 243279636 137840704 650821877 975166404 723881044 69645822 778025357 641879641 700223309 782293276 375653345 22196167 195997004 268255389 413655368 837519628 437289215 389558400 376575864 262139663 943392712 745150422 314665382 419680723 975616090 797397282 251281667 713370194 451576972 744122204 877166544 757375125 460302138 923855522 457314879 381689591 903896601 947000379 651613050 359277509 863337682 855967306 106290668 774688332 673086424 909555248 829505357 443812135 549724040 132531108 387855211 701134564 311271917 900622940 874220799 743893878 955351078 701480361 943416352 309738221 989507718 950821211 166130729 976339945 503395337 698617397 862814711 714027439 670989236 833479612 5056368 909239372 641366301 130355239 561525195 300269267 836732376 970512557 934983399 773576244 114791063 42938650 670989236 913811359 797099750 933915770 716505533 625491894 533034518 828610664 450061954 938182237 854286846 943771653 255760231 401903003 318257011 264415919 764297555 300908860 398911895 656652290 350722717 229489184 397600594 732833588 287973758 121958044 921296857 930532706 917455413 817980890 408778379 948315436 975714671 879906393 875824989 384989227 725681177 144835168 677305941 405624994 194315755 870857748 839691442 693852552 185154852 902256486 664151566 945465414 189287940 544358064 585250520 360977886 670989236 988813887 274036692 179329870 89245261 761578123 954585021 807981457 729487443 846010790 18450381 735238823 807110955 478853277 955766860 227483658 797062697 356677839 606184457 624631992 410042335 90346904 351703352 509104476 295682969 567084702 857317494 905782614 20745274 977557345 849795169 663942927 971509883 671437863 964062444 333606926 513037547 474830312 381654852 796143945 495317356 631717569 838116593 773621101 473849851 930294860 947779833 975264354 560086891 952918856 551997446 591135307 762888245 836375451 526855491 972629504 701668683 670989236 160163062 294003249 878091259 247416907 671540602 226333634 528113307 807251010 767430381 873280996 670989236 544194306 234270980 782300784 985626061 306695516 718184808 835980319 730738731 439583763 938615651 86573870 23923482 968319279 603947809 461677691 670989236 16664177 36523076 95046970 670989236 793904944 48029293 176378952 457481548 905745920 53892836 696675081 168501591 722417666 699556149 931968078 776003091 85121611 242923061 394207409 380064921 811471708 714330974 922927195 691319505 676509223 484693984 686606583 419744747 854001560 971700467 802234849 924929369 517058750 469095206 970513979 254381375 695018911 559861943 766209452 780084765 995508404 377486188 915551526 530845696 793499648 344057888 265396716 750016781 140393372 769614439 855694547 375946120 805443232 164708185 312207405 981405304 565093790 595756059 506175745 852427216 607753943 917681823 17368371 457232779 142837307 117707084 753139745 684279229 777573506 271768194 814896182 681426782 964093520 434341738 188568198 801142053 737154703 104100181 589477277 780894802 998794288 243310983 912587649 714566504 254680405 82314120 417957583 695706611 226128592 719494844 871941132 861595042 898520523 948278718 876639221 926695206 763695299 325703032 255275913 437714795 738542428 72110328 992270517 678853199 279910370 593567115 824626523 794621837 206986020 156961294 859592044 77683379 713460124 855076732 565222517 362593416 718470873 404106945 102552929 672242270 705474769 88622475 716712001 933485436 82098884 689584464 748403139 270840729 464528254 974515910 277757154 333922179 887263184 563388165 980453045 163166468 834749845 896953519 864838686 582659716 772056145 959208825 822142773 274804944 240792977 25208998 857436311 375646196 949789334 403997914 673630943 670989236 956982512 107583060 540977224 14886958 670989236 352307429 612453655 703249350 351344150 994193318 478315656 712535503 914022484 889309111 225163209 792537246 832241346 670989236 294058145 852984342 992221034 722648408 747312421 593538457 541534861 924670759 702795753 478380162 517499393 684969017 869993719 594238856 115370101 426734897 8835599 677435408 339250170 990323109 656513161 927183432 65096743 227963526 594551657 993316756 560758725 45052088 635371448 408942958 773148879 279515976 254207949 439994868 218220035 881357436 602848273 206383967 774864551 752874463 973750644 847888142 424954334 691852516 662810079 179196864 810271140 768542479 43996149 670460022 238512053 987804376 820427763 735353347 881722950 649498009 693606065 733149096 506137119 397214106 357808622 949343321 76234318 496544853 903109838 991110055 286848709 684783940 414213334 448341161 4620294 685118842 843701988 495540134 902696699 71504747 896738669 210560929 845516599 870841622 979884329 830057955 651351341 534538882 709743043 163800243 685984908 170452039 555010396 736352063 739561762 344904036 626810429 907012813 885877983 683968595 565299896 576939762 438575122 712310478 217545505 483513736 820960814 976314483 750545400 79734402 570470917 673205343 316008499 962645586 585884506 506486362 767939117 928445489 405259644 730141386 148136364 712057710 553071628 953956514 600634359 582392105 836342595 306158035 905914600 305424040 346985052 36607889 344546183 225100836 83835350 894054162 197992838 936917114 14788231 960979045 382236095 619597967 708162147 963473761 222939664 493043449 556161699 728992747 719908778 495251015 710557115 670989236 691509462 100901941 15721346 807360046 53938186 434384962 273628535 678684404 905378868 570172920 441943420 18697321 779648321 638090249 936112656 691295231 922700463 678070262 678456673 745967266 197298193 744555673 413780394 962376017 506888203 970442221 637726069 787105347 884302271 799395245 885707788 859197223 205258678 567958785 224515124 244514322 123487355 366529347 941328069 620447803 625043754 73610841 355656712 682797565 936794636 958771747 575045519 675279799 993354522 775650839 726598355 866482032 610177261 86350867 62356425 752738266 495740680 646629627 832565125 728300030 926896020 488911462 971983232 918718716 708041757 843386360 642127258 703382005 914237878 800605844 507866482 56359356 843211809 906622251 612777597 965100252 896159021 75677157 523547632 818154101 977063223 929857436 514052150 765858712 24790796 236629751 942000724 734921704 343969054 571801988 997306583 299975450 675774160 966929075 466063288 742482268 922498654 291480921 126310484 306387969 51700227 300342246 775482425 33979871 813468180 813809912 88429741 908641150 349887916 872975302 744252108 561210925 677387332 165062162 157171209 993743317 8069616 476546154 149627569 738612575 68410780 886074942 783899500 370737474 812184227 178823926 897169654 926586997 64482389 618266391 976863292 462208911 794866726 172841285 572099127 935352835 906795535 796486646 289673633 29308158 764608747 380579798 417803602 754863545 742577784 864880467 390194421 430306822 467288952 848796653 635481673 937364109 190050833 252308151 631382656 21343958 479220903 833118308 721054844 268806408 816378297 405641562 49652099 674153089 670989236 182976185 451929162 92856496 797940337 312556768 376122070 131331646 723329312 875448942 947401166 332235985 10191402 619436301 933847291 743534318 728818893 935049033 677791432 227143286 179740810 787248826 977813989 256527756 963009673 907981595 572756369 408115946 834202776 347108355 862672951 819289535 845304710 807735451 938286763 796957104 396602570 817911115 941988073 282008859 407001861 217701368 977047128 836533077 281006414 373484708 913350824 233670961 861971260 976425050 532156791 702507505 301340811 76519060 986494299 687950322 455837166 762756359 595313343 200182805 765482335 534613831 197120039 713364078 391509088 825925127 489157465 783094757 1238416 575854619 325710476 885452562 303516610 984160689 976498921 881100399 614242461 141466499 756659195 889353814 98476787 670989236 962526313 171262912 973421626 546359394 344744575 875644826 938412574 189822061 881673624 784208399 813243849 714336784 215341461 889883808 533489137 942963390 780322139 820221366 915802321 468179472 850290765 447762558 432817919 355338103 528989995 689872136 726512441 915600816 293625898 800128741 729238686 758208600 975715623 687577441 670989236 795613986 641104781 698530236 167329331 331075833 969481235 887624701 546489830 599145877 881367207 358403188 963322325 949056270 636892444 276704598 920957918 173845354 970745681 104691120 752318428 938706540 690369152 812611187 384510816 746257307 867379525 250637340 925297089 320049442 898864814 759882686 907261926 813225059 669599021 510470755 670989236 694585883 967939730 683040170 106317237 684327790 736353716 749577542 808416032 287248095 764294678 250603039 448931540 898998253 380144796 962842884 513805671 122428630 412887180 731111598 702411654 726802442 428025506 456101180 140166696 886401910 285845816 872328590 586062933 114747375 130104312 990684089 386381298 885409725 343026766 918857223 379051981 536202341 997097177 269608362 162126630 604618381 600843692 630004133 759089280 288959173 683724282 863155131 430980715 153565937 974764732 667680847 913280626 853757838 216826170 81886885 845417458 807438189 233538379 601516385 175928765 730294170 81843936 918586415 950212632 486658415 970702627 644989942 723180915 745015051 741329040 55693761 923992841 589268515 676358623 520052644 877585965 608229127 959329308 175979268 190900770 883452345 976331736 658063919 311831835 410187145 65527377 781129436 71507745 854547978 827943709 582584223 308335663 681676519 398555584 924953947 230102586 395998625 917227074 224969706 776105980 544564852 723482915 627791504 812168404 299798462 615730869 907870643 692696860 267394259 717151244 901321593 714008224 386893071 237853250 510302395 670989236 826126303 523808070 754219062 788205096 909796518 410580969 529400111 631780570 358951055 295002010 171763045 306243547 869138543 307914527 758114834 125270348 558890858 87806803 109204436 795462375 136357292 695526009 382760542 961941372 954457063 278294053 766171356 35101788 557981524 868612391 89292537 771712337 919584315 868735362 988530816 85501180 405412043 677084076 944763762 894394755 750581653 859419119 906249730 29317312 61329391 526805367 939778470 862008182 132103156 959389051 221133537 882031174 210496582 115628932 221297264 909560979 789683269 541194495 965812260 415756448 417390837 607104552 450773946 957351685 487772997 104230207 519221880 657863909 962334034 531300370 372050251 211897019 937579226 998997215 971769970 546488023 905460837 673762990 88863150 825215078 179593017 266283547 555727140 533540684 470524490 995842541 288377655 372034501 917660931 381105463 535197440 886480132 932523856 706612254 331549976 955579701 81643741 368640400 716683870 858567278 21500790 807976793 798754959 140241040 961417445 674083584 880994669 923593317 675526163 774050723 197233765 153344121 428431341 366046445 406665262 724036076 562681296 993682202 195913299 815196901 781161000 877763412 942865419 721853578 824616192 735138181 921534443 641230694 923852466 568775060 632462078 775770081 307454027 485341397 953713389 998729959 982781631 980372876 68700776 141032299 701824759 679086474 537410274 658082081 427456053 717736876 358447771 786149751 864340927 695137561 735667682 726557739 44102349 865814763 753647481 948276433 438763330 713611898 758673124 670989236 986781071 841493960 810791521 590171051 776277583 693910628 972881896 910992863 694992461 373023669 639370082 798532471 798178752 985283639 777215592 902231836 892297012 716075183 594596432 670989236 734768832 220112208 953463724 866329587 709611911 551450879 899338028 741273669 268977883 101965232 883653840 805424923 632382855 691674074 441674102 19465954 434560764 889844857 795746747 928760063 714745523 520349039 788053286 670989236 406251056 601994932 775439328 524510248 362023022 762076465 897093461 541351085 773216609 605397730 417330038 3840602 674175201 818055796 89327693 823050258 873419018 228216288 589992507 417422993 534465420 859596774 935634179 465058347 799745172 38149362 109466394 48576789 818833380 302773272 873248382 798747971 923176674 45929570 731447686 58167401 493291924 444734849 770994878 952827895 800314373 84956137 676960093 435639473 752348963 460457845 764675584 612822668 729015670 750895491 209441433 653306689 177913130 649350887 780165488 967754502 711299181 284276649 770424444 955110133 987965625 873663587 283972339 904301277 293078820 783301632 927609512 224926703 874492931 388450413 792528213 345588959 484854572 528999621 37238259 662297726 996674487 760209853 887749405 400024498 365580001 924034790 372361456 878209913 782314513 813774767 600482601 503589163 988797644 838469922 699730242 677490431 919153953 339966187 780450922 819645929 287887914 778806454 82575633 934728214 716030635 23470869 681992999 676265083 81219843 306076976 810096356 674394619 66506927 994723845 261902552 306083536 143868437 534799109 828991420 329855609 936569950 858542120 721955913 691413155 779945799 875529145 65432629 327890191 670989236 508302393 257286720 527368902 587001494 481224560 670989236 137055307 964494187 643217009 946570249 471123534 676466948 904787533 557338257 657567888 161525647 872136748 794979116 456303793 48205040 990533249 541382959 362925081 37868219 961908711 728200892 862274890 990141476 937717367 706025392 374591407 696236993 394064908 962941300 810028312 755823659 995173615 478234911 830681348 706420305 983949715 857915032 825147052 678210370 972814479 754408506 977945079 554406753 764826173 64471381 844558555 925830123 792432245 857747667 309465389 300089164 36266712 244090456 434713383 437979008 769495190 659982762 747263618 863063354 262810469 971916179 727588457 718796030 849417477 429731285 670989236 144656997 531586563 428823060 966747473 521878700 758028669 757538955 503280014 502235593 426734141 839349803 876900147 286900771 944533520 817177258 534115808 769631720 671606189 513822467 847871250 81724745 33586497 659510763 976901675 847747445 971996728 455727962 885767193 267319525 710319749 829523144 780649841 659638003 751144078 419291159 616392341 897239171 544703658 255647058 160559916 900994194 306345886 473258135 72312650 809629197 328329051 758894865 58821798 32756805 765365920 162965543 403122540 670989236 905029544 684737556 700041055 851841023 756396206 902947723 630847075 897073470 103382586 957666816 398293742 789690161 44189030 516787605 885709888 927615431 567775588 842277623 677333130 499822737 167329511 509875977 905926736 715797475 870859715 973510763 855514985 761155217 835109820 699073072 660967039 384571514 856176671 658084739 48372311 770656668 838395797 33688283 367898244 386501991 83620915 579608497 83636216 927395278 472451730 767576668 752011967 213105925 642031928 309778255 174722895 576098064 264525359 9398027 230625432 173514643 448088759 613505736 518436350 346834739 922468917 684709299 841979775 594855976 43870190 914500695 900642529 941679050 515848316 774099758 796695844 860650036 780743854 672277649 526981816 518591295 812427584 309100772 722052565 384208082 992252662 891652900 410217869 842780672 933927104 921323565 202431111 425699301 797617915 644174591 749413761 721889179 670989236 311602890 724401695 683066756 947568968 787357477 171223637 781716831 969658073 463810110 305305444 946586648 567190310 910774702 748359722 258343843 684142192 959062981 573875640 660325506 939337006 767094760 717671319 740160292 955313661 42470591 307327789 767066540 96742153 778387915 435561552 932430390 343625110 682954714 442918415 631571885 805921645 942520388 547489406 146975903 564523433 555195625 272052207 445258279 365971727 921873591 849491125 585164551 120949326 248878887 533269405 847751587 757980832 775957883 755566103 183306935 253281972 930672889 216282635 670989236 198775057 686602792 749915856 746459057 227587628 277518047 800614734 152104029 240026755 526584581 20693609 104986147 38541811 923305401 910474296 313850413 701678109 912738682 835769909 270500263 948702183 274561409 950944507 473118670 971684090 819673475 723955848 145703147 594539533 851666069 848908453 788149160 14567824 814979221 486975249 306289486 948112049 226512229 944908731 737363634 117152559 848440560 481116676 342912798 274411149 365424839 860569427 500868649 670989236 669044842 440228871 757936835 926871793 130916225 982721036 903526691 699877083 255796981 867653934 264876402 431238612 990330057 376860219 873469383 810890726 670989236 670989236 323237165 811603955 716044053 675950362 480865451 391060303 574125891 923142573 707073656 990750161 885181808 691572238 890494045 107205881 329709377 878658309 889975408 335114845 286112211 532528643 993769023 882033678 755898087 867559606 965469010 423596423 429110057 410500997 385219323 776488037 348791828 640645808 414484465 303234204 869111371 245737115 954473833 561234530 364676176 114230836 831877884 703546155 687593601 827125393 324914568 117087081 200105402 767099302 922637293 147070290 582852508 25695501 951404300 231563022 770531683 291847225 951292488 885864739 874245319 1592815 225131959 251416948 696884734 995683837 348544608 962968393 574833652 892985690 117765286 366225437 633094866 951167086 839536662 533348087 951799621 215443462 803712103 369761484 474504099 909203026 869406928 909687225 710734150 868767513 777052879 410586133 825379869 492144447 77404127 938171617 934539548 430129498 791639868 84216238 130017493 454531996 583679174 469032635 139082245 581563787 455159708 94238048 298731123 920763056 924292087 813667298 31776723 771315945 952153221 933374079 130356512 307935989 757872014 798944812 528329665 207503455 388627374 552573789 23038434 790831191 351681778 899728159 829024544 700188605 929328323 414153505 715350077 325247143 808591331 800274257 486678976 670989236 801638526 239185812 537410424 230743805 737744910 452417816 848318502 893912782 874422410 455977536 744978363 208749174 670989236 352861406 805952084 513428154 421598494 565977718 860841915 844181356 407863804 362691533 976931210 239869670 844225230 26412437 280140397 248786402 999567391 514227944 969834649 847963021 26913756 606887563 873652123 304147360 846800879 696159632 63008173 354730053 175062419 425264452 21394238 672907571 424044856 963802956 940997103 201538187 5007927 165769850 746682467 755871089 460999377 655800274 812856307 726106355 675476271 57579389 481373294 955559927 383156580 815145653 884141480 848527427 734935295 519423290 651112040 897815076 742703904 913716205 909878130 811503391 577250417 716544522 935523334 781856942 309954024 664480963 229531019 671254620 756536410 863505597 893645759 462356756 822630533 640498117 492044005 345117808 307865321 286696374 377842236 82243117 483207015 880700761 501305356 39243800 354595147 765553673 957689474 988517158 322200937 390914415 694285979 287368678 694048847 524763982 240102937 639782577 688181914 958415383 614065776 34316258 750007149 206855597 521955386 476747115 701889311 291924201 982314669 990055226 421034763 974685517 864480840 61733527 808302 274268926 9687052 729664640 826970038 589435971 161566986 905345659 699172933 134225552 65181202 783839562 307908667 379118269 316319679 436996511 979905748 267897012 140715349 514316516 942067066 195996875 616604993 12310072 474797030 696304095 670989236 936986204 655851164 805936363 175201170 881380563 837137443 904870446 933685872 977989472 825715752 783517908 197961857 590401193 698453482 732434980 308203284 934526967 985379198 803539830 701468780 425783621 686761515 672728753 849842710 235335349 956174466 730051271 672490695 762471772 786875585 398111271 840906483 411017452 971552188 764999883 624164074 359538801 858828662 729522798 93873808 968760552 958745337 776058367 308313598 801550131 683208378 862077438 752930740 483809494 998364736 818017499 590982096 276566653 512080848 772772694 438659999 818742083 909136530 325469412 17811334 71779192 206403711 903966277 556741027 532562604 935854002 526298866 952357223 470619466 955748331 846488555 737028329 990634324 158639573 872630541 945367054 958313210 386295020 768325017 754178279 868530874 740352990 450000286 127485896 928198733 733127565 591298791 714284463 785760667 832700988 757929573 730652912 881056860 867907142 903233645 273914887 818873208 791009486 949211497 979242818 767372058 168647706 957404394 949288066 70589295 715860993 740997346 499452517 719605178 419708508 948132240 841988289 35824890 112008106 951186490 18053901 213038204 184172251 266764239 278595979 683691069 342310602 902546513 401839325 914308662 29243214 760487614 675589175 256165432 683431291 958087018 732099937 731080124 621218308 456779794 839136142 949545108 486944734 547397873 548190795 951682813 670989236 771379386 895495682 345322156 193095907 145630929 715077338 954674380 718352817 624890433 882177694 423321972 829340401 824270578 378902118 4674555 687009856 992359514 69545832 470664049 294782940 804816714 820566437 204370924 670989236 925530528 877032283 529138531 169286028 538037580 89480488 779306978 711843576 804117649 467028523 648153445 606996731 614643683 935376964 55385874 863166770 992366760 835373308 452615482 41044371 779733747 194161680 702337276 662027159 690827090 914749901 567923853 139370274 442081678 837843013 891757984 675427880 858684574 113640352 948347066 838102178 267935402 739426765 879552171 432547398 128578018 364150733 285264226 996676259 515251289 88733402 960118440 121381059 787783734 190998080 501532942 581374043 676407613 336715773 525232286 668562237 388753539 762745029 988173278 865384523 93139154 909883282 24679832 525519690 651333310 365226849 76972681 815022723 348404816 723750508 702703032 547376029 924570384 989469269 737324982 77877018 67718117 535749974 813558706 898877701 578472799 740739448 608380668 970801881 498553359 820645934 672040979 928417174 597103169 639402702 740679371 899814595 442582952 53422102 914455702 171852018 602083916 952229179 855135376 652781179 795274864 787013993 279194657 786059687 437451986 697771088 896710827 638520451 532378089 947346386 828654677 916421340 965094308 881587002 988957003 204553401 29166227 872083575 567154792 947990598 802494946 800107580 28102746 108187667 689740725 285622525 726720648 857662039 913466724 11279878 335135578 809530911 628940886 901018960 296537532 215612892 878310905 792743737 824596181 776224199 550568775 743127622 184353700 275889690 640001950 506794293 745458762 566953019 498184741 764631241 255333586 774288567 918654678 824810891 352934869 837902259 784187734 25116750 228687319 23264192 815578433 506241872 764747405 694091230 561842191 299052571 577213252 694176537 722591122 999395619 318802183 249376194 716505777 561999495 530675465 859290859 753989392 718310793 205216102 875123879 833857482 493611928 907322940 758345515 522213089 689934894 941633639 814672688 988882555 65017318 864122833 908034248 713844937 861581164 829878705 416676506 904847985 496210861 745008426 912209690 176416045 495993750 694436460 662625614 972001875 450577005 785182630 691634756 490680752 189263835 862162615 106925729 769045303 557023400 889421911 831126563 715547645 719187179 952557270 759427266 556498298 274137318 590934871 919562854 807107532 928512748 398877980 933439288 356397463 859276213 581396461 572403333 226533054 871615286 436775100 695442246 228296194 955411012 434469020 846805586 838358768 24400848 202994694 755509471 29472747 751830801 750584639 848683336 249513261 780510540 932154448 232827371 771328913 166673808 879889959 559146305 339487947 765769987 745206325 328547332 763696575 493882253 182122512 290970839 834234896 991845300 215323085 195086597 672717155 822779194 944402703 235583057 760472791 998710297 732381497 192992211 239749195 789124413 85503111 688883657 744526479 736638581 837145824 991045358 671447927 483234980 843304274 796203012 900341652 677042147 693994387 181786588 927318394 647096412 340628781 353876086 980781296 425718298 988506464 339916661 258381173 83966735 274051252 822545989 985138459 108378695 670989236 478997406 709305162 821242436 927485209 737512114 268173080 917224062 686671713 735096907 666075217 538908445 773179171 226900785 760069827 885693400 672845214 384980818 884995807 96900076 76610923 139407132 731392179 901037424 808197923 911923382 899999394 462858038 961145330 737093521 815103776 893555309 814451401 685232103 947820677 393819712 297107788 428305017 576942050 130094307 901480965 754973897 417022781 693361425 595650937 648843918 292555761 688764763 475145680 969818332 819114189 955056522 347154892 789130064 819286217 269473505 967644184 893615608 784175071 568405860 136842223 55625143 146628145 818047723 594966335 258884647 471723981 932263145 470624234 790432011 858184173 893150835 800952144 874427925 891160292 106310901 97344205 961187217 343423377 628070018 431889138 398367624 903881969 15475623 711469178 412225141 740327029 871772528 329910447 20967536 667856207 206496409 785242218 796513671 783611375 279360657 495510732 306492418 944344203 867038423 638012720 660863401 78823634 148214830 648822269 4175291 242332051 830578214 745444207 986423689 842391029 114149188 816263622 704573563 670989236 79947131 721170691 928060355 701140571 931418232 703498818 226850307 799906232 450362694 879097736 39224789 694559504 671824619 960388824 889071130 787424703 699233891 52402308 782890428 670989236 573001214 782201060 525141664 965890525 704711838 891285261 350127786 248679277 535155607 201809630 778886662 966137095 850533663 106373871 864064678 642144502 721041788 381170348 309480510 797204176 208625459 54446183 994370904 670989236 474938815 495049185 890616902 386034405 809692053 863924310 834994737 119515759 984463645 767485303 484458935 679448090 903021230 594682047 656151473 717753368 217530441 579517878 85193489 776236833 450952153 844892127 919434795 666687302 321871620 876707410 33578764 660349368 828253024 707946612 848282992 242163422 694623790 799534833 106352343 981777694 817682738 911216167 872245918 854809037 192795481 551195149 173106787 671019006 595582206 83294509 818939229 164227799 314751273 754118993 895998827 759169639 302933176 544789400 991397549 790503241 358290011 815966129 974667257 823681646 976663303 865103123 118688101 229412475 718881522 736606389 818299266 543249302 538539963 784698668 395541836 736087275 958442799 848265535 545000270 492205099 673703741 976553039 963448405 231201841 534228093 413810454 729962969 223573423 576051919 553064265 1581725 497321300 959498957 830382993 877099146 888425758 951863097 170058673 807046173 903884491 295681106 303137522 882351752 425390554 952346566 490274987 816356831 606127329 725951124 569454387 781487706 172521881 389794111 482256960 79637117 156598943 933935980 818100624 752764436 737563587 683497039 726961229 585432106 881500993 991340281 873802865 839099840 989077182 249525755 983881578 29462188 884580299 688194702 430502862 797420140 468670157 162580864 786430458 772941373 717409610 975805966 465787990 229591222 203251622 712154135 95027057 908648161 143509770 183774995 807994759 539922205 109450679 924214146 727406299 595044460 879739346 879171327 219464357 759361797 566535053 799116246 279797000 27322649 622094279 865370076 91294902 212407169 581345244 920933811 791963961 781800910 683635537 883635919 136543709 724245346 751381013 911104278 432321794 580413736 495932871 767220211 40669007 989970103 519326727 766245507 730799045 818312246 621911696 148714807 667878380 135901580 478890305 3343053 720012689 587733365 812520101 219281465 353702042 586685728 674249147 106114834 960271789 798820117 911330006 919600281 741100053 288273432 387925026 811379858 516929795 476375480 484111665 619525911 368338938 731862661 768029784 567833894 749783732 702524431 617642821 277833890 688033536 867351083 698940439 834858076 984763172 408548554 110796748 927328188 726351810 694287345 927282820 418963373 628268388 222407290 137997181 50861118 97936982 660651787 786856972 513144105 922917356 896253933 682329486 947229266 645859008 332921842 681863422 928795354 461085660 776648347 701281205 734011380 133616832 910509845 590355869 356013644 49564661 342665357 960441204 771063943 903982384 200935975 513054751 643875587 213588094 755648410 806806377 920295477 782505825 217864852 510299897 990782231 944698980 670989236 237275384 774662933 978348472 466506084 914284508 156446815 670989236 363103567 438049591 916940604 953754405 463470871 723265721 174785014 818012590 859155081 782503512 182610746 472641156 756792245 680175011 372361798 689789432 828932983 894933639 250205989 870009750 828774446 892658166 884912606 696403721 921424861 829883198 346471334 224578095 704428174 458982512 769800056 395738741 985881745 92665855 712520779 738528027 144806970 684945426 869063169 658792173 882591953 509293526 817776467 961598364 406592134 139127529 906437851 502896079 438507200 333880988 887723619 533509768 380909765 773611616 805439876 797098269 823850977 534868516 400199851 464772708 655662924 843245017 877728930 826908719 847478149 659041035 758337294 990722228 401718715 78645378 924643086 816270246 106316890 473540133 292019861 79924961 845358666 148034788 846019608 996746308 225509284 188687131 306734346 645274588 718318807 310796599 982687819 847900484 292661720 324200258 404054364 637989948 762832053 712024010 45081374 827513614 292305635 18265100 465129217 978617558 81239370 850891643 431018230 52464680 524004782 158149911 740805450 67571189 947054500 22020824 984265824 335700080 967927997 880781287 939453699 719481395 519953276 856490524 761443814 486788669 838817081 678790386 641682194 670989236 947955950 471346250 140163782 997640887 144342248 502349652 302894180 476531795 489965905 821360863 977204590 42763458 973747232 215102115 82260175 994158298 53983452 875117826 704661317 113811859 930040009 839407948 744651504 285815623 9371270 210551180 77943730 790164785 822576031 570212454 886765116 436646533 811503324 415290534 448917859 467534061 982660250 558500379 733164414 526151650 196834758 406290843 973301593 99504680 890256421 60556706 812431975 822335678 459802955 175230209 796946290 670989236 598874197 326746292 844872776 223443138 763760739 933645419 713204682 202467662 886884616 399857334 610809002 563852190 588366975 872161795 796784026 337009452 214953416 921932603 370881167 820122271 785811075 60879824 100775004 120486337 336233397 717738114 702393290 275824260 684081007 152130260 807255622 737817031 811124315 950422356 556811999 542405620 692389855 510299062 293716479 823948879 849692245 403418785 256639870 272660444 198798610 693044407 759647449 871003139 666341254 169294158 509023566 660633290 890149551 801872134 843783656 166058791 702841028 743866294 972221505 221479489 333143622 820482881 152384442 113582523 182885680 710951636 191570117 151413390 618743305 522997010 261291192 814232596 706498215 768229763 606647081 392542909 126790345 991515971 950531671 788598950 549656477 297540812 937700718 831829677 249755193 184146830 493853366 752239730 663992851 684397670 954343733 775217808 428469448 964324309 458852262 903938424 604883281 131872170 58350127 826319817 710001513 297729289 910804962 120741575 717838989 728205667 411173975 904188623 371687183 691380411 639240790 678088767 850833305 100316947 108229058 907398403 129978849 475089177 960968832 503669890 878258730 461568317 171051663 901550990 709826546 572530182 942180641 291595309 671234978 295795875 612459676 657635676 714217221 201215843 926927980 588370935 679438108 183840623 408414902 829484747 558423261 179347370 958123266 800442300 802493021 587074870 737652310 980859838 837439923 924883164 390861999 452075624 629653756 56123682 984645252 768441684 893936583 311739017 559653961 662329074 854988564 955186799 861203585 966672011 273872343 945003297 922668054 352137842 654251896 520486192 776488028 483835327 408668137 69708275 791227593 996864460 631429918 963854457 749547348 122076825 500243602 492190342 93907189 854527861 495634499 449319958 603438012 822620382 706168646 509720520 147953948 812232051 999754156 713337573 946516878 991914868 564431537 286688389 516186234 941853020 924843033 233547818 19083336 726306407 938336363 717353505 971421435 733266307 841378907 907252203 818177027 342572313 482138038 962310652 672012639 862246300 685495000 290063161 228569741 743923218 769462428 182062946 746164037 932301894 622293164 866380586 266078251 137661073 823907090 673113180 324635539 156927262 135609747 71430356 752930862 705421730 931266243 605918253 541809862 256674226 886171675 793089567 221222108 943447245 684618917 765402747 582514805 600670008 880562274 548702768 584073418 630076247 912677707 156026702 444245145 773988371 752663069 366099875 706545815 634271058 33993110 294150307 536812975 770248470 725487396 424253613 808796443 380504739 681635056 509106423 274714344 746836825 844383188 840776149 893109119 142657877 806255666 940727604 695253958 854179496 63688391 941253783 727183515 990670676 347795593 702630979 687387169 380410523 108547683 676184723 376983753 930380123 773365978 275114571 298675678 53812824 527571211 670399929 397610202 438954997 728346324 374989154 708501652 703992283 36347234 994363205 930204398 929799041 808147890 914158891 964648489 727012486 133941256 642832846 885178413 254645665 781011561 661244741 734299991 417214493 580495182 558862362 339386299 805414345 83843820 841849076 325671592 679737104 981254951 67939597 385098813 740326584 735254476 709543518 769421691 309542691 347362036 608396461 908264685 942950 800750761 403877873 563088558 382808257 345300974 543542039 907716898 115756324 76205262 460440465 721503511 5957533 266111694 798324916 856331663 261963828 669396722 380652620 360676510 966450813 859508782 155820248 973531649 665732018 654837608 347239906 353841515 680332593 905649260 546496699 939549523 290121158 502426619 755551089 310590481 878737595 670989236 524329689 933587925 779983781 224359819 683573372 933121575 795364445 724254372 692373026 614220548 925400559 999134772 745611757 151648076 782777268 146092606 687722756 960184139 827323752 370393361 509684059 109390385 6956114 671519296 837388547 942408523 126469000 767413323 903519807 158709019 739650593 632001844 97693047 446153429 266990036 487597558 714521058 976285631 671590852 641113135 104744221 959933308 813683315 869584126 181926883 102753060 630534967 842842765 997836711 195982735 325052853 967828468 348679983 937393369 588528945 248317686 937830307 987232594 962947777 483610760 233093422 634963262 440509179 577129350 286178030 692436897 357864260 973691094 717997267 930239046 821244815 537507225 779278646 401481987 853023295 679499656 459280675 863513732 823852733 713907143 851416350 831158025 656998079 28718619 815069826 863360589 812972145 857705698 654218210 976021951 929936462 977601631 277548228 374686805 949936890 783954128 835137967 808097513 647705604 695362854 220751964 263658936 223265856 843064043 654174187 777520935 603502546 759450191 407918686 608880394 319498505 52872066 909347202 872212657 141897335 740659041 855591211 328000604 24352656 655827985 171657419 301226212 944071287 823196340 203262536 191685090 300086958 882679252 856573717 475503026 809916690 796471676 632417796 825819091 567170723 181033285 408538515 977683468 794332761 879109599 142667255 495909594 391473108 538210931 273424575 141930863 64213501 215856611 621350681 511164612 499834464 59666454 879529557 217087265 939743433 913646998 694382030 849424310 131819732 99073262 697159057 651339480 155850469 356216244 210736544 324328436 460443684 487762603 791420415 951840447 638929209 655805342 772628800 783227506 711734234 553695487 496654845 349020734 613875442 670989236 11068618 616144320 874774291 850051780 670989236 312297748 431380889 868190586 502255183 344008848 599465188 394191945 47653716 206722134 84747843 757759254 740040074 242782243 678539560 464223284 456879023 767964407 167185886 879208864 788796494 704535860 963192784 962559324 748908221 139978874 672598804 127416566 709422656 845401905 781516444 678712672 123983970 928854373 388706777 930731747 438696977 740604242 917427626 887872888 837226107 771494799 577743565 942151447 980518090 453253411 698430066 556118384 26240309 393798274 685996604 984835790 857320749 722578766 233980154 190038273 211773477 591072987 1047872 505830005 63470119 979261090 751038918 903967730 733772078 447841512 641068518 724999763 923544391 780328050 977109584 578150961 90599395 587441672 928689047 975344280 818504659 711273355 997015750 585661926 647462866 290660649 925140027 815039669 612974223 650910295 768096003 61939111 703168221 741176148 690503103 539402799 878360396 890150766 693516029 479396160 449521606 987146184 968351972 839717452 938270958 891581582 159687744 817415982 891221732 211561451 793535358 875871439 421810555 128152987 871718117 394658969 842086106 889856169 714334143 805448016 826923590 800117264 977376628 633269035 821835650 721114119 197279832 186877985 813438210 685277317 463936660 956156461 454666911 559447296 37037343 690475747 351452396 404200215 558857059 236205198 54971030 579121882 385875973 823904124 823508816 881634413 893897074 234871982 94629298 754330137 806949923 917281888 205699950 886174944 715871932 45211873 486592020 101719050 920590409 901597683 316238634 766083764 136189877 933264001 906839527 502469414 478631111 771073569 787226428 929867919 640086487 494903304 826222936 305570988 256967037 476779130 700183670 776295865 870394314 672661401 600584846 275616425 18648881 893696568 15531884 811389620 678536846 872277618 141168938 841306393 766711581 332837886 416319676 705684281 484092451 810326659 551979660 911790308 807269334 179627304 212679724 275962382 832084587 257505333 829909319 154260312 907894864 363656009 898811875 870751743 869854664 183201127 661974627 971376682 289156462 314073876 109909569 924127916 880073640 779811725 658257655 844503333 585132528 753479846 80423086 929170545 999553788 989862955 153365405 409372826 674762303 711250259 960046359 395060716 625845395 231587646 942229277 286634054 515349458 879081094 278927324 963175690 723238365 923656994 771777278 553373843 989782563 494220719 853668735 776474627 74282812 716439147 491482925 693345846 535611694 870720595 799021458 729165998 935346682 942216456 46618346 708681677 456193523 55715612 22333744 245521792 206531992 76353049 735813304 789252531 747006203 706259887 469264511 192896433 506500200 675511517 224532525 333310694 137485099 931008786 205385142 724532413 160519570 766517875 754421265 169577858 329933617 476406253 290896306 568747953 788026665 846567797 566062359 705684981 268483253 902977027 292832693 672220390 819488782 297263062 754422697 372544092 888642772 762140297 692983518 540811563 714532584 476944399 919926285 775487727 172151305 690825795 717530728 970761886 760889435 289439213 574280118 847459181 22766509 994476444 794508754 469209248 699166529 994801745 917274128 801145644 760738140 871815144 138788487 282093034 816925338 119741727 862587446 873664974 917740012 273053640 156292698 994704564 201571309 177460433 136500079 220938070 700712293 390658802 353732626 878793793 240146234 899641066 847955888 93339397 684827956 686597790 844663657 815135967 597487899 973633992 148236532 268071062 257203147 272184897 463224959 900783221 375904012 106027509 954163669 976095252 693248396 863014247 736957994 436757128 163101248 923470615 886379429 323464054 378480357 584374197 742783005 810057889 122050558 923497406 436817255 101131314 689001609 307697622 753762566 365454404 83214520 852843426 767600125 38551579 50851711 670989236 670989236 965574375 106727775 198346864 23680354 869186521 763190897 21371243 550728751 373190077 600856310 159062113 562533073 751907153 735023926 638015996 756337905 369248186 753579805 555636641 635045868 844091617 465195369 829577477 95670110 678924506 139787442 800849910 734304503 14671736 401175079 970381559 670989236 346331578 450607303 197721020 117675280 829528596 241552239 691803758 818163458 330327493 778583763 255744550 81761131 595441097 697665870 741256556 197930692 79442337 974689998 942926520 240126929 136280504 55739338 663820656 474411622 573126983 596363033 226975837 797083018 793611837 387598346 900566254 855018224 670989236 775793134 939276236 278854768 405487603 925325339 916796900 388925028 17641089 800097164 971051703 601420194 854203214 696629821 134204049 926379595 820743253 808896673 948451723 881682204 632491375 74917776 678665870 790147926 179483387 897963398 488404948 944034680 256535464 184633002 311353757 756402316 224223693 191289354 862006490 679504308 771568232 123324944 129192855 125010871 964769241 14649834 312130578 449803704 831536996 760383757 256161774 35200457 891720945 739417131 814945868 646253019 848530078 132798852 293528999 906161233 449395624 935248246 779604077 267128651 467668703 570587332 683080777 870823072 893553547 548394115 379637597 213385479 237176671 748196984 852202531 831866258 856123878 800763897 720199320 685186758 926242576 683985025 139081454 936079968 673882737 244493993 553194992 764866622 233781596 759881203 333421588 644615547 872866944 670989236 236200158 695921700 443378427 856639376 687874323 867919295 964663533 770059304 540301842 17595328 708822240 240304797 775326105 717382256 760452491 710995723 793250529 904975196 809233251 411247079 960776435 897719926 346652928 697534246 601639618 547686938 149474164 151826607 231001393 196686166 837412692 872531917 887747601 342385109 297239727 304155302 890190095 971896143 710841148 616553875 603582663 754715759 471243429 882673840 729710267 581509871 379072258 524855317 276106639 875566629 895846163 522046308 24227720 871331741 732359641 163220038 897779427 717537601 462881557 908345551 793502469 897191696 840549156 764032053 12819977 545469834 50769368 749230097 809996683 839285471 610142954 561761007 199564589 829242849 431589732 720643309 212975988 52222494 907048752 678863618 978383999 222802175 678240113 899621556 978632754 48903048 701150382 324216134 962888127 590334121 746149252 790549788 949449431 129979594 564353950 890434156 609264863 899817680 518741308 351811472 522189644 841871788 986368924 983749522 219781491 825189526 723262848 732774472 17603856 698082723 8850271 696918429 805767731 726638358 948534337 778139541 732864378 758058872 209717414 238666959 506659130 780931023 748002626 670989236 325833989 415946190 863066588 904729714 22432664 316534757 929621127 931254198 321023131 936379364 697890162 466943046 796060634 586488397 775459502 146540551 827214118 684371487 398782071 776332366 842511176 784315554 670989236 867096364 572533997 876602037 893468583 491390842 317204565 5873807 52300996 97357716 31016267 160559435 922925725 29587972 972304421 914598651 96026623 797186768 415291195 581557967 774865515 670989236 542041734 966416677 337312598 777388798 579611176 277631789 704138438 892598917 842983049 919922762 866583514 886201391 723139762 582163253 860475568 837328344 233085 963121430 803933085 812388616 459843942 2773405 492837230 54283248 479556390 98663579 381199174 139218482 607166325 18592685 849589088 957572493 2902585 816001323 59217899 494550384 816825714 958337266 926841815 796381882 624416074 340043032 857084765 197857239 791352706 36900539 182040592 732300524 380278386 631294064 142499557 631710014 674499561 55412003 946467307 550697037 787881300 835626681 670989236 331578571 836060430 715512145 894104868 916738890 493286540 678220431 863736162 759252253 544686080 146076444 906034377 765387547 365026984 539310200 488752641 848307634 678229988 727642609 948110783 421226082 300664773 741304154 18762087 676821264 246800312 164316559 430347823 702811942 933273004 507486965 93285300 561331994 780167485 670989236 705305590 466702383 942385636 88764527 825578011 574010973 713965387 771062546 951127050 796871358 280820502 630636424 305735425 634269990 837001941 547150978 592914548 429154355 389328059 793779839 692760337 704698370 352289846 84785032 874563847 832901848 982001271 84123967 832109700 907101952 535385946 695731226 997333164 468250945 304113312 730033433 670989236 721302959 982923628 422383925 119345944 538194289 693330579 794977961 813939233 901167629 139718350 980673180 17644225 405062326 870849121 572461903 991416294 833146519 175077108 618263286 418546737 243757760 679667034 464213617 573396631 140216279 295373873 714722042 853286161 989401724 935850474 876007349 906655147 732778829 955935368 441394633 687499277 615528229 463299376 807926817 636497568 712422244 649714559 778098878 855330249 293998583 824760929 828418866 302661468 736012512 664839658 662357020 760792770 235609012 953279254 585608662 315510628 580259608 735790612 792635775 814655360 773809657 119515930 13991084 324659972 367041148 751605607 83940733 866781079 994940963 850213680 687899137 688300414 17896863 181716868 834547722 663283835 984264206 971726054 32222306 874728128 962337705 846626688 438074224 483747311 83493629 185363734 955914200 565160331 318200613 689930296 728519500 63572366 695999312 710018565 684038174 107091134 960714437 947548723 92688028 800976685 518921075 276811442 500562299 848248837 621782089 859904204 619579326 143503727 266814821 703412108 736747809 835870058 721629571 297773759 806965570 12557156 137593751 326224469 553014890 36550038 121817922 580002566 894315169 647280959 846958967 558976982 529634745 121676307 500344518 342411540 745358598 993421619 960290433 678228001 127333853 113582834 727393126 754027207 762684614 971349735 616796846 438215455 39487163 986602636 754046724 86451977 926819201 122694194 254781029 175580073 118566341 184557223 69884940 542372952 995690281 526733027 912367268 150696721 194256082 532638756 537061458 221467868 794769927 787657263 224654517 680577110 936395457 526433213 313833086 208818727 788074763 29095300 982157060 865105008 8141628 698555043 534068874 106458053 124160057 195609010 564517923 858339528 792803721 907171047 483429646 25944035 944828422 879142296 870725469 948199086 970947075 547786406 535046914 789174378 540508620 141266669 678731942 993193011 55873657 718263871 588467878 453853632 763462256 130656147 928455400 711907180 887271680 130884773 561525919 930791528 760694121 760625079 75847419 723041797 885669097 901131385 298409094 932609865 721979926 768371980 867611184 66430255 788160020 47019277 713951791 527089334 195258036 999778576 414116892 394956481 871965602 269073619 534394725 523786935 789653293 722713043 769737318 956468419 651461216 343534519 807004131 718900019 894104443 416297780 79742375 981810993 704095751 245622333 71208948 993474498 971797276 62958815 710638392 868985676 300297852 759689637 677773634 12680804 750870046 986329203 708074147 595089129 194747751 869071755 685582599 34581983 718944427 779716011 936227398 896056119 833877976 688333772 595132901 752602488 835906051 276842573 167900441 940512969 440114255 317616059 60160218 676480234 909969287 27368478 794750499 498785279 749008718 877787722 153204624 108775861 337288374 116851680 619563703 683642574 411504760 938021926 963909090 378866828 66062137 801957493 786721737 928179289 679070254 868161766 107465246 965051462 910381802 802166682 875867155 289435792 844787908 880213746 346658384 307033553 643263462 998394356 77220342 556443902 673396301 928787047 772291214 731410178 273891219 368434247 997673676 666650356 109724819 715347845 344724688 90936301 315561138 828916418 843982884 211954427 890607153 246867695 326646161 946337137 918932342 872950702 929525420 679507367 262654607 316902460 268277781 491281417 797872044 450104129 928425946 775362800 26066995 869165038 378685746 32444482 138539196 988875547 797335274 933669522 559048026 831521213 171437388 793844241 832187159 824502884 954562820 710186940 749114759 460094681 722400865 820742364 229392234 852953240 780863791 545124788 56908637 591714176 718824073 670989236 782016156 462309639 856491416 136141559 530508339 799093914 863916039 188578551 762690848 984954443 740805810 510877310 814588239 965543167 763111567 98314736 802753415 856425167 51934367 705756896 209441684 389113409 994481060 17825894 452742180 245562980 938334202 549566276 167335927 709204278 738124814 768174238 94287147 332244960 294064143 836965991 85819800 329005119 243000963 661875485 521845655 68341782 531471264 872758895 836615077 972382662 550705878 12521841 994140085 124129411 590889538 432563044 925137678 654200120 573212589 651922179 301266065 714022656 5103406 766833116 975412644 755559222 648970728 699004008 903760324 39667710 909780551 215520137 213812607 3668632 555777823 560984865 725342666 131555206 684878247 609158211 273035200 810537106 853984818 866196936 325401175 775691470 436682148 907532131 441585020 359480931 930805829 883537225 200834385 539307846 904173744 797386678 854247197 726784726 964375738 587188741 71807686 564250830 771552298 929148503 755014815 417108171 251557708 512764837 151386159 328118516 817041781 908462767 984601319 243126106 100721373 738851471 544170409 812398187 868244351 192301414 694302929 627078355 350823013 828043944 838155975 747059749 588266644 411265602 136191107 543261222 4711895 861586466 430417196 748015819 696512737 663432687 926123474 706786648 959852058 945989784 506608707 403315024 454384334 921933715 603097861 893225407 670989236 431622427 670989236 493411183 724305198 235037488 473664818 820965760 432264260 378495176 675428404 756365739 682222231 802083105 540531628 489763362 309697761 855860730 702007307 947755893 764929966 970719039 813191931 981884072 819241628 950891243 70636299 545838318 181552203 670989236 761011385 985726305 734657112 670989236 61226766 523692374 605592643 912054098 322473932 463178716 662928037 431131905 878324419 772196893 733775690 906711504 409377558 986949994 743280386 604781232 266114799 726851535 249903853 486431851 850677623 254061543 977757958 957402803 463545896 972059380 763748862 849854209 842153285 156682407 796740528 324076525 56018174 876564233 660223203 914906544 888909730 946127926 747791602 827483228 556002730 55841440 873092252 380499 422082630 756505966 736877366 801811484 733248529 766918391 84144443 891055980 256297960 591064012 844886596 258641655 914402918 842480535 820268274 720324388 809578929 747750688 919421775 832502448 615812671 745974911 594184207 593284321 89634831 958476942 969238215 548957257 688837205 792811032 928982038 844223491 789638612 648497358 684231131 574203750 747092034 693292516 802760604 958160221 889191348 467644189 112811983 54364721 725854978 118048022 911806364 786600754 200513816 212767831 454164607 301594110 915152999 424624603 713525996 284505327 526294154 805525468 723323297 787482109 670989236 271404562 355265934 237969890 807703570 747743410 799526519 479974451 800690508 909787658 73894644 775724923 789062803 296671066 221373494 732183859 33936287 365132446 9984416 986535296 936574396 710938172 204823514 101054376 472424543 933098626 185156431 375335524 949207454 633303287 386136368 929928293 885275219 12788133 875188650 338310361 791083610 836778860 520976202 251750944 388903886 33959903 145258430 31820281 451144326 574941726 740848437 686828020 163948288 93982282 484846244 712970092 982999484 480343350 920898896 60456801 882670319 588029632 712637160 635008489 316478102 947460245 956069770 989443596 452265815 718079000 930916121 169448482 924464104 384812880 897277342 915231279 555259416 152949210 813470108 645229093 170958831 685388426 250421249 556664631 619992471 913613690 867438679 324166480 726318922 672574412 460317140 927384845 924232069 317046871 934181226 389944216 945655602 188049633 297745518 447014983 555028850 995051546 369405114 753065808 330449044 876815818 223671195 787076748 522637579 595344543 727600311 502954691 685500304 934498898 670989236 899465075 942037123 942315367 974249013 835901526 810082141 223022716 960949202 706438998 929941517 799150001 179042782 965170027 440294840 393405259 833999666 829743143 835340482 849835065 405485521 384623358 698226919 336042097 875668591 466149039 648310439 890469940 584867748 732124048 154301625 226206376 983731171 915558462 130886143 201121898 652244528 281865026 771692062 363957521 988643579 689018675 759586808 788011354 707762995 973623013 789966580 677336449 901329489 867532508 888572494 530794578 945434026 119798391 996082870 748774650 137271378 215580998 768605188 194792463 204952652 410946075 656808853 48614483 578490181 370407861 999044187 791057362 466682908 786274507 298187228 846887137 761915437 559946994 991041577 821676834 846983781 199302666 801336275 611213992 839593030 637696530 925607310 654474839 670989236 806925834 433641414 951436259 750570908 746834207 216666472 781294826 790304100 787554735 284242023 1487492 916508675 948108147 844727844 416300486 827005201 984552264 568992268 248861883 43239274 108146291 190897409 904355921 578396937 356723411 554309175 63265086 994924740 598008217 429340742 606325628 612752989 448064946 661869424 308664560 872957586 468642090 426472950 882374544 354132492 870328843 782688036 522667042 700879577 867957791 692165064 450576468 738462080 291264083 927145662 764925707 860793970 134285699 640001446 53958116 935100799 573722046 923908152 670989236 693575377 167163638 275459620 812866937 875875549 777232226 140903142 808000572 937662396 825483740 930522233 778520904 565493530 860114418 974720907 758283064 539693102 228044202 140224572 912458757 239004369 147051146 102829368 862248015 118584001 754162528 679928220 745814306 995503713 229852799 885858622 956141248 590680883 153848718 966313534 306922876 957443972 56817895 817402011 740379904 827245841 802925961 688114972 982595364 819526664 143554698 860174013 704868352 732532061 367613980 814570884 828996899 936911356 728071410 901441247 493479840 341767983 627730897 757152592 620014344 201566788 295157259 239125154 783148669 105451695 998243641 385727167 175425359 798351496 541854523 220447033 897584773 183437094 87816736 954851332 693279013 801127538 510993508 817267385 391426682 324227906 590556978 751941351 879801000 791022700 690303904 62876280 577982553 719572644 807390684 885008436 855406678 738721675 770943067 713968474 533848722 344448505 39067590 386223517 917009627 818359246 986396935 954223695 41358389 774660325 615557772 944986645 163627898 730865330 236286962 721407283 824457083 371978434 487392088 910165034 904548108 289178020 210338208 962141946 948410819 874808268 755608998 282198101 323049957 266025337 361122035 443932571 866572725 429215647 894923201 847444181 894025775 526259151 673899139 179957593 389070620 826020929 780576024 337775116 575190704 577628513 992005672 597973389 447082229 702047628 954909571 419659988 838076863 94899965 673662750 872636082 670989236 222056017 912023053 347207493 508740810 922092935 923956691 104405385 864074410 4191051 987856320 379385874 937226284 483577046 713727608 16385810 103203369 670989236 631777674 898058646 751131416 150761514 846901885 765285375 564781875 49429931 976962938 876323345 507775524 732556645 982885335 469207554 544259104 499708308 249678261 720271368 961223429 852168701 490976695 855766078 915887564 125167743 948747077 940411798 409496167 845761988 933450250 893861347 903977618 805111052 559823750 479853169 965279053 17829913 29437979 704178089 190793488 494775452 873367359 142334235 164489682 910248495 881282311 110585287 716292902 163431834 983733047 767425649 766432648 738118987 949601265 745273635 95548985 673735003 391855490 979214511 820536460 291954214 772471240 950910001 7818394 969901695 138095771 466519408 981633022 768144853 185806647 12779636 765312215 610177607 705390017 749933699 976860284 972103066 991386370 786332071 836395930 721935684 616953713 945855593 178401346 349623076 800919888 413826850 221195421 345251206 402494663 953932291 95523912 375698772 972169245 900618143 999934567 870609861 845059813 328772492 198416826 500361375 955764008 864114030 199041183 7688432 427138928 363443321 201944108 685030534 967715341 791882602 355540897 809847544 881009963 170984555 996283191 620224716 724615613 281610005 670989236 813847376 619629203 645052358 494265156 926730953 687267527 739635218 673548887 833098456 10335438 753662553 963747639 65898351 556971240 415333061 485038092 814926129 727533680 611069098 561523299 142993829 220513253 614831488 802735531 511509527 491272281 932575459 442879023 867686575 727608534 471833762 919454882 600167091 864396509 213699827 573209066 581974623 287760056 622533590 301039141 107404511 88057104 896371076 491987143 261205138 164111256 70020701 958432620 815484974 908238226 533831881 708149017 402537530 911628014 322817837 162924919 790512311 149083651 857931933 764528004 889798412 926127027 433627368 608336779 502621526 447802818 983687095 772092911 575798253 897135433 967950636 844863103 565650101 381684388 985952529 944226364 802929541 229654752 495236235 450632074 886983957 966572575 768958209 430214361 883585429 194279862 13986005 115364958 824825645 440551283 878330853 644304665 846204177 693747060 137982959 794951535 209868129 107902335 250990033 90806179 961165833 670989236 718023600 869682939 950325533 306771848 882701637 98716510 295913562 961684353 743789242 517325976 350922368 977322449 780861828 764455001 123997869 823040698 29101174 633572321 530509624 496137038 575509290 914933388 463167305 576604049 211519131 464612085 667796786 564637815 686208024 772991892 641167444 658389451 640006925 139647626 476344819 474197872 844579738 285632098 827824416 67838193 832634978 848403426 93553801 807630300 152570445 534099255 436099506 966805146 885353583 670989236 720928131 883836250 897568225 162014510 806189987 618898963 913048278 989312406 83480510 89483381 375545175 804691315 526408072 492171893 962572372 247046980 694386426 981187326 718674235 926006896 939011182 340675715 911063566 755196652 492842247 787074420 783937581 865016147 820459734 370896841 386930027 682196630 793449624 602208374 578269665 962613298 951328535 101034711 559446906 48907668 803483691 917712563 204724763 104961066 60658521 62782917 715314508 194939582 810822544 758127779 226550857 772781823 108233574 256128338 842642739 197059294 862898807 638375855 386508967 783768390 316748543 988473129 935541380 446276962 339146007 285570451 404905775 259346979 734800992 600849104 738364864 580341813 392198617 782635712 421782113 138954029 892066266 123846978 406803161 430701277 796415172 326141412 441926723 6509325 380314334 143066016 100810241 267492942 720808061 82088125 199169349 606637876 789794542 941561381 999993988 517752500 522766721 404677897 2023933 910509390 865812307 396183878 623705676 749522889 436981449 886633540 845981739 823658082 921475996 320911632 624819843 963790087 393612788 315003538 555518240 996070990 823679495 744663424 982874262 805496681 261940896 601729212 200904096 549268955 157845111 716039116 766026008 303796123 996141770 910873742 582671007 673775334 251959289 917140050 687505101 915009174 923028290 13520688 996198649 649106031 677742934 215852326 835203431 236289082 829678187 537726955 304505138 776183958 334867616 487663687 946503743 868830526 526468484 618306465 681762763 565428047 638903333 344208522 786109570 225721911 863830063 644558421 877296561 991818882 773844584 569982933 780794806 498930700 465899543 817160856 301921790 80066509 753280950 784651060 790069806 801531400 944698924 84915765 620952058 19484964 14895511 830008862 968300922 136507293 524275389 690391352 532586780 807442500 723299799 286007176 253067524 284803101 40409570 591038490 907946512 795646707 686321956 818584966 950881713 705474664 814922793 174285122 736818828 507866814 91880671 477693664 740082089 843947737 46269276 799028038 184991169 921005253 516712390 591292488 42317828 661167824 136254044 39329160 561101 386861509 855460364 665339532 833943735 751663360 870356819 128939886 71806050 650776143 853179495 800189086 768389357 833120933 933878764 107679505 732846429 926164877 439901785 974003797 877655679 136960588 484489178 750396102 649152625 739475260 571561431 670989236 959314061 922787711 966575074 871847780 236857714 719494555 223803745 324173106 926745750 713959908 250350368 709461378 693783585 897678594 115607523 456815611 618079915 48371847 948555855 192030220 670989236 69014824 274229705 800129244 489291138 683588273 203383273 842278003 471960485 672435455 651765124 828297849 516888029 887945325 674818262 709716052 835344915 763176226 516213257 995681220 833572390 480161625 413965342 571630101 457007683 861342873 870899876 861705613 945156322 569561115 440367406 179749598 934592028 414110581 234362215 811882503 523332848 757520853 585490174 875727096 455370186 736520480 905678937 635471240 428605888 853476010 43527069 66663135 959881441 619700032 325285516 151417185 732443283 567320530 240847770 997735619 983012807 536977000 40206454 129139331 891574271 962009777 331152711 470852100 561111029 806660652 897948137 747480021 505167808 877519943 35503254 446445566 449510318 670989236 205912335 440055212 747573726 976483865 228742363 679044569 931539227 405292412 362712302 227595362 190175792 901033277 134168153 563816175 355223185 743977922 77651418 434388123 363037024 18040170 192435372 469319585 713118275 857629460 353552077 766923876 48292718 360981814 790214118 302738058 24326913 848789423 763271109 696757900 352253796 544472077 339937962 720064587 594459 940802196 800025589 871874484 724359735 663184493 186454468 436205659 126285138 613819577 244298856 184931985 89349679 828539026 1870516 511614726 848461361 670989236 294706744 824100005 710819317 742834882 834008017 233653343 924254765 566139161 49955027 360626071 928820742 163793711 670042355 782672763 977722329 309745003 821935236 697641717 901768991 869877143 513902223 740680042 694764754 500410041 609306042 735653560 838159201 480563976 33765854 87663597 974036931 946416543 813098290 855713609 474837154 998938999 361555635 438725994 748161144 469362220 983901439 662763280 339878285 908262648 3115962 429222971 769438760 801245283 719475483 208152233 976435583 669488994 174780768 921402453 697335028 58586193 69562700 713926518 794142582 873028217 579047294 725618960 64761604 419569210 629941869 680010665 791529158 484499228 84587071 473419287 81892312 839861033 576141574 793680097 354688484 356896423 749555296 867101253 853207580 14813790 904975443 771263632 485952835 892302240 910775851 524228430 916156706 758581865 868468196 736231951 234214644 688782584 944366738 674142799 1598363 156307617 312042952 690141287 510999630 546750024 739830089 664846055 173474009 967265122 971194213 306450741 810296443 707932635 89107220 266901795 820460622 322312760 66597195 699980236 398716385 527810431 80766445 706179266 27174192 750397437 672815962 574725468 6645134 259101824 922542610 35218192 752855100 240538989 771723959 820305249 823346916 321646643 150393001 220886225 405837867 433285375 794539343 475490000 690974064 30211455 903201757 115390015 702808172 919802961 959382546 951416163 757823785 327652937 863465419 823914305 734472819 661630390 407473830 960092546 756578010 737710727 670989236 394838399 817277788 765144529 964222222 757768316 72167387 735597251 660113226 50407553 981658507 471404075 176959839 399598987 993000582 149469634 277964424 622733418 859484461 476868300 280196859 686848081 236492036 107570553 833225955 65660812 272748592 291578883 831781146 922596200 137763997 577255663 717829376 22192841 305042263 989306576 645303587 862284288 633128342 908939923 666453544 712637777 507379393 697507254 670989236 307648029 361405587 876381349 984115700 566669351 35187639 670989236 689876291 704150453 796904905 17305607 480083503 885517453 258245165 509043717 497692408 588512834 818109313 561418269 34686257 692733905 180749196 317285276 861301865 601135276 300084124 927841421 833819467 697980537 786992670 628076393 168008948 989922646 567462249 229629953 860073602 862329042 592451488 928289927 605855718 830859000 624266153 448383165 569948279 868983528 693494582 335456022 783159165 379442188 578105131 285599200 712033550 713244497 717078800 661573783 263447796 529155647 897122965 470022738 359787522 796343781 673529861 682310515 788616290 352093966 720695626 29847624 372457678 110518287 788318495 909028255 433491644 659768419 818891072 704149536 716967747 187020310 446284552 959424919 362148475 564220080 879911897 885277405 363400031 332118360 141671379 890933018 400256272 558328253 347719578 194101581 994011390 293110648 715637232 804255966 792243906 913346923 973606631 750119355 414145194 95297259 131979332 511733090 267429795 859729828 142497055 559341769 793844411 989317590 260874775 927135215 317887139 810369381 977692334 779160676 733922091 263583004 581910414 850680099 333573076 568864976 506790966 100118908 916524879 967043762 411349926 23414403 840351766 6769454 352832854 767571729 152441967 933778645 57964787 982073593 789425204 917040490 455369449 410086211 826650086 973785110 681203136 513162231 665075950 894356645 583393186 961160220 558667310 989720005 902318520 714715707 945520962 725692944 948166800 99161236 198134318 264852284 850711578 589491801 311388372 209665870 106637676 324821868 500202157 863456457 851255728 364676478 836572031 706608250 735568393 154823012 198052009 833938224 885198370 854682490 123122578 589026357 496013521 150952930 372151208 569991767 796924922 768309902 767688150 881484975 670989236 656954914 277362988 749795102 933124930 918970795 824073842 730541603 219651198 980710510 660470391 944172043 924398592 467536308 983722503 524052324 923354473 151829909 979963397 429159407 920750127 927286013 901837375 880026753 910911977 951335163 261281428 354973877 896681547 818012061 920965552 501551813 673009266 754620353 772566143 562480930 854315705 38219676 997333509 808388632 757762615 960155557 232514239 737262643 793534426 820278392 792002866 278820833 874402260 868038265 134428334 664318942 144776882 642632513 251411785 305525920 814070284 920961458 26905042 978692307 328762099 546026394 626928381 911317054 677879450 895457846 672393429 846899325 224626957 279471764 229180511 704991667 779964276 72224789 669353593 598742385 140162702 658321098 866138875 932785708 814298052 910921454 853291369 709441131 155731711 818671757 797208720 23613960 126098076 886926959 613016002 996992469 389377513 948571172 946499361 462595271 774279431 30915756 946835948 674624811 911014973 216704460 156426909 875419475 5245197 843845880 875196065 366397273 925767210 905165145 336617935 906161371 885587647 442060668 345882063 386226548 686526592 852601099 172439271 370945182 828041869 920001184 716273923 275653368 977693394 783310827 912036933 715417907 459345393 993448885 993562082 249210203 864216012 741979207 147023380 181518959 580143524 880850572 807871901 80245359 906582911 883793005 405543570 780569271 837826368 151272610 876039348 788657285 892998768 50173450 772635130 925808749 673725821 810636123 3970179 763445346 778892656 220052932 965774514 73450910 368521886 965258557 826319236 952579621 859004536 770695881 910582253 763743547 765986207 359965934 621865675 947874527 451297099 590564879 795674755 574530148 600571701 839450532 789191628 93492034 727573191 157799891 817202544 412963541 289960950 794789588 991312008 899013093 838702610 318312688 894008263 257680204 782579166 910458595 189069055 241647536 750563506 596440929 871743461 933107260 688356 278208065 59237 74677312 898259090 681219840 115299583 875234054 938153860 914359562 670989236 613586958 801216685 649501325 48002543 104887546 23342074 308015718 721200519 184669614 670989236 914075340 615897507 424506089 996378364 781126047 721689872 698490187 836158202 93071688 670989236 941058704 992753584 816937384 476930449 67559908 919216360 589775592 711002724 494728927 981943508 330194471 176448814 249910804 986100879 727055070 494927283 198796013 390097123 440750486 936314470 736654970 766989126 616221815 769193388 308586538 620234161 58358432 841950975 947971631 438944474 461685541 925549308 446963242 676579904 812123492 954524953 764948261 810679584 386354158 979941618 360236240 842024256 759157638 780687664 943406875 687877236 363769509 985870719 879655339 898844508 832475872 360733153 34290661 807756699 967625810 783032137 563751858 47009929 862762605 485414980 688039002 304717655 403893746 829685438 726145103 618789828 899513576 869429619 680427993 906165531 488589413 909083843 411009955 39060534 850587661 948561959 926222302 217577333 754054203 538646210 277608432 155147584 354086850 452449369 93793333 529653063 680190340 186376019 8835664 756168588 3491780 849462854 754102244 886078179 409329658 618101513 831532648 162157630 304308345 792945626 886640261 254433926 776706781 744041986 719864297 601990100 240351450 946304824 291379216 590897187 509744233 761445951 48294411 197182331 787668548 122772678 771320137 844439177 684087682 10974719 893472137 726128486 486358948 949006768 46413139 765616462 56169085 177676780 804666445 882961711 726498748 363851421 664180918 65399753 913000313 706806946 570850085 300477813 173786151 975621865 799892546 840237277 781712498 705983841 378826930 987800924 226125119 850709998 676452856 268620415 726378365 44216746 939613614 127563283 523897963 287175008 552936238 976825191 150982975 779727387 922582179 975092350 143749633 930551738 670989236 691890491 840807355 506341798 691482087 556036941 422903241 821697542 170716495 884351320 869207997 949053254 993714438 129300165 240656208 768846991 392748314 838106794 5404207 673814259 680081444 108515538 725430025 228664161 34448952 153706809 317564486 40848456 884827323 526032016 354220912 810826155 203667280 696202542 792923009 65853091 291798763 828337351 316532779 860198202 391199911 90834086 951465742 915210768 716972340 868426843 79360395 877385668 655493865 883594893 952885936 948060466 844434778 927646280 235482286 286736811 574046203 893766510 105611752 871401830 687821675 631252981 730920183 506983271 67332639 982553576 383532438 419141393 273354923 287355043 752285108 318390117 615405335 792629630 368380337 707850144 468936194 455748038 130407584 192140057 814677148 247492370 415877447 555439626 278894643 911794682 627246627 486178953 536523348 862279970 962892854 681829852 720338026 481422334 246696192 803268363 116155580 502898206 981571020 98133714 841027136 923721751 963180408 258903850 628683198 678531191 189035951 405360171 10104847 450282355 751806845 807332816 642133226 642401793 806765829 97150912 573471373 783842855 398754105 607228447 491193966 685015823 335428916 369421091 831640675 140646326 135638583 959524512 825941863 768777917 856215363 762717144 484019927 959290124 360398340 877233235 664562184 786623205 526118633 488536318 139853218 633630519 382754552 879214902 46975604 932843266 802259956 912553764 195254092 318554261 735847722 966079012 906345500 509489699 836794808 924318774 156858038 710755929 970534764 949669213 585147984 778759493 794281730 744521280 489371432 927749836 650179599 292622573 497520737 133242494 767282109 533406306 186993476 693798300 720529853 442141702 152517809 4143881 864040638 325166832 368576718 122882786 706671217 799993398 794131187 907649860 730007841 177428373 250277539 868009159 250244440 831500834 309743465 225062525 465916680 708143316 706490760 221064840 541607701 878629254 987528039 733917676 344981662 915614936 548121170 427556857 944886839 132015665 936112815 621790216 382950572 908137303 88184215 894099421 500408298 680855355 464419760 432368163 872677619 136830937 884977816 73115288 810193715 514529782 999724884 734368553 802789164 513086560 700355022 724391905 405506354 9211632 914832370 759294678 904390648 279986938 287395710 740414429 803974969 496493998 257078925 544380350 479255947 385872569 466734880 753304062 247809120 357275886 128744954 725408136 200986203 527791065 212209844 993241736 738969982 964480769 782524709 197329394 928778582 703575022 779578422 682488447 508782371 764084764 418233982 371170798 669310420 64481309 239945826 313823838 507564107 394786083 670989236 53060882 671999521 299227734 539132795 839657222 827876431 773021661 889360480 273716101 161025780 156178950 996225044 970963132 996848157 692011929 806436531 871702965 810733829 267015745 324730668 744344117 887067633 775999639 910606957 560883979 383208944 767097241 735879609 844980497 958881555 767185218 919236442 9319258 710938846 894186257 953566821 596550934 955102027 765309008 862035968 349154767 854472795 981784800 857454896 825666744 793043491 800623723 443855839 183012461 820240842 66622644 58780747 682353145 814016801 768095723 921996673 718006231 920162348 361556578 198230875 244776250 135839556 834779575 649013797 404338574 936658616 229918809 61061452 537819372 724993810 679011258 648538488 428016680 259311458 799510346 142096315 733404783 850429988 621534731 702180760 755750525 629193816 790758702 896042274 120210860 960787335 332937014 842504993 836483401 137726290 309160034 761564455 756092469 458912520 722907282 654475570 146260363 769042313 17938246 74132198 813939635 161736959 731736726 895131307 840895963 814900500 843797372 40045749 449058651 724498224 975021112 870344485 602125282 31180335 452080282 109104599 221940251 517361778 766473239 499360227 292763072 264516154 941842382 556675785 798396668 434738289 141305027 873724871 70880858 324278837 247192863 40780114 571964812 877549714 934405889 858379926 855606963 953522504 716800869 143924266 946194287 408224675 235190161 342272323 990245724 701970427 56924316 853167164 978267028 464052139 516759855 53292104 706783800 297341521 606331008 691348128 778224921 757618905 321730729 904668080 85937193 892874865 970243061 439140725 685660803 646168160 26966645 928925249 791301948 886837503 955566705 395505743 474202015 698289637 798036463 16746910 322181597 766971288 993263506 871755403 567959653 729612914 895751151 536274547 525122071 976194369 705677567 826451499 913317969 87227147 709451580 970325883 451018220 192635636 926465779 304898886 152995995 161778897 167479014 922722770 515000582 2702831 179035984 890711379 809594157 770445774 487470371 382116521 600172353 571016395 279926478 752511036 857040078 64903311 162654476 776167025 40043026 907237606 319162239 702466529 722233096 989273296 793685564 234586870 710577933 532115706 717849383 127968352 278528397 825218312 977524897 980743937 918131428 546997571 689130511 814324924 419172602 543048248 946675339 959477494 906512420 919919599 742922581 590868337 725776213 451219897 907092490 912956355 683744759 281519720 105796551 219900166 748066264 813861472 437620741 672674862 732614941 667987720 691790769 999050269 831166264 789237854 49488549 821654427 467890586 333601286 761247862 892983394 847439230 707706433 939883270 400799548 898096280 978567988 549765723 726927014 856846883 275793707 699608818 966108674 226771724 681920981 817815163 823946183 928751205 754009442 98202877 225699561 496055598 117075594 880491579 764689821 444578152 773549570 998522029 868098687 578655410 777110096 107627973 687961741 988929498 998981432 906850448 766915852 891940874 846433736 512447979 323911118 139516714 281449906 394349669 512774180 932154166 211513881 567248775 199433974 476352930 578092645 280781881 884210009 976258483 705391071 280668284 800509645 982715633 792147992 841578347 922324372 541309185 871971244 44780613 306604593 466803340 567685253 66102074 824410834 817803448 59738699 344104556 772626383 822807748 797778349 202625103 23291411 640320797 267679474 112399460 455190023 898509206 719927119 369404405 887488487 774726529 968098439 877717403 165553388 973783166 790537549 820018723 441454031 19297188 13296595 442402279 204092887 629512122 195417093 92707798 733607285 628578804 882561974 990063650 17597587 935706217 159332254 857248083 670989236 736436737 266662790 623491273 268160883 665326212 903045422 291245029 684716105 846944566 474511017 246564289 353978159 59832949 111199222 55571797 742890045 180892338 811720430 875749778 885082067 66581588 670989236 626610144 687784114 975805017 586883982 815223864 942556840 504340876 705254777 309469035 132083369 831747802 169434901 269616655 849530373 631685364 915263838 21554602 77996541 983497947 840673112 770529687 717310038 794979469 456442251 640622999 894593158 884079712 353571030 826298022 939797061 417165493 968346332 983532472 23677663 226531113 909123025 929203435 224065842 181701460 407701600 679668876 250860503 471533501 853744243 723090214 354575985 954932743 221030100 228585870 934212582 686389524 982741708 658127666 953417698 349032874 710534831 848851858 712520451 771890273 761928079 722839651 323856113 969204131 51190928 891287710 6419343 912378811 462004635 960343423 59427466 160392968 379934574 717031063 872109203 207971993 537620113 671224686 242233284 292502556 424956883 448626492 864946821 755477118 824339478 926852905 17160716 893036453 921434879 966338601 749172671 207653634 79676447 81164678 966614993 877380521 846545148 73436085 886563868 464475216 996132017 201471919 971938949 959333909 453242967 645925753 914600425 532505080 71872918 681403813 28788746 130845151 567345474 767907365 150135376 691141582 708129658 392936014 369779259 307516872 943887318 958891723 831462311 968249939 887424078 237772016 244899605 346268506 941109302 48251984 874374769 565522571 833077257 984531993 329676724 916430625 491090612 897273755 716123487 675171577 322402889 206749954 889487074 728102482 822534534 931221777 338794322 834952498 676727169 875072974 994414001 361712479 381060411 384301127 548833371 98496062 174147193 116384878 374707356 585549082 608312659 977047134 333019730 970942774 669624571 407209433 967095883 971540597 975011223 299176865 75752530 383551918 72439740 178212273 779289820 747468949 753710573 840740523 991916995 911721839 858059105 62118628 216653654 479744988 993980292 829868622 210380005 533088343 973640600 704013251 70890983 938427835 897666786 696376385 737959682 750871674 149718517 534747655 893051050 918334447 265128952 372383954 494542161 352918499 159778651 941844440 859805622 620382352 309878547 914899698 842234632 431160871 712996698 744967132 768641388 701434505 683242641 783744791 569082706 744962362 475394248 646402153 538647411 428410092 491380256 988170441 99291078 430623558 731631666 214908278 955887193 313782638 569938268 735352711 547269764 782872601 806494688 71503376 233245323 482743170 497149339 449015931 455382746 115612535 796423774 61748643 827252957 529701853 954926247 766697823 8205958 757385101 88220893 97982593 200204229 925322957 546707974 488927596 904625549 636733596 274645365 592571291 697732967 840367049 104036619 868178025 967145179 845020865 952208503 124753131 915612169 885041864 683171491 595063723 978399140 432355873 941559054 403881509 594727574 971530981 991780020 20315467 790846079 627936991 12003040 833697523 363900137 483490695 841834992 741152016 934719544 748316702 966726586 999691622 943946224 297196636 776584105 178384913 76334577 239784949 818283367 709251428 416635032 253826425 849445249 873378729 575963415 849520732 653080948 793114490 956713530 909251816 520711552 368404747 234769476 775892906 481546344 712609207 582680887 939711528 548642388 296889294 901180467 80428030 106883808 63507135 234440736 775537044 282782705 889120154 941713073 476164987 540327771 360290979 701766533 49415538 770338747 700293920 629507886 67283339 878691405 4735790 502646593 330025213 29045712 764092186 949274781 693603958 492481333 452595731 670989236 230669930 400867861 393264197 207377430 955384465 879935114 691535114 892642454 974259063 205164996 903739252 593814402 695457405 555362757 731915388 301120791 139696270 25901294 458911001 380033533 599014861 675584448 448522488 962322953 935731137 985265563 934053648 800193361 634360559 154214666 167095937 457631598 835031649 227448793 310299580 886946554 220985849 687667322 314131081 989609985 506059613 156852628 214308053 466662047 726954232 624792247 734412242 271657569 499373580 870121562 194454539 959346217 5865874 980047473 305848606 552056014 808629474 822078354 101680697 183979525 782063828 725372453 53387886 845014617 315506260 718442787 903522584 840296189 942057297 674290719 302292253 962029039 88844149 332190091 998223407 857760500 192771143 782036647 840773371 845838314 941759665 303663298 706309476 690690817 755792543 806508861 549223277 30770917 726218556 89764597 875276829 147346898 558749974 713811949 345871235 267305359 100934124 918611638 987975899 552367709 942418876 282526212 651959399 18395517 942731476 493004555 972606811 990534429 714693097 176541738 412539770 34296855 463028623 921556374 696202690 674762542 718295246 859319733 978514118 706597940 461346985 114757228 809253957 787138010 821797858 818579715 729625003 402226127 908430322 45078814 28115695 314929610 39347205 740167158 49531306 706913795 493924571 927728785 885790222 453209736 468423017 742575600 299554322 701593716 670989236 590261745 371371769 535906813 423586542 989274698 172074491 430189601 845102412 977487971 181946880 92824681 776428068 702664048 64615743 624603263 228361121 905936916 804525792 785609613 654095141 326512103 690761625 556697585 847914381 783652224 184702180 747791547 919547107 407832810 61239365 973873081 128029980 833845316 157551961 290394000 206448736 670989236 315787726 11827857 96356609 492681019 624187179 877830103 345631708 123497751 645886410 905486704 933408694 721451705 635462835 862249579 164903535 486178622 388613517 506174531 249086993 475385384 350272969 881518975 218127057 850629925 493603068 691086604 268110392 761196842 126432986 292116394 670989236 193530923 299746626 941302264 945031503 53751855 95436513 570188484 971725687 953781192 741604249 555298051 813941492 670989236 488187080 953069277 760542582 333929157 271259005 152098356 549343572 878802358 933367208 662746466 765979582 857461811 45687537 869017809 860432969 945760272 838589540 482465102 825264886 477493260 243916262 228067468 691385368 747872318 885361817 94831436 940724513 166771129 729984184 766756126 376607529 797874742 857995634 722990947 785553528 666348367 796183929 768523999 896274487 140433809 278496410 989878221 507706669 965086393 51896513 900755721 429767819 790011832 698033617 86972682 89910175 955689995 679477288 464394246 719258719 750703394 237441129 972721134 869245936 869558780 705781165 755867852 569403764 423879601 773164144 885845181 141943036 618309158 364848143 751229283 139740229 919825813 841524604 338122529 359867199 899195291 912361244 237913499 818292061 210658960 865659774 445119045 742036045 675615794 670989236 629361144 763414048 871325210 632728239 996485744 272180134 695414458 309987367 173872177 969123347 832783843 743671293 791389792 417531083 678475774 952721560 779898002 33719489 404463474 782368379 724921056 87403351 746394189 310948686 997864050 222473445 617715739 869549972 648713044 41934594 983958112 329613121 953044951 419267691 841164398 781847054 853598491 883749924 193245895 742474504 756201515 993617075 525437164 142707126 971685157 313027412 583991362 10831824 536186413 57148621 481545776 732454382 801661267 663201523 333071191 843253528 971447474 411197717 353767788 275387255 295405660 394591342 874395655 945757543 702455323 910115262 147614538 123628037 39284993 415057729 678387111 41408639 534787012 718556232 472714464 914872716 744438127 585913376 917020052 628956538 906842674 22122362 488440118 975695989 865609168 671700224 88926884 847661729 915325463 800607769 755614504 155547327 178735183 819296070 68602470 236322519 109358194 541620301 94491811 138608165 797182007 219784714 552585479 286095001 700557350 918809383 253233978 959272153 884377858 857275763 890273423 391425303 401141855 784518956 683513221 409927812 179420510 459419501 748722389 726319244 154128457 708445958 810156459 631582295 708791684 543362239 678041967 333243203 843039871 670989236 44368012 970728104 14973941 437574380 555323065 993611645 951965985 74188065 241288148 997824816 712427781 128655705 128780328 803296675 745916817 526338191 777921134 284164007 433360394 127503895 808489155 792721894 902409617 771861261 932003207 482129285 18867110 670989236 888382507 905969503 517040692 521108437 981923876 613250393 866034507 739768290 355510051 586542049 810302341 853051370 885290455 974534135 867454022 15765821 670435223 800824512 449104935 831577016 594560432 89395208 643213937 455403906 271869295 859270657 888608711 532325363 414240425 645568931 873384223 743541216 142179821 794760319 328064568 262300575 870735636 745844076 603565249 62614119 143085075 636621529 460739250 605974180 685896444 950057155 758640081 883989658 89883037 948936402 788268892 114191087 300808938 733499982 805183371 645970475 145047070 817066731 951717504 752419534 917024839 531913488 280475580 301219178 744344770 301085619 391431001 386936482 718975462 767944798 967297521 840677393 913985681 924639875 736430530 732770791 363148445 259898670 642317356 214180261 438807031 382397661 717169772 379298305 103498966 825410692 811041207 103454671 678355371 834885727 709850503 606897506 706859823 473896326 283125840 879937221 29484355 180001865 822064369 934638253 728541813 878445701 895133937 156063874 932677413 51178356 808504955 945205285 972846957 776943822 897707452 854023950 946692232 6753820 41536132 493045566 880441579 643888014 420791449 761314339 987686030 308855500 680792706 555360290 398512847 441597186 507176404 705295348 947154558 785817740 881524163 825350364 834614544 413857396 310047656 839223688 221468480 197713018 360152839 502775945 864229811 789833062 839639008 819630296 81409417 266941412 179388944 542413122 389424744 772273356 992670352 935819401 834777052 796394101 785730450 696857567 79501091 859930979 604953162 844106239 938900364 935195876 745565028 57686555 511461767 409178677 102658985 596120087 86018577 951056111 436473426 541657276 816718077 846876131 140287576 882976153 377280276 733506656 403044466 497191710 846093509 831142696 857426637 267118427 442751427 108841151 901614469 59404903 71219340 316167546 791230102 978622544 670989236 665085735 865236674 541652719 700685077 239317650 724390255 89594566 973067369 195077103 955434719 368812184 862814840 87556174 709165191 929419446 879139099 950757731 733136776 580158350 259184083 156369313 764087305 192828883 778275573 388071459 543183135 784265491 883992405 917445733 536453263 817252441 117025448 776949757 278149465 427476243 750064583 964739511 793346865 817511523 843007746 655011791 880828051 688237768 834440578 785987617 633345007 685004221 624627318 416174166 670989236 330987379 407918791 934888531 599925427 891432605 100753236 929287848 902085716 996657105 220838431 759571026 656478050 715108298 391749802 383196574 929358918 135752250 807169952 860284945 106555578 164404357 688873709 108536538 864338294 986992251 86450523 921689485 300064867 994936815 77596194 592352925 395971596 350812679 401660964 517609301 325723210 468612278 807818589 747179386 316363392 720813752 681015137 468675456 729071202 519072554 794935157 858794889 862266785 148991648 3665593 880760780 108114695 708450725 143165520 685318248 364701703 277927241 820064007 473219477 616266692 767892435 307489064 883640346 142327526 364851275 521012605 856285003 832804544 819221421 830346673 58200103 194932459 723578137 245112769 992231107 629198698 966884782 566807049 673204266 921873174 519050934 921011390 765144768 356795008 456529064 677358510 451091067 868585593 348296266 501219044 393152174 976956335 3096881 448759183 90581057 620501240 967317103 58696252 578878414 891593658 682048875 512859611 505382580 799482689 546412400 635290886 30665136 769330379 964366099 961178747 809915352 323282316 848440772 996718671 106005962 22514482 321927105 572800424 44770810 58764240 5120968 112968972 366641135 424444974 77708299 736335801 686790865 779132231 822582917 567660577 221888902 228071501 933921313 803342057 114785594 783048871 949151886 778559959 92810799 32000386 483412630 874380691 813736483 262884937 291804594 864731741 784364540 663550588 855102949 933555336 426149151 962743409 928263045 971350973 246513314 338290496 761128762 979825124 386710616 336917914 953879454 708737911 532267660 100386394 962519255 325685764 893480714 721491385 723065496 765728473 461351811 479125609 586482486 228767470 687820810 28890803 112784130 184019690 132538207 291860464 779100270 702501667 704152606 819966516 871537065 180981321 165919726 774508356 918156609 589121651 724034638 340983328 349388511 600447061 393371378 71193746 733624382 953423048 705323275 670989236 868413196 769231361 388481025 661535013 952965894 260154466 163721765 406895843 520166015 851839835 704949303 797873934 758977496 909472490 866990124 989981183 51901854 786966999 841508265 991776465 42838263 481338913 756790475 932464800 835835670 294936313 438836474 353454493 740385901 794043257 34807530 836353518 833918106 793227584 931850074 965405718 891164770 744604982 502232041 694734727 411279899 605106950 300824657 934459236 912485478 756199617 34017682 623551847 921666877 466738102 470174547 350593422 631201821 577785019 622704431 403751259 285905637 535403957 102520386 405830727 231465745 857495320 141493823 319454214 997183626 678236580 723516461 88693051 766273875 906375000 696584936 903758131 652454709 807656598 230639591 712401652 813277087 612962182 572227888 680005902 216435143 882408024 931554493 511475654 889790229 801590111 763308263 656182936 410770722 347798885 960652776 702919714 71442244 996416265 861735599 613330315 684775988 761488550 624770846 13020072 670989236 53410609 974455411 879989867 864270007 548988671 760052702 670989236 496909748 859212477 264958129 248714280 716659981 921875512 699218413 441013735 436050581 699990693 766368420 681513928 4526171 805311432 959579968 529684409 688902728 625523104 902112997 839587057 603540398 72341255 271792165 19373758 345960903 969164703 345503747 889713471 200307418 848499710 704187372 116593197 224533099 622571104 551737037 563141102 55838927 874998901 815538857 735592869 784290384 938334686 641629613 287536254 173411434 762385943 967572091 160096729 531569155 661732658 270797701 218863314 506220973 918483693 787391195 672276391 333666393 137822539 784596092 780523189 359238649 887123233 776935781 204688735 686005984 861916872 824189712 187413497 627694218 683234406 578793169 429977731 980040851 495423794 858783654 716067305 998703830 388883971 588086690 670989236 463949252 670989236 576632204 965609920 724872840 93446733 732419874 241303724 384390995 935193834 500964563 40797067 237925513 430236264 35965069 845600042 808012548 409904542 618466672 681860447 770013077 812603267 897577538 901305228 739703172 841406146 386873176 643198121 994935557 667244816 422518278 257740947 887093527 360119401 270325257 443496783 982845598 469937140 315177360 432030952 561091598 933707006 488631596 670490109 247942832 855516659 749855415 799786405 61764212 483549214 198660399 668331069 708063035 827840249 89893784 82180050 455394398 777381945 394271890 471514356 705869851 529395558 987785981 477459349 379833911 969268099 909049558 897339944 946129174 827600479 641751144 925320479 741718881 165926016 715524349 966436570 327870106 97063923 438658076 21791299 687339061 21147882 676795993 21562267 838677742 309938958 391202453 873557379 397216738 99750141 328320484 378802300 648923900 920843848 933038721 973819577 276503275 307843598 555614863 93591142 885033419 605574307 733577253 474954070 182874392 304919547 828165413 115068174 127807085 855762879 723641051 552427037 800147792 350126791 842499388 715422611 13399985 991551328 484316685 78041882 791304734 956339678 804681720 19042544 844127642 93237000 802966613 966302740 705492488 418864783 732228375 683441652 844558951 856262559 622998061 957621919 681069590 788537024 946607965 670989236 265150848 779234956 95434344 504983475 825218648 328536119 964834578 898594860 341588424 100969225 94918958 921792819 683622244 760038813 771333705 854675691 752247993 363982827 942359614 949992131 73798922 959078092 230824432 291066871 699944384 121785623 382041305 316371289 391122052 368064712 669790726 679492223 209250210 267266964 771018454 605712958 829559406 721386313 802366169 891851804 963962877 375100349 612539647 481563200 581639695 996806827 291474521 819805264 976270276 840753560 415240649 951069197 666958341 664220936 11667849 48855423 961748611 959509544 221443096 199321062 273616343 10148082 702267923 344812075 401062579 245125468 809479727 976445906 809153675 294603662 934559437 989912313 488194926 407467924 753735611 806529083 923239682 441600367 901860459 787852125 406466836 409862489 810322282 531246253 504760749 693041679 288486542 660250495 313477410 919638377 213687590 918426965 310887433 126882746 384114417 510317999 703659992 194991436 722648296 286342044 988051195 771511025 582090014 185932112 774969436 543144138 993688208 787078817 969175089 870174844 310002920 896276787 346846857 976563973 944358872 833301494 526089019 481928241 979458266 64553008 815746982 209715972 804892484 820809068 506686373 273194636 804582152 902826367 912468159 546241570 786206208 853913510 794586190 676526715 720099961 244365023 906344544 425699105 564641992 174944552 187314861 90955432 151648757 121978675 854784221 864617595 151066181 997877169 663342168 692477926 909324471 685825461 652812710 816861221 908593125 68611265 687821251 950058144 973485650 225452691 370518744 602286374 454554876 366477861 976191619 938441349 798266688 928418717 648042385 89915683 460977396 859034561 246878868 862972600 190426101 839940319 968196739 749091574 176478595 231660841 868506316 195732439 405100803 168480494 873094311 291546051 677946230 863948013 527876621 905803980 777264105 922805924 276453507 324005868 816590276 431542649 893407583 5327459 132167700 765900643 317205718 39281199 234430865 869901257 921795782 803635156 882272703 490921076 532589012 252577583 994484086 853999067 735616726 219988242 682091083 100190962 319181666 807862816 408221371 571335822 506897832 753761260 944450806 821632163 960575522 551469017 693618441 927134880 670989236 8923910 328561525 853066371 945233638 952876919 977286323 906296098 976856755 272291891 998865913 866454580 654741488 122425321 837390664 850202749 868111791 708315083 185389727 977989596 785443236 579759418 787198433 876981487 688983171 803779624 83486268 694687743 722710893 949266684 223580893 562198906 793311464 418482674 311290550 638745569 400535790 756341315 454474293 462179788 861960872 691963937 877815975 598094099 970032066 991990311 684075497 13588664 619961342 887969424 614530919 331092042 590315020 326924542 340810251 660109271 890278599 686485090 104115198 870247499 341501167 455354209 981737372 909481369 691839760 458492648 865334471 686812839 723489977 735582085 495089194 718631577 857050078 241914595 223826434 864547623 776136509 623958267 250903799 110959222 890690090 53759509 716406239 893387191 226991384 681245211 37573504 972170483 117718891 432915059 246303678 882861850 647212111 598559709 913199799 982699607 891866423 531579411 725854883 851555448 670989236 610546573 988284748 501349315 213095922 984326176 998054203 822864226 983133837 395380064 736025615 73828365 467862498 378038991 670989236 937054694 812890800 998256149 574078949 687022112 126569524 942911922 788883855 268915602 773928941 35647976 653359569 809927008 660867368 916149414 605681916 594427147 886749508 44113111 983547566 952070012 122411337 946747314 375185099 880018418 379931334 752823479 105735367 560680009 924837114 985815016 914902492 954385840 95588096 147977109 918213180 836975643 670989236 715495889 945882530 923068994 46811818 849880902 670989236 951151889 955874438 761656134 375845612 820727073 975524141 164424395 481982441 920437812 407253064 825625602 774199727 691698217 864833775 720722747 252566435 279810590 108107201 821077635 698695055 857280162 246367807 983671383 770132335 243210974 272928157 838407066 995369768 896916324 208056166 835754328 643425729 231803418 439322849 422444399 775330563 508581464 897510362 479280381 45688918 646786747 997898474 926053691 856174348 744436041 974482436 213301901 722224282 196088545 229204453 388655302 404862293 413050937 449591996 485976378 278555191 304862179 992832764 132824120 983670758 340748800 832386881 581112448 795771747 37728444 570440802 567479588 919870416 461942063 788145807 546432723 968147337 125661081 933471389 382426506 872321075 482557907 52874200 940040971 995959369 120567029 883508051 874405650 707625304 790000094 458278746 19111661 970876581 625698642 465586696 409456725 440254753 780187050 755666202 378647719 938409122 962085272 591695124 301412226 699005578 766419860 713111475 470920219 439071706 579576502 924295854 677336380 121710141 208932365 958651667 455120978 899667655 490309171 553483307 461641194 699391520 309861305 351795906 222297524 101721101 784261913 569465884 778939425 514654346 570277603 731271893 729669484 929637219 541129574 774128645 970179086 872321560 817472263 699303345 710542087 735242067 207341273 729639594 830667056 353477080 218098834 915990736 534916386 919592356 861720004 841557217 870670428 473591551 818826999 523090563 453474086 711758913 129122729 850788480 191735044 16271200 922006245 537055289 580276978 718537682 814727057 679071664 528894200 253478696 93014629 206168823 43505227 391504025 821704749 505249450 670989236 794162856 480026151 88587716 759233176 778282800 264014980 941812775 769488725 742957060 826004203 66480802 847348766 899156449 937635574 876494503 671446161 722421610 716652592 848459154 745349303 871124387 579466877 541439606 947042731 323030637 315117094 944229294 669561750 968587621 937798552 967095358 569688629 629845780 724537776 268435553 410489391 947266537 643516926 157158225 636218340 743858930 22402083 805080887 644929922 111145461 935910919 683176743 600438792 366561885 94013972 879077656 214259594 448576078 161502995 913097777 854027499 804274607 699953133 633824652 762585905 572555810 377960778 850291125 190060170 872503952 748421323 22840247 733994063 710179344 709709598 795156403 177006936 267503269 833050182 127810891 459037175 692614245 969498006 983543256 567951712 968040973 456603677 897830553 327503507 973039689 36323800 732992691 563566844 256956485 456754893 375185006 493288776 541911102 169594800 352874863 404308533 431184396 296182827 533611971 913300227 755114282 154368875 888130356 507531418 960703531 212759736 750138961 34372738 948600828 121030512 834747843 95103169 718361673 173374567 145331428 486174623 696412169 473040090 562684387 697232368 271854389 508387610 799570379 989853814 477089176 459179262 833745478 894848291 279224990 536800469 881706794 245357213 116111304 818755078 858748274 723466055 86094260 991157487 962810624 212343501 314166580 681859112 390294460 699214784 374311368 997454410 894187089 778511034 817891319 357751000 540330817 808346749 300913695 935930781 825689436 153571694 843078392 726252263 234758911 951946510 607626689 444183437 783424042 818967396 521309646 695018835 712630931 995484220 933717356 525686678 456357498 63940235 806878525 714214255 685402808 947909993 777707512 553392083 904195819 633311768 193081748 241125999 500585889 534943443 892211575 217083606 991443606 267710587 58429485 268175623 157272571 225206583 745532143 823407662 618891527 907275662 918818137 205542827 217168968 552323626 754593752 284035033 992544962 489737298 528877822 296042111 703067293 411560430 309373926 884452598 220745659 653453232 943009024 792614541 559870294 799630106 485075522 323107523 852075692 618556859 834156884 810943826 520576025 843887475 951109432 639322677 319955521 165794844 698856862 97118249 133824491 725495697 882124279 847693631 805826605 671257798 56150798 760311299 930239877 940094263 847661992 144599800 876328352 646966303 657711240 848587137 207710438 978687324 887643210 760426270 526701705 560959375 541271882 800606430 550971607 637206462 39196590 211089220 843380784 511697026 332957737 790678478 920909421 164894250 233087143 822236630 747468418 865590043 909830478 677970070 388847327 919891271 628406394 171752200 746295962 991850926 863514871 999849421 944934211 682675454 954378192 972644401 388441055 854675394 274513195 931228491 780960391 670989236 395516205 134197742 671570226 799101996 647909074 275655258 826757591 995347872 195829138 892585635 705298233 470351668 119951950 2912172 520785662 973814286 703318636 754347898 306061555 4901569 728483240 794964809 481687097 820954651 343342298 67673081 930094263 365193699 710961521 156220873 145787130 537142066 796829409 725305529 680767530 460778171 814196742 521191333 102938377 450454470 202765677 690744707 625892448 791042805 684957173 689562897 944487075 816805461 818114972 893927343 959375475 731707780 687785875 712870008 774223297 823279931 478448163 731105981 980182660 360242277 420848483 460169545 276486904 148854116 956573946 996111063 664603315 159334700 619014079 742372509 824169513 598779613 714902391 635440126 474647078 167402714 792960119 885353576 305067104 353026682 941217905 705064473 285565669 630998645 791767554 755238084 862106939 929580900 82828714 42915005 512684051 771267381 4175369 46038264 692112571 184086008 729535913 751699483 827886368 261889313 981201157 938964826 693910524 278952269 982396707 996557307 220271979 841162037 851811429 589355981 727272707 447289080 533929217 337541084 836533619 748697785 340625503 706656836 427271338 978304564 73975280 103104740 991539047 199660637 150738183 882753494 922510631 993746141 851904588 851658359 534058507 830265782 730724889 283252737 680602965 37214347 342700409 693872003 813472327 942840981 741851165 302847941 211033175 557321972 752570781 207356988 614630011 682060116 189981235 872504947 900768923 915067237 998801685 839965047 373647918 885349160 978830429 777743831 306741000 250131137 323301931 555285513 458573744 151750533 747311155 857082144 844068123 631623543 858027967 286683104 592796050 796682769 925055073 671015643 936815545 746976750 932621911 327355875 682955444 781521159 501625744 690636319 503938947 495247516 316674308 95626408 208841968 331971681 477520760 839005729 325713461 891243015 916008603 616573022 891181761 480060164 966027116 848978795 907550240 191037434 670989236 803725604 477601200 975471955 557030727 440533296 564833931 240576774 852119936 590772115 930324339 689209994 23356406 742936971 840746276 748978775 668069291 784145399 940316117 218816609 301138389 705702713 795691703 583449599 484457531 898254667 192025776 349966397 669991425 790417897 141321803 120458420 711484754 757388683 534195937 916200139 862148179 381228231 609922381 196031730 805865754 670989236 52815959 600016971 699970906 515459002 493606303 7408382 500170408 592756503 879272709 716884175 893198549 119922084 78496021 51732578 244144700 414759735 826383834 804027493 941338097 897483859 894557217 524864221 200762255 608909894 51418581 773414000 215766748 496346706 838838677 459924845 326989938 45486374 404166423 994928885 747293186 619324334 917155608 234500232 17554266 286958719 937700306 588228704 343860100 753257555 736019907 901353549 988252158 462883528 634425651 44258889 883742803 252650887 63350301 999182973 362144351 689698348 476817436 822717381 130605237 794065297 801045535 507382423 868202613 679133486 159204785 395178201 179847591 12021338 796721869 739449819 569190849 724479639 928157295 614973761 147792121 888158034 832300838 733067627 907049399 929121687 168363244 232130660 860927421 563839488 861586537 720893975 384460922 147150313 998122035 432265455 938932496 311673426 646478324 754096581 811216814 360044287 730600780 653100606 384296462 228645144 831801506 900977529 119318996 313602809 337905869 625633812 700307066 187861692 679307357 807059993 666027870 816507633 745665473 639093639 787080343 951185628 964090732 600291179 964982037 42484329 722932876 861517214 415236693 678197398 513856833 662334892 432875208 806881954 761416682 770982945 835168620 607129789 655628228 790821322 976104735 510869291 84556179 228879994 690145306 232810471 481824707 445113092 247096446 925178845 597579901 160648691 775685600 842073019 822712296 783201894 707547115 594020577 520653393 927601082 664899779 192765495 833402736 912097468 926129356 670989236 230068223 938361000 788501753 288467241 910192801 250181081 770654637 606587593 935317823 552928834 701349266 357712012 900408801 900886889 318299367 390207683 336150504 670989236 723604027 104465224 402966844 723527280 819556623 276704521 982939444 942761617 633205811 916023192 728050886 970423566 699140801 421999729 448116693 49749980 776244675 323551524 627257850 996705049 752754607 31042395 787728652 776274362 748668294 26530339 472152406 486373769 783873238 982151872 568504622 231211417 126380182 127177341 467411282 893390635 355940438 571365064 372572506 521201213 894167707 653223958 445463171 816167292 37584937 403353522 52000458 121090894 826636234 414882730 63727941 707275142 699920130 98363464 540542474 239552155 689826217 123534229 794024731 723600337 684977836 534008272 229513958 99285100 997303208 904105194 659181986 185518137 830168597 237393351 951329289 247677500 701610941 574370669 350570970 288705225 866042984 226142947 945864250 821815397 943542485 355231975 780293341 924540071 245771304 676486836 88414908 435266065 730374142 908835816 710361069 834160434 764050953 546259086 867572864 941719551 644752433 792157689 458369118 455350783 248015724 248237468 273199664 947582279 319085335 357455048 173558749 103240832 896417864 592115756 412813581 314167082 947263781 200472086 797452894 923681524 861744669 752347768 782562449 994494399 78175604 933529486 891043138 795625084 86198427 367038987 653472652 740513401 340501321 727597700 83497030 863930232 984024108 92839707 990719914 241494701 691693682 896111110 741603935 419071007 448147886 962466586 153411272 503920334 674165882 670150100 816407996 582275581 205555468 294549963 887809715 344834285 670989236 421901010 563640991 624963705 771843656 965017718 833200572 943235816 177302609 418925959 573436514 861542741 694810219 796817976 688512590 466234991 86939034 866970528 940110571 349305052 760216818 937834105 652730677 684837925 833638800 243740600 497874202 850253450 400612514 964106632 236525827 838810068 432356140 798856485 706227938 761186780 421743678 935077727 34207797 215248696 863501358 839904761 3574081 284270070 963239656 537508980 101037857 946457971 607940833 150142547 653017565 670989236 930375760 555708761 807622449 898109243 728185999 565813936 729426197 702044978 722833039 883328053 693940822 926031866 972584746 678912908 514363877 905854446 414220456 498869306 808641763 308350614 658017140 920839123 679574150 670989236 192558910 362691375 629404090 894108354 57775660 433834859 674613278 852877894 861284209 131535247 576743524 733556434 781723623 696163085 795548888 165004215 723401596 153203520 479801452 508852423 479187175 716933406 509066212 593691730 452510635 139174101 241454716 986915128 360871517 919193308 707369109 399395568 201585138 271124910 329775212 380177571 840259332 666838414 43349930 224360187 731634870 818930686 125640142 691474573 995468680 20118008 854407037 720691475 781964620 500019476 917640858 966280760 856293334 185755370 892705499 852569558 931791049 503273497 180591763 788760743 825266407 724380721 676365572 411362417 806214408 348876343 152575410 948509673 108191999 528916750 279050017 996112700 430389277 827821524 756531393 304217034 164626992 954339446 108594934 844632090 184419025 19516170 564431104 260548905 136579705 447693260 519886250 784360657 420686535 696106738 616626970 978461195 861496182 646401830 520986386 792084358 412520262 729445195 791812451 801973243 662549237 673444212 894060267 708317301 101439770 946375190 251062172 960320925 725021657 718644385 677554760 997713574 876384895 234203954 891768085 787793124 434239414 348361496 789358753 500334153 312038121 876670934 195931007 2345912 969363889 760830084 676683221 171745227 553338371 813415991 147224216 601056288 226835515 257551671 711851707 309167208 560282750 954848243 114569953 942867613 767857077 801198819 710101057 866733495 798101832 99616336 974266542 191065387 934818609 818687499 692864814 848941960 297032925 734793385 931178087 911025504 914569699 848363969 270872769 828049050 904449279 889146583 670989236 537193401 834687500 124548377 688052307 103299441 402358905 239938919 913162568 20671039 276064701 979267431 744834365 981245742 313006222 872278299 551873948 806566132 500532205 830820847 779669765 846110843 204385844 828810096 785061713 326274319 391785620 869222290 773000441 862683441 600232215 52423225 707399136 465136441 93315962 813303225 124707779 968229298 548642571 370834670 808035496 750566735 322035311 795154962 791739650 258841450 886762186 965755696 624447882 187564862 938176007 944055832 859849089 247283239 534601226 267990211 724915040 959805284 991874898 952541148 312878172 634099704 825191558 321564928 645853221 923501629 184722668 346579285 795340611 190107511 953311373 435989328 560462411 708366497 695486789 679678533 487758892 724924587 872115526 364953220 77045204 798190855 964855164 795602231 893774943 867369003 837793895 926081899 463210140 846951122 283347512 105961557 763738508 487440868 870625295 970976164 170206943 679237644 878918208 221148257 670989236 707929657 794619370 233854115 681952277 354366601 978344566 387977060 701697826 969197484 563700739 258599269 227035277 950686147 761983514 733981772 10820554 939908052 816904553 733159935 437770993 847886488 303301081 654259954 996150558 746392559 113217982 551823233 70145084 950962093 939129036 806175488 784041822 947048847 130787876 31058557 681876121 924985298 995097484 48072999 948913772 807519334 761589639 615179325 331722969 838822124 776943545 938510106 10593814 506083643 744068711 841975672 672779700 694047936 55349858 774707136 922115294 68446774 518290269 845913912 761099707 144306268 61047777 826050947 259509106 829679136 754330130 714706010 104266676 859484003 392337746 292086269 505992143 147828027 110641458 154503603 649811985 266894920 413150798 830420389 70768628 613959173 745697585 345816635 215360451 117455026 647226058 831629342 457374116 888853852 815136221 868014930 592372919 756756051 845064709 903117361 266391985 452870794 885994779 773233136 768091488 764794263 142685179 252025607 973146490 240865370 728779347 962648416 314922857 736773036 386095038 898953669 471401264 31649252 153147739 685788311 992479845 825558159 642107075 208348650 743476743 767631936 907037932 398900721 795639978 329245023 54119707 679314634 415428532 390996628 277301087 145503604 920069736 890645056 681973774 458174708 969115772 676271815 424248515 974247528 173011034 493806453 594704277 862417665 557655845 627135020 171498375 861641584 686678554 820892178 257525185 891738104 914734391 885791634 354646000 392714957 794756471 698227553 987835709 739469229 427204772 520241791 732349876 269968873 889980278 20989652 674891372 895315572 699439759 251055171 515090601 915863419 702534441 903421537 411333364 313252485 688529983 740018435 947213838 980448004 273424607 339980692 509842202 744517946 612225825 347504088 797454473 26241043 835339192 870015759 971402423 670317 859683226 787413316 749131012 848520731 414988114 839834793 752692384 887462629 155660426 800991130 915990451 275628495 285675040 570020981 168676532 788512309 681600721 674674905 340083588 547790239 505409823 772258438 585588872 362996157 743247698 911938948 936703313 450034540 700017704 965918325 670989236 743789250 835059357 705392938 111691877 512788082 904832502 794509114 746620036 96341339 919909214 896577584 302844997 340737836 850796357 303202971 490051825 898295629 994067580 707031987 570682541 86251542 759141347 395687552 686520655 947210690 965826005 490678089 901681973 175349395 494157910 728208125 791927561 85851806 837572458 695739215 773382821 571571588 702494946 856236839 510324082 831423066 381717629 178977823 694448727 903423033 735528373 780141942 780591599 682537169 3816944 864771822 875583354 862813039 659128835 942923683 672968282 843381269 388364885 670989236 73432349 686365495 638874088 900375611 966176755 834595493 856835415 756573991 887948678 911587906 309944684 934535981 671392166 879808407 861539259 691962617 778201069 65066341 958967714 643087085 286823296 862679019 339180146 8818274 803601760 995647148 247089185 975552606 981546053 976440286 299419655 825221745 120291185 840044868 919149501 951532890 490139889 682385305 784149549 887974474 871852687 917440605 902313230 813946192 847381825 188908482 915902187 228873935 960866843 890228730 752110804 993871248 7284412 614451454 89514607 78638539 138676240 963825685 481533949 58442235 715843390 394115783 132218705 524149854 689948254 741168956 369661632 924281195 342113938 743038955 410916312 635590733 670989236 924384000 871484221 444414931 377329282 126414539 793649130 944565736 369953717 759801981 320204791 190976337 76231175 282523242 884830648 110340237 681685419 921658013 988194819 539006204 928078485 107890892 922902455 526864665 812375713 375251341 63448322 597033935 698381349 823747451 291495516 590650440 505005826 526798576 778837027 816754965 850558410 247365904 17752829 758313557 825073429 782798126 732680395 837865569 869034416 414710408 310657470 132574903 728938253 928866211 854060952 400836923 574985282 630852609 392524404 980895068 54942591 691881548 883717206 286376595 805444295 989582139 798596175 607657279 311084808 901065636 953843989 700579323 596226519 970564463 745922407 407342450 545918057 964843762 759614237 776153067 911203447 961410985 153737610 961211967 829621856 731966348 544026842 142662150 308930089 128093618 130353480 702219701 802132431 812380056 995715467 708539873 222588149 838822901 846023009 109520279 336076228 918343380 988981027 599146733 295421180 7469212 803288874 964757610 799505556 672589063 765139885 880142265 957162843 522898014 778134300 668255394 902094753 657292352 894271677 834482770 63992387 311083432 159554984 154615478 583634577 552242662 978650509 250546690 890548601 488707210 152413816 707887962 412652414 751009075 837254664 558647282 152013943 243862683 693266849 693876503 376423019 825023268 874884123 785503702 758927956 679018426 944129332 672946306 774516520 597549945 859314257 746508757 963228261 511915583 51334907 926629804 119285183 331134446 578115610 479297525 494129702 563263156 387302706 695685194 182680873 855659169 993576811 701309469 811844823 682461229 517853947 714560673 917237427 705980084 693749779 624132392 410879115 45713294 301831685 905643222 135736342 310491066 777062075 409704754 531300634 398940387 864925036 719339682 680862090 67135856 408041395 849350096 505907403 852891280 792085979 917590454 521225648 367699154 538046407 872596010 20766603 885127901 536702917 765043484 181701583 132135116 921361380 690595940 398015067 810134682 994483717 163549736 37719649 940241820 755675987 664278853 963242867 303417381 712588099 861788402 727360175 684581906 30179155 812732123 903860538 574267325 707383554 946272163 431564443 54228142 911668099 887348587 789662483 714617591 873835236 269816556 882555941 963146668 374051026 862276442 655329254 11968366 188475196 959570990 52603554 48617092 769622663 448004770 54970183 886891725 127436269 847861505 564642741 612177144 69215468 85822344 494700344 16188676 594752298 127017381 447631787 733128681 637485803 962306491 672073902 765520082 286001863 205386219 529903604 998806298 317324177 775692085 50162998 282087869 699185272 481296422 282573786 894068559 723149430 814631135 904468512 917539834 891571781 970848171 766230529 696006574 802054946 965709950 244633982 986168951 832280322 992932713 218686128 314611005 470679451 817620180 336711425 875675940 522418713 560212114 374657620 985843989 763499562 403740295 901226205 925509359 90073432 492289096 289469704 722412939 606202727 518669839 92629134 883788328 712276195 107445010 660904865 990438610 851786085 597245904 582840229 232282243 831215614 880652964 679313433 719626610 876936436 603100845 308674881 747438060 224619494 802076433 897668011 670989236 110607999 944061774 820801212 862152691 78099194 87277702 748156075 669075107 872238427 785216531 670989236 514432615 174665301 948053458 837142080 96528859 717745271 630635447 852780113 875992747 867546718 197088109 923012827 879792849 860994941 338739203 912069657 849120591 918492466 323189332 316596297 727585678 277273764 838243658 794914263 798037086 829591614 258478920 5353319 764117868 828696932 939212742 166562475 908575085 602408091 438163810 787788062 686358526 822654486 938851463 169766913 765044611 521416059 27886646 379636682 536113256 232232580 772754223 874510403 869602480 863557759 728188985 799380730 191558904 839289075 699098766 402788134 943209726 772566446 876740703 274349379 825648574 691847745 864811232 90611857 837624268 885202261 845235805 996243469 720946102 810652992 607986867 325185282 131829552 466115784 655597738 399285129 172925253 18007246 15347750 455859660 342518084 949450736 971014396 699606283 514111819 978111847 335736881 887782052 463775763 263764723 820973447 323343057 965697967 56922590 143927574 311541701 72020384 995063639 338523466 861846100 407032610 750419324 309795614 929144250 16588767 209175252 481877202 845085999 887369949 791415500 135090015 730170220 226375709 510179034 371114078 924288752 459661660 785289689 475151294 977966517 495048114 762190121 108223158 144616142 323192729 477275341 301554788 255426907 723890248 621848345 804343333 727437038 392995588 52268750 934012422 823141591 178622095 952450443 255002447 893885178 817007091 233008878 217684758 822319218 684737400 709576669 655117540 243365730 912486267 318248765 844053589 526206511 849831778 802647748 845181369 388589350 673796113 722600484 991027452 2637828 624509055 452519563 963891216 648747195 240410867 150041504 222613129 965099374 685572075 816710243 883565511 870983388 353172974 516932590 792900953 807606326 411348354 670989236 229361978 933790864 421292218 221610070 809465503 568961486 856074139 377524525 790142582 823132069 828160021 637720594 770849579 255821133 518969286 65734901 960672432 919793443 826888436 666719472 374611659 50331511 604413540 51433825 665308654 845888772 853106873 774187068 750782009 683968295 689990291 781905487 760772395 479550805 55047564 853707535 994385361 661764742 363701578 49913101 686728100 867691741 909878632 908649586 721136691 728202513 380795481 181533186 62295728 543397530 624432287 278834951 643504338 107904215 189060094 186714026 813058942 743086398 763078641 821235924 355499751 864787854 750962518 150986640 441624568 945523433 595352887 942238568 703120868 539321445 123798095 776559874 104587290 988721329 506837073 823145832 715714509 230848902 501844571 684698917 867299741 986554016 952725197 58587141 779516711 355288665 673286003 877745163 833481898 282689803 969128427 364259998 303309062 5936286 760091649 231851910 785992889 648298085 118453033 173163196 976029257 848956137 780319534 201487620 946964272 335327547 764324492 928576674 478139194 974558588 22782464 935079495 185322638 923968908 105970881 189381165 393954963 881375771 737589588 760094319 345849259 198792784 662569989 433858677 957930067 704213125 661243620 159104764 426778746 875761292 926241706 500826798 649392680 823207424 933966671 920912578 45754559 835435409 859676502 470536282 60660156 750496577 525418725 297741207 928203642 342112412 72262057 808498851 871255811 670989236 279262105 898897229 961655365 806707349 678454016 826861218 594941303 462991432 93383585 929712004 579374174 421208472 276041917 745700064 710799337 3746374 13973614 753540229 914424704 209388120 931604710 437453079 299733548 210714580 772895961 787593724 722854507 128920341 8984397 816523972 859548683 302933383 583684829 880627397 38504116 76403118 161069986 700603567 974039502 125056891 740055369 898821624 912701714 764776727 757975824 355288685 329149014 274912668 761414672 192404857 254723237 376378152 553904973 946641066 367425355 710300353 948805138 125532739 616796437 543629303 431275924 815100361 947813937 338118779 771923558 267226546 663347082 458152354 887609383 638858524 154709444 793082259 709537868 939431468 524642490 744625306 208858889 416703613 996984913 771660978 110562800 62412796 664800129 108747117 937878637 99277250 710753256 320717181 937479628 762755738 330365456 884155410 762609632 347828617 832233702 318949244 684045680 788316416 835069405 881194372 851713265 846301185 730726398 783139583 825485400 776891067 162544681 382328619 893389029 246959754 63803757 308699475 375428602 216004783 802646823 432438094 670989236 502238016 227266768 908888901 877759554 181576392 937603677 312191959 896253268 761757234 619839437 357031891 566720241 337278939 783382310 869998393 419015832 899110529 792999210 120355944 455608186 929017620 671501999 938574728 160114568 296032103 371900397 691500823 15963257 135239886 494061184 608151714 161262457 670989236 826232003 462104720 894437530 643874571 306225240 984824866 996967396 699294500 800495882 861724378 948020846 933580177 274660114 614070871 153456796 505761611 292201363 674313426 506488271 838946371 280603137 967919082 449530947 581225756 803030977 205560947 601894505 32917038 937691503 652769195 386704879 222378364 961422996 822435362 777750113 191762970 813060748 924050093 283286077 774040298 965969696 349843187 598221460 433095228 678018393 56795368 715734402 616834095 927642839 471205040 924920998 226342466 778901804 798443725 972185912 667743132 829817974 442767529 58829069 58351386 738934661 490571334 98023284 452432330 679364099 885896412 106664226 368172314 610918894 588089403 823733601 512741661 673735430 7865267 785594925 41718508 142022407 446100773 719968557 389259161 902277680 677577818 46914430 110237527 665641050 901193414 830766568 283150564 790387919 707798168 577942980 520002289 128746092 87331269 288468525 365051716 648520745 545456749 410819320 156731306 620361057 44985388 865337508 887367961 879033543 997477105 248226815 137863464 719822461 547698194 140851969 420522518 998167617 999197553 828062861 479251716 266417279 90728907 499613949 568618811 947761701 812578253 284901200 452452100 763308077 884510366 681733752 676877502 834982657 158718531 321392791 906215070 180109056 776511452 706106049 933434043 173383058 809281228 765214387 21364477 439126551 69686896 879620550 811902153 606569606 983262207 55971513 246242359 181291798 738661891 841436973 749089784 742556389 921548096 784760002 726903328 502517823 994271324 483899384 35902738 714434050 100536910 547173027 867955836 29059898 983325234 398842097 541249207 896151238 769293534 917443117 854607884 590499349 705871787 567444037 57710502 636616699 783492318 845228576 646817883 935128297 797465316 563248214 249951068 723762345 875871057 194293333 961982185 485189385 948567239 700913988 869190652 884932569 284577004 798807868 868220899 677512069 547824088 975271771 180673660 93166273 750582400 248240630 768150876 672098004 382926795 738784136 74576927 571490323 444851919 539025161 162448592 683011560 791477840 95835635 946693825 583623584 610597866 711538007 757508293 715268004 986148086 208102385 333175969 337598904 202599802 165498929 746942615 220114201 892933638 667357806 488357869 918351591 967285175 233281373 928337118 982227917 690491508 897708766 55799408 621473995 690268359 317635159 503532651 483340634 222683525 963045320 591309592 417371354 782261668 245171304 177994544 538644125 581195274 834761345 308545529 711588552 964546614 902340815 736737097 790283013 997077304 452054707 107094942 12346367 221420445 984239775 410620030 509834138 130262074 944509144 691798094 336179318 848132455 784851338 391608269 900162843 744561647 901688380 905786054 967925997 775637986 18223982 814560830 682102270 201590196 701683140 364090767 925719870 966853282 965429058 131179430 827995068 272555306 839765241 29552915 487019911 176911658 999369662 758615245 856884605 593553361 949323718 625352711 947286195 876775167 318459886 913171324 680226959 886056976 958343053 529007846 832481357 629968435 319236477 837687 430858291 676537428 731095179 277805376 820807122 283509509 13079788 111501213 797850046 839599948 946787993 696885764 819148326 931626465 792069395 575751949 195330234 538691673 490511634 423146450 927829864 960923330 827979474 142339157 975237394 197628933 743354308 799472298 537537534 883189787 287221898 924566193 718109947 494924710 95588896 693617797 696831125 951390518 515969725 761116510 894197438 369699990 848460486 112000293 915367095 579259473 715167356 651780467 721565133 916298994 365019075 620600069 758389725 975172327 181364369 222356037 792482376 39523454 351144551 781039740 898159453 744183515 121134053 988099734 800680551 941567761 998635591 797396825 574252322 404182451 722176791 174156012 842516665 706698573 297541748 696334307 37618452 794240216 962433712 804533997 696935238 177594816 823595179 636163065 909472373 856798910 428933025 967325592 994305419 788557609 308338729 677084233 633929269 771873097 754533907 289513312 280550064 339229016 793043246 440401741 670989236 200246289 762754122 740907389 218652266 872421471 809215855 287373878 881453133 479121715 285721919 732646281 662907791 240480073 985697197 894325169 44871253 158627103 867336890 229946471 687834926 481802805 873615131 84331129 732665907 690043919 45694306 727997777 705466974 670989236 860506431 44864512 168007601 711315797 865804654 887227140 300304127 928371670 974267475 139964429 242750846 933570941 811640410 955595521 894932928 838139983 719494140 551524046 765195439 385946901 903119292 840898280 977145816 462085178 450079655 445257296 216408938 670989236 276328900 700410303 376233309 919150031 131090255 310170686 767782464 962408895 519960499 160494113 560184660 833933327 461715363 912291469 918545305 713591559 547947278 670989236 113282225 421221578 24763491 830473959 803990505 680041178 239842683 874139684 442992102 134023361 405016353 868085556 868436013 518236650 711731116 387700632 359264405 671050637 314546684 814971518 293210316 262062968 976267136 300343188 676594290 986323488 501790933 80426136 924945752 885021455 750872791 682888629 347189799 740972389 723416999 974260489 666362458 189676830 662266321 964913305 40216344 415089482 210783857 566760777 520417693 574230711 975036429 914245241 914680432 614487549 756448181 918934081 410445006 360179279 806915456 851517750 315590290 434708407 213163596 703891250 827018538 318824810 682504121 152096892 741532041 493256178 565569487 419314011 866798869 30317268 729454869 531741894 43549114 104248320 836601368 860484514 749407988 979263478 853769196 61911477 983872468 732599109 261658435 329305121 263704664 916445960 972711077 946405319 693666233 989285193 952464248 892305057 10108446 177816778 70646966 864716082 698699403 992185235 95151314 865478564 575897047 916446588 920246778 991625509 756134581 86195298 492382191 477428676 505635183 590474700 670989236 462072984 677483189 328251862 548523013 938370889 919389030 587685527 719134578 862142006 938226402 586944918 335549999 825645944 228371184 775674435 922824581 973611116 346699412 819176349 833871500 793949641 756620491 915901256 608551502 650898607 834119113 880727337 549302149 361395177 826739474 940878274 963177767 666955736 907916772 676512308 34541206 592995514 853397006 314112715 670989236 976879863 370796335 722023291 490166464 10541172 49081571 770484483 638955414 956426622 457099652 927751369 368964369 233184138 793940029 199018155 499644065 997618718 402306998 243191116 678483836 926085895 878876991 685944310 947755877 843552709 535656966 988664628 761191227 920714213 989039380 956249513 246392467 962222456 457568660 853063671 19146947 61927522 804559601 875749657 759418417 154321689 842557248 689377836 629228129 931834140 129818513 840106878 599684017 356671445 749745556 580866225 451399527 54036003 788849134 63217594 221194861 474846329 337372432 329751640 945351943 921940444 38717748 882440281 926370228 756484896 878582259 759947302 156335398 764927136 485161015 80680426 670989236 713114078 805816759 626037466 58680485 752471245 264347081 851054438 971219580 401607571 891202952 680819867 507020278 367368873 838263611 821982029 786459661 884905384 447502488 940897622 951986640 239896587 349199934 514334116 404187371 418935814 473357330 667567891 919862172 770927378 794843725 828428929 669349196 649217090 487048106 248359560 918692729 611528320 785735241 934309969 957340914 642362475 430859421 695785916 851201721 697805641 376654486 310055999 916324484 969800441 847369597 410974791 581519936 921262883 190105823 685970596 670989236 138994099 912403337 916201987 285316723 804509698 996476287 688407568 759419532 734259742 616372984 519861067 668119153 234806214 538691762 873824040 979132091 905114052 94945022 899436387 974696523 958788504 407174083 799445930 792795986 299525226 693518401 678561174 910390925 475368913 401369086 798146326 576231261 324488898 850461653 792055171 949624849 116070237 240758858 775358383 184237954 860236125 128675981 883101484 704996883 186632149 950173765 720335034 792861651 274527394 720218189 142800748 880771155 249814813 641986684 18440531 343787930 957958436 44033329 333917624 841935778 681008858 813143067 703024074 206584614 709048824 693371476 687002224 802940369 275773137 859391941 190757962 109668956 143552216 640595186 724106372 306386223 663585818 220670049 471132287 242418267 505865567 562441254 90254237 674853452 754775810 451408434 923295836 371130005 889011271 275253353 277694162 218834513 584907091 560553359 976088321 188666078 833391108 546579919 995470869 118741579 956492845 402981078 766258016 729172898 602295202 230226033 695257231 717552627 907716625 141633232 467996546 414718882 549484644 621825019 973960699 229865669 657507925 849450974 986360038 83171151 447961723 667679006 243237531 946992582 670989236 617984485 860775716 995191540 596297835 615566247 714795856 804869044 982793213 69207893 621655205 944123416 859109610 864437759 57119268 899030494 598080715 309305190 541602625 838393960 852637905 411117291 565524941 333991708 491825228 212626885 958795981 980178701 95292477 427624124 944908773 97677604 278399465 866098694 814911962 507954975 520647008 218477436 689834736 749359425 136665359 12741861 348093806 943840195 896075980 325168600 413421999 738960805 940171518 933110824 878154783 137455293 389633703 866958821 828129649 716732451 10707467 359931593 294906149 847791541 391339616 701260693 863871140 123714209 344789742 797057189 935095767 238216507 826743463 698804532 258050430 572670719 756150229 131507212 405445613 556842964 756818117 288219330 769088660 139214923 767296714 269640820 351516561 257785500 121482861 213775507 71163629 618551543 279047587 147257591 967872394 43178620 671762799 453952807 670989236 633653459 466147 923823059 759904891 509434308 852775135 899800656 388875020 272150370 238866135 175483052 558260064 797513471 762156655 567786661 32450720 675123066 605674998 819129133 726072637 710027579 645174889 830352786 705150558 746072712 982578994 346844454 197646181 747714188 908361746 674713242 501909506 741028307 444646240 935769469 998454092 847816292 588155773 896604304 468717084 391771573 947193661 860305164 261693313 571790348 723473693 706398503 669572842 127664070 745997355 238698239 21459426 718301514 16826333 736012839 781510085 759680746 528478763 304895235 905740989 757988752 742928450 857094461 818265122 916874428 799157885 398433864 319289499 39625856 663436880 829721503 707007076 754218539 612659044 775436388 111775622 949734534 368137383 812677604 999673796 417483969 918919618 542527055 763424504 441409892 101240106 705376573 716873500 748452475 261559981 848092127 868701913 687672428 818991507 821037960 946844108 59369345 737354832 789470179 753459828 345970863 284360658 678766996 394285142 674451345 266128845 658313241 575684061 86547925 609475530 914266709 970402118 335446782 549670949 168729544 898941946 562398176 717190096 822457345 416577894 757301754 670989236 762738645 876666589 774392385 384560695 263360181 224494190 670989236 390974344 935409489 769402136 890649768 881679033 912538019 574952294 974749216 792067627 267438572 618926442 503408724 154873201 300539852 976131160 845303082 741425395 999982886 799049263 815065204 110289746 519740489 16110360 116714092 42142404 776748679 808300356 350921724 877659337 976626765 734749254 277032732 603367367 725003746 787646245 947109888 960919967 961460069 102018781 429976942 893238660 803229710 996882295 448286103 862239490 825251088 66727673 766290024 764022698 775060682 99844418 360297856 835598106 844658078 931509696 775222547 415710943 702671201 442526938 847246661 171469722 984566364 903461897 921940223 508892368 947589200 14042798 334002231 756820181 685351413 27356825 232765495 700964468 244990432 960296708 716965061 721561132 31544 733319456 902423652 481738589 155893066 804779219 998000820 790255238 188345709 843483293 591746014 872386369 473619630 354047351 894333949 205384698 47694799 363254706 479614680 965151256 897507111 948117369 660636902 273757738 60687306 617390349 335241422 935524887 881304026 940916307 618120532 699474845 909459393 661381709 209963659 47135811 235196558 936149960 503233792 581857908 461273661 732256222 669102744 863058226 894677373 302874829 786629621 953833555 359715209 773546426 919077922 967288532 292080160 333810170 820893429 840402525 961086152 869584755 728526855 214671103 718843154 509280505 510650325 640708148 106335208 680069958 782809615 675641314 920601354 719890558 653649581 673027913 933665681 659140836 262006904 684601032 959009330 54622991 850065749 646636195 455477433 700037071 682475465 956022319 966554316 196804654 259571145 826641215 715043771 401826512 69283762 767823363 437813727 944630651 712530639 839438029 96863846 765136940 876874975 326452350 896677659 725209135 157658102 949360026 97880702 404244355 547943348 793358211 721237497 844625369 81907027 528915527 707886536 293183374 946498774 194762380 929679725 606948233 1102475 768720319 728027952 116690504 978578160 521390640 527442711 677977566 815650023 795094528 196397174 217157496 540942785 496780634 737804436 612200750 338341038 901814925 90455816 819616388 935725067 355353781 242926171 911252795 906838591 381219421 823770703 757452047 882358666 192170506 235222850 930844455 702984282 611169550 44123127 452383169 94137657 142775172 301757352 936053235 930350882 738416956 234545341 767290094 704405362 192027028 953361169 962831740 934036009 804253026 401067947 290073205 698351857 701080493 876662278 808683169 934434271 45205235 933445632 771223213 493623926 689430212 81738615 808403761 966330465 853389749 38149846 720572458 839387067 707699806 749608962 832189128 226628133 827904926 201157041 878168515 23261757 183713936 964859538 150967384 303854253 954810927 889506183 727325339 539027741 282546290 735478999 725699961 701844915 970106120 179467011 724205106 54084888 74147616 493066194 440951523 510986174 41680555 602094694 861097204 907824737 452365913 515920470 585014401 578207734 713023811 859020061 948500383 918016178 572252343 996530857 421296817 869752156 850613353 752273551 701706277 87536400 993816366 94436580 804933005 670989236 980671787 942431171 291791910 654689779 678333728 185281055 130092309 725045482 913783966 56447026 972316886 421884554 885094810 233639931 963623587 587331748 589547407 772448916 881957826 173986255 692089974 864613267 824764005 843460717 979596405 840124903 435456056 658179344 186312001 618215129 698151872 597797275 999225332 951292321 986771556 191031730 376735196 69982197 964305607 417347867 412208870 135787430 887844317 597350358 670989236 762700395 167484952 904621693 838035124 386638844 991967894 694388699 223175057 17765185 321356925 620369492 984417997 159449672 868443971 363858509 491424942 759025157 888806836 985190239 982000647 298838619 917186670 998674587 768499373 401499049 641454595 948002945 189818139 852528056 802039095 874085678 559888075 248554306 609183991 667495475 751979463 272631269 264465461 198885001 932219705 280978724 413642870 550916699 879437518 88877744 638751942 722798430 721640562 449183244 932636575 971300989 169498943 989512700 848962911 616342844 735473687 110952576 942937503 953572577 189284674 232671434 203483521 809144808 990877186 219116022 364813131 843185864 920335932 607899068 492591137 673499833 949716695 731180906 717401658 372797930 190000383 681481490 688225590 348580424 895184367 818619094 822511135 914417177 573366900 821486596 535583745 554507405 587009929 683626969 128251317 234749526 323036351 679576442 704782951 969684823 772669156 10604642 319919566 414273844 867319097 592356063 802165275 605222340 758521963 869038561 403984856 351286516 969280481 322976161 88841959 357344120 698752020 977967235 235521628 223254283 916571930 744226052 431154374 803082887 286352947 482244705 688360086 951634680 452815342 538123537 951276247 727321265 353105277 66110088 835450674 678438165 535030819 612649953 697227462 602486519 688206793 108753328 566208073 343365995 676532921 328217419 361096544 185999636 301823358 379834752 703867765 923303658 895018633 403136221 521191148 934787550 717513889 762699840 381238347 737076574 820194501 683781594 447809510 673366789 799760281 54137905 876106596 429762474 200809994 875005080 412480929 897238083 218286705 698434976 547595044 919836092 370824089 599004391 555495846 854792386 47089746 978822648 774365899 995108940 164212086 383899695 985351770 398292347 952033942 442010902 722842268 125602464 843242866 244103490 688745098 926795736 904654494 555109161 614849432 144249706 908395955 743326642 769729699 713423776 575854766 732626699 826934235 817064037 591927964 658001346 471102160 451720155 16361113 86631696 400172103 677737190 970378494 674076954 934515667 114075300 711362337 872511890 40903802 911775054 511700821 296065376 522010423 468368053 66543336 999668094 29071054 725762133 791854781 397105311 170105751 986791393 640008787 331584654 59473771 607157927 770134431 954222247 730985974 815226708 45297887 708005657 187408413 998107870 195267455 842181807 452892518 733744996 1726943 157881162 220212172 697923818 827101148 488298588 902885012 967998513 891173008 920706089 937713331 221009946 897037433 886817362 286752428 989249869 763605425 994012024 866810796 932077082 275917921 670989236 94512844 648263640 431329237 534821328 611259894 848743169 99976748 786458023 950941952 675782467 970204342 790570531 527479841 46163628 811319572 537275819 14701563 631154148 718508201 518291909 365465656 662999002 951969148 238027342 500668155 927998742 678368010 634850105 432615458 428703515 659419729 677789826 1342801 794597101 594537319 728779148 971570537 910340167 312758916 534840163 594761073 505862765 145278583 849675712 626281484 395719220 713462855 928798894 737163446 711058857 517442690 365514996 298279244 425813556 304565625 641117837 671684053 426991153 774919145 783644134 963505039 434370810 158763185 988495214 40129769 574199322 294875218 636066300 928873419 864952818 159579224 972716411 812654214 339080518 533547545 444956779 594520817 580772855 492212576 710631726 846389099 7690591 49142676 177074446 460741344 773573163 622397526 77166111 794198711 359014688 100122873 864453448 871950243 992453223 772594358 360553970 52431157 968721158 966695069 867333792 962953694 736295628 376802672 764125245 954928941 805484768 880874132 784404833 798080178 507324913 106445701 950923354 909308876 892817806 670989236 823961500 526683171 774106388 767003665 76490030 807101823 258746459 957292590 543640832 778584674 365221861 904202468 587184580 740807903 906839335 607243353 138872840 53236874 642740630 242219715 728007444 724448705 325239298 97521204 425546222 670989236 811253788 347688695 895465987 354984291 770868437 705076189 104021502 376458505 787655887 725329434 739714650 327576368 513495301 885967461 730206393 787044478 1612475 685378897 398418208 750009084 460911133 908851834 882125029 459998885 876735708 656300362 662754360 975602444 867448263 642143453 763075619 560322539 704953387 15321188 692711202 569247621 700295593 43498239 998121354 207242688 402915969 124524515 499018324 926148463 345848898 680501709 942799291 734250176 495764193 536612726 136643043 869568060 797748238 714858789 576739340 602921769 687170474 368564993 633665013 794372751 766237094 937150671 476580043 770256573 77585909 467644487 231836527 814819654 380767316 675176232 654624430 826978057 535504551 792363990 685883592 816438990 858026567 871561850 713007551 421198885 499827723 970386538 460427589 959637052 825595416 143532147 676518392 135974001 936193683 670989236 265866710 85272659 131432931 338381967 672245888 939320977 48032257 791616419 258019477 450535110 890916848 896636779 939291364 623605690 184519514 851736740 670989236 851026648 384871765 567215475 844926371 979742508 699805240 709794575 624810309 192468640 538568021 190899600 906145871 820751268 4421145 937611401 23078980 928374742 114592335 883424959 896693434 778205498 260642740 357647497 926715787 841197246 86820012 36839960 775318715 805684553 934908620 338992888 43106921 68322055 882881163 289327001 882590428 248346517 931617303 244300214 557471493 168727641 804249892 699449070 218742035 808230346 927302272 11013603 866234647 670989236 450079854 872142340 956177118 144134681 796462013 31301356 889114728 690410956 343412590 788785472 870176596 856124305 893927898 99332504 829157255 883327886 664734774 189044456 261712006 689592139 760734552 655702511 732070013 384431560 694851324 742457127 169489295 303012256 502155728 769894977 309481677 90180274 3875172 173004577 741544960 815356079 786226084 805474634 670989236 851882890 983634608 160965941 635875589 777714768 75402445 960042020 276495137 987891341 753371520 894892005 728127551 789126979 552783241 209614333 601786864 329268738 627996720 676475281 389967280 3902311 774699424 298758665 868863683 978787138 894465912 758021124 499412331 651363146 218353752 269994733 147748100 904552886 763832630 977909773 703958880 41588962 650771928 832570634 723010830 322592656 938789887 811105656 841557722 728725583 329551153 162471304 596120867 983833215 174577161 670989236 739298483 324372966 588172213 860422111 908441140 754917680 700350958 27660998 393584822 695958985 303925527 166305640 921778761 185860347 884993501 673199398 853411315 545910683 879006569 581473367 185474212 791711043 798571718 836980162 904603148 984993683 593439798 61546542 401452846 740714937 689566132 492803533 937871538 445027517 477495622 54029224 700493262 564969581 740676226 735215577 191293982 966709535 704638833 979652311 105253991 135584392 683058283 103756126 938516640 686299628 947739171 832332358 404471950 126316006 891235234 747572685 234650448 486025994 590280553 721585860 353497605 5861091 905810835 848736610 3106432 656998099 975464645 770353090 662843274 465079219 121140199 905063163 578496136 927073414 949705787 894385699 949310724 473119334 908288217 67843084 513323999 655811823 828715942 478029514 921929395 379165173 938024818 42349428 360138946 601253136 629062460 670989236 739473767 168135704 645006591 454769324 580273432 342749517 237203124 985884843 779860246 809314119 711155700 683501055 121866448 475822373 909838028 670989236 841118033 449675319 374797671 872747891 567877197 871775156 921519126 344952237 860780477 697768477 843493525 572201866 423787316 321524273 143123404 467014807 399276968 221877028 843502142 792586784 76773369 948553594 72530850 651308958 632373006 34954154 670989236 95834611 455727733 785539956 64447033 550623077 284777067 92322427 793028338 348938944 602773834 573768775 642989675 711568680 630339157 689140193 737288873 218054159 991605136 788523297 416351072 620603134 674232010 135953319 681326141 151811708 868996273 422691181 624856931 978338354 919927555 701220104 848670172 823944914 824541787 506064424 284370448 895306059 475228471 777137005 84673585 965078827 936631137 468748164 837341434 138458931 331206561 278631737 254139494 753465735 650390690 517779594 911693767 670989236 294587045 441537818 85583765 313387019 773506868 782249304 689944699 931382318 147568215 757082108 200855073 915448931 922303341 545538239 801226298 167302448 136578047 763025404 189964772 896782965 866755969 173371978 777380538 802507981 745846624 780935232 824452050 173166351 783237015 893414181 851484642 919324577 460100302 855100334 713378292 663594801 123878168 955990075 705820395 59727056 704485819 305804746 908533178 946328445 450707073 942947728 479853173 846051132 879013468 624042277 244132605 966739524 87883921 587330764 52367181 843224889 316215788 699853257 571235385 244371996 391402693 27441187 729936382 271865907 868455883 776511453 841032324 899693376 508485780 770885634 184893336 67384270 254757896 697252473 168478859 744872783 678434304 938926220 659645444 691969310 990502959 583487998 13673305 887832696 852145352 129616937 187715984 327545133 537481459 469277733 41544624 771768442 273756308 956317025 399674190 926306479 118827031 736107914 556331 702728243 97987685 636946767 468788290 727609673 920307330 505745041 220839751 685058313 245437571 99327777 732386774 663906072 950622339 156903307 172865991 101213240 921356319 371213189 49835684 372552036 805168820 984119163 817337019 913559984 959832211 189434487 740626125 480053058 805241642 826749187 751353891 879208385 134386093 899488131 287478057 736159247 602056652 891972928 291003806 673129149 418211102 721908924 471494653 852510885 871298413 785379344 517248496 314820151 435176487 119877104 104707284 620638366 936704788 125891220 558131746 689039540 558618051 773462543 610892269 719734330 624263566 909451776 298065264 760223715 57149750 602328522 784069943 440203242 575620125 867113952 759430392 976672648 533874242 939727282 877000727 675129988 961722017 940950044 881863362 794362990 316823915 607952027 325021444 26982375 413644221 929304713 671919936 964927929 468019475 768793700 715867248 420416648 958814867 379943195 179396304 916764504 959051709 721044834 458595570 760013858 370580430 877934140 813205590 254242046 461482252 339502142 953693665 582956280 193104932 50278958 868485150 461017568 73515282 14888139 602113064 817816782 774607833 700462995 433924344 630966065 699408425 618239101 427096987 869594962 798756505 328976774 242121684 884946868 670989236 578452581 440528723 15732886 265202988 304559615 765551141 844492573 720992510 842368178 726165529 43629146 323722547 387992019 46829744 10880945 971032469 113082578 389540671 681965024 709279340 757191667 685918248 54266725 412237285 519086166 734638891 738308937 64276664 453672427 388171616 278117112 854198440 391298444 439308522 986234193 747083525 838277574 935260531 619337764 355273376 752057578 974464069 403628859 707336923 758550401 105852907 935559082 81810199 562205368 815388372 889810591 947604975 737251095 161976757 697719842 812457754 775851365 837524332 15143336 369191893 290377029 923334527 670989236 239813739 196705621 914398889 982760654 938151454 339725515 763066963 52931759 104801647 814027258 789093679 890440422 36909591 34699008 846287096 676376450 763430826 531685278 815536100 845418133 872923097 907037081 414888515 264587320 528317637 396868167 430934668 216173290 928168619 645696931 783044178 997511905 685805430 976248506 368808963 719741005 855648820 413124577 88471985 352938131 810404615 91995168 935267214 967661226 496516789 55610865 689944940 696199837 949681461 751183693 31596258 886238527 849021508 186358437 661460595 313901015 882735705 864716735 932587368 823144696 808523713 638523252 837172415 410513797 771955870 373124290 652021319 712265661 995520823 204505273 663673949 283585315 55891159 151064633 954715336 865324507 575743006 681812453 271497807 902706513 998083826 511583913 499916607 288076945 80980216 508537244 780422975 858755060 357402335 410291763 692312421 929935190 704103462 278859856 220038054 983539307 253697687 707280102 630521320 319259942 823934263 731306055 789793562 868632913 709837800 670989236 858718483 330924605 693021653 674393352 670989236 511856321 583587469 785921102 909964594 30427413 403858732 389715770 447542661 561266193 777713148 682891380 830374508 951941462 875912986 332649764 787088913 607367280 667922894 326773281 574560756 800269963 384316551 437392995 405396150 673752969 707821181 600149637 528060804 537651268 796988906 745938702 193446273 809628146 866052271 852529149 878186315 871112674 10410574 307931865 732701511 964861029 539378488 604345497 803462260 683672415 265249386 540171674 787447037 467923780 670989236 334914425 711116926 965499971 196207822 710539946 191786708 723194060 151018875 228068557 84070811 952659115 728106563 842529454 974316556 701465205 951795251 881602779 479660608 890837166 802674227 827939034 434780179 837133079 808027757 874920659 893990600 81990150 973491915 747456518 708644895 929597033 478930621 325661026 990965989 986416715 377510821 983572881 915807757 273840906 6530298 867411196 104933851 818224067 591126236 870623826 247131447 453484899 994170289 494227394 995973560 3918035 321218717 625133747 748244209 904273603 452065151 841661322 37203088 648250964 670989236 806404660 998927272 690167274 404675585 166863490 128105319 793788229 481080774 341195035 24638475 66651077 900660635 885942230 355920567 749284046 428885788 392734211 785569818 557906170 233564719 876500583 693182028 216367211 25288637 823979835 13072447 670989236 736062919 465422045 897436609 662178351 387859324 793441598 596208355 448644251 168577987 712354768 691937183 920447509 517762671 734290103 808625072 798230095 211704374 225050238 986942015 990053178 376794673 94805147 949507717 893198699 467368605 40573848 43072048 545490362 670989236 357809676 988415136 549440554 400368512 847091153 822581903 579573444 887409336 832489942 725982597 931690456 778534995 223232387 567358614 986737948 784996647 26139635 839895463 492429804 826057221 115929960 721108064 617223375 419221860 645799257 743439277 851542334 936993688 965904737 525105050 487805337 995131068 15395758 671155627 934913435 879291995 520134877 913020730 410933329 888322942 892998318 813914666 862199400 921584480 667629117 523857071 176755099 803741816 237572064 445978171 506930724 945160155 41801761 690038738 50808627 286110050 555402556 475020117 230579348 232055140 597914013 837634410 690497187 151905339 670989236 118333088 598902817 815692985 437085423 292331293 229535393 734736412 677584840 558649272 922372222 410206171 769284029 959733191 93913382 170653881 757751698 725813773 516151784 704593037 629868556 891634348 942737373 338136217 528126601 128540496 671361123 779529094 168379432 400725741 889111570 679340059 804949633 801329260 786525450 974966506 988372636 912070382 869570098 778877689 930895796 736685753 773869601 679985333 246082059 28658160 677080292 775824239 987695811 532399169 980974646 122922497 245221473 105876344 495817758 192258458 400820760 853629203 841711289 351339269 592959017 205894323 420083779 752615503 672950656 747434198 569392588 553398819 368498223 427310627 738334278 530919422 792787930 908273230 666026619 853574341 943287578 402345062 701007382 597566093 226622868 95906194 5933637 398712614 681253967 732549763 692767248 823541592 686131863 729606325 631576837 30035978 893734520 88075545 723016549 897051866 456336677 829636188 976835983 687365837 711192037 7901440 146764308 73572254 10942077 171445381 945203629 409258385 384522134 756567172 467829671 966125610 620440577 51605718 120731510 328658787 870323087 968645806 685181034 907431236 734343124 533491140 737973063 848244182 391488593 439304566 833621237 739527022 734902198 490453808 742056865 574257133 707103547 918227206 606630142 483552352 102074051 275394586 257906047 126008143 219600097 810583374 943188007 698597886 345030162 781304620 30862272 944024452 855070985 379987597 535270488 673728290 100485981 720408846 493556780 829524736 803333193 117529192 854460012 819979522 194331729 135683311 860367425 500264523 353528669 49298472 672728782 744921813 746047071 998606156 950711255 869474823 847676112 261436346 124093354 923810304 313643234 932939658 645730810 945395685 732072739 649847716 509797984 621709647 876626388 116785246 550809712 328741100 999796462 400932096 731331586 531030327 214799462 758005431 123890774 388381702 930289959 365371476 821607677 959371428 405309917 454503569 998594601 189634958 204093565 395971009 931818678 968775643 692547926 637577143 391007601 650250857 86664311 900556866 566451774 623644674 973971952 712071532 263957471 774921827 862664016 121887447 686848136 160161351 933470869 909597139 940595401 661358963 910007669 186830758 376216476 49600399 45547585 781243002 957524052 846340834 608197956 770219823 17161839 236521557 918707394 545029238 588553839 950085246 773470256 698372719 789634678 809980410 359183246 957457733 172029855 696301887 680408664 942464474 789999880 996414687 700467385 130125926 955853372 987995479 107602101 829439782 569322250 932668969 831062535 592029837 279847231 95984254 932185702 337631255 186832599 656336332 868077556 264279647 753335304 842343252 725208228 341522735 100657206 819663347 611598360 704270327 767323913 825412468 980436868 891084420 77353593 81021250 872827868 723388659 499312613 342742569 275961701 914004355 571330319 635208494 702853579 572863623 171005704 591671719 830150800 779193400 851910734 552696581 907243809 67993087 987638116 693996172 759053776 725978914 473142639 508763900 670989236 397159886 45456729 964622759 904041761 8050226 152195435 745115323 736351114 808963384 763637702 746540376 26242519 267047020 28063013 665793780 794941593 710467046 718106577 39464186 125730707 473902354 714532924 194220982 941758743 805539977 692027345 775340938 211208257 791188038 216398932 774280394 705395468 737553891 283646273 523017841 639396098 316631746 980652241 713891924 935887266 116565834 436222964 772417006 843294906 712711452 328294752 511277970 594560716 255624700 806674056 990360423 919177014 997703296 19336417 399609120 754598828 839024030 787112340 877398837 84395566 736608847 22167948 986630522 881514489 302956991 867743032 76935042 760919720 847757871 387672713 226675829 417065372 735599629 711708323 165263597 847295170 202136075 770442507 673291050 409291728 818943390 789596539 7867286 771431010 669018927 664831128 512972054 825621046 271407602 867021855 299016471 860308391 670989236 944867909 67208768 644716435 981051641 999303047 670989236 698727891 939628888 783141868 237517672 39683147 367347877 213944076 999499916 910923831 437807744 170616430 797946202 519650139 857620152 602012534 37356403 117094698 817814888 889675803 603949866 717602193 179695215 850967408 783943693 524416189 9668480 670989236 698870498 916690003 913300376 95532232 199478000 406693558 683555966 455102328 574362464 332420548 896233170 238732539 614321363 289250855 808601760 357132020 700210956 743127726 54045422 715793689 559751888 748734001 372671225 843359815 900296769 568158574 866400121 426075562 467643070 606273319 773770171 817714390 95866002 811687138 814489903 918388209 887615766 240053496 292310990 73802074 822874469 885916540 803614191 73678922 238006465 780333740 873366783 461940421 31787102 589991621 16622916 233719339 690498019 412649126 911017604 518680106 834264557 980485666 717960406 191050865 104256901 788031607 664720436 678010356 174224111 894404759 917273964 71787323 946207296 541072323 881062544 65033514 377203499 587428814 977343635 211712673 521143871 694202222 746164145 62759190 488085326 288709679 319391932 770885753 974507934 643542019 826332900 638637711 930510562 830140999 574480774 384989094 657514995 437821813 915329717 801253545 27514592 984885313 417258697 978116576 376136640 954153488 114012107 669850192 841346459 522482674 840594781 955759099 918164026 534665844 691296663 471943256 679815490 985705978 695763692 247196570 841358528 188764079 259864666 201838225 912810846 893442218 273700872 813789078 235472144 924044671 704116337 976490467 200511184 996062442 767280502 775903909 14248217 373193846 896412653 670989236 723249722 424144203 989463124 125881005 720679331 45007162 906138836 6684053 811926530 749486555 140308768 397268032 691741607 423264818 894936128 150304381 820135932 930121500 392842517 181889168 543872378 827619274 117111628 219800385 907713555 458872894 361700440 765995106 696324866 976145052 710304202 784612249 975901378 615811568 526074826 629134620 800263760 757238552 644022501 896289796 733400789 600783795 874248771 281799099 33288050 416615209 231199726 512040484 802859319 671113140 418022153 692598108 928456860 705151994 211226982 982158067 927227814 319505361 678077751 396654542 573410327 852173457 772311955 398430930 304195470 739406099 354081895 922093378 998945729 139018644 234425986 340092282 729864674 719814365 721637281 673304616 904391103 952837786 914106033 348650029 611832189 771971069 696153954 285015013 703090223 641499848 786842354 33927335 682767350 567486317 866561784 14045606 412387764 264622028 824949925 444077571 917058854 683231995 540788566 264726377 34935353 352226774 825517864 298465838 251967584 236132323 882676138 520553102 817508796 58530604 655859533 16800813 804896516 912023847 901393553 315715890 818901856 748545780 889864896 779635119 388481920 199960758 427514931 980034749 824659089 44369428 771183059 223650749 866610893 552027080 225467296 906726154 826386277 260410339 669694916 143217702 896302849 733148837 763592407 233778423 542566976 824461350 754810661 888373230 670989236 524656508 139869814 831914774 126263020 965686153 744770225 961293894 670989236 255871578 591737281 236305964 517150530 16392881 366020436 392925022 97033921 252017970 360407773 981685697 670989236 896779787 217876548 304054366 58385187 3766865 68241609 991803723 548985477 100096189 38654224 542440382 474479371 971833920 814352770 728502203 670989236 670989236 680745772 163584993 818876333 887347416 340535590 69832161 446639318 712581359 275482167 494231809 547279426 723729790 229746502 50387862 825493010 737880435 708587828 327538228 891438103 689001759 752561951 56130274 229044143 863363629 750713812 202524203 975268822 219333488 901315420 699665211 881573225 762379811 466693481 425359347 913341068 927520160 760948157 760709697 919185435 486867384 954650225 55400152 690105349 38706067 926403335 986011207 450224601 233104543 189864224 797142525 817014789 450847974 479051176 31406248 765884227 639525711 313291940 980580313 469305687 224252207 772846933 897932728 970715083 404584208 552128396 207290097 364390737 419962071 876417559 713481958 381125192 976796009 442528653 696275179 440266758 709498511 725170806 843725582 815101188 990287093 287372230 945170140 598782183 456444380 746213953 726368796 730855990 622672960 901301495 187210888 14399032 695601727 684712799 797306036 758800321 670989236 95242014 840175751 901718850 784954482 972903179 604096843 277249695 805065191 888047651 503950510 745978999 425841166 487946657 892206133 269904569 602591515 444485994 146777489 604607362 271255470 36647596 236564278 921453646 217189573 180772596 850492893 809637288 279499490 494001913 853652838 106916090 237589150 970280627 978548474 737613174 552047151 833237980 469369822 158088132 741954024 870186680 856334284 672993832 158287484 489803091 743955610 804926969 741120783 870554641 266955771 262057844 386166948 383039848 806911966 974391699 961874062 778991653 670989236 783753854 622535637 798784637 715911196 389253978 474403330 924393289 703633052 286716582 808982618 918673314 394821171 780615159 646008148 748371699 379658739 536792969 266120228 127055077 674026111 831627361 562079046 825859984 711522416 945064565 758109327 643573682 681291294 984020718 245270319 604460061 250102355 551870213 732349831 874609040 937151090 781258288 744363349 879443448 203325825 400266889 46485634 188210846 917765546 533938708 925228576 670989236 944482798 695883992 525138492 824581797 605903344 930214958 720333415 672749574 801297639 835955181 907434234 878156146 881476108 272359862 163349686 321023134 981374514 937660479 742693619 880361822 848499652 767843963 700115711 887467739 492523118 839352133 847230614 639256100 916489123 638662468 132205075 94327125 858715370 961405760 989112602 794550441 796863851 610570078 538623700 945962586 388633265 870467903 540352970 114177442 754012041 955813533 564029128 797502203 995142555 791016521 362386972 476110182 117099701 670989236 809615603 533900507 767146843 988339193 675565602 745610634 209093517 182666652 40497880 463385058 483456150 529850840 597350788 460856202 741023121 867294053 98638863 838395241 316622795 633334552 938075891 274330908 324201755 839685947 907801050 705500611 726275112 348930743 359483464 768260319 418510099 789475710 877639239 375551435 246874831 205284025 722422427 800624101 672822062 809502425 437831386 578100545 790685112 682245432 133634246 322831087 819861223 270056968 925949852 437093908 968650542 241750038 903451215 802957444 736877023 587651544 801787258 864665169 30023214 882095699 297681430 390691155 105219042 889941142 826218305 953777908 818044193 772471618 899664121 503733773 813287582 993421737 795591707 530389640 181009225 872355638 232074549 727658228 242925329 746326539 758094916 652815330 109131981 717679759 980048025 927948153 425998054 460906678 536431495 694701765 460480345 442324710 532493908 120816034 205565208 811332455 866330407 860471278 938402938 966429071 820721429 780657220 802971257 846620976 614346428 234413098 67134559 373579986 750795498 311105018 247112123 665170267 964634497 778982500 922026489 771364778 645758512 887095980 448098633 932200861 314926072 799901189 514139297 574174650 283719619 31410856 593737379 985018127 767212948 737859186 349137177 808483665 975612710 111306970 899942285 350423131 992198827 825637053 803022726 907219685 888820157 583874806 951427134 65634135 975293239 185030655 976084640 554844432 848596713 24356195 794630437 905733161 948393376 942084338 133453882 669763792 494967163 872169931 666081024 664076451 139771572 745387826 617628849 993626648 999895607 762515922 122921884 506299095 801768142 473108221 620512451 967172659 704502295 447871365 716754568 300664080 337006616 806696282 347336599 393925783 259506119 911517297 229462893 921067529 581912247 596930562 240639630 622523150 857261824 366476711 551512767 863488163 729110075 192170520 286869938 843347206 798589793 192114964 844353709 671988790 73567207 829560791 817225168 794046897 957418188 212711158 785214961 559045268 842533791 239437092 500241580 160278604 224199453 807470284 506480423 231556160 850867634 262558520 892286473 757899998 751560240 34731180 761079220 927642731 267666432 451105644 178868857 992394347 23310270 430333320 968536485 603269130 745233577 232437029 306011537 811853704 392308033 804503095 769170421 319988318 603658841 39735538 686802833 814632011 799967306 493904877 70916031 323252164 782536077 400065952 111998655 993359316 749874211 417790986 352839950 501397578 84973245 174446613 533316561 971241395 925124924 220141318 299688594 773489969 561323625 435949628 786014400 844481112 152083549 833930453 833361728 285563123 59889313 945195761 411150759 498827062 729946220 628353772 386219358 696889440 683059285 999371163 342851990 975840266 734575895 446965042 976269265 331043814 113491531 453388895 863896681 680553270 22455835 931085396 280575013 694353673 891707815 967535849 497649462 179206920 394991488 714368531 987797670 78475129 18433335 22710001 403285518 60930741 796346131 517846429 822575518 920991470 408779360 259555151 304145372 736646795 227063119 634091297 156606200 979997637 989902251 271441367 782991418 840457169 726302905 789746894 715945268 406101455 825997645 11014261 867745265 897170985 895406317 665904270 689392369 164577778 377942901 645557752 943178288 44041967 174834823 278656570 277528420 822170383 781416085 401676567 678104838 816958618 732414415 449178456 68054764 643754758 899409659 862829078 168484828 670989236 750669086 30802093 961873848 732763877 699543243 368019571 523860484 189034206 30811742 483954369 747033433 956759500 682108398 992466555 339814815 799178869 501179381 224505047 791240879 227673568 607645320 753252935 996442672 51192798 697319338 397514607 101429499 376893934 95233898 819747849 249231596 935924350 884533163 946115607 385676791 36531409 718574497 39685240 261749827 738847202 703893163 526478611 274469478 306126528 718599508 166096776 232617875 514798945 53534864 650535258 47152680 612639297 820746572 196483005 423368683 808863934 496292896 975466597 337624568 734207364 850904839 799096310 705741209 33475327 973388920 369810301 605721260 745061413 482200384 935842578 217677968 481427368 121632879 893752030 472899210 809727828 763170886 896780528 72497112 879273852 875095448 115474048 841354162 916750862 941481887 28088868 509577518 849847208 767419252 217808785 505222572 80628648 572449371 160587482 996553836 822194664 986128902 738951695 903131368 678782319 330380515 716042931 552702213 742385793 798279093 247275249 842068058 487897905 864098779 759441581 946905798 816508742 731933452 877761088 171988500 6719724 348026908 698770836 833292702 644941348 712136698 505268495 573445461 117733273 553897490 107280623 684886271 571150752 994725672 476365562 74600631 545573414 399395674 189146144 614586375 635088584 396497368 205616432 194015870 403652812 752614498 802137757 867254161 335411012 361172673 336609420 767022353 500479942 795481800 688156620 690003651 745595685 700919857 982380337 680581126 118402334 858760458 835819939 675209918 942745531 775845610 491633215 911729593 641275493 740003605 712624689 444089579 818737163 745906069 210870499 259382870 933087124 315922221 97166891 960440933 791419030 944276096 857507600 949445388 314119974 326956358 28072238 52330269 456204944 872636218 543254344 102963953 295878267 188610209 552715176 555819743 651253440 624888935 981814331 824939108 509814766 966852547 770865020 899853523 570912059 808820680 627588904 965712350 929277452 717906237 166843073 743331334 358975532 848847273 953727958 194203301 894443072 907822588 803078536 47363197 784304129 557521725 371580683 831727857 972472926 675404590 470545016 650280807 987548003 756783488 542556433 870908937 831781773 945582865 974853134 801035671 317873364 852759094 87671140 153498069 976729789 779340309 859196107 896637417 910230072 577539622 944489517 416923075 597258669 181299305 188254548 809924774 966736681 490100098 92939353 868458211 970784361 745690990 921219515 728724336 772606448 47759509 963457772 59777841 258939625 336311041 807914693 670989236 688449755 756034379 221076754 877452383 590019375 682609689 829578916 612513965 678793656 704879987 886887186 840486341 99921081 616678725 320904996 755436307 696252243 283707195 839909027 48010926 706274706 908557403 686846893 592114941 870157584 678876015 871432480 564070907 906954055 412858947 964624195 729034405 819975915 815295693 842805832 818667239 206982212 363209709 682075867 991556217 881433354 119441366 734980600 200282436 912505335 784594849 190443769 228644315 375060682 448241829 737073169 696309772 465946147 773351058 709763928 706104920 808622832 739109834 451789434 131165605 725398809 670989236 505058099 231448952 17426581 543159967 987712551 334829584 504377851 693564442 841062451 887166480 480434475 646706291 710052115 46851202 520860044 790333222 970137531 38720086 899187711 267121717 21273490 824295673 777135000 539254800 872646661 829717599 485155306 946601238 246937720 771577388 978473234 235766582 685251817 782743504 507769833 820996040 533673050 750759265 282447422 930102657 872523918 536938653 207856673 56275873 642434016 937773386 969148744 619375568 294061912 848887971 224954520 903882835 674614662 610601261 670989236 755228171 198193612 830218788 281497859 636650711 898037050 356095418 646426762 251347251 640505 772983104 819531481 86906238 242495582 727601279 939163795 637705943 101708057 724988171 178659614 987640326 185182815 952399693 455517652 846314366 755130896 552285994 999416428 430917630 727766515 899427488 842223495 544488585 379519586 760755393 322561087 935161590 19354753 626660552 705374291 520458314 146614951 702136994 114762689 681485791 706078846 838864830 64604598 470409953 252272883 679664217 693904729 896486208 901948007 823486961 864163031 906457743 265545754 991813989 820537288 835980237 670989236 692575588 681352089 216669853 605188902 383857168 756105786 639096190 892221838 432091243 257512813 786307364 663754492 305203272 768349857 772582794 621116846 19750429 733685314 79092918 845286406 665556861 850838361 990139745 412941751 915553854 183658369 744973901 953516978 396187801 791258875 703782184 365513813 353178457 588421580 710251094 224032793 748591637 719651376 988823560 83138226 876318719 806579070 565282784 970067430 478397618 703745906 31597066 868455395 754421597 832092223 670989236 670989236 97035722 250671372 776777808 864836117 771964687 702843117 880134010 260116631 586138324 759962122 830919919 922026277 272593627 899571696 514802815 863409966 909232221 694837566 897368416 77404407 326065106 698884369 973752177 437270321 357781264 31105136 896697791 901341200 980494345 782340141 761102728 110678483 348448025 838647444 45051166 583287327 52529008 696461619 599520980 874849257 96716702 749018201 175002604 833385536 929877916 386582829 924072427 922187393 480530629 670989236 285576328 255825622 670989236 397327701 351091689 855772758 679226411 39842595 645310194 193928409 670989236 213361272 947416737 747979334 570586110 888763776 724497631 421183558 579637988 649089291 777653956 911806002 494121197 821457139 441474471 946059744 919419713 564597972 831142267 910387263 810827300 998942439 273848112 492739403 646593927 156828185 854197063 373256043 356319335 236976328 649036169 887320083 777724851 940725469 221582083 288472119 865990355 575626191 203988605 494750267 661140081 670989236 997236733 350673354 570013438 404768434 877764851 907264186 876258591 765712452 315779641 792352679 916074644 44702769 445031029 421780344 929327183 944660447 569922456 227550958 586235134 438840539 375273091 981362363 853454126 807348749 112635069 652808826 937023963 670989236 787498084 638091435 433069421 541982398 821585694 559060028 888154160 998660745 428361204 658154303 753252052 697024642 871581595 520957017 776927816 786837760 771847936 854001358 974628662 751775438 754372066 754628927 855698985 861689221 977592141 655580034 305803130 482412595 876981598 987001115 991115820 348433812 833217606 978683669 878090593 519292066 796464676 356177647 682895365 877485322 377893813 185242200 951772165 860406949 49279761 850302788 721023588 438673788 693541956 781795091 793915792 125697003 362308154 337716597 534033629 762526500 714977008 543196896 248548302 682319106 670989236 764514570 523393280 750153231 603569899 491497453 681895149 278546753 882140101 761176636 458627013 89382796 698815710 619921052 323291293 841124079 958415835 963000148 670989236 22229173 801283700 727558616 875990510 630096035 986324107 156038477 756325617 99796264 829638086 422654887 670989236 779637519 564648757 680679021 862970903 871365313 906311164 902609133 754104469 589264853 855754806 135989028 716689994 384984655 888499352 195151972 918679235 191641978 304468497 40985745 609616334 850918892 908516576 458647134 686007047 160147988 430182714 467291444 344908278 749036587 726986779 972102935 597407337 754722670 883311453 912666635 850798294 931497543 862563857 967817856 205986865 971491716 990400697 672821631 865906286 759436640 634403753 430741858 741665483 315291537 541626992 264657712 284559924 739419185 567798932 768494576 861168878 696276672 311809215 950610146 825828688 119189472 682708380 335963621 168670114 600076869 733918912 463755405 384790580 347765389 793032107 954422653 55376561 143703383 931916408 670989236 916095926 175359100 284323891 484173466 726228469 203770370 668743442 350137111 688407915 285565880 779803834 538031331 925694165 872805793 136683220 489006077 138202793 406994914 112218405 824457049 775037682 282262097 681197995 154685178 751252469 670989236 393282374 924666741 980402158 709992447 234010573 770269915 864691102 739885894 73005829 621276327 746657784 989041103 672834062 408943637 397318232 746385045 409768390 207550080 533297323 504615004 861993152 332445849 826360852 987157874 782408161 787125869 813701798 554829839 757553880 547282900 173206517 350397128 541758000 401771517 311041497 982014385 149602513 750673211 147876039 141167024 856404813 136076299 859066646 415402717 82023873 439447428 853788286 863076644 104460519 690084705 767417368 321209210 993061192 52535347 872567216 753742818 682488712 227913872 892866462 40414022 952438454 278877030 253344160 274840810 516155026 842942693 964024010 524117363 865793889 681262254 157103517 512950896 321473238 24366069 692607749 833413559 60271546 713984516 448879475 709243910 442291877 869307584 374938649 502439670 826496460 297349820 730403305 772047211 72665706 729985083 522352068 991747711 322379093 593498911 632794207 512554917 803097432 493411199 496705176 757418651 755772134 857956916 459064992 131068745 860849594 983112196 951253149 962906784 678602083 628492610 913921559 9452605 470868934 771214594 459723128 869398753 471708228 90599259 720366817 685724824 378612959 260796605 954443821 756949457 876105648 980875770 392621226 749949856 993799013 357130561 610836890 897991855 474459161 640444013 565785478 519651004 670989236 434799609 781908340 535631029 182357715 19220354 915686455 413363838 877737912 266412549 779287008 881769646 339642562 652505357 847797115 806837411 786511267 599834763 833065276 75714690 387454220 827475027 450266326 209739753 843628440 805098456 295777681 892551967 424983030 842801336 760332138 173176610 750056528 625741440 199233430 731352310 674167451 283707375 872674425 696485640 291731922 182570030 102497481 56114688 330693465 883510319 771813107 937655040 670989236 589759389 968310911 737073067 917379373 76488967 830978910 228222755 962611077 30125860 761340587 780545070 545950517 860997595 752791103 781798075 752694018 607225112 164638520 866577763 929144631 249794200 810278196 812385171 781223196 824059622 488378870 948681211 773614495 644466576 193303629 299005837 440761395 634026969 897631992 69006270 946973453 294795387 557214519 464098288 863478748 637324239 970395971 922275415 261925021 994080884 840745136 841287116 382604825 880378433 744971232 918448221 141756658 717469153 713208770 896088534 694857422 852535042 969946129 491404310 848083159 267968099 975776978 800971702 958565739 914055163 790379998 761923440 739769629 162225384 162104441 973787693 738190182 785885969 949335800 231054255 709465094 938840017 735708761 717668637 865712830 853509486 628668098 805864343 158912085 981562987 764363326 234717464 945172017 289151273 895705567 31946133 984736867 257242200 886266806 700953163 686217792 939264918 313945570 871013048 767562335 833661555 707225292 431115375 877509154 384171714 881491561 673758961 534320391 858813223 379131229 508194087 596637951 163914252 405405062 993403019 376185468 626812790 796042043 169934681 719799513 942452570 372805210 746422322 485152613 906535358 251756920 996651935 103032182 70411100 889154509 379898558 443848456 570021871 97763665 977314308 729201382 888333985 981376141 690795323 56855972 755133071 249239235 165760443 250633941 30697336 117120949 843808787 940992366 993046485 442709503 744334234 891054673 864372870 126532510 101405817 281461036 156422265 775306937 638469172 143050383 433955254 701890672 87298045 847474603 933288547 723821856 483372722 527913875 504569472 968508516 406445018 555470946 798414774 672305818 513108003 614903753 882204782 989194585 824250484 880509758 980677847 731665816 691876335 113990155 65504252 263504077 239312660 233609297 806946164 88512790 773660937 342447860 809718182 999048209 617766859 987400476 778953948 677429326 813323737 630688371 927535627 641779308 642689041 916107806 939158562 343190013 662826846 130355953 784726922 289817244 221562248 123102934 932344534 795222602 614655079 879791470 405452481 754269329 549676888 980372784 658906695 44639479 948010881 810785583 933283382 831575601 676560061 313056332 485936429 958354410 765561265 731999021 755750921 954632899 584322221 647000712 841832089 638744862 696131230 49380555 774422212 156168972 681481400 282079703 920961913 115112959 572061420 355076570 698910500 988591272 900616165 910308667 890238177 485920339 694492166 182017536 717885225 454587990 11136734 678413465 212377964 588322878 775069999 157584113 480404910 782570490 38257223 960662070 679646779 612397204 864576369 726650945 821812994 341404293 906400521 824559954 654616401 407488322 759162790 377391905 956779299 302337495 878329336 771143241 836231439 979246607 638287837 92308998 812075612 592222175 212187034 609426802 442478999 688981194 678861067 940103178 716151167 905409915 724432837 702646694 947982561 805139175 724262788 653044796 268241642 699452446 54367026 139042145 659991837 923732310 92198803 617483443 824316134 525623056 142087181 969780059 864917503 509756497 978515873 201778102 786093187 127240615 603844997 923721681 710009849 111975901 55787608 733479584 168444589 977638034 699883378 809653077 983303413 776564676 945734288 277345386 151239771 79351632 581910151 379666890 770513996 412998714 415603204 992303898 256930799 998482430 4877882 72241577 931364263 374433010 481219045 330712985 494393526 600572575 840874276 478497657 444197299 214238850 28125900 886778849 394161552 763668549 602217981 36127758 764829045 711053665 752030059 554480899 831705197 942945804 598217015 459061347 526845440 427790883 773982622 874561256 761146556 969828378 338946045 739677006 784345698 736393725 798156160 949172710 192038701 974405209 751335347 920117310 359484764 151835388 835493646 502966835 447349186 412967713 504046824 954313503 940734484 245684646 17326256 766494373 947346300 405518380 41996437 556398499 708551284 859888535 861520977 351118895 852820564 22082314 938276378 928437167 523010292 968014757 690416311 676076150 947103117 90374012 668205891 7214459 820687294 880878641 677266591 377043877 363392495 793503438 165409005 786219195 838588948 598555885 382305887 131779637 999129704 844943043 252528274 579873957 900440429 97813997 248154011 757306924 807572876 347615985 836207552 535773957 761106798 760388676 673027675 95855183 715128097 775456604 400461134 714018535 916932844 675488571 811093483 295069920 863761293 335469738 732281177 746137683 200256686 935847545 778734593 352787202 962813810 648803138 670989236 982383049 454120532 914980912 642518243 770608909 942786281 383833943 948492434 977912380 853366169 51364886 65402865 56850277 904466537 31639858 425517632 884704016 449888302 735813127 690978325 532230999 687547952 421739500 43949222 786571388 354055286 18447093 25360383 499105072 757086291 686037681 611828452 910269891 342530032 96175124 706374394 819743025 760941620 670989236 700756058 670989236 642326861 126729301 810637314 316232502 166003000 360948961 183461157 909513870 485356404 670989236 971944046 636372848 63886459 382884118 809164726 312439316 698231988 614078193 188290910 794810237 254725036 771363760 574673698 764357037 207208865 938767559 206345258 939726412 92322226 860546122 826222616 908629443 406707133 920613421 531095878 975021339 446095352 911350260 17049887 215547614 420547062 227665777 433073923 717576217 499621691 361050856 757885323 504578691 678140494 692126075 802171105 706514063 96816696 983417302 687316064 923725702 848929439 56561544 885709214 697756464 979820269 965275821 457739285 144967877 927940323 11065495 948963235 991866851 817999256 904101313 835278214 650460439 44946902 399645712 439721720 898908937 978091990 729856999 478048869 321575481 113282408 455233505 869337804 819852489 679920511 782813090 481356996 297435545 708169182 534982522 730817517 86930526 552202669 228272100 722026097 714852962 394102726 194237526 124646197 662071065 965727134 14493668 856288004 281804803 234168001 965059352 606919994 945627453 541407931 688084402 93578053 87875032 581624144 450690558 105491240 499602756 349382426 402698621 244409274 613485327 744544293 918672201 85414800 366461241 269080395 257024453 491859865 44818244 859910656 299879669 469248140 495116193 291189601 88241093 663385503 617908852 561327832 11385560 977759115 472723214 793689708 70880994 139984154 17552133 926950132 749988956 353025143 995218673 61514858 307735228 633449294 975764963 960924250 416326317 622351823 731610494 516866016 759416706 940760193 970122193 565386251 434182867 370625212 873503997 431196653 838233304 530409500 80372706 832700824 45335214 810673518 270573689 903116964 418831415 284356274 554113232 884835831 152811800 188383100 748465845 104966392 940146487 273782918 242803789 491319236 916873786 211292434 564465193 794560203 761466930 457063021 824485260 906952297 217625301 620867263 901599217 179661659 372887139 765727554 702261310 779830638 372192385 867539222 6076495 41371015 657789026 358311201 437724085 784468236 90365163 232878226 508804275 876024758 455115042 66525009 309613916 83749811 815808559 625973005 83901270 803174223 967869687 798172801 205582086 665934301 981953320 240618050 133081202 975235567 29065400 811121660 354252472 768760222 157288435 287768112 536218802 978257412 642514178 382960981 350871952 100300804 835877842 940596238 562644846 844835221 670391293 670989236 67320013 849193291 703172277 768956149 264516749 132289743 232953962 784643555 759683299 313169906 267489632 858201346 416907194 937585724 846738724 610012903 51161953 778296845 660725790 54341773 661139493 986641054 712197238 958858942 473576945 640818770 628610456 670989236 45792175 139636836 121062550 977058182 877434140 938174749 789375706 877352467 920560598 932088340 73274513 174395429 853747356 923544554 816295557 19266127 85779692 957224384 761216085 148905190 616252235 669503873 757434783 89819111 927183904 888739294 901073575 217867300 355930175 745961585 357332083 928039669 898875834 729839799 647881736 332745445 888078615 487778866 532324716 700801309 906105179 394159822 209704956 689277922 62631974 707782728 861315374 742868735 847357857 693029138 583918541 909661335 703774155 153663420 820988768 595843007 214180278 922935193 934486476 798944155 58452505 910616884 746034866 865283080 728782430 858819174 457209123 852610167 48277066 700838257 675457680 923656973 295608459 215629396 404649193 952317505 458720495 989482826 623580121 252533087 27405343 388038243 580054018 687181476 812476607 697852438 789754849 914602719 291987939 565637436 177054788 724590830 899435532 927356178 780000820 498781257 888379898 553585478 315644587 924921694 766282607 966682624 259453938 547265841 147325621 748248513 382870813 848540963 518539133 123281296 312916202 672518616 781998594 550270623 670989236 774572885 868658279 996646962 367413541 422717097 725261827 147412528 751390679 923575065 482411533 921475408 915463589 859505858 816123992 764392777 797732891 878317707 173361778 270970770 821406666 735528773 983769750 673241186 517333307 699451027 869792302 513744579 359709400 892005330 384117748 370501897 91536949 660168755 361126099 10311227 804061683 437307661 110823656 883230015 105890140 845273856 339145905 879285458 939206548 321540638 985640002 710253413 125381543 4894515 106824655 828695883 215332621 107436458 982913011 220683332 791882498 811545068 961564911 176557199 827565888 131613040 670989236 682770949 504662127 297917735 980502683 118716961 844855382 816302241 244159759 814762386 103284208 679847790 964648690 868845457 318160877 854714039 350510840 354324206 755344470 464729638 564018331 395242679 775262078 972667805 545147314 350624123 543994765 670989236 240773850 757147501 599133081 989088550 251863023 913125669 890320409 616069915 970067874 659672231 825090248 241755748 766905819 672058870 521496461 115561700 73222823 523750062 206773121 833561568 983745218 109885622 61329347 694122016 249956687 764932664 983878281 857473883 589382724 894136437 966468418 967198723 926830646 275975689 418486857 342178649 653013630 646251436 332300959 829615642 41833003 918651663 722434864 238473535 671125485 359068822 774181310 757956776 827855768 476832813 944268329 620579003 740436828 540282854 820962696 397292137 885848665 688595435 296762753 455617723 827473447 842086486 698256451 264799603 298454547 918651507 480439027 611844085 710179854 509820023 723396518 719460992 388782516 409749492 465090839 235329173 547925961 673302794 42202622 474706613 800666764 773590083 886341918 80201545 625520443 484004012 134847010 873684115 678640419 451332324 337283209 962475220 85863303 671028127 956076925 818546372 105348054 804042907 229496092 865209809 736043504 887034350 966956711 750514080 158468432 455882555 128446360 809134266 260270534 813330249 213508541 915964598 35883606 261892416 458934154 670989236 750681064 132570260 148837987 325954311 846718809 996197799 646178022 301129586 621305601 365627014 583744520 389618619 284980895 877078681 345544495 146214711 61558635 238657476 39760163 377059365 157252930 397850287 928678856 763743770 84960971 482006696 462855166 605736864 809943283 761641790 771012792 990834972 834302389 193016050 765391830 759147350 946883432 345797117 608155123 703078483 707783551 815406335 999770386 242254275 859277678 60945171 754305073 628103505 248729143 33040928 594772256 983196195 307666530 267169673 353416073 793504435 747296334 389517611 120741626 815320091 963906149 364211789 996665954 964633002 427591087 973327646 835358379 682043364 744739472 372779309 539300418 164886565 228135994 725823566 291024181 232481054 938174612 948480194 472876276 696646534 912865582 555214008 383675797 874779289 422033117 339245636 479298741 800699246 565586975 578565127 801694010 37581245 946349017 297137154 562578594 747778801 682963581 560158445 27131466 41442012 564648188 711338006 741850852 358747582 888360316 884803292 352989347 575280969 764793133 919139751 918041754 356500799 170747610 483035058 350518473 857341380 726985181 776550304 14928200 982567136 976006405 141640280 741031079 177612163 306892914 259257257 710693055 48192283 936358700 518314668 780540428 730429240 680109273 815034008 164242157 287477070 766634395 774103363 225354906 947339795 414653877 640127505 411388080 417786944 332373483 557419656 674648090 162315035 782873637 694406094 945026791 121395212 622446214 860031657 962356720 610904610 951640263 927969668 455759166 506987404 737811851 753932239 907320795 961124446 686742973 784304175 765172496 838733869 678281920 635422625 825077579 714384791 32829479 801658748 787693758 860532633 700362283 954592624 272210182 795484286 493700506 850787289 622129835 670989236 708819396 778642721 417896400 56491407 814162966 63458574 717921441 270430242 184243261 647917384 414058051 987682782 927229152 403375309 951213133 882858046 454808704 897456468 951109841 937374894 676260640 261677822 980200547 105904985 603978477 328352427 135461285 496614364 2320845 615936759 604461210 424509458 885043610 561296114 20075777 844583398 686689020 841064352 123913554 658713555 976040280 445386838 820432382 725947625 626981325 890914090 788936940 456143937 434929839 123098794 72233635 31602684 900199248 725297809 736121885 914841824 873220752 936950954 762500531 543394597 763526533 818413882 127134580 428088889 926040283 872340473 992523988 369291212 689415573 125765301 993254996 351237972 349402259 336932856 345278564 949504633 701414169 441744676 220978573 422672740 763835178 748481801 981712115 701443711 630823578 863868475 877011977 793887411 22113839 185615403 118502765 820448623 970771564 442421860 190822239 866832449 563970555 693617110 179786524 901595267 741577947 724134953 684253079 49142701 353507662 64723679 252124434 721384833 859027572 314197347 475172455 780482774 719683996 38619813 233656363 937972825 799915547 896796855 735877972 795371468 675676848 714482158 271059709 272407719 908760184 832140617 280922329 316387135 339000035 741874809 974031936 798935043 364910593 217239617 755839263 804723277 832073089 949741933 206290233 833181703 684743813 900188923 795110810 715092892 851074603 477136375 364266357 3296747 56920958 494561791 513588009 920560780 671329103 738156332 259544922 279111664 851452659 251195695 881348142 138786832 651032514 941186694 799627125 323506720 119572058 675593739 893268572 718138177 887162665 372136700 22024223 924406394 690417441 226598 205814048 186256278 805122767 763428496 547188510 681450816 302095727 201386316 838259314 966631650 875707240 51963502 673140646 842959234 457839007 278235990 604264248 720032961 598589610 719256179 812108017 805875213 995530320 584793049 436755286 682849204 991732583 853162947 346469519 712789179 946716213 881808551 735697637 711050245 187026704 504594301 39341466 459747346 880881071 831335651 896794044 253540668 936988966 347985768 852812504 201877911 492080832 7789118 546802138 172528310 721130889 397716182 198183770 105207478 358265285 670989236 850473601 778559692 363523671 766997523 429139636 105819941 260931782 717219061 625241201 775521180 703076221 838322524 711284881 956412591 516535565 921226364 619018333 758861466 989211847 818538062 489833683 731582199 871056121 537691239 924162349 878977223 424008792 479091594 537201841 776589054 918230124 458288316 665221239 211588333 983018004 509582831 166017935 661002732 101492471 903681504 471109947 527754869 819702205 49808989 701366743 670744744 821698724 734433855 747361016 307556922 855195066 712637053 703049369 193103834 253741242 861321720 44321574 689356554 625466802 98178531 852608055 180822700 181973864 879992906 503154819 670989236 769256989 212399177 218311974 967668440 701999093 961188362 391629870 714533895 48796456 254665449 815787661 781956619 525981344 192357109 967206466 207914317 578225778 635337194 175970404 593919660 72718825 959119493 985507799 737865500 719781247 232745669 414853346 316899458 847522169 792260901 904295546 398616606 143929373 934278993 835747101 666398277 260594229 931628298 772144084 349693368 311711927 688499470 742476706 670989236 507039401 118303059 685194828 133488516 218615549 844373288 805614639 309801548 380026406 778816443 670989236 300295691 817168757 988857281 895013874 307606027 670989236 835345298 338433676 984723579 420732759 800921865 230689994 164238381 344674725 444333863 839546941 128343065 291872960 21945770 385306892 989636343 694465533 289312113 940932808 752240088 800626743 800088903 713896778 761629120 736195351 807649881 924684048 85079389 597506038 256833528 732142236 517975177 939786918 723632780 946558693 88070577 655572675 434937700 943921222 838265309 494345096 147868021 6112383 984164110 892317089 727282624 49668687 233729331 827139334 756557500 758617511 924217086 995220280 235047722 424607042 807814440 445794380 530132672 687621353 170031912 670989236 203883992 470412629 730877737 510329730 142366687 685130660 531705367 70606634 738029624 830035594 705555534 849178090 294589329 821450471 639113719 782259017 280269114 956386679 929843057 604709387 993597001 604512190 837495391 323374655 632803736 496653420 922541685 116336486 176671193 229514291 905100401 772995424 793858940 670989236 238083691 782394016 444338710 332294593 999577223 351022781 815186842 985170336 717869115 783803853 145034797 68418643 645854447 628578955 852242246 901897005 64676669 996724889 831858689 406817685 884348550 912961611 766594846 918770496 758522541 452301335 216191276 958911809 445741743 842787408 879945721 337847828 428082762 316561173 217211775 292404636 149183651 190909195 431300934 819498662 688565045 479896092 952432509 686997088 10367841 126248023 578719775 613842311 161802330 637219866 481692908 259661645 919363699 364096132 732706942 659670687 801632834 572583499 191745216 361825954 745015029 802424259 725664901 976161208 366725153 892427699 960832848 580936832 133422755 471469843 76947449 991385785 700534023 578856316 466752769 214326350 624332609 770249690 842991790 128255683 298180453 694772065 215214254 729044881 72702047 745221234 998933895 860614848 920676456 959191609 433851127 553526268 268379002 704342913 817390064 61594006 670989236 761793444 13999769 852737174 990269143 860257882 189484229 261329237 670989236 920480408 800914698 411305204 708546519 296424576 865059487 813450078 795521844 812517359 278939753 772643927 648283808 836003571 61857502 406426160 540796682 446489637 624881306 961650579 443549081 278906776 762193038 329287831 823396357 814658389 902446493 50496066 680455971 766675317 253585638 481804304 953697234 288843211 646522231 757237609 279339888 283044775 67810618 257572239 231547165 752070256 692258488 267976585 609740195 889662918 184032290 557924321 917087263 938754087 214030368 289710631 180825730 110473107 303522481 639574035 116307987 297892669 779493530 249878895 471427289 969406730 706497225 571950647 961058127 635762336 683337844 691184698 791086438 401765257 673319237 842913703 704417635 656818420 300457519 44485727 651486327 222107299 881150985 670989236 994969994 571345928 685233369 290890786 377537864 298811282 565375784 569940190 908161524 896191810 147903332 774355830 382952229 950856763 546357440 877081706 225650191 200122418 979481669 146806807 811222895 255959507 368522900 916094407 717412113 994665416 787085189 957750780 171169064 138638690 747566142 882733862 710779521 8849118 731277277 808805503 566604188 314096052 865058395 382848171 947586404 378853224 218240382 364933268 735005325 151090199 915319890 141502207 535877248 715719568 797518650 754370513 981734037 535439349 785769105 950750705 190087028 429510720 471934868 993825653 714077491 481295020 206560477 965328820 218114028 743894742 316828708 876814339 437288753 776624959 836494166 852751322 926628257 269620285 109345473 631202959 325686683 678164312 738654536 840562319 133077873 278532229 905463011 847433019 268802957 188421679 922558401 767321057 586095711 884135934 529448428 813789485 673396015 908285585 872299622 695326097 749879911 919978773 264997587 656666842 631642678 722813312 928455476 106417690 865467522 711526223 230475933 984919588 734116691 888007507 821732105 753615567 762710778 1769268 997058060 790187085 827812179 934448891 3417979 429004073 157630833 982824266 941189592 407443593 963346780 280324802 679333002 385086798 614256192 553863622 246373304 252379933 688522505 925067565 913959364 879577242 835293260 658743993 161299254 862895652 267605233 999518912 851996824 659106324 987087861 155470684 439259504 533820434 683907920 700119257 116682289 889794122 941375345 598557047 559253689 427827078 586027736 233763414 724499658 716274126 96495318 845321775 788519140 774145929 471608845 576153157 169155846 369476716 441377755 747003284 213235983 274821335 978289209 22434964 272603032 793778976 77947261 963374138 306868617 906769205 731804026 783836253 855018320 733017189 971574359 839517493 281639678 727201450 982627340 767679224 547244774 954047723 284307223 977454183 752739781 948200372 60963172 415307597 230490708 694503814 51579218 472963299 539013258 755440541 191827064 670989236 876086532 154959249 691364995 371475435 413399026 202450153 425888516 464571665 797231967 960893148 984539258 436133726 748380143 654099167 393948473 749987941 700854462 537688763 788350315 717530760 94885145 698808036 590620836 681021235 711153820 742194591 581480322 717617355 278498008 206343907 3124304 767614320 861190793 930244101 986440499 284941952 73133195 576670291 493163837 920211189 980644555 822642328 135830178 877960504 780976551 12370367 25798532 677175541 670989236 223658102 496283840 544598922 337082375 785831507 995788077 936392254 251019403 779356645 822782074 87790250 505408158 127247025 41826280 238287582 951426419 779089856 549160393 626689251 231011838 781283542 884553235 527848154 237123868 68777000 236283087 830165477 197098661 413670022 840311769 728506710 830803291 212257494 40646073 175510319 892359671 775258197 702431172 733544934 918285989 575357524 641569380 889671710 670989236 485414417 854626902 269157618 538900828 989033091 699970048 793397077 387309750 338334828 895282557 293465493 377300827 840802416 103837757 215757211 875565243 912820446 949095579 473751515 163069036 459773942 847615874 563097584 886205259 155424823 971668092 707968780 773234185 623042067 49012036 868765728 745287670 736512558 578568307 542937733 766194700 898237308 817424020 228369170 547207199 628473817 689658420 853107638 594540181 779105765 336317153 255233960 797123581 372128271 533960538 940251722 130620526 372740761 846471898 524552568 232821925 977182391 995257408 803549361 908787709 293349244 966007184 339978828 848281158 354648836 941511561 103212742 895598384 867052330 80383645 108850737 885867185 800750607 233268388 448759667 113340173 717776029 529884596 840757878 563366290 888973644 697990943 566387115 695095290 237254326 655413672 700308952 815624571 358736872 653376593 417353530 781904897 454648460 426996345 909292249 59245902 845697012 831549989 803572534 149388934 236062023 320771068 916202265 942834727 124105770 755619791 27538494 294374468 173333212 340257453 302845141 291900726 903727186 303548133 773148763 696570996 91910384 799779416 12659962 990733404 825555572 836032500 438334816 255688409 871875427 795013344 670989236 77339307 707082668 790610075 532423221 46374501 250610427 815611989 866792960 943821631 429388973 13189433 705882725 133191648 935950829 925081748 182375622 34766340 24755818 913567119 910351074 52340009 907939097 675185089 821855420 503422653 607602891 230521598 747560116 195262605 22381857 764990346 333261547 858204690 909995670 173094973 876798868 837883235 509077062 159684038 709179761 254848536 430298975 7970054 880147480 373541615 396972059 715794939 968938008 687517866 125036188 751062557 45194828 302279523 934781564 571959757 837346372 952058413 411492678 652634468 76562134 993881768 108783403 237573280 174177134 316360926 756849700 973889945 27213287 821754948 815903596 877490245 442016680 152880645 15556030 497666118 920155705 960755152 446447880 698839314 154058687 544096194 351194293 803164568 652957404 900288967 698959097 664954860 639324224 196984810 939759262 297740776 670989236 526697963 166858516 404548047 793165168 336078582 833967025 321929725 917034167 220387293 878385267 336111601 914183521 454484916 151480419 289333610 924098745 828411099 681093996 721595333 867841361 67996221 471451853 80694377 306838100 616963756 222548219 691057260 992139836 164885347 692707341 951629679 726691995 894010491 887372839 803328550 499901442 957355101 791202094 823881727 439682887 547695689 686569142 444184871 478733039 951974736 905028997 839621994 224841956 856347126 957229320 587757655 702322299 335505485 89432071 412927156 748431023 905436378 622395520 876592380 967696436 670989236 88889377 168924379 990659571 520494240 553336393 105094232 246417309 762749852 181428198 916819352 740785017 141126362 20364750 419414954 59639056 930790880 650525285 635118132 228511436 35540700 880573441 858451627 184151732 124329823 969327754 747949038 779102613 844583040 447026581 7710629 25884020 456005299 561153840 531056439 46075873 686107696 821059882 82810064 760495879 779106671 721142501 892006199 906022361 791170436 800148211 330690298 846423105 90849280 505870776 488447161 394210688 725870863 149880895 977909862 876954110 621002031 808520854 751887288 258464982 228097741 550779951 778203051 670989236 865758712 305542360 589415378 401587141 239864374 353599138 733621950 43904286 866184431 521753268 483347088 786086266 701638185 965135381 326965049 739811981 6140824 415965449 496064714 982372746 751977544 721727138 864451517 506733542 164267969 268135420 119524347 973688140 581345400 132959403 181219997 448051251 548717673 535425929 870849824 623524034 281246738 135721026 594858458 751927847 711602536 383642142 670989236 238761610 555421434 970937273 475132146 108322131 7653377 36221319 237568272 550242352 228610844 813088221 595532687 846763676 924330070 878713857 402142806 924150348 715654656 64849589 910184919 994428866 786411083 736561215 555261010 692497785 261758804 169765547 346740845 494827719 956436967 66586667 986819692 73030713 423782058 370446072 594657925 267517280 311178267 736319463 27562726 717216185 777162793 626771054 659212947 857674674 323280261 773443538 242760204 572596611 673308197 889828645 466525238 710978311 853108885 723549413 603436370 884178567 373498438 699186427 877488228 509251801 709509844 301740491 774890679 554162464 670989236 741189136 220017097 271191390 888814957 701382232 833790854 299070893 453525813 9195554 65738783 45088702 548630368 908718988 371557840 148500714 66238579 544112068 896501427 900302557 634070944 864267600 445758055 863350487 670989236 787962942 670989236 409956583 235022295 393784960 630332741 427414237 374829641 670989236 890381124 915437047 894524994 898331870 91276881 322138416 399582733 335655992 502358787 670892220 249323216 708973301 705232635 215043754 937262971 814843657 984963634 366273292 966315830 670989236 772015390 796216385 747588656 704386139 836358208 334040153 303335055 892076742 671574174 705539935 673177414 501193608 758901046 676316460 864667864 306036190 736786554 815232446 322721120 464810621 480393110 241149267 969239687 567877059 716544689 849528527 775013700 729946313 838583733 184386726 325351813 488503219 919776477 877212523 275108475 670989236 491119199 662287067 809762664 993512116 611301529 917294921 597672666 65253074 500228189 397186934 52835671 511363939 654206532 206823635 909927514 941210829 407369878 310785347 901690412 702496043 886016769 655685694 774098161 505792337 872525083 664106367 981916857 368841041 25638778 933536481 56594303 113216746 429347387 551703381 728786364 822928029 999035386 472938646 592332520 952563255 843733042 150118159 869319380 308513020 636204368 71671275 971528866 574935029 693917687 569982779 984587792 114508375 966984864 726802024 940715320 157339253 896858847 744526407 718613853 275426188 670989236 251723953 558984916 841055114 687038961 853515052 310383084 966038411 726131160 182625359 805430710 842003629 328679516 908266073 828847356 37802345 497197845 728042379 979668857 673049655 265148068 267176836 203781198 835892589 759686169 387679433 260573895 714378916 111244140 218529188 57210708 186876902 219775172 200738687 804982727 496065438 682811904 873441263 739644568 224849162 899131146 165225285 749883455 638386124 104347913 813130601 699165618 850503244 735074409 796873279 195060355 297312265 740649394 694171157 160174515 777806272 435772716 284334827 696228716 788679325 796091421 596969382 297589488 278138285 301813434 939252904 568187746 792424657 710523744 133146082 491839085 592784251 888991355 276211256 693871908 967291908 317738710 719835675 148297475 400543608 481182805 476911889 972073249 380105503 625176744 941762546 881220192 818160746 548063691 670989236 980765571 670989236 755905343 914853605 911034693 174080003 215272640 23266323 910660328 891814699 325082702 247160853 221346413 943416256 622873745 879446269 679058584 12122382 213756767 716526676 618954485 299147164 743073599 946280995 141399731 243128518 824228604 704199952 346172890 922765069 592677469 973801882 921006840 977955164 924321484 76276127 429471226 804912776 983461589 95572583 571306551 126590715 876802445 968160445 39502235 14388152 938252375 959345661 768016994 745176648 858956225 212108843 771642369 355852817 984546752 752006110 670989236 499506787 90572896 696735829 102693172 950094125 886529308 156780267 959873189 90795336 370624591 497931687 670989236 830790306 857434593 890231233 901741879 504044956 12673996 998150613 120917215 764022029 932879891 159350340 600353029 157285071 703742559 365442289 10507219 153378937 684946309 738070127 581769979 314521157 904175690 888226805 670989236 91733350 776308508 416302730 804773254 391657638 821224434 878569660 191705930 990504879 497931660 938417300 820776302 700829238 57990588 670989236 528768146 173146361 878506988 700132623 462678380 870874998 727093637 725872861 974406466 117748109 278107307 941127710 930020212 995363081 66620622 739595519 895566343 858684403 908672232 530553219 700880270 542773858 308956519 474960550 205549970 738053985 213683648 874056136 657360575 270526268 59744207 127137210 788170149 293122176 408584809 72670443 812280678 665843307 814333458 372936557 920613266 871359463 861400777 846862775 681926719 778095295 474626136 664594289 376820806 28294407 487609792 157041309 688114071 844452074 447098300 676609088 157728374 749036481 928965557 792940913 267337830 678768273 141626190 670989236 276729600 623657838 124568658 852870758 418907211 235376889 348701582 888459698 186327153 960920021 816824181 780240360 937612316 118843433 732648026 749537016 39859355 946396825 158231607 12858430 944727257 777314747 105631932 17944850 921651381 438207904 199796184 672131411 464802793 925948585 752208345 992296955 262713968 304297282 738659295 851225290 670989236 987612813 697563504 683899249 81816109 934957225 167836055 233242461 658810540 993426477 787829913 862427105 958201684 207157798 325043795 961385931 502997074 624323632 734656687 764706581 681289843 12188427 995034928 962504524 101852524 422453398 125781211 942271288 96209096 346288122 852595441 162710419 791810176 896721118 958521369 198300969 837791684 703427665 200916775 739936757 805613147 227741098 931423335 990032454 905428109 700151939 453109044 135811731 726886786 670989236 855257331 524796753 631697874 468446559 350847481 3125259 693277334 896257544 464954186 472924990 536823596 36423797 31527811 125126682 423196912 117301623 32799216 738768436 732740840 780483742 261648679 172213911 703195510 171957679 864774407 308896853 304865389 718973572 646796234 44095108 210801095 670989236 808686354 848517125 732119997 906340049 949107681 220962232 75335369 780921664 214537421 113966051 361155659 363091935 720698049 299286492 978922922 295315088 886906983 765795716 838275403 225111739 437325928 555022295 330917191 981267943 79577557 815890346 321278250 137764300 829530598 280960187 687823954 970132581 688311207 622617236 742780384 298614373 290912191 680239215 991277581 257540 455877975 967455444 878933074 881609796 728221039 973933931 529592741 716531698 420183373 10643995 801368789 644496337 771269936 4843061 254885392 783941705 626328223 789265019 381189272 518749879 827024781 851770261 884491021 692451153 707511318 350558780 836444726 438643114 491792504 686896680 77238666 30080274 837677764 989322936 284199326 757581440 490095702 967718818 439126369 912415677 456035958 210158256 672945880 100560020 363606419 918120411 918036845 418940948 811451732 703847535 72434136 964710637 393121172 375250124 346360837 630061709 943184208 185778430 991247055 899566496 964063367 989739843 500168046 613118948 821698141 113734169 906465133 199651942 302818117 670989236 255567350 671148437 557973711 995216157 881570154 948545834 715022041 715009113 185014170 781294810 978005154 705911362 714051440 970819131 84077737 801432068 19260551 857050814 448810096 304262747 885646009 852023950 387871315 729459054 18366958 725842484 998398372 736207532 820775804 199968919 591339976 856652491 590050821 820891428 955703361 678874479 505218133 342683719 744775754 381082899 670989236 717658615 810908020 929898495 920103479 565023473 52684546 75985679 90079056 781156196 736230844 20730452 834511504 817362397 848748921 172885586 85968942 946246631 859339747 921979381 971044587 638530624 724568354 296104271 721008427 745467383 137962217 977289185 884020153 78247396 77337474 890198052 392277538 161542308 769620368 321276514 427527647 803175703 703752510 250752877 824326007 979857871 947197322 817260768 822284670 670989236 99266617 965689000 969980303 638580815 781364390 671759587 107380177 893148191 345525476 712238872 765021761 990235650 53081045 960289461 893273302 913079718 315050572 804647567 618920018 930310671 391961125 647591351 277679078 722426469 233844618 9365944 344219568 856547958 323550092 925499083 831085095 983862781 763965237 15438899 913288548 814033792 848273745 945738054 245892954 282381198 360031745 796332929 776435951 660612076 991943312 900012124 686789254 361214488 675672312 922178440 253574759 864444214 125115588 737801685 997496274 446283448 76365052 32334881 968716505 236070213 659324796 826870323 295828695 174383530 463969407 534715096 257647562 561678847 791571221 728081005 364963452 823777346 195843714 607197469 418532011 125008455 707187616 959771102 959082970 344994798 749277657 534089270 202911457 633871843 70239013 824919836 912723380 668177987 755939564 251909126 952214689 102337009 381765192 476232641 90245471 953734153 887415796 893937635 506222925 996605888 677925599 32932313 19423112 792034021 964701186 141338886 330608151 901052585 853705071 444244790 880592768 850296145 403794030 252957413 752107624 818221837 779977813 515710293 982519876 525094252 79015060 272119862 373291884 685457441 857904136 406418541 987322167 750089448 588536727 317437948 695719985 995758212 990485624 773693254 831547964 875298886 925864582 975781239 796303777 321681226 413795499 857223522 766459043 404742646 400734385 133957890 908479509 964816870 348016246 140459964 804833785 770541388 347592098 779827677 710171753 680645488 532985381 828994988 815221457 229176386 948286227 33452106 852849722 802366681 362486666 240678358 173292925 795760548 955035318 3395491 840606313 218092921 737824080 852035062 539606980 602144538 890197856 517230272 151826381 54753080 560355845 378399353 794047565 907823704 517222276 365112169 951226081 717592285 941894542 762754175 993173181 150562804 23118608 310178664 482946735 349597248 283387115 932866844 811107763 858879260 83624970 792932182 936952877 999904556 869572497 713443214 964119894 688488101 762564474 929354490 767954140 440955255 670989236 256381127 134070706 832572302 421916628 814997718 749720342 369018477 289702466 814734223 951333938 977687171 184671203 125918759 268243191 947968397 770246911 119402121 516835936 660047371 419347486 499832195 891422254 738468719 124896768 624985108 16492818 744482078 977073085 632642943 730425193 248083860 892548971 293136605 110638156 531063535 724350433 61455622 927634707 797736906 720741127 211364003 364472390 863581631 919160566 276549362 314374163 375083394 676858975 751169531 255641888 394545692 23429912 934625278 921773321 769306146 608809938 763835407 5044884 57341530 294363304 250796939 949619380 304849476 820527723 483596656 379545332 574468434 953221935 440419845 197559307 928054651 926482172 762057626 144668851 626329639 569131721 944449194 321276848 128756790 485517510 14359508 868645312 793517344 460074477 728085515 958737570 582718805 723951903 805442084 93913513 580749809 201924210 823476029 963340236 252571067 829131263 891065419 900801429 403866728 861099897 242884933 708636710 696701706 25421805 918854635 952533122 476008506 208531226 968029432 845090927 767694836 304927555 532999796 916440083 541698897 710234667 816663673 864180411 193224212 724289445 149288828 54868057 866025254 615528579 847835812 885762872 536886600 551830529 845615820 361680731 899989509 935471415 862991545 796707548 818007335 25221039 19798886 835484814 515100958 380695342 960647197 704439667 470198941 621212055 347397337 882951732 33830916 335898761 981614417 810232632 672208600 692882201 549583505 112128673 900521133 814391128 393114717 981523198 865532903 233019684 853488810 336113291 757102972 802977752 827960609 475622084 90939523 965693624 984483846 418625640 695822001 532134481 403169538 540211851 842055513 484219559 799949445 905326946 717658568 361990142 273659371 569577659 981964665 912225673 208841687 351526908 811203662 858403177 645913150 94247300 675904519 170612569 540190084 318290441 242749477 265471898 789140498 943253879 886331066 410170766 996987574 420871193 843501018 673821415 169337046 590338967 797650014 361006496 943829669 748576510 777361792 414495586 582002791 334471802 706366246 858501540 242170419 897461741 330757212 958404921 497141464 982362623 670989236 52387727 690683610 123634969 767269318 577592441 824474934 881955600 772805424 971297273 620704936 904575194 823709051 287915411 861851316 980792079 844811249 533934829 661166589 479082162 51498095 966518039 160510736 872719767 16848908 398747231 921651625 823244129 433555426 593844706 447963271 821641194 117076997 447400541 825581459 916016205 140255926 775279323 931871426 929757473 817730058 799531749 691443701 499035758 680096900 209215032 312676557 219749371 688076404 779177098 401296488 717873244 29381947 742216817 911954024 701394953 943913058 853081876 175292992 759915203 121447981 934306587 879377990 774465692 554417602 956204382 828137901 772058216 192855751 644748829 904986131 886343968 922633013 473026934 907320422 763100537 764912738 165473639 912704003 780390215 968293395 911946473 614919939 828941901 462127150 458912235 670989236 852219427 990472211 5576580 867031127 723590538 963258666 783667365 825424214 415247809 805990038 919253116 611696991 263944043 215564202 321816647 96841862 888417813 885722248 897693428 547661633 644422155 793363392 949736318 815407966 414848806 117919161 479554504 360146682 944223595 321326662 724519019 589908183 760613568 376367078 18061129 801130357 491918961 693862138 964588851 987077678 862781533 862419025 154197228 702879419 730524571 590730053 814961624 608875504 185247357 3858493 697148384 819311227 219489283 716234831 805281581 795605286 938096728 713831490 255780876 722738604 870083254 980058314 481039218 207164890 867243957 176152123 720495189 936836934 802630200 439826243 618459121 38856174 890283200 819404480 563293023 974306831 738223959 364234737 799502770 389704964 104978879 749974939 951716542 681821069 683657584 844513629 513648292 736867302 990298103 624945238 128648188 750510602 730455859 151486385 625194088 711138209 416904770 940745781 248041159 793038868 862949092 962982106 593188532 681113162 551197527 780452785 585262561 959660080 701411522 515612885 676204590 366773723 799716461 835995058 670989236 509498233 830374066 146552799 178130778 827888957 855831640 979306775 127689784 124515374 207198689 996638832 822340164 458381530 342725184 955247696 395065416 790479724 145069872 593181021 376979044 891389117 924291554 12634517 745574097 677406514 707263417 332442737 756373131 486046288 311432396 543253190 915693418 129332364 305281194 911370019 156683712 936938405 849800571 606854520 85548274 255964900 546082600 682302497 885329334 958662102 863768432 950679844 92750474 658351418 748426119 621658042 914000538 980085224 578334498 261885695 438056963 662557225 769436363 791274786 951121141 674534641 462975242 663299981 845944859 781090671 117886662 37914083 942257868 913945244 763587060 538573348 756946674 80664394 342666059 943026665 805288269 841129180 540475520 589484696 564699198 958103653 670989236 671926857 634329869 977765574 50377593 905894200 588085791 597731091 274315322 576039601 280540023 580766232 758790519 654828592 723245068 734489295 163419608 54703312 776766908 953895433 577209140 804571857 253348514 258185731 324905566 95466904 669325654 707578179 298587072 761211398 110826428 892907734 676871945 730247713 755610211 503920889 727135316 692891494 735001141 683727217 52576894 351827218 729463098 392874331 752622199 958292710 766817670 916704194 391020879 944866896 869198444 174139067 873801864 876040875 622167525 422471349 553839686 65637722 906228096 770941689 819885042 988609815 788981132 263848671 992814330 306797359 727993057 35351398 989205136 924018746 791569897 681857153 234899440 877076522 699734775 832689707 83142327 885641129 54975833 704848847 848036958 468156568 220182777 445661652 716516030 738641145 831232554 566792480 526683127 849106390 892456193 620244841 895916773 866961531 849454832 3553717 666392926 133554495 636629220 901406278 578050638 739894839 452297370 179871401 497954545 776521339 967590710 928733390 256806584 955612246 510384537 350658943 71589715 599704342 744186816 199738019 703282444 767535135 476306037 182647038 554405609 616878264 144401872 936851714 176329971 558465974 824679991 603785859 983710294 382237576 833112977 758453452 982065090 263371568 718245205 371674705 532104264 758984787 840669671 175303355 404448403 34367119 922855728 887860003 886529278 149144977 839730905 704726986 839467216 769197240 680953260 975576206 809147554 808028274 596352230 465742283 820465993 820186326 348242638 774009343 840238885 895014123 661362785 905824090 428509327 951954831 671008034 839536866 550076297 510407243 492487723 86472192 772856323 513696570 896003795 870282001 373054928 788002653 731326656 932967803 660915317 726327478 591985119 663822591 632382912 150886225 128587609 32908907 875600761 797639690 812488017 722702040 204679486 556494124 244830511 494394992 99097557 656357527 969971387 676878068 697965438 563303227 47642159 68877933 126051544 999158046 907906582 250910344 470746661 672442753 670989236 358438620 175609208 591060666 745629404 763048122 918913804 528416469 791282144 544441810 944081776 919537078 110147494 99983216 909920989 414080813 560750349 355762557 843823490 932252744 555872960 229493699 226614725 831074321 881844332 445898918 781811674 268315554 726603597 620469232 324955662 698175062 108925557 438822247 701531883 930965222 426964691 867354510 608155710 229254880 915157537 904751699 220737437 32186614 697874294 822130071 896245019 729386659 863008871 882942091 440346161 698790004 218984510 122830886 838942964 237516373 634445422 176074188 6890746 931357268 202974491 452120756 370481780 912501518 903873037 919697400 712423713 630107104 776609764 827251048 787162200 232876646 971796953 708383806 806284688 171019985 86738726 397532194 393716441 565470041 37845934 811863899 184363407 222271526 390986641 787075858 120489443 763366775 358447758 17757203 682392815 846120920 984206318 788062988 802292446 769047385 908634168 704793534 14313606 290933598 333185007 584214152 294374760 764833879 135426289 204649033 912955360 676876313 925039824 817447816 712579967 796409329 907581179 705684263 871144332 894672476 145046692 596395 836016908 548467662 488140821 91233523 545567552 3367202 867374082 632613339 503355660 737259478 806887351 627942999 675847203 785564219 805920789 482630226 503619161 848240127 303690774 332927168 558885270 336413931 681438141 979412748 761455028 166901404 789375857 59779397 700400524 911905290 531968600 276606684 247423556 831480240 7927580 663138875 261868609 531059651 977012971 697564163 425797360 862015209 682241668 770916658 538117763 688017892 33561911 275130601 899068775 584982005 84799555 891155460 387833141 721002647 36042497 770424410 49208742 20742998 539125478 609912432 188422447 281513777 309879308 293237139 84104979 847426060 376319595 815344346 820339944 808644637 930415282 418670108 274022385 18380772 409195689 356569054 18105488 704872024 790236630 939189313 382427247 833205590 985832553 410073064 761211091 747565361 93067748 464918219 353539147 813054553 209680627 773770735 865269395 685057027 788484468 169760275 778133087 189610237 295537046 863144179 990713552 154949501 890104283 758990164 867611569 442696852 670989236 479331555 679907170 146819816 537981482 926726853 523860365 268683021 118069692 989857926 509290082 961675303 764532986 871297247 115976159 963703983 517540553 978215357 64166740 864401305 175816894 513334659 798932912 847439766 646052815 648574740 480440960 851826134 901875549 2467592 846590105 304344073 509980449 733616933 913192528 316202816 450924783 508984052 552594786 194770846 150580421 901545371 25382030 618489935 318399663 936217294 815634364 250190566 972200580 558400433 181579232 567220408 276453222 841660898 661123624 922292453 700956866 584216688 191566085 915767860 290039886 874901039 311945317 894404173 474938627 270410398 602284573 626127144 368472587 137972757 934595265 812094815 784463293 800908583 842795010 612502491 211528059 139417662 771612630 844311942 259179128 937142084 76935853 356249359 714316886 773528358 360669202 651691715 970571387 394070077 957545102 864627891 606894603 887255169 590374541 602090963 983556595 434981525 969739897 19088225 894612630 180692170 139257113 69083890 729365628 682059208 962631256 381838024 740458730 708614322 718973733 354097986 701044521 825091966 290465369 729620144 842709510 254007560 493164194 294553329 194920966 924379589 728203665 984089780 68457566 415905176 753005299 399315771 471228419 111142311 87083957 944588346 818217072 914816124 532445095 557045114 949161763 785540320 917593109 775832391 670989236 189303683 625971543 632147269 845678096 100292060 468651431 764638055 589678095 783178099 891546033 966082040 771244684 723645125 609799836 642478904 619590865 864949834 909418957 229841412 733344509 874174527 498632271 887184107 529502558 137727309 662659153 869908211 275178986 951908918 373533434 765930639 823495210 864717358 669712574 744761339 7239104 969026286 833450708 779775544 844485100 796800318 555025518 885305612 761931402 943711246 517167423 414002605 680104561 71457913 721077523 690135230 886058452 556973314 450076751 105764845 974860278 308497155 447071582 429249115 891602949 514985045 941812002 933275740 743187330 912699362 895269131 890630323 458441931 580564649 660362879 896594199 718388221 663147994 535188694 40890811 743453918 375445334 485725334 887326796 130633691 691000939 171650391 834721059 724438335 88266312 431401802 746112872 315455363 806896239 352846884 245508455 753570901 994565110 895126109 300609767 626206496 940438921 802744363 303100113 141589067 417106923 836931391 665724718 447163511 746127277 774936200 438933437 926152752 685034892 212888564 469277084 721582593 578330419 919457309 875134178 731834130 965888300 214248187 913669720 977223431 27167075 45252856 740258212 949612828 96573172 545487227 466849933 754145636 835097790 474205861 801482314 835763596 241582004 999819555 801851662 832998493 835119488 923528817 801536871 734870648 601136566 113153893 263279838 875533376 424478788 907502603 849159721 679625370 76184821 190972466 63902663 670989236 588182995 184846771 576599173 963160371 361332170 930087316 238582798 831696133 844155374 948450769 891429744 670989236 697830362 415902710 102478291 924166504 16663507 697627835 295055568 967160524 843666376 113054603 671949503 887344181 357966248 865297105 655348466 264952242 756783133 151482300 848838107 176061836 897388021 939705641 419701833 941924598 903077506 722888872 502585367 472793424 764704304 739480555 106544366 949433147 586824713 890414860 267863401 353585181 696510656 774488566 528209413 928671419 774834440 353380935 202638467 979462084 222309500 577102485 949063810 726436061 260504630 272797327 929470886 212165233 887151488 144151807 228311936 684363198 625366009 536210434 214560399 670989236 519874958 59719427 761262107 409944449 10919008 282268927 710751618 255516119 762535630 502180435 422980634 664543293 670989236 59091548 489035854 770749736 150247327 354655364 905457278 955574348 744569983 784868092 754889171 948118516 630890148 695429663 817880524 844721349 245840645 835825035 828582420 548266930 382058168 901234864 817680626 578134037 740729602 745939088 203723951 685540377 728415017 428250149 374435828 812185324 732570863 972955182 965709564 778258462 919874502 366286953 188082069 798526287 981839110 116125095 461849011 543585414 821891293 438410528 335066002 273574216 681866190 67343408 344705170 711433288 586201867 722173158 822524447 521412042 727077451 260537288 670989236 966191148 893567299 863297154 934137661 927808997 787980880 407212317 894586047 663060872 433815152 866920486 830159197 214727056 958487187 956904147 841686826 555864630 31625369 216792306 990873582 308491476 506574269 578199857 311691255 779159195 916036418 903334505 941246123 887892285 957779288 270088962 774633073 823656332 529743910 643753588 752623731 175132170 541806925 343861163 934462769 615433069 489499485 955135670 229895374 678556701 259831717 850477180 61714727 111475950 908157958 96858125 866406604 588769559 896971446 926751348 316544192 22058197 661075692 280497262 924236910 144951549 886801217 878425386 694111986 570267211 746810653 33367372 816467490 598108353 919536374 180634802 924824784 761992811 710453797 940116925 957415951 141107840 983794114 666564883 793870263 800732536 625585328 400531085 349313202 803386503 125080016 273248642 760826650 670989236 754277019 583349565 760656389 888525517 83677503 323123830 892853024 628272258 688980225 279537705 374177582 942649602 647584184 775730305 700100376 489435177 918242831 577314919 852529041 301188588 122000461 845883388 722657512 397958884 27280277 903094840 751214434 916175539 839875242 341742201 683762937 255754910 781909699 515398944 488624475 318023730 759467128 670989236 876908100 29242607 825328239 482312767 802585712 752979860 772816140 797876541 676565328 694765537 79173773 562298673 741060191 586736104 980750598 581423919 818922389 217492156 878343414 149169353 201090302 413083589 162495767 286231159 451459334 938108732 464823760 360810183 956210628 678471018 601972293 671112519 874162340 145663589 320622945 523152250 866135777 262662655 248821516 963760582 621051385 965743381 989729685 759811225 628541086 126804394 892936049 352184817 217140245 700706160 872535788 307882270 59351522 140133260 64289119 994024855 401176383 964321004 462221155 597717183 971674787 688076218 859337849 816420930 102503210 156502436 78337783 159638352 809615111 342901086 885908496 647099404 209624904 780088657 855308978 59965307 695927458 583145051 670989236 215715579 501224649 737543578 765863704 700395901 710125436 107373596 976909575 769425481 453776973 873745575 112983262 742505274 371619663 864783299 729558423 148071519 725001037 939793093 978926988 402017875 713900674 846093595 409774107 526771551 876978466 91889023 967679759 980567642 680429167 465569719 884632025 648916393 704828739 991087482 962350237 519423327 362731264 402331484 986846264 920595716 813330468 978621701 403155765 608185640 324315807 805888267 494936966 996804739 642946762 108995784 785160322 36754292 858492094 808980438 825698428 77483141 926181474 651302799 261677213 759098388 248667428 140074199 719516450 698544725 827887917 795045196 273644671 412381170 300785174 878031445 757289155 170062618 490743715 249230228 457668160 490033995 584840655 428203248 839494454 155332051 638446334 206111184 641807020 596368441 291460566 162946682 521398477 566161578 737653537 797608897 44160037 957403064 957465857 895593339 883511962 853392213 523245941 675327201 996987248 952037370 919754150 15430091 876543480 810022278 26261151 214091171 96298064 703459854 953556490 800491254 736035999 33129116 668349886 179064874 896454288 350567259 986036139 140679341 942869032 856879074 76280217 490201113 804065444 670989236 784432600 758092774 838397261 847173930 857282477 172305381 806085188 195948327 808969684 323430126 815385627 920219453 34732859 797828216 857527176 719675045 312895309 804203080 762203190 970415649 671462987 766939115 920006863 907497172 736592983 185232475 964738366 926344373 820971170 971120649 609797770 22192974 670989236 81123200 705922125 478723588 635207211 393152803 837970992 673717398 670989236 726515712 929097190 183491558 910983199 53546589 23980846 369218100 595645847 968284426 899468527 619368787 429510168 749843309 356448601 765830782 500893348 658294694 443947166 172143206 377773344 662362262 75452785 7492843 68670815 415780045 939308459 143578974 114781059 514913017 244038819 812832960 338551378 38637917 981330974 787697056 795160194 328007262 262279538 913299234 792011647 886294810 949067599 316395732 737426324 978379154 434594096 833543815 401344501 48544505 332912911 207473954 812596574 588190061 675743283 822390028 785465291 155662217 22613871 688112765 479895127 272406426 497305639 854493551 530625789 303619800 808027856 667928192 710613347 283281013 766135651 967495540 68939041 426315144 260052099 228270316 753151743 816868810 181448814 293565194 458360960 720476277 963003720 825846325 850768634 490180454 527606891 957609904 690364077 599181712 204408555 960805165 923747628 852973610 951784527 810641525 139656016 907688122 757710836 422448119 693176003 390029832 675413982 435213564 263990066 718943400 41154589 798842511 750390161 987597688 747734820 324951922 201422890 112017697 28898027 674411336 424226308 989825086 733207891 353884975 299297829 125709410 398996597 725329204 670989236 938301194 919499007 75747460 312042568 380813065 46591958 893202969 980757537 681356863 879133286 501572238 706846578 271169852 461645422 698872549 816200684 386967485 6131156 457183272 963693544 937674775 8219727 934743800 639581819 623677217 720707067 718404882 592832359 754026949 874679452 106515238 729789740 394957339 54172906 139762320 706572341 534837281 917505895 936570700 303035334 749641545 486399532 855527127 501700050 987979102 602215761 534685367 759005667 234986171 676122349 983441461 68162927 362625293 833622230 787275180 789414020 987934418 780102334 647293878 146034502 520878283 991484360 792548465 887777449 296359321 984010523 769829388 318038514 242972257 798206193 304772790 563458540 726323754 901707719 16394177 93820684 588100300 354732933 5279828 89984562 101513951 930650177 789250532 778121657 897529840 455442589 246090908 902482171 955647966 88551419 264405383 933406001 701558431 71771344 206483221 24392422 689240819 245611888 910037097 175744688 57257447 839198352 931201350 683561831 249630096 79616578 975928573 164218205 232366394 588954728 144694492 471280180 816614019 670989236 973036610 517125012 718192002 918475012 952292379 862723471 996531065 409352856 796883993 865650144 642856500 808015059 417164554 230945975 532742956 838736977 320855845 208843113 944709283 699737179 875647151 390599864 826368792 279551826 819145318 74308892 12764067 860443252 48884598 784190332 128166475 38787692 933433777 757666151 309186745 541311292 709667441 959955328 551699334 870586517 565723479 587008858 850623217 439084283 471012962 700142973 884674045 491041820 670989236 952193216 383852288 722116933 882456830 480591512 709810505 917754076 165745808 48588306 934898844 792468666 764519462 612629077 223039901 147805739 990679704 463901273 545654095 907113966 424608968 739928582 346372717 843020813 728666191 812135815 460358088 54937003 401056491 931763755 949782047 23396614 118454045 831983848 841410793 54018682 792969927 539646925 506399391 200621959 547127828 890187166 838539512 670989236 44179850 43198175 566130887 971584273 213141447 495181009 670321476 988697146 476801688 543185177 701705104 761592379 829711302 382193483 654944083 343785443 808539029 531692652 80497792 967005698 854509403 69231310 851689126 601184817 306762760 990494937 697713960 925239632 832117194 399008669 714591407 861082052 628085662 467094851 993631115 631312147 824844442 308360873 42084418 138009175 663471241 712141300 962324632 929189976 431076527 693694934 169108635 61986331 253066403 209748080 560494709 911460630 693861616 876570335 838908833 179401846 651546502 656926881 479439483 996135319 905299742 276067831 838271036 855404705 142371649 1463342 205086966 200427859 438414146 905084926 580731963 936234971 251604507 934622907 205598389 269668378 398496643 671267310 696828276 779294012 55783868 800902562 493172914 984717397 44433698 363834384 907428728 701806889 905688076 200088754 468505795 945750923 991911709 733156836 880462550 807241767 807361809 794847210 410669976 105896183 926841682 240554685 100102219 819739443 786189090 427122661 727064848 875250120 266631618 546734770 531750874 958737216 29559067 290239475 258361714 555782157 709609273 903455428 740652559 308439197 105763470 668292548 716105372 237452776 673715640 514966996 93358751 963662174 832812715 883447117 539625085 275406418 733344254 200556319 868531120 973590569 568716445 899561298 901681748 257160640 54708657 670989236 13866993 596814738 285373908 859449640 464303152 191854911 503526255 942374228 247601066 172929925 496891832 121742466 620423759 883836140 74435296 426070784 938658583 757823702 809600083 664588242 18680713 963937250 485888386 898547311 797003940 979887934 418869066 829369717 27623181 1991921 748010735 924917116 701958532 662642342 827158403 851720017 430069217 610315768 786808931 661818662 677708019 939793532 899161659 797433813 179945421 901372866 213810693 687133210 708814602 780501526 633337794 852245173 815782883 726995004 820438626 843643188 675230476 373713472 875518493 945204823 181501503 730988011 921453547 793641367 771829925 933980909 587914621 928213809 948396723 661823821 744498152 686845192 439523181 594348075 868554153 831502878 835939763 105133730 817242360 166398274 999462993 934291835 689897490 714398566 673997719 954414131 559120231 470045044 515034045 303896308 308885847 63416835 44759321 624675612 529803025 776039958 832504633 404861418 800517733 389094383 901114801 127457204 361789022 851381962 346953427 430215928 186603479 882498690 981855078 902943054 771885667 476028825 468951370 739941684 673892356 473134914 960479319 456089906 775578405 128108206 781656384 883595560 824768600 710628640 174929933 627345032 19415079 366803526 804502979 699886396 165838445 587271286 912739057 737622715 594708762 962001666 44918099 311776296 684248107 768107317 481953164 996550493 928922362 96659909 323306087 717576668 729454062 387528550 232342418 849510806 841072019 981552635 277850921 741036220 922054292 694247619 421115464 384760690 808469823 352640505 738845696 650628198 841484882 661491912 993910104 961465633 677896298 205788503 828209572 265962855 927031983 113123752 521689628 854776588 555184749 802744973 461096038 998632372 7763187 20284682 927993897 981820775 6854110 887543318 978318088 850117830 221237533 884708212 813208065 178901038 341265959 528959366 785975180 529606354 758355010 982719234 985158511 442330102 835168139 305038872 758854349 299906554 724541651 10154785 968142073 778777353 616570610 61583680 646236710 192438885 391851613 281791453 322876733 36237299 895814438 670989236 67108091 915644575 50998763 814025489 818671163 125130049 707415473 319252668 642464299 842871811 470474227 251289142 527504839 948285324 575369511 327802908 56276239 807922794 625292366 335161367 536128611 981485364 76977628 582055589 269297765 735476094 704682782 768884388 111023695 907659785 476492081 353444898 586262324 977083261 216638510 131501894 494679113 217036800 772886228 47963043 936905009 713230544 680523686 965185792 756258360 534827758 965616860 919931140 78046567 210764148 496166538 823129836 701272297 161221846 24585053 186563923 319166290 141594448 549793908 959097491 286355955 33965407 753202146 149967346 973522847 749288997 359964812 716583490 804905547 7696831 992859562 537580309 707971576 482253417 787327027 539442525 205084620 251609627 216678084 214325876 47305531 149705295 490270283 68689038 890065708 380442637 544992012 92556924 688536256 199474087 294051917 747507502 773378308 525147807 799720785 840455374 237552757 276167317 700595918 568481742 786834198 727097675 922002624 892119553 878127590 754271058 931389651 83920832 908666811 573706724 288742726 950844304 436809982 726315092 813197451 274018176 786002238 745174977 760203545 473235391 797622280 989604727 816150772 562138787 916573608 773640559 670989236 785951745 851533655 760914550 970788433 97677268 975430415 775863647 768680276 771235452 394525759 939512932 270045445 806483824 489613877 781616999 952761995 934360404 506987062 191040 151955066 507947852 49143899 725829220 983001361 891125036 682800259 625944943 276256848 657985791 42264380 876747832 475770952 417557788 979338861 331081287 776818233 17424513 669419776 115479184 901748207 913337487 944044992 706174272 866444179 677704775 598201628 813047518 873949324 716337585 689191992 440858859 949717584 702390212 738865000 703257442 895267316 939635041 359833764 868888005 425350543 674281710 247624893 821413169 372607675 656033929 129182737 830768488 133620101 827908301 882354922 379965707 953441695 985386856 79680134 234456836 89830359 633986169 80861184 844439649 444981559 186531965 757422527 262276424 592260637 965628424 408103291 203964873 762324930 85228636 40008805 226874569 783501867 776516075 116573559 508518671 166095611 705156712 907264026 121468189 43127551 139786002 823482933 360410926 478987154 705768373 205098066 177055102 491441935 845483538 224995088 888533701 821854440 884030883 251312772 442227153 264266554 970951738 845441191 879439950 171713888 215716031 978292695 30344724 796101042 947823456 600931927 255110917 594939269 758331788 847553799 846391295 906648815 966612169 781233345 780782664 777238800 114020489 188059023 569546363 396544797 947223221 919622939 438168499 952419551 840706219 114622478 683679746 342073477 417207665 727611858 719087552 89171173 958713472 754921144 928249677 503058850 831209317 259443905 20521676 798826919 939996681 649944457 169797544 128010953 36529739 858807996 862750040 417585428 482975493 375909684 750504273 504178619 498525345 468197335 186587845 997590481 354338038 505058830 957893540 731291246 133006695 826364531 250207840 216060105 814378882 189386895 878833979 905603281 649227991 736073408 807984430 546934091 841285410 212121808 743900161 888099598 566729216 851373535 492467748 192188830 564443707 932203114 176115568 859785423 719175860 121390545 554740440 793636168 212359081 253544300 431638368 144368621 938532472 752044248 725849165 404375029 959782166 400375991 869914298 799095320 905711373 792674217 498004972 637427116 971396699 912162047 683507655 996588988 684517624 951538896 878725576 256991736 165859401 658614092 751197918 218863798 180947710 405235941 504341858 807716828 429185020 554050672 954491203 118436522 706851594 257309 100222903 894520269 920761360 477488653 510602431 606551464 520191185 842516380 937193642 2336972 375453805 929576601 733466463 683941413 827235800 121323853 703566602 726901346 290924345 954473601 715695852 965678227 78297400 480421001 831843797 658770870 549289952 802929157 121829990 742006240 192607213 450081641 524480691 622393581 755330720 431759412 594510452 848997189 484867374 266774410 934028015 211447107 457552575 427131844 876004610 578986720 821797827 549433732 978711442 886570639 20349416 525089469 458456334 400047689 37161949 639797273 937814429 407465233 368344840 204676527 937226393 871928500 382030926 449308428 975915614 591671648 611967742 902207095 740826979 882273897 535201773 228695213 911020129 121856295 458169422 926128576 77639441 835098405 963272561 458870086 171526741 839967324 225707050 150666088 337083401 114139547 680864767 646287155 240204991 743318957 423580655 838853557 695428183 288150728 427081562 668125931 821051633 984056727 977932910 192247683 561507871 776987665 920252445 813871633 997749993 894967440 938123831 10028834 876730646 978070950 206020623 273586127 915783533 478909679 797353231 744618121 880511584 213841320 499379988 865972322 39595455 959338470 397214770 762658643 310430886 808116713 776408974 986516691 739150577 839129560 161336276 24851638 720652293 342632022 687439200 898294747 445741519 217321407 650881906 670989236 147297014 178454237 55482317 41851783 966855725 793984278 535989202 701908281 675250930 713534851 943000084 3641794 689291051 770911585 284868560 872206128 945109439 879251096 881923843 699809455 969319022 44667323 638760201 897140040 964540249 510762015 818742139 817992411 785439309 899670890 966583777 80179879 905895775 24515770 670989236 800538379 971424687 546765091 810352288 862611425 822383251 821613927 491644729 989024860 518224592 726950082 886603686 433696688 926513960 201795568 801933957 87706698 373755073 516758408 406737166 870489305 602287238 902741064 875683394 676985042 15461382 201578700 108003381 306778654 10108305 82601749 711875720 387867455 280517729 770859069 56576055 883862247 802742853 853886363 396163888 938516094 692050502 726201298 121097853 776111799 580062166 765587273 654186317 975774151 559169461 3889277 255801423 965500468 795608976 857556188 804531534 300726600 572532488 373106422 285024033 937250168 413753958 990266986 447158430 755806275 674053398 95834890 46660979 818404865 307390967 87351854 619199814 796629561 882341381 335093732 631498868 547215520 825611078 489868970 188974986 811152685 295102659 973235334 158717662 416167559 673054679 911715775 124781904 625396462 860427584 323019866 647687018 268486918 257349640 396699035 104894196 311602030 841055201 345083903 764938500 778690294 229436103 988546485 812137714 820628533 122013963 576415377 844980423 992050844 987545476 978169543 172229887 569507453 978361983 991286563 859996803 100934376 454326384 839718199 877459284 811050209 915264433 181034680 363212987 872645386 123472876 582364837 319391565 719643241 35839444 884755420 36587729 887185030 955592351 40755042 246015336 508388920 598741598 935111300 190247925 977033872 617633679 352275197 670989236 61932787 670989236 172817734 859799242 316438492 144444193 812083661 688660544 79001457 829639278 151287248 838892825 253095751 95979299 165289987 88307558 43569533 837088104 792817582 65632038 826529395 653334251 427997374 871814607 769143684 33642487 225681893 394339236 15344174 974509122 276103349 161772044 163382119 743218043 779203583 38634759 797260636 849710819 636425584 315184770 679246373 905574558 81996301 37023512 311644858 407935360 505991868 375593704 883876649 195330282 788488223 132838311 956991914 548819457 836339843 424296626 425941075 343798245 954116526 752944558 582095712 820198832 949040059 36868059 447052553 762713267 501890657 670989236 299797385 716941551 85982127 15909091 738985648 918284337 945103994 924511278 48705993 415822547 810136047 240573236 690901726 513430042 76257784 980175108 96963719 936426392 572580147 670989236 922101965 999464071 781262985 87297071 886360560 795011874 345645285 822925592 250898180 833307535 714052356 229889233 479896239 270857993 181612043 857747325 921857844 714975245 638095138 398537671 717256269 958209920 87319195 472884364 802322577 755663524 832285190 752824240 920924939 838326074 210870052 347842398 383156643 947057024 68981994 835877978 868278429 979879770 407265145 687024656 956121468 357074047 48706366 830357023 623242057 998719824 908361416 835315672 356268323 114144358 184577342 216055867 670989236 232843310 362743477 923400712 912731816 965488226 383113882 815802050 518057858 15205673 944192911 449270747 727230634 370188403 898541151 838066389 180822489 358018875 183755123 934181206 883991171 902053827 878504503 670989236 984471607 693864303 979710446 570215285 988887750 994032208 380236693 379677371 15302991 250777702 757331189 410440205 943934492 142468070 678608627 39197668 621615477 637987628 262750725 583287993 663901882 819890621 16435157 987739145 574713522 357099230 547440447 771393962 520969563 813820460 769031135 670989236 732934801 489496110 834903383 640778180 96429442 976645369 701837982 423219868 614442320 805760233 390838828 640012823 54992560 239995905 670989236 957055248 917191341 236217186 762997995 294626592 935506772 890598840 828639263 654185732 885902708 894158550 987354561 878836327 703204389 747509226 688926814 239366585 385754715 710720202 803036890 756185850 952677753 800801342 288075638 906471638 738430491 452294147 677068574 726074260 972249249 360481299 955439961 920567581 992234650 539952377 620564149 114089290 951068237 829633380 758938871 999508816 710587902 92248478 394428783 891947129 788235246 996756984 449934190 604760390 812912094 471584367 33210135 819388283 160489720 160918980 970649906 816556921 251293040 815228903 359679952 743125413 175194249 973848360 963113795 258720048 806118171 938603027 588439555 952958579 246941963 950295283 256294407 87419256 564070718 429860312 770090927 679120973 83663420 591731497 26006190 74081872 411247816 176542196 881952726 654345330 790918630 975109155 870198426 321153116 523891457 970108417 596375995 847183014 712247157 233680683 29604409 651621450 610193474 123553854 789323459 794707024 572556594 517358032 164362203 839851175 670989236 622169030 974323230 858590335 670989236 792123781 596002313 306063721 479028259 855661040 851601745 963934317 325601587 409737422 328569661 918972899 850824464 261498387 863899890 916491771 919677983 840435204 525086348 611788645 714392083 947120608 820257412 689561306 670989236 750719774 733636349 427244710 635453686 824551335 491289825 232627706 364546721 611760762 463018260 247337189 893924406 248879109 136859140 303574584 105144124 868349711 824514428 798960680 955141287 977179061 472942760 808103903 632335632 189203299 837581016 757580673 149235536 499217321 720783326 810523830 577618188 883135546 120772394 298818689 704842027 690969344 786189417 855082862 83826685 455820418 992324802 307366368 621084579 543955062 974898332 691183803 646118218 806542496 871986521 982907399 342912437 562499329 833458173 168209461 169631549 990704611 24050297 982381549 904976315 60697910 853380274 64084602 408308382 855420723 975100662 700196856 927179075 554303604 933616997 874509510 388178044 594994696 732361620 846161783 683651881 402774202 978928790 993977637 810974720 946545440 287984804 647545056 128882143 7021637 735844915 74709963 101277747 901514520 97158066 111129397 727509350 744687023 377246129 125990360 572704776 562687693 960239244 691786233 721762154 886631975 954932070 223423253 842334615 399658225 46999503 806902826 618777695 826671370 808493061 262713127 899145621 758632073 791651549 846600698 734924870 876894789 201022443 420126714 319363081 572832118 752231251 610287774 941523526 870032059 415947933 641068204 276735922 913734676 520413802 339670308 166860824 823574090 779690531 621628811 631926784 974164785 9479061 118263212 527838190 821435530 213171508 804385270 973600276 951979978 984105700 754054325 978975109 799262635 64561833 980976033 103742965 437723818 732690852 602174434 996837109 124968399 380868956 528935163 512654748 702489023 151740590 799163400 741966098 691377018 315634872 1892254 399607078 757154781 504011286 27196772 248472517 778409170 624695489 740495821 976489758 264163949 287973967 108749382 802401590 829061535 301255846 897312354 779367040 841762554 136806062 439718631 914929567 165262268 378821201 167820515 95096 717293350 814784547 184263149 600860200 841117569 607181831 604522285 810359536 934354247 944052507 694177082 455324001 288535587 968452697 895865321 587678149 540074500 70708341 159511541 626229304 218064405 462620834 373070846 605112910 242542199 461720496 189598159 963960192 987208913 641190896 802482661 33959719 997367854 215443489 727036013 315938587 796483309 345823301 890659941 442382207 62977541 144587426 691958643 309579940 790822884 806009291 712789473 760570341 360639332 504868695 34664323 76217965 943510641 809118558 962547051 55783191 932018759 528590229 823539299 100475377 622543445 689941990 334577227 803700271 25442325 175990310 672388031 825195011 817819523 672095307 421011898 154932813 859344836 693361555 730639592 684868943 66847339 830050484 559430935 447694170 625573614 952988827 90530360 292343116 208993492 924229972 598160981 104887838 506797730 28209348 238733635 523436454 741755894 757706345 573265979 19621574 353364299 560344516 917830514 181978803 903204485 739910116 670989236 182596569 704047166 626597306 677845949 359321016 149551495 831479113 744750051 652280778 773253523 957856565 843061657 438668083 978919109 408148213 583322708 894405682 8172872 981330436 801999733 859604137 136560844 857929573 201780182 232638751 554478892 7685300 686580544 660616023 670989236 837318488 354935235 44114074 703402406 498556468 224849418 108611319 21892178 778218478 505587251 670989236 654354836 127708353 546660286 941402841 367430471 156485107 849982715 30850706 414840830 818068493 619592580 117822955 255292397 999493660 578227541 810743330 165551112 703052224 857133157 438869914 786593150 872200618 716597528 667865280 968320459 486243705 567342878 935011444 729727521 414160548 523305381 996815120 731799293 517022638 922014793 638514089 154068177 460493938 807837853 951460548 767990409 737028864 923469149 670989236 847419016 285547759 15453622 6079519 178302968 323942693 786635142 902375377 361526331 674477705 867436402 785351559 786977103 822404847 868752046 892653075 249263205 256524955 14006144 842750369 866192178 926825734 301872731 356731102 474956461 600182624 972797374 897302377 887008103 587851683 728527185 311591168 952753773 741730345 989252106 564759325 688142165 411499741 436391797 173530674 279553644 191279605 238082198 376792019 585256532 582220194 978064689 602611229 696542523 637010599 866244094 734818084 928469810 625279684 604444513 696654903 944297591 868917637 841804177 478637401 603749074 712292811 155285567 311682757 690101094 693869084 699128576 989841582 799078104 293955155 975865727 396805107 104537474 858054933 289489321 334923992 339473076 111794606 642411554 963497443 742727952 115823698 179139876 258999275 140504101 881213679 851813204 813977632 55038271 692331286 753546922 112081132 57514705 919166960 681173604 70097413 910651920 997860982 918526430 966692446 902244140 776572526 13407681 948661767 317093576 884998052 288337493 202628974 989005426 926811863 677557641 719982317 145359499 972224233 470003112 670989236 9432644 977278663 317051491 840092880 955727499 924457391 240796085 179195975 140592877 818835807 230619345 722190868 691999230 969670767 284686353 826734080 670989236 710397571 325456970 647638652 305437621 253623065 990082869 898062632 847244643 338218726 956477816 68858920 240303419 721716528 931754088 891186170 786151253 439011648 752179980 865778368 985169058 592591740 420488000 881343339 727513509 701282771 263222330 673283145 737244381 559773341 853181717 15825379 532411925 48524100 841159493 921178485 204285908 671790338 903764022 193243812 879886740 950323013 946906389 751034475 740692339 790538938 361652339 37764341 974843077 83250878 30215162 341249731 67775525 408237393 878351584 803434705 523408746 849034493 687649042 278893733 982824771 828743150 153534852 165060032 902729780 580401815 874940247 966137388 695864607 512271948 969373366 638509309 257512857 258591866 379376420 343752702 133803658 3483741 950682189 912544229 19841156 837047343 465156035 826234427 935382178 73261965 452199987 281996351 676734161 848931444 991302736 878181534 867813754 747086679 560281150 980233192 674211114 397317051 567742507 881599699 889137724 887563267 473003660 863097987 587139912 978598310 802768080 245218820 449517148 588659031 886738144 818213727 659478611 62765886 111020952 262944932 567638381 37321985 846063500 901091754 502875474 670989236 380978894 488831476 828451676 936998879 789112226 504755163 885256663 588346447 897438827 961092388 352960256 574635929 277150960 950484164 672849617 12889058 674550644 851168681 769585573 816079934 520810534 111998536 348089310 758980135 631822187 592777362 29379274 755965399 72266636 690371439 779851149 843821557 917756877 818099116 914690329 244800921 817209593 723995889 703589343 232934906 615564091 670989236 26962671 378560855 762416225 228314358 853082916 927217834 663144142 952502321 479910777 654840085 871475312 913837613 869122276 386832127 52857551 819099793 778199859 966964594 952995703 752792410 590963301 542178188 598654215 875428895 827592094 776400031 751670497 121502391 333284645 695209668 911353933 920288492 703890841 735106604 554880165 856256910 820222254 562048878 719341768 457781984 528237186 872662753 5594517 83195415 595297933 337731067 910578856 834787600 159218101 950149857 670989236 339742516 229144591 901779267 945500004 123245840 170026242 958518285 257172688 834192084 812864932 746344309 471539300 632151858 652485244 352386272 49603402 373250264 834293940 641884634 700500701 390877537 911877898 787227298 957830643 787428240 961763152 570400038 388676924 230006464 371662772 245100536 993531792 164971999 238865303 685457274 802831850 193754930 824329307 670989236 520315023 128895817 866459721 745363251 999882655 958802859 687799167 473121961 841538999 913204106 127954572 361535789 799627420 810957526 228335998 632185066 116890342 984697623 7369283 894126401 298661004 896350242 676682169 320924391 503050753 316327033 833126929 408299995 983198615 741740240 693584012 968351371 948642592 768203228 737520962 10480482 48100701 340422761 692374336 723916169 569970870 62796908 759608667 88626779 584041101 816652163 472403913 58804816 769543164 687236870 626701394 719765300 700061583 786355751 877938364 932608765 417306055 332196903 227753828 581061474 836316948 778734479 132285475 378165685 191227247 810697521 613014582 167468318 763117751 935577082 933981394 9037403 364227898 600907006 810016965 3917463 429722462 910849376 84690735 802156217 371291046 755706248 768391838 539776634 322203582 809285346 900342403 81947933 729189464 962201952 989083381 515768047 73407252 78809750 880463403 863843617 650805239 866167797 867064007 622134662 961269374 845135282 483513094 787820633 833747375 811234471 816313057 638387688 606003382 572839516 344475120 788955785 787157097 726978727 14762879 411130199 538839370 927456577 748673164 109925052 860458004 624306364 720979163 429883822 742282213 788897426 701252056 913772941 82932505 802523333 588008390 409111215 936050944 20826146 780249924 591945161 795352049 239487587 995657230 371313825 864930765 689143752 252869249 214955012 836545002 879991549 680863975 519202261 686663590 745485766 207544267 348868619 613308268 938630475 96058067 971922980 304196610 782411457 848176827 732062692 119876055 193940883 36322505 956770398 990265877 38011197 72571717 92539602 244107740 213459675 584796090 244708497 946391555 474978312 725293228 570815170 115462136 989616925 869759410 470601978 587366549 945868938 305621246 721430009 433200771 198063107 868375880 66098217 825472379 75464389 715136949 545865814 637157124 788836168 967922858 59431998 510683322 973320632 672633815 647212380 206525306 973797144 995827896 902187371 983812427 318881808 464030810 305751034 308509997 132555130 468832391 423360493 96744426 450556956 306055698 691688142 283275486 713304075 910252412 615613839 420381404 611210435 29554316 693229688 348132794 352875668 714369297 626072954 792910813 850380662 523836160 564584099 919586787 444008199 215105572 598048602 149938183 797848886 223281816 193324867 963737450 923379386 969573260 955725077 357349630 622615145 869775643 838884510 475426962 222748644 418502255 720551797 836342953 954566791 456338237 821110726 791485983 752752529 765487993 760610631 184552693 978302826 901317042 827227122 712586558 937459080 955181662 968880311 448301102 515709124 534315514 886326833 951007501 774922771 87146095 939756480 264576585 956307464 726318021 701162968 818835421 842486144 962701491 843732413 714460903 746539595 645138339 651479271 318917710 670989236 517483477 57493625 990871137 690010988 308513051 993309278 670989236 967895000 604750713 618597239 895918136 750514902 719730892 556694737 174095741 882395178 54181964 877677285 837480399 998638317 347220693 848123977 975479789 303690867 636880312 768515706 670989236 176211947 471052445 172921205 566036843 889062674 316599369 794303033 451395074 828227038 309332482 259334301 790264170 192014739 232109432 340620947 709665186 239393458 784770128 158255549 531155104 938985106 638557068 713811501 676505542 77386385 226742569 812033033 313490287 958139 25846760 781852997 660086582 985608079 944544351 287490335 660006765 372449912 702413254 447893804 726674974 675974610 777395478 352585555 953730962 354485641 550567934 741786865 43332176 863225948 564666779 62107129 926968328 777461750 463556940 89442815 798623814 942773042 311837931 362056626 872325275 932608687 980931135 190549632 707355262 632005766 750490476 493610062 814383916 777609271 555218175 147456392 358793724 284112479 769950714 954581528 629085448 713459884 735990151 327742588 673393752 828998437 966464248 985869868 997413203 617827700 143133242 276908617 767123037 782967503 631686643 7865299 785684576 594851822 138158760 232039264 911290690 792327254 237263881 670989236 970288260 83133824 736756290 5485126 229472209 297954186 533565591 265107022 71865135 31428311 367077202 240983100 988396721 991442963 101210404 878137462 699395046 670989236 967324163 428813327 753148319 596318361 70685115 634532907 475566515 341566342 926157510 284215053 736017474 758592114 735175227 290001054 4491715 670989236 352109422 907073796 35642505 838289520 155678682 917521915 273246332 941991515 698940078 241060801 515203858 829177648 884198553 941758314 33875293 486231816 265851399 649272360 950817880 923457310 189039111 407374795 733741604 425586019 806468679 661862668 251112664 686703579 507763454 794190010 852060467 724476168 709398405 246437425 815024175 945277040 907468337 29921489 678468112 690205986 670989236 20738002 742330292 863682600 846725358 338243364 859155330 978887021 328654011 238309609 53290237 580332014 365731994 705240723 456441864 845145113 541264270 749712032 513357398 826911182 634645967 105338552 239844264 715995539 109005212 874438776 978442493 507618040 901654212 959760423 864001071 918513776 736300544 903110050 687732986 289407199 333515845 527952991 754134789 518827988 814405172 400038278 955695627 31707669 670989236 332934178 944612669 70346631 171970415 5100559 781637644 93205945 901689463 658996680 856890611 520970669 839853796 898146807 800429491 554839587 938885492 138585736 83280815 386185992 988040609 688063043 598070087 140689152 918410586 606275178 30051760 687687704 823538344 467972347 145639179 888113956 703669555 816761018 67166991 408638151 657297051 40431600 373204661 5684087 795560348 137434111 706099485 146797148 768319604 13850381 109054851 931178204 37547351 999104969 65132441 762543379 306442365 788899013 804844899 989178873 605500585 463007602 942167378 852921041 201992238 378068899 682566722 155797378 301240927 544455265 339043883 758856093 814576812 841001740 996630948 805461925 940017676 945318970 739812280 672581519 894340879 512295804 945678067 82882542 768070735 625015002 849750409 119374397 278155887 971909610 457316179 399093493 745541787 556091253 431377274 883178781 180983710 283986223 596740761 424552227 208721337 497752777 538496951 995287245 870677233 863211693 938026890 998416647 45796922 736729526 632833685 688469639 140520730 644739595 519126382 152694984 775292999 878997506 727346848 871844664 584078089 432088874 238082583 958050386 596508867 802678619 557055445 84530493 290832763 562324132 280875220 845082843 10161657 185048162 133375214 147393283 91493213 851862501 807591609 805063923 48853660 834699287 929823193 366308329 332238035 910350742 204567379 255296913 948256074 326971106 988309668 745910971 670627687 773221607 503842041 952265286 886864869 670989236 705689979 35080047 693733108 601811895 719570362 783709606 573013788 530743267 189092834 44870678 989982133 275006625 602948436 795508246 853872778 42286638 931703959 839423617 765275335 507778293 691396572 384242772 653706453 741614392 895472473 197582573 764367098 875675616 678612040 738465207 985606909 988001093 933328227 52809091 301393193 40515803 477232577 73940659 416605994 777062172 670989236 682950224 671466788 879930233 468551291 547634002 461506828 590684195 483571460 406122601 74630137 975163754 734872866 38663422 934031867 317767958 847043116 949345205 194665826 914574020 750925558 112475335 960232668 741596145 79025926 203887116 705341518 983945266 922587909 779763870 994713329 834250228 134798163 366878327 658068469 677504614 522868216 157722838 38136570 568426643 264979743 221633082 791091491 932339251 245664690 395678533 824448495 186702313 391132620 847541151 596228612 174762016 113780506 225787378 843435053 715417479 391677516 252926269 972378422 212870113 927680439 781721276 454586390 696683013 397557869 572706216 245393557 385033835 757951546 717121040 181377686 502041173 682081819 716501480 690033415 674888135 571373038 984054200 191668757 764312724 742718176 779618770 595585550 320607291 927634618 750555144 834266774 569686764 977460486 888538197 371558370 587150890 878711972 775783000 499576208 807218116 87997170 484643059 793726711 272940793 231616957 806975359 248780459 42466349 732180133 99009888 612106374 351633630 818855798 235238291 238517788 919318161 61560333 958423339 328209355 941480071 27474878 406949276 885089228 243215441 637934926 824190290 719570914 705124233 694107135 858361753 259525055 975896601 762955589 967845968 844257748 97916428 343267168 996749516 584351178 384715283 169359711 992521360 679710082 340723053 922080744 206431365 266363487 746298169 774842257 861492276 489463768 581655042 20327977 196051659 949174503 872632680 720295924 781462767 753046395 457384974 397503005 613026241 869490643 672542088 903049190 787796407 210017240 469678292 535417342 405385055 429772833 438467236 249910373 679757439 97367526 912899080 333048547 193400646 537021757 849995485 638034353 520957709 93787047 552685834 708655386 898555186 387189167 722222404 581676271 163849397 596146282 681163074 842999495 977706371 829372513 937469552 130728011 653871507 748692218 126859919 879445277 237914537 400047187 24032029 509585146 962550023 710396388 409142007 988620699 641727022 614887285 942758278 670989236 894477860 722228877 555860495 147175493 261164460 231775042 881522645 794726989 953438182 487072811 205072966 536624660 192319484 950045577 495437056 743605010 996378179 97251178 193807981 984421703 933093848 620714936 168740562 966368278 729745865 937322878 840494943 9009116 439996631 500850321 40442207 636611589 819250661 807200719 271274746 696286249 254513925 819740249 241007703 779494886 620774292 178600375 706760493 740885001 744518067 283871490 799298569 852224835 933219456 747321721 574878748 966587771 680562641 690859993 999142645 503716979 635148866 769372136 590409374 829994274 158612978 888773645 697947291 57323873 376490526 214061265 680336845 315429141 74552443 181590141 635339020 984449299 993891628 43509489 739298531 706211654 781397166 671846201 735409232 711721160 701206167 330511053 564964170 990560703 832116407 569732928 307776253 13936551 488873399 993892523 687586214 983452762 687220096 808772203 935830337 760032514 448221331 503335746 356732340 425863379 71121655 59328351 966376226 792688101 824279985 826144724 969672337 589866804 123461312 440558448 106907992 82046322 902210396 835075174 445876410 116742564 741663816 149500988 227394655 245043275 537176639 846651196 747501277 757318266 907386330 552717998 855279733 919005197 742040193 669720073 475191973 69520047 949172967 313824231 999863648 676674104 78650306 732064920 935658534 258571110 975004267 863125384 538050597 791635122 225988754 958455452 563344304 911954008 810491472 163553018 909869090 52540328 954096549 712562801 531209031 680659218 889487159 119942399 454514634 286380676 458640947 23355423 926233886 48989728 108174048 883262120 968073378 555144501 243123052 474158552 805035847 987199265 703468233 81701018 807645330 664924782 670989236 778945932 682757135 324497928 482126858 422065504 581884821 347575919 253099173 235122858 291079820 414460236 787688387 562705965 837109763 731811107 406730954 892690009 638480000 922679421 665073784 825252627 464179344 851356626 632521917 847616009 758459101 509956836 280030962 588482554 451715621 884045154 475666398 578224237 858763832 791043611 28749119 932747491 903314715 670989236 975512363 837532731 175221455 202768161 19674510 820554638 596092286 268665892 413532567 326727126 735358822 995745027 615303376 715268126 359869068 776203799 726997695 613088711 801672093 893090834 73934882 745577311 967128543 277633549 940173163 146522800 710660929 272164679 785838237 183611915 705495532 81237990 351761476 936038210 354360235 634844337 95484939 770842562 300810681 380394870 759220088 337151267 971211188 723606998 798969226 9992424 952226892 506507761 184722419 856757004 285397709 26580716 672412688 292910840 173693016 776954744 968465024 738736597 400286308 470866851 799308288 800030460 930240549 930532190 959714668 956396765 352682451 19471175 440896694 766929820 5438085 786794878 597418744 9282214 858447935 874648168 795754174 106538602 266602142 529813179 192879253 238875705 635711588 913338239 707931320 549002335 873188354 423433631 399896067 586355501 252990376 736758525 9230377 895786125 808774334 159173317 868467000 708940819 66397978 485788334 945669627 757307527 700768030 411410573 600942604 344238352 452514881 443005150 670989236 197136693 175962757 919304356 321348981 967593648 758604976 701293984 57956069 83559655 68650799 206257849 205461284 146448008 740732551 930829170 670989236 242231062 249588188 932840709 674333785 341041816 187603618 171630385 444264752 670989236 27076173 167004098 798475082 637456235 935575341 358259256 361297790 930199122 988803532 718776097 496123093 798607203 18801963 75060351 550753835 909019359 533225725 851294342 932171103 210063431 701517453 999383280 948790773 342817657 871454249 159932075 844147234 63072214 168242868 744828594 381141163 642029274 343390486 104037084 641906972 43224196 516350686 764584616 745105859 979497599 610931169 942924325 675385542 392448727 975654076 567176294 813083203 820530736 677103042 633307906 377593600 919296969 248278808 887708299 980382709 701884843 870744201 139032667 260620601 798042393 979526634 576587317 433640721 808109224 503504338 699039810 661368784 861087408 933730928 924993641 724926921 926103358 253289522 560455365 736390258 507212898 559270481 670989236 132903581 670989236 77606741 208300568 969357093 799119844 750823879 343421351 567097141 204717503 738966677 671085040 645105702 834148316 918167629 447451626 645714624 348327169 601138467 846063551 337421680 465332652 853143566 682697231 315985039 924515103 682611094 878600332 772297578 317388281 683113608 666609194 687907583 978535613 991508167 682494570 299785920 3408722 531968936 776770194 927390038 31879116 160237169 837585489 89962476 165134918 977844327 954737375 837908625 919626808 890622124 45150287 472400109 451344489 983540770 525817120 694409252 901983792 818891643 683595675 580692109 986434132 121077919 619413249 204573217 387611042 754903012 982855751 629329797 894902453 472562021 773253481 595564539 519855334 203760870 774912434 888958959 870136160 878061938 173571301 276564240 993594962 580940448 909873639 802532068 884229865 59430061 84889959 243351264 490602673 17737803 952318567 360436936 752783454 213150049 985146668 750008429 211992342 888284292 366635287 64977272 460704987 609961221 790679790 555773616 878255259 608053935 19349479 71994650 509330856 800695371 63933118 279588574 644570395 963725885 686107204 803864095 999183120 194755389 264268042 661099274 575105682 34799769 360247333 670989236 169557056 877856275 672384699 219542730 694711812 6239878 595472137 186972664 345350659 166080034 204950338 622789977 714788538 449257001 578931411 644771316 582389577 483713832 158427569 169408667 764312738 710749548 670989236 351889670 635657473 307172035 773715328 233369243 68591664 32512466 414529934 937954108 330968546 655623993 154329196 169360944 921715389 497016492 180388860 930063077 824535026 992090873 453141780 979913485 254860295 901518916 163618534 746724855 491793183 459764474 150858207 464941925 668705942 203396483 237212107 516393258 705239187 679314993 652177054 608759317 74124714 923413993 435153933 776488823 548603672 748074424 832830855 747234842 914516330 188519180 980402684 876257240 958728928 986211113 730217606 852245730 897268460 904078724 935712565 466923075 919221944 858885084 686384207 69917435 998086266 859732463 179725317 174308210 388454429 221809249 230843315 500178456 854355393 35231936 176060488 647719076 756505882 975917398 895570847 523858945 232153600 789933415 14353008 44953104 618111265 400364074 346256331 552474975 88767473 724972772 944991049 571564514 306344453 49078008 756704534 932380211 128285063 90734411 256729754 396064323 965247162 784568875 220333078 223680328 979480994 925585271 860877293 249995073 300091494 764691689 282841077 54298740 764147012 14216855 152294959 666802004 709378546 801002642 732837750 554919319 120018428 699191200 806553295 705917274 195276734 141756088 492466149 382500339 265946875 738329761 898830458 977619841 338102058 719936960 880686789 76640186 597914463 516681395 587860081 40083384 566184824 532436444 685974102 723860003 778036114 751415545 998305512 570999827 230036829 868756953 528497008 506098089 59748704 369951710 699988254 33671910 939650647 174570976 314234029 970684852 290698486 384831783 519353597 383520447 596730952 556300003 411298059 858224703 460356896 784384074 482937850 815765100 953102487 840806113 817586313 434740279 767878059 736535834 896363516 895226452 756284201 807956869 62356681 427421933 134256870 968039578 967706074 993241876 689552841 670989236 712023554 24932500 510450159 776712969 29086423 103053101 412009593 27578915 10333821 826467480 284959998 976416695 370589164 940954024 708635416 844362873 52420656 790583311 121649202 136020759 688695459 910870342 269438 505693028 242360297 847327696 856933128 539311571 533965103 367877394 725487171 682502168 777288766 518887959 750460118 549066317 938332234 306480026 883317352 573248395 755859728 245893610 670989236 876816171 886753209 521372295 982381640 57674963 11258814 782458639 928191008 830373493 491128618 877960493 877693801 452512022 856582076 833961583 553731414 617101740 637192759 817615015 70348876 95428573 524203712 175478885 946050145 537071346 989376824 369381132 491957998 171351610 848327842 731899861 928902509 890622751 498205442 112704415 810145224 887665843 185681772 785196259 815615198 692493591 979989232 996227403 104452281 741342896 883350605 279595344 162222946 153942348 735368270 111355848 947371266 886416382 390000968 884807814 771348809 431750919 625256930 613723314 385485749 632052724 602262894 787279703 432198545 823483534 624568207 670989236 831766731 784605173 451860740 687772999 988391516 768419667 711941178 38149752 692251626 900282385 970286382 57658880 976433674 752039101 760652470 884344017 752770049 167310850 854053169 829183048 942176291 66391204 412995953 452868216 984464327 875195457 320749493 812140861 181270967 161279958 804302932 652458545 294057189 944725058 148049552 480506648 41736481 511701690 757259301 315647511 802434373 990037524 982911863 222862241 282193413 939672826 998789497 748670812 994743278 740123586 827649764 312273050 917764624 92735170 860670026 406574265 10467401 628300279 461306306 297472986 865854585 977837679 995076130 984673833 909759858 762691209 522698330 9038910 870221735 709028222 265831469 997618454 633919214 65573626 682883165 881074625 99055984 950255283 565076617 320615844 789966338 905612487 864188207 973546384 96970784 899112324 855117257 312501492 738640023 708468368 631142291 845615403 933124766 627232202 709061488 872979676 98397191 487553996 734754767 896249779 997279469 957682457 278704259 871409830 547665272 782951298 13816656 54070563 254367444 579340712 149901868 37214977 943705710 687265045 640120310 832144018 61655957 877120722 649429608 91622043 759288231 168595675 775654331 37840281 600375169 845351687 815528540 112734113 964730469 569078615 77139630 833631924 903332623 838384216 983260207 859657443 852401836 962887664 561028480 636979853 210741810 503265466 621173983 682919549 80778439 671938238 675706286 27624307 77877759 373417924 784843666 202276322 901775735 954154034 925541072 106063673 575031850 592919312 7403665 869963954 857430639 306433094 841392036 971775973 847466261 236632554 84850164 895507984 511854433 577111723 500604715 197530240 184831816 727651147 557609006 209480742 445209503 376561414 769587778 723001029 221019185 903066586 130467684 506844818 807055914 378721814 18130546 562364391 979034375 615896774 909423443 836045541 890629069 625460221 872237317 397042084 330298170 915908955 697301880 260071730 517528608 283076912 323287172 670989236 109933905 921648691 23851317 861648212 101922809 67920927 757340392 922526200 998652890 624224376 820887829 700757373 991767725 673255733 954928363 559017033 336753482 739719154 712429936 468023857 803135388 601706807 697527376 831140124 604682282 135589507 371576132 818383384 665030874 782902095 71102937 604120256 694323756 891663390 701863447 524221449 982391801 655969510 436251413 280140681 641127436 190816888 157265515 357299856 552664894 692623001 706299357 943812291 881353370 607080338 458871742 672194945 255226522 876357992 763297348 601554371 10326373 708313285 495680102 981672416 687858794 267482105 717308243 713967387 446794087 73953526 117820183 774285992 651861207 699231953 941844691 477451280 102639278 865740733 435010874 860887860 670340882 905222868 412518415 884959422 744581777 926239676 319956575 80456880 323707126 71027242 762812149 696621686 511818953 367481342 362205643 914617105 313118377 136820408 579972124 934088835 742565285 717090476 769916432 141297876 905184371 219656528 877000233 635105715 665775309 926919479 527400239 571040494 687508933 839790669 794462555 961287361 14345542 571956765 222414205 1769813 904961422 579279957 677762985 193248979 530873042 291203163 840822116 133079802 429092111 761782576 761484048 635687933 214971278 708904407 461063564 815452806 711813682 336289723 73708354 775508602 723458579 654290875 772837231 423535140 274217762 718190597 915971689 375701858 982681007 196569740 884674941 338663876 245337648 817725329 250190635 234135586 474795789 318171718 896917867 802869561 833669358 734396473 821598748 367734818 820931960 914060834 100397353 220060147 559156973 981176867 275201822 905396722 96118382 636161492 385668668 214446118 575140348 346504001 606668398 229164696 991924521 182261757 708213605 110853826 869836290 297980924 678074226 980486943 350442262 77229362 277398061 738354385 778286675 100615552 375299250 683157667 705627886 560060943 179031803 766249619 149994558 361528627 175152175 7671134 470381649 57141828 934227198 321024915 558699522 649255384 463008027 795349475 80858389 693679003 798400765 195606555 937283981 987731066 851378321 926782138 722038540 362449271 693396311 481707244 847405052 456284370 165549343 216104609 643929599 342010590 885227628 703049709 948218053 171973942 831602151 819477462 858946345 88742091 966381139 384265055 930979890 691207267 437283533 707754071 685745444 988573257 60627999 645565471 929501831 247071998 948616755 670989236 37812071 766234219 735906725 166052696 824177453 274322261 774426960 190722605 721014588 687679959 384655260 944014242 166714234 535045131 714749619 165182237 813275890 717210604 448494067 29093460 765907940 105067426 876796322 54008671 564095277 724840394 907989405 128779731 220731671 807146665 131807143 642311738 752867477 921022629 17893656 814972981 353687002 597785794 207946165 208687465 342486704 721591005 877140604 494227487 831604610 688046203 642743079 790370451 900187324 491507433 488066023 900590626 677929227 932417950 491483697 239129541 109651296 312040681 436097271 706057732 936669241 794732172 527654627 892402505 870542733 868134696 279195365 71067177 225503987 832098974 670989236 728903004 764147381 495504838 902958739 972424937 987771969 317542037 447235035 550420293 293228653 943135446 721264723 689787620 956450965 980370756 976188854 163404103 779890293 864171937 922246003 820131137 888465460 696610493 896799030 202135617 913093549 888050276 995382363 661809376 786890437 840131433 102188783 400294541 677553034 335536768 871684035 698054104 586303424 965853891 124381004 373375976 330013098 764587735 447618316 739681516 528269686 887194918 757942665 840152726 732840939 200560768 774932121 663271581 634087358 495768464 629848684 453706519 176547786 832285401 799548514 104345323 731238262 876540080 972498064 816265315 305349820 935896048 747857057 970661925 427103712 845249850 61186984 930165986 708862600 997618370 630990141 164073578 976557053 847210986 722282058 545117455 844285172 725008601 920909579 909647722 991040160 193879273 591928541 704034551 915877377 801746017 986789967 674636995 86102463 213868274 758864137 996819788 451601461 904173587 128671394 844191968 45103231 854310991 998404955 570171525 491255977 546080211 329483836 268324817 809436967 882839874 792274117 823512229 723943017 97279452 379521516 807911857 874759742 390986230 670989236 944275298 483737612 780752330 734054996 384995476 786357667 946557355 948654487 481780066 829557752 727123304 994293452 554271267 860483895 753861889 293808061 694381686 995548163 747197421 629429365 734254659 165194436 962819102 790089882 747282690 829773017 365359005 947706987 140994473 460428754 370168057 971320089 296000057 889675841 905699527 894690825 674084416 773368196 61223965 898682233 726419972 714818644 802564833 690568615 950298339 599293244 596657951 956919276 765999622 544994280 394828134 971714598 823274371 931167537 922441305 675995066 949778304 344447073 204210195 840255415 950690352 607924505 913407017 514171381 865670407 803915675 463703567 650840586 241836209 687130029 364188347 968943561 745295340 670989236 589310294 998045545 487681695 132370557 443335356 942316410 808505270 983130452 956744714 841478168 986221376 962492840 39454044 13096155 227980618 765100638 783109833 921955667 670989236 334506594 765909267 38671462 657780290 650767881 977396118 135142755 750668929 191017961 802058052 688578026 947663371 425487615 353204699 465590300 26934418 537382084 775091941 847413684 692985997 232319104 788650992 723653590 180361929 136245876 841697069 516363826 735386280 246216976 354761778 670989236 931880061 37363131 152446641 855480839 654062253 791194973 877440072 123056005 828267780 953108816 335812698 857851510 518936197 23821579 692193244 687596356 555769764 455496781 877630460 533993594 243179135 354229001 911524200 771587540 29147188 863715121 324343274 750753534 605949997 736442160 125610183 990447999 745811088 430968553 793511219 740243021 544767837 675860683 820435588 308012771 123033094 991142691 633270482 430696484 826178752 653666807 549974638 860771957 828692336 78708301 987559313 23523578 690667517 488944815 518552519 381245898 826800412 607924948 808826350 752170331 749319016 959145232 141263618 663602052 700136457 6592643 770643800 991006067 995206516 653478376 163252364 994526885 886440631 912314721 607763379 438413879 14096418 721216137 997500822 19946740 950179144 894670332 946285603 717092266 627140040 858213656 943636788 162487042 32025434 985290755 797315073 95897815 647097428 677291812 272018601 276820077 824696123 94362860 455614220 170896081 386488690 485333589 922768038 588448253 369965848 892403377 280953306 207221721 487373176 950295832 930113056 808288208 993380128 703220392 975918679 380548336 118668585 760170286 154388712 500690800 651828073 482519748 160508194 182080810 650070751 841569415 853682221 751691179 755050348 544066618 72054214 843527999 972467328 521471476 954489687 779696083 816009056 179891953 727418745 605063071 247573646 577595026 914737289 108822745 955421727 813075386 827931736 758745986 745269638 101265528 75379989 741516200 898910272 335057223 950656441 36061943 515888680 902840747 147323827 33288237 536377148 857141277 486644444 762551627 247314879 917630195 589672986 846277991 339933671 679259995 612215629 474538502 178581491 19279233 825702895 494229547 349730415 231108556 897721650 345100204 737225707 164060220 895849407 941266635 758536818 342827260 493431382 985080269 462068126 862395613 943316500 361536215 86913257 51462551 655759141 738673172 338691799 281368340 892389911 669503245 550821762 757462279 937762000 192989791 687572868 692285144 357399268 123126092 52469346 809229657 889258311 485684924 819852737 796264809 641411074 808280206 835036315 847194460 758281200 98482981 879082839 265196684 844601538 962227758 534671348 117285375 692220646 668866879 814880245 850045297 741269006 54799438 880984042 108644167 531068774 848877103 209674396 948695066 554950563 427532811 399694183 803024307 875165952 967015790 354956090 421972604 222934883 682102524 538000856 860860383 967500527 245587938 745550238 29924928 32942604 154612886 924796625 772596333 823869266 226397898 643625866 712781362 706553730 733938607 839416551 140122312 58444967 273655664 237417615 911407505 155011764 373509801 989878449 2381987 183597292 433210274 531163963 759494763 316203526 909866134 951386864 232634002 654953448 176682173 168318657 406428340 991226024 949706543 722430380 984186481 628966506 485038941 228616999 693192295 554509550 378906588 811945916 248617974 663520485 670989236 416362284 419272263 726447053 243223589 670989236 123196848 755627647 993857341 670989236 2833968 807756501 800357160 562759256 773594900 361763202 376949280 869347390 344518969 37659712 116197356 774252115 292857426 859622104 793052386 804867382 943121554 726035934 773321914 555973988 898633255 742327160 871338966 663905284 996022067 123527057 215425467 305565256 246746805 882083922 801125788 132958722 449280150 186204205 748936960 320139624 987654608 462596633 869980422 380191529 867964580 725027991 355366312 814145934 640376932 283085781 875894503 953907141 918451420 770851233 320122623 699791828 844440643 86858099 801565768 912106815 993235233 819903747 852137326 954318458 705692861 743759436 587098374 462143421 876607956 670989236 160980433 670989236 987018905 535752354 945083046 756055170 807696819 870876622 859788452 73855407 117587508 462931565 693647739 325822027 481651651 953361123 253851015 929191831 134965619 878829928 776372977 793601908 148413770 988123687 569613302 61041912 998067482 614105970 256817864 354580447 120436031 779711516 765781299 243954885 211727629 248518048 926373257 516812512 274328067 142974048 54107116 680748006 878813208 41573323 648594245 658442648 767903643 955473424 935788926 823276908 456511517 595363884 158780485 702559132 109005548 806807970 789169469 939524667 148952866 800501700 672723943 637063655 172346527 866294661 816628915 194951009 988501829 978933532 757999968 786700315 300184201 740175181 424403564 764387675 736543584 906286470 935425985 349661505 875207050 283322921 417820313 805218647 670989236 310803290 429165908 452924266 891896287 406034983 914097807 891008201 948282290 885436410 188044125 550979842 330444105 611651687 282355138 27217865 405154736 546333211 240426911 260937428 331179996 911674762 821076496 451447445 454286091 466161480 451523505 820496723 338458475 460123874 507397788 785597147 465101981 776861219 695211483 878218952 177328617 107262739 870260546 301248946 947187077 817242838 956387514 909045044 5110531 141624311 713578609 287917506 164351545 919769966 585494828 772563598 811883226 684995616 759399249 991053945 773500457 569618285 903458118 860943898 960748425 772257141 477294584 673345520 485499651 500987934 767434774 496173230 394284028 243147170 780704537 568130488 113774311 503648166 889454175 616422742 749391728 694482698 975699688 805190943 959436307 932575404 482720716 748003752 680897231 430950192 595848831 986014854 627913534 993493033 964451891 89088554 723491261 715936951 381313605 14004568 868045597 914573185 166917165 234519014 606240222 749749318 548263189 161158164 882822980 372145795 724750310 82450633 941778105 178640844 284757548 677240446 707854260 557949242 791858133 376057074 889098452 663926103 439979349 955946922 768677894 689108900 720643254 961327274 432436722 827950457 916324542 898416505 718152509 481159764 514608016 932564739 774288110 916398703 102873387 807004854 138868509 437485787 194134370 882558270 762662244 903377872 337614814 701551501 73134101 368583831 397924185 46385159 780485651 528710082 764995388 156628290 214596063 950581451 944863122 227022906 721652531 987881052 258417301 978967233 260740827 363329820 526891433 600821171 294320990 783072477 523648252 969800948 971596348 921458397 8401252 668930132 731852959 971639266 896949459 838645390 821847090 17591591 129047123 167217273 808236088 640169497 34041378 713928630 716678626 402151141 695147330 537323657 452490590 562030367 921115384 782779461 678489953 801138439 716948496 719608335 132650994 706632087 785852667 735751889 845321340 711363944 668417109 112304125 883715302 830258867 359723120 766225621 635695579 895355654 779378179 223608432 620042258 654470175 949384633 913793458 900401625 670989236 173327681 876235451 907871256 936377765 325942568 439597917 948512563 660711697 921172828 670989236 837911015 930391694 986800338 765260840 18698205 809650190 836684591 801015375 265226477 644972136 98999809 534242923 174418678 825012763 132501444 686496790 162080505 207832033 716268341 698538182 204407588 574850815 792302188 431515325 479643310 255016478 147663608 305576420 816962903 196767976 689097084 454870827 621455038 159613045 224182949 208163940 666169546 489824260 474038060 937732487 256506866 794533830 869755889 800180341 772293856 621716607 868827831 674528078 886174553 790393238 889729704 222837544 620233445 610907960 796927961 433390021 754107327 842411052 960423156 717092841 853919422 731592776 999921847 278458996 980791312 666840791 138943150 64433031 626027907 223519279 571767650 983423047 824512700 353710059 137586672 112545812 322519219 348358925 786012328 790037486 665864616 114478062 80558843 832083194 578380631 426403212 876763659 827703309 421309439 981066047 376840925 195865131 13438564 806975702 36535463 44897397 853107076 788892734 71929357 984964209 536494059 478198139 427851725 111917468 635700506 389201110 218633991 502202149 636974245 598994599 233423153 580172600 117315793 354727161 998766316 707286442 535649135 30965734 29378625 970606148 999421869 929846721 252345675 350704586 681424018 950478050 681608511 515513707 853115373 794133748 811406015 466144966 843618662 188073510 737766110 16871604 499347423 859963927 887632492 59119728 830250893 411983778 717644541 821548281 711512067 784913861 378606930 674779529 530565312 523162262 737331137 723674265 281349745 217551399 278935592 886582049 345120403 974853516 721697861 766220507 358676295 874615437 963943790 353303688 44839451 451438632 685600076 614713566 999453875 998074173 91098756 342189959 802206714 901270831 9557710 766323782 29932736 619892059 95939383 240369581 340410458 423085887 791088079 772750537 256678476 810078390 535760793 783118240 670989236 414933639 776558577 771153546 998718111 311925035 133584026 830810705 80008037 432345485 654486814 373522216 308844104 722600438 937323213 294693801 1218929 986481809 981878202 549365079 640821381 641141701 308618843 308684259 612337468 381667606 775624294 294433169 988367256 803091949 694593624 408913298 847836143 36361719 750978052 631186445 690989886 802490916 832205240 751636926 723193818 965276189 785957439 980847027 52391858 38914716 751970045 310056208 587960477 920540193 980382331 7984698 25990053 884944926 482701209 308708949 689466267 240789634 388164187 145035482 858317143 924916677 694934187 597170150 998623341 134646364 625375064 773371772 229103890 940908766 691891565 795108492 952985523 809128033 743034874 585169657 248995841 253266195 972515081 245898778 23394395 849438395 290713727 601400522 228218649 721898517 686799150 347735215 791170636 580731743 110955529 954031364 311764611 845415149 687447178 295865697 25258155 814368189 425006537 345341465 943544514 414048925 238820350 323067890 828315626 917920593 680493266 958380891 88844894 98742354 822700529 487622875 170703900 763118039 638395379 578511815 211090663 429836277 974802760 363939097 147180326 553080690 782901947 356382519 774551160 513065384 216727280 322710507 44933631 169955028 650073236 755351968 355117908 945636187 868437854 654717707 418529622 221197378 5167330 495236681 690948759 967833062 614759285 520463775 332169453 796148714 602611996 740442526 94434881 832870010 758122438 923660712 985983058 447279977 967245478 781518926 706117864 472721756 798469511 451008700 587435166 476506713 482305133 952361464 240848490 735974242 692996906 974073529 678487103 33359700 976062710 951844824 549636060 425283345 503265657 497964310 687721071 797965013 752082935 517153697 961791061 590955315 852585519 850973855 980730258 83600562 346898551 826126352 810790445 674550520 359429505 535695112 778758485 41927943 629911936 495017582 906305639 648741378 706718935 556879428 824440115 562131906 309954576 922065745 230825417 917692152 579474087 158960196 633928654 919152434 858250979 862917017 988320083 318687944 884397396 844552603 609560474 16391599 851164470 732681042 707442963 305850614 819358460 915281648 673573289 718587361 685816340 145739698 861359875 244793952 520790774 861607033 337607458 325918189 80862684 692259892 251415037 741545348 590648739 721848639 599350342 330126318 989886574 802556626 498096316 721092788 881489583 678974723 316666447 686987817 922491518 580345412 476534538 773085608 670989236 678626243 686823719 401961872 369917380 680362076 351201312 541769409 725261208 595315953 376066778 258788144 41401660 901622149 318906854 488431358 780046570 951232051 818138332 842865359 123528174 728066023 905900053 779737496 187988151 845305632 188128951 5246160 714945083 670989236 870216188 933469015 386716784 283193290 670989236 973718108 765398190 412985899 915829905 821368444 673832443 138139983 905908922 971244673 573988477 306023493 912768293 937431197 909553080 842433413 808493118 716886067 776485927 629641453 540075433 536104616 563263669 415447020 875136133 5426490 968747017 278174044 735385989 375721962 142418655 961124893 751691214 788927464 765747304 983943859 932987873 735169162 173346244 519434468 670989236 8060154 388931963 760981926 757624005 936266021 974829695 711841655 459102027 811414080 494612014 695725322 631452824 793260805 553462556 312358748 670989236 778470285 328250863 184143347 20956527 314263764 675446755 888788222 650431310 371134521 818822952 166352178 648677553 235272144 284718786 193543493 525236275 49238774 775424519 141450725 7404533 358350925 708265091 604632772 18998893 715762593 831320659 891744012 438239090 933022051 638748694 633784340 604375279 670989236 585480383 230567546 515169478 810992913 932217841 454929812 876826391 847793843 950599908 891842710 523489984 520173999 479542404 624029932 753709191 822798262 843872808 257102825 393340944 948447171 492160751 195135974 95795860 148851232 882235253 82040646 670879315 730871611 755769908 77816379 774171357 520145483 271238621 842900261 496010664 500038193 560764352 560349634 742868371 862168664 775960090 435594550 990488245 890995909 467619867 877490292 44747829 312556463 751270507 852997586 364492793 10227582 177196013 953576228 534426472 350463706 730001212 852830873 823694714 710360962 728523811 400959114 833669922 762741993 962884076 890598594 529870193 860516122 827216774 979823322 760278293 381169065 539874193 359363920 951535351 446780028 963343167 714678365 488757826 977351159 502996411 677518247 768000003 697979451 789005547 812540502 910207644 48058064 629981454 835892630 346467727 262668659 340422876 178812082 865839128 342531355 209029698 795692760 890721514 892265238 231455297 234521279 323240666 913973131 670989236 689674069 814958814 183162769 682907553 358785208 413734796 671721933 82513014 676839928 917670255 294275155 639626022 975441785 185130068 873698001 980830679 868544804 251636338 787956045 459167165 775966116 839053539 948045057 454231132 932375753 183995795 772152568 372745686 683576673 693917466 589234163 190089276 676093667 430454175 742314891 614180176 571030290 922167301 689765502 348514153 959070887 577034801 311435820 917198885 304273845 224798724 473977025 881769325 373485664 38861335 513279695 691010350 680346982 856907385 817539500 694106852 877615212 885082008 823585497 878103434 819333275 373509464 702149446 13980345 456910099 763047766 653398420 763512511 856268738 858503557 436847461 673699463 876715876 43157386 74908980 887042278 784993933 581084401 337208918 494941073 665012943 807605799 869842591 458618613 986234916 989546376 896417571 488505793 382913560 168702254 723976851 862947461 850964927 927036654 630974563 872174334 321372972 202160221 719124841 244483072 676939950 883584457 899769835 873971325 995899495 976489551 373903960 577542035 689633292 241928713 725170131 157097134 131613973 674253801 731103751 924568714 71013030 737828276 444076869 694801336 889320339 221645827 926844600 783378861 349975603 335368585 826093795 967418875 927847348 854002496 489229548 549599329 320195521 453160369 238879964 338148873 537753267 687062141 396506360 674096618 912066557 112811727 723552553 233006143 913438928 886349289 383883877 750889092 667513299 991186082 398513359 394565734 918867352 960264470 922984024 416442285 796323545 374432638 715218991 538274426 928050583 325835469 188476918 860465562 387877280 708229518 666921594 964964854 773202762 862657858 744660936 670989236 621816162 327220728 693425115 942034599 198569833 979388428 553931737 958537609 998798402 365887950 779486228 408812108 441280999 670989236 318129338 701976048 721680123 611900283 994664240 542360711 566503656 968575836 879461235 559238453 378935565 807902243 861503442 398895163 561940884 34359977 987138028 818472683 988409505 250506543 40797659 408692668 705009486 782974098 781396628 776102434 896705894 487732633 701094167 74641454 685521294 885709858 312986402 621298200 941389662 979983876 794166857 670989236 871717287 950584871 377400594 579647068 798714566 169145644 943346798 36848005 771473839 948494681 809089200 241566535 797297043 276848091 322480501 227330389 80282539 408964138 949363662 910065004 733165613 827927155 814294324 670989236 721438633 421839419 175557718 197803293 341055031 679438212 431178684 298271642 745329009 124864931 978758193 227056727 758736445 243393335 821669999 592355657 334737466 784169930 788141037 381705634 215026122 607793228 969612104 750778398 611920170 189947178 607638349 906187465 56276939 517291433 663282825 760004137 272594687 889358601 992658646 245024619 774683419 789363533 209983539 684335429 151421838 856800449 719338840 753201531 257363606 230713746 628595090 938000126 696178361 677245264 94835150 637738979 67186489 490063429 221774115 260643735 106295534 596284375 63311767 324330777 193882870 246247112 9278285 813200347 249743831 918423216 912945337 902435421 429105439 970733041 343464587 192239958 307706694 900737122 677103931 212678227 710647752 380354751 946631357 781304322 234657691 736073138 151519274 843900789 259691571 466847598 992534240 881310893 912693815 763816273 855386183 465144189 965910554 892514614 510031465 225453962 190772567 972888415 511992500 805825931 900694525 876014732 711561914 967299122 722733806 870479709 373350324 935475060 822649286 945964873 448099348 353903091 318027336 425401068 3366225 700866445 807937816 436764911 33505208 681352539 98663923 661379041 835816444 934425689 764940448 15757404 738296249 416281045 94729113 91445909 238802309 339137695 161647356 949070700 26360930 311052061 979370477 850620703 948949853 264664268 960350557 927946277 804648171 711111483 666101449 775885249 826350495 322163512 859207920 866296383 807123398 294515707 781244300 904853525 178262203 936329623 957413246 718753969 428266970 632429829 673121763 171834631 5113906 352204788 827359176 182084092 898786899 5452337 783854994 654267754 772893733 378249819 550770667 526717488 807417188 270608734 519585040 878121184 140047206 610924912 542258796 878170783 691500734 227666906 765332180 674298879 658516296 971442950 683375481 860508296 382116932 699315559 448432376 943849295 858125948 987795607 819474044 57502074 216185257 984063542 494554563 467247774 839652270 731458238 727233374 665509000 153120757 296463596 948214755 328166745 441627665 83273626 541163477 670989236 950378502 222935016 130700120 827969404 528440973 758680173 657721643 488354240 677131240 336277256 737642592 652509233 45963968 542982336 978515441 694903929 424827657 162051983 683217762 271641808 799870270 777659895 805885904 438233755 513495708 888236397 193035476 769835351 883604391 701560002 15370676 671285179 361227508 276468999 252877837 819300152 117854863 57697621 756975025 649765602 936265850 670989236 133971270 193235437 888486274 808110106 39891006 888105497 978700776 667439049 880998751 841487129 819182098 874665587 753130606 839562714 715745156 938931115 488282802 105368550 897646364 555848464 314947566 980953803 724332287 384300363 304658162 774618886 906425478 881424176 521316472 701404532 78569441 791996966 824967906 934215254 218728999 856924643 841880665 791762555 908001575 272933188 611756496 502536091 977078292 711032739 590530168 621686176 705385628 741638877 296142708 625648205 848866296 950121478 777691946 792746984 565994651 497209644 669483344 21417749 605161320 722265148 987445938 944330021 966378806 564284546 877889116 174749121 562788978 825075583 749265156 909632627 447151905 69089490 632145066 874158323 787682733 980807364 847714409 670989236 842986654 702197924 195949321 57631677 708237159 733234166 801619927 383763812 317890869 894148546 62373170 40622306 702973297 824104033 499988465 782924869 476436704 370848824 948794059 744599677 757118261 921657561 570274663 526974623 21873806 397843013 553760509 201910507 646165510 255769776 898522213 481555153 835744061 796226072 825461622 64001182 64693552 179894249 534916659 816067674 889168331 378132808 764582638 159647118 140978026 827684802 843342938 915576840 195367209 165367797 730538384 96684681 908646809 14402724 957291121 281654041 831403957 772594476 537332184 259712463 294701586 927598089 490326592 936459277 171935611 746047811 433300775 340767592 741074653 271421698 112567422 539692407 661082207 670989236 792905687 717340311 965951060 574266644 766381694 785889774 981097087 722833834 166814096 561719697 440862795 614348864 894970627 815484047 688931483 639074167 730255173 506122151 542340434 817233951 636290804 725392044 529124939 847762140 32132648 598579295 393806390 852535103 472838009 218307479 590615203 782125499 932151173 197186050 694365683 848966561 930461719 748750451 904746214 673321383 693344461 829458196 798153166 865581743 868831419 757221191 883061269 585184371 916018736 935329269 562481549 753734991 394097328 398596748 497976853 576332541 824429640 597784923 160653962 48410092 70558645 827883954 747630288 602610530 485548946 765891832 992528102 886133662 859655377 718070050 819720744 459886360 90546636 54110206 930049674 797321548 880729762 440296199 256292926 891699807 573625962 479232200 986897027 391932263 165461034 733174576 802656561 95938343 256329210 55414909 182922915 51980382 913743345 191087433 119683064 920669312 715932773 258609815 790099891 108503894 834750229 851042534 902742044 741148059 849235167 713558954 903501326 69301886 837368147 257710986 833990349 245861603 874419825 477060399 877908935 894417479 529377092 840491525 811534947 928660328 469779199 905475962 830077876 800951085 695977802 425894342 838787829 796207478 369499791 9499192 344864740 468905016 94021756 535944799 840647106 121000678 981325230 715913704 697243592 609289744 846554045 186960488 111654867 551109590 125831435 117264728 700631400 457921086 854932025 996160283 986370694 326855671 852337966 779714477 716217245 897904277 249868537 917902058 755175213 498627231 751348643 159159035 798735444 532750451 795834357 692433779 907376213 323160696 821629025 638811008 276367844 952779580 858988734 495397680 550342895 401880697 349210892 876930321 111230989 654633858 788100434 995863959 773392968 543947780 488692098 87904720 201825596 33226552 789349421 238589641 190030703 957213310 971527745 915978342 554215876 938847110 580028251 939990513 949253628 705508469 415429619 841578778 543190588 29468895 527807160 905284425 220702411 825285514 61691872 963119171 738560848 972669824 785902789 515813482 625895941 266489644 921803922 356786200 998255652 757223048 165649835 695252576 199393044 670989236 134567559 870386010 8566935 883670119 828593952 932293208 738958474 797490893 442454044 452550626 905210405 778384941 626571744 434501198 213229919 987927875 421080679 214831676 309416172 715228867 166870984 720033920 657817013 59403691 777246101 774119885 705053009 754008602 867397054 969851226 855621440 834126605 799286369 649519750 662697239 997370992 874414158 792616820 917273104 897687878 488812485 703203725 702741950 57808202 332810903 741653583 318380307 511272704 843996203 824824139 536530577 993256055 272694111 684322252 759743828 960305098 842159986 925853319 865789496 488772962 724635989 176422180 20873114 918257381 997486633 752033193 172664802 800886750 930574667 712884074 676053101 982385183 727416281 838064529 690475466 261924148 309931908 759909822 213931872 769955862 816341495 593996941 717848645 863672248 959635461 712798423 80446260 819669904 9389874 979244285 900214124 447129153 382689826 342575499 387587682 518281711 776969427 891175336 208903535 876077881 164206103 261180261 167141296 345753689 900453419 948300075 868703443 909051414 204666073 710740291 663285844 905127349 798793520 792466077 863126740 798925338 220291198 684928835 289199702 898845385 684391830 404042459 372562594 791175711 550372369 113750566 366553032 543281456 847243899 892082946 297375630 51423595 194794880 786550373 520440103 424121353 292407756 267238716 481302510 326811324 131810561 852908680 670989236 777320067 809517795 151201375 526081182 833537781 936527626 769556037 554561848 663866989 646059190 508976285 233285458 414680009 820939188 241057166 297058813 738515025 99062376 224224890 711826818 610314576 369250968 81707633 769678576 986045256 969033287 217644352 22144307 986712003 415202105 92349813 571025057 502636403 940643449 24936042 559549803 532553424 911191177 952276623 343092951 890687972 677484562 672892174 54523582 398151257 671380843 232090863 359844684 419116107 688059813 783100148 723214023 891281531 916656472 11543403 31229695 390616161 927758375 541132956 789891981 238481534 924317585 38383467 887916261 315643246 737503182 682984339 976401805 985385305 385586907 208821175 603194524 447792634 753917372 947362610 992217936 409602333 768151166 166087915 674152132 338540876 91741267 846857572 234703311 19722153 802142149 354895902 896435533 339978738 36930577 563142115 43835464 460221187 128111307 908466201 803562957 874407111 573105633 767801075 64246303 36360678 774649287 738593761 268709731 541101265 879858680 762587338 534701567 913424623 689229397 434755343 675057024 907337277 701184584 833898595 421009127 726468239 963591740 874695379 980787848 291043340 633840205 409080630 447857324 491242731 715883397 200413850 869806472 70702320 212093508 621035809 841177691 890402777 150984574 982501734 693636152 507528151 702640555 358439785 885216026 177326440 200742951 648535514 797221297 201089582 460709639 176918661 320803725 842587881 594808960 804081331 470042535 799054807 978829203 356806749 262017599 28390848 902152425 974319595 392805635 801704854 958343778 341311769 689008887 844358527 981261315 256786255 957111036 830794673 97570049 460607204 846443324 311236126 979407971 477533946 78195705 821381309 904508366 566705393 344022347 628742636 250743637 749509708 908087106 716124390 391765761 981452978 823804511 770136012 734796898 392386252 714738987 921570036 696934874 752343002 937405152 203038350 3122714 361452056 847989748 768592960 912911972 393998132 226351971 855816023 715443143 807994450 678140228 448114019 268654780 82533652 541835409 399009976 172733377 742292136 433296483 710918044 167993956 543041975 882807338 865410662 951378220 840433731 707488716 783917035 823609385 276013767 208224219 956546907 269826488 695026936 165948143 289153064 754055782 904983021 28576657 500279520 843629475 773263412 462354477 654192355 869020106 418087804 500404213 504005099 866820254 779260505 494973129 842058967 386173159 670989236 641610029 909143130 375138901 986108213 374232636 600983935 565775879 415060921 122555251 838162330 971787831 904215728 868418359 428394248 216452323 439679473 519457786 898154436 274852827 165349226 532203713 163846002 855232171 124277661 57060299 845044611 676588119 556455729 495694851 572937209 745694456 595023292 956737449 530648240 708938872 714855325 829327657 247066009 957930594 889260196 737851654 65836289 920031916 727478080 345045197 757191400 722924172 306233160 859789530 151901238 737599647 766607456 698318109 620375317 819426159 890405047 840283984 885239813 845886865 423261610 471972831 231957863 884962336 731533688 797171998 690094469 634604692 163734855 576726959 829887108 226535266 648839453 467166687 747979278 884690971 303763567 246570058 231683818 712333831 703107563 807642867 823444007 699367306 136541995 379813583 11921190 480430670 842654079 308321523 170830618 703168284 817392386 597748638 928625811 300893405 682817382 297281472 537243092 990333692 956448839 566089372 628456365 270756248 840396432 407200790 294820112 722718745 911925142 345931037 944069769 947405308 440489659 712874929 272967318 142652241 562940056 155373640 190149955 853541523 716366492 464098179 773689399 670989236 678131678 722493440 596697296 192079044 981741688 116654505 516747793 537403656 15130741 461501528 911158054 531580266 272172230 769291449 539647631 865097819 844589888 226250348 250214988 117111172 807309428 853513269 881981974 134069530 859947711 697806827 444045670 727650935 40778098 20057423 773029476 277947116 995178659 400690437 560679213 783890650 958248357 805134656 12669 151805742 390118596 560086576 803417541 364715827 178747681 886759449 959248403 431420027 208754305 769269161 990905625 868361995 993397924 885339510 703485633 90593439 764255935 799653070 10264824 72985566 984705061 66579210 907353028 108342140 674366336 545524193 327392165 916325734 18346846 714972109 992226426 209981551 712544426 883042889 782630380 707031209 859240324 921704596 638554269 547580107 49462599 243534714 166959935 168819290 694502970 739635591 437490102 1797590 709957796 274052517 606318042 963621770 709395471 509626680 44069938 776446079 123373447 876982146 971138550 840863216 348094101 67458773 599908699 245043479 770756285 698914770 357064970 752482247 64341206 722495057 160192291 178669555 400516048 775530401 112419923 336883358 541637329 871707949 251821254 239788766 185648999 492679678 573561225 688516396 39300475 883879755 782375693 300965591 819108283 873117001 939814330 55621166 78455941 870234737 494681815 771147033 120577448 557581296 810816888 191900400 948764736 434028356 917060092 147048030 771577915 70358173 472202698 713457563 582826294 267539239 930079550 242506700 947037604 820011176 82979843 629918030 962895725 811641868 947991975 394840735 271186293 899698284 226643812 677645719 956195194 86033164 20823796 990783333 375169282 627870788 25411339 808587209 105249863 780536083 405490519 986742758 414116989 314749184 670989236 409807377 879974441 200404401 642666366 783793851 885509974 186850354 912280295 832811089 795956676 783219495 762905006 213770843 511803494 691738895 240060451 580468053 947109425 62406957 590779435 795956234 826977695 52362588 447850251 863413028 192035596 838629087 546913383 670989236 713359797 207250215 750968140 33623895 473491038 193184596 795699054 662092888 674108194 956040459 723610397 818102072 61187052 20873050 961787801 592147173 666349509 317983304 64791886 852997540 444096812 856941953 178668620 815257591 759387733 791072462 744494426 858445707 159589440 793627732 745551454 941095250 673908423 575560019 693388159 727782392 28057308 618386109 666018868 34735568 863712882 368478681 787370845 363723241 28030258 5993095 892373947 32444587 907165188 451312362 886019058 613845800 816603293 917526414 973491050 964058242 593556464 326151798 751083819 407201072 717620181 585367766 707483017 432898848 28669008 821340958 871087148 909502626 760393094 207963902 535525361 805741566 33464458 66462784 669073649 930526717 585280138 906531854 236619665 739161879 718498302 670989236 969868205 709386510 620728413 458873998 803838394 473515194 155828734 746674302 722706820 938734858 964504921 767988220 673676804 561468550 606753075 920148828 994753520 652425823 818707565 813966073 940522851 987215233 881560448 257102486 304587420 928121078 131558021 906758438 755377175 285669795 998578179 911360307 338260415 2856666 972422518 281985525 670989236 946162746 235125059 438809109 194479298 827510211 467345777 659107220 10500240 10797044 760617445 57693024 369377567 670989236 295812528 686852541 966571928 21624812 531746675 65914247 306897606 984881489 733614732 605022341 671032140 826120098 335995098 527565312 590962272 677004339 825029292 388547814 843424468 731194288 727248176 826068501 972612241 526093541 463369153 874493835 108205896 861908433 627814456 486312531 825381956 876159601 686402293 582937303 836404638 606618834 68794257 890284956 133493273 735008514 954268748 414945943 9494956 465454333 946202225 776359723 578772055 213746453 59850543 926230418 834261921 370125525 610354683 629791054 286299110 869456651 589232071 611585889 836953520 670989236 3143466 980716323 530836595 924014106 730049371 741075897 632713459 915861670 828837402 169605948 120797936 95837460 299090721 86417420 57974079 291853465 511931538 719513686 944676782 881334287 800975158 157592071 967357896 469109018 5835471 691598025 854689202 924749627 841348884 742148763 285154689 977107229 49206959 656431482 900739486 580309884 156571693 693743283 927270447 403443420 649095533 942498936 536723104 92306262 254575688 248437576 954185938 455841264 708065754 771795359 488769325 355055662 896519766 779948814 692906663 939107187 670989236 682664676 507179898 859982872 338903692 831843290 871415691 674366652 481990448 297497533 791500062 937130761 824964971 597663231 783937670 900905945 768974567 181585284 697879641 194024615 436842531 980608369 298975116 33181120 37791691 553945407 665024460 466629812 931252841 732330532 937738111 550995545 503923851 753215084 691585200 361050444 707133595 544576315 873282467 121118696 776635288 613518301 797254204 11572880 866296546 961161004 842392090 399789146 218441448 326982093 431729376 999563902 779725133 171071406 831610998 248782570 831160273 445422005 593260485 929515393 171714164 998510249 7713509 672385780 109698728 742474533 719597465 146592835 950577176 945352655 659442246 868018741 806711372 844866943 745018922 8457722 68423713 699178790 664701257 394482059 828673421 565032918 467169247 787670018 974979295 695517983 670334962 215877221 140839192 70783492 399627235 175799603 695524443 454786576 297889436 636338584 735229922 927634557 302319909 853459888 985814219 405760394 949926308 672658352 978166989 692079240 247645063 552681490 995737384 783226553 949936340 426622288 750092795 954393361 56589734 71997841 912930223 674248010 569921012 511597683 258199604 956848065 666777759 250855336 284569180 333105807 325489506 785161879 625347209 120518422 787592390 771588425 681145975 673915936 890163399 912614466 201069473 346317120 557384130 814245610 845896664 170452454 786649255 68434905 144533315 639117890 536870111 255092455 552276309 203613583 664472052 844779619 127604681 931674470 563046938 670989236 598332604 59544397 262146541 545113860 678585572 340662224 800144513 872179226 564163192 440576264 744656999 701593513 349849720 918216881 304377286 964490310 945972889 688272464 961051163 92891975 68734075 53123958 608179760 508153853 202082861 406590465 670989236 918928917 153897276 736713796 592864572 991446651 858279476 154886054 782033217 731922150 908373283 877306681 734377915 909332272 1489481 610374059 532870244 600371057 739602535 832469834 391916596 876061676 677083190 904200577 993973049 117139809 617289336 848293567 974382934 258288931 672175342 759792302 338378371 958239022 816336186 328852781 801398338 523917017 913648239 579243116 660118238 251917182 746442440 365598393 291601926 758160999 500014156 765327535 689031566 869759075 492735254 900395700 10959178 543796979 200117137 1381170 366905383 267865532 676131707 933702238 70673006 833955509 683324344 868113614 859767588 988538177 502935699 600180413 39746119 768244777 987320072 439301783 895256389 181124043 541183941 921269973 825258454 697866895 616699029 623848237 249419099 873432084 858178376 269308577 808379175 123930137 676208972 769546264 638916663 811465802 87499065 617200375 810749899 291387640 976496214 636487757 676002753 72500674 412869444 763868795 805007869 861437940 274518449 75328982 666362119 380816247 669822514 816715956 935923071 983843590 597966513 514510670 834232648 364811651 339020354 971727106 927168755 179350687 66479015 445414721 924083516 585022019 772777304 961373496 942367283 904357961 673101131 691100737 141134203 844234305 946929361 670989236 187196638 896862800 45037127 789352275 897515065 980843968 824372542 315043218 670989236 75052112 949385972 791727288 729368980 743144334 90498597 248399905 985798481 175625823 900791640 389757045 841344240 748936855 218435539 702171270 670989236 928933259 383409587 798219937 717831397 836681311 729401122 552838881 318557552 680965912 854317235 213470576 587869320 768230102 806146600 667264956 469375650 917796418 393383793 583134760 836451595 422413249 997519616 45114111 810726484 155382710 676184411 27261835 17822698 621335298 822198836 823334188 188083031 97556712 444177543 996457265 984342151 186773240 950133737 933841529 934730051 306749936 570240872 947766652 297124309 409628964 722750930 48618584 778072964 466646465 619155328 968180265 306358275 729804338 848927926 193685733 869577025 670989236 496646261 508955704 203026004 600022143 832332622 213347087 868957005 875247938 115084355 461676196 597814170 94256233 272534477 677783437 82099106 804606717 122961115 876931665 966092084 749362872 573798444 75264925 950205374 214506661 742825856 78788163 747298491 96579162 894777819 670989236 726735615 904303459 850275982 752813562 557744392 876392102 869234885 812589442 439067669 213444895 776826867 495543703 889912050 884004602 76136231 310354687 320752000 806262156 601317374 539683642 550320920 860459123 857185774 376841907 318455637 17105538 757330685 908308431 916874300 962209326 134176146 932739096 858892675 797475747 53678958 794903761 907791276 703522119 852251003 723907429 487889355 64954420 408090834 664111576 900123988 554077776 141562642 840696109 811204624 103522390 234627106 896603946 857423128 702775209 720247789 39913265 939422416 874689035 926929615 130874189 945167760 756161180 778459549 754199694 306466185 988610032 939677568 150132691 71302008 748751910 670989236 874801362 551523011 951333376 583748767 757925110 468451969 187741247 978762101 734506386 774081532 947754228 237249322 62725066 225312949 697783128 798028363 984314822 903674384 341086689 737988687 470034452 922993793 676208641 790128798 56451397 421383843 221472156 696340831 672454750 817558692 344641837 643921792 978426377 928970378 82244470 215124424 379215412 968062243 785785759 589856842 75883094 121301412 984768775 204844716 978535984 943127585 978757726 620830362 910258466 109693653 435103802 838555442 68755325 973129266 749154039 641597227 576971116 227002691 712361131 328541167 899425832 809956500 394177332 561198552 938560248 94894148 960777421 891637362 544622973 406466893 289005952 775650648 256405320 288039385 768361234 790159225 808267291 837039205 49638305 933729872 111843764 778600552 681250836 838515391 63570507 670989236 867747829 920826531 266182837 76405133 118378716 21054558 299115770 566339966 98887544 268669999 499587122 7313222 692792592 372156905 805691325 168836031 72220426 137126526 124968578 85467720 840678279 519433539 591803362 799301436 857873429 682629618 1265974 554886504 593677799 120816413 197611471 683679803 883823860 812618305 94863913 671817551 618487519 943346814 967229561 719428199 515214896 747082253 74009306 5322085 829196988 431338250 669654829 234532348 613493166 875491773 972408042 780199339 766423717 751740612 619494846 68192381 842351468 827629121 896930613 355343861 92548636 855224413 509921754 176400038 967763714 915749614 317835797 164040380 260346024 361126466 777784573 706554099 880416247 191985049 722437885 934491184 715910399 894545903 392138631 739695510 695838622 999697958 837543541 929529862 223373715 707289541 727078185 331816392 3265137 579029742 342710249 480174724 281922749 350380674 698700588 255835109 100825326 709923426 814089104 996937531 508376717 302255517 213987293 673593672 624960122 74820268 624484959 473604832 946835609 420514971 380249628 677005534 620493562 621977323 703206914 885562918 689959675 802224574 955733707 886947739 150831487 243287402 750354817 378864401 741680384 428272045 702888093 685556866 676943082 848472175 865322096 985072604 344149428 759213795 994290787 451640653 669874768 715512908 206719288 542185116 567701476 685218474 101718220 960722398 752797861 783926827 549565337 4745035 239802283 787946968 483419751 74862724 679494730 733912750 414771869 170500647 290173854 537781130 96294645 566559085 45240616 119543192 320044764 562674599 874663296 192890193 494960692 334520364 978412133 205538854 359793206 647370204 349640746 844448765 917120648 136566257 364765976 775862164 589801734 468519224 825598125 752553935 71919258 693379184 543791878 496050837 664177559 815775866 129313500 945767547 816154186 171789222 855104503 790607903 710003317 358599802 454603470 438776644 919288627 868796058 762579076 916885348 552230240 759955640 737593228 361362031 704345584 777828264 88696490 929871055 966027436 774148051 187255499 497839959 893992785 333893628 221092459 140162935 457677020 948823429 670989236 549111336 735845460 937280566 689212674 814661357 434899209 531253784 692551091 900331142 711882935 58434619 278515 575241087 198843304 860615883 855354319 954788612 928284888 894603435 671422481 222289423 142065584 869325792 734325358 789361462 999295253 499297785 237448861 788736221 955397294 337469407 132092833 641360018 722316326 882526955 60492557 107430114 475967445 812774842 794233933 666146507 879349597 747340774 339000711 562822500 970035105 874516085 876475815 958029396 848387115 550220388 221065370 514335988 627456436 898501350 889095752 401006454 68117403 970328896 280259915 766406449 988816904 911413666 91455683 961732115 432321149 836348496 168733028 496133653 670989236 309268551 754748480 470378185 904132674 951859225 667568514 151940857 931657269 632292550 718133082 806435437 943873386 242096030 105048114 862574912 910655376 396927262 998618757 660191786 745710443 811935844 859938065 811708290 728614898 395362391 773905686 267205318 330947428 677561610 381302050 697411058 412075531 106325238 707835117 484103274 321318333 669794740 668518024 734201829 829730665 776564061 574880191 149740496 924461371 246323293 362209482 813656461 687706266 608848785 863928030 925021198 178799705 509643559 799180371 225964871 906740503 41147169 782611294 28205761 599322261 282610385 645290905 856455358 192999389 939159804 841962720 676887341 820028867 168240598 927607513 130244396 254531752 693746077 919004146 157921008 303575292 477195332 804650611 737262011 430132241 600839875 635686653 862702984 114455040 890462614 458093619 3826257 929340404 632947239 66240100 852185064 581560516 954081100 343618767 498882260 517778768 901558714 804723758 469425562 46183788 488875314 258479423 746450221 904152550 941161859 262855339 721618668 53800373 908852336 201679226 731811194 537322535 564213360 704203392 127299820 451878656 993927598 939302352 692247865 816054214 65450326 375730691 491700631 192232081 850638391 390689227 967566240 658638160 851429796 638124501 218977191 765785170 860771353 631876035 295332296 777781845 21680620 133805455 401372026 958532870 699778848 235207181 971748597 859112706 145432752 886089429 243433960 707616086 693438817 951809154 453982070 770788845 828913802 936478452 156689877 442315917 706180112 971948712 933214630 225070865 644534158 592361614 31444163 597116735 574548663 709009096 135399535 500639972 713100878 909302205 718220889 195733575 761885867 476586769 549608201 938625607 176275199 302652383 537539730 928191536 76644486 731106787 392891029 374813444 959034430 107981603 50900998 892181199 834504353 929388473 712798969 578829474 445182361 471919112 336625065 467042953 761603579 873127535 607260516 766670860 967289178 730701655 263256992 893031090 724740681 272141561 372814164 238699808 690047371 387710336 63549251 709863481 901748603 113692520 810600972 977339874 736042792 901730439 863267172 376490744 846538256 852430811 972643148 861292563 746855414 933680887 741403744 590817829 57427592 146490090 815447371 735878658 730488838 471066220 548791004 826195539 311966632 364363675 753813155 35806007 827054033 227463822 465904863 711925842 71101366 802519228 680037835 28095373 876976450 450408140 309249404 108865738 149744672 798606913 854871186 994567526 270113064 903096064 723449764 974919596 724525572 893694250 770309978 686233497 906707778 681556717 122024859 794644707 985829775 800127293 994305608 983442425 251542574 225830480 303725134 296131004 689299778 121288688 431406754 158785654 261209259 840433352 474840281 754815185 751630446 792154086 941001390 502309704 142597715 940434320 715684288 849891106 146407119 832379800 521268529 976904686 739833606 379962175 825180094 326326359 222946710 758164132 787821246 698025164 942300559 717654472 406710576 492107624 873903834 59157001 760351556 864831738 987780491 674049471 905181045 108505432 694662213 849837299 608837072 383420287 777285115 843441371 89873468 144197671 88966375 897497299 972894388 11709500 987948685 709624525 895477295 596595950 81341537 474209957 363281054 555380255 407489005 758688960 930449537 831685461 670989236 833360297 397264763 243892573 557005419 707132247 977300025 851137192 774131142 929920452 902466338 848613874 72055368 90371842 534181575 784357786 198806330 41188812 354410175 937507180 702101795 397926991 600158796 940698808 159066219 459013352 750047566 702346437 702007128 243746238 836615171 368197796 244295629 769312386 759676700 505356989 104576037 714319812 507379477 945987073 161867904 915608442 44598402 271592933 626612382 806207481 219858689 851413218 232827152 705809016 490372417 672824490 672263080 830409411 891929739 190221860 883588636 850770369 975888414 35987421 385785553 937437046 428718692 257349738 220913043 871608338 364604879 402737427 772098436 714507600 247211379 668844643 857668613 451902384 704232153 9577433 952221692 963021229 20628113 966875760 311589927 977300218 226078360 815113048 248385806 237767772 498598171 257255065 210312575 725129679 835206184 529459942 447501815 681481990 856158323 893534131 538961787 259691451 290649002 410079022 100288708 878857803 845207923 140350578 253342424 956333228 298941598 400759999 770137348 913420438 608493540 575022477 786981222 410810102 859358676 199737241 878211498 879741372 620839949 131595227 709233756 615912328 812815826 782691793 748724746 957097452 275885905 77771672 47812790 374843173 555888303 543306387 23413322 359878080 233606280 684625890 800980198 574750069 434198843 933021538 887219168 970714501 792583764 581413318 344784312 789762606 905845050 65582882 385544745 682769247 422964722 818228884 479905797 778538775 792488787 974521818 841478917 866628760 771887778 831174244 613691765 452438172 957671095 271161741 943549926 377094163 282084492 216623481 662476485 150520478 774279616 96594519 55323630 920485769 294959862 995341868 4192646 315859260 545157929 718946186 959094650 786906648 691213807 792519707 897775621 840094965 399833327 686865317 771059299 627066969 342919573 928026581 155297746 729926318 722671851 876821101 809235141 424088075 189304125 50692317 366112994 14366967 761293926 850974362 977703273 987001570 830462961 780912910 518950173 686272000 12320928 746940378 566329716 885683893 138196625 105565237 156332180 980660070 219792366 912001258 971954197 694199221 965450607 694701721 961588804 670929508 73927330 543259313 272428435 747149338 940462445 894138198 732300521 571372744 539369944 146725654 779560477 228501011 775740681 295301623 130235803 942231058 832709579 478467911 55887867 471266952 779846 49938505 801992330 176317717 727604267 140632023 806764451 802374563 833582515 764388019 393926323 985736808 796157115 195199788 910286301 717214704 876799643 25018245 686215721 737099092 497376456 452849148 760770987 795481544 944054268 708964324 571073733 702598041 949923891 892946139 986974362 733841798 694272716 449584278 382945837 918975240 898526427 108794369 359375195 695798983 927289877 869850785 450954947 313748466 449099267 762331025 408020677 466973664 235691896 975006657 126628696 917749987 954637732 681316143 913784414 910294101 607647907 306840848 100487983 674513613 903794288 917449296 276241609 784071330 213732039 764371201 786299168 569016685 238591701 560636575 100804513 850042522 83914890 918816172 239519139 44165800 685372490 99549693 906207390 891255392 627239174 670989236 667789234 39079053 177296375 993976972 235540624 883455735 267243039 128187700 306695982 309943885 911400273 884512095 902411680 833805718 997899788 204715059 548529703 313710087 707897251 755397209 692307045 473406293 817754138 876193226 689278181 66872854 271658233 729101757 133475617 553535957 739421788 112790958 956781006 987991684 491963361 689164282 720703085 127732299 199113274 908639195 802413108 952847813 905694805 788955052 154942853 201850785 687856265 990782884 755442243 964897861 826316870 614966774 570435316 759387558 688607638 753746591 77147507 309961028 372039120 902806544 280998923 379091496 974850471 692122524 717059915 393656891 798664497 999084797 718822940 76207725 634472581 749324630 320968882 952606228 377412427 691449723 893794675 615224633 929738799 709687668 810154004 689154248 619787347 82334022 455428644 589603591 832530863 269928508 618073689 785509331 678430397 998128104 595299123 469721680 82532771 939217020 519139759 789885602 734090747 75661764 776031462 421890241 972639429 774129238 905736445 985472892 564950014 74726898 93931269 197260500 47796476 610869536 760968403 820862352 782201319 357953435 699657093 862243361 825588432 869492353 95908441 759629835 100265435 529854171 439332802 449385879 916892803 670989236 310382119 909146743 250957046 840616741 27307308 226720432 402619398 270070602 818157342 551721984 695675803 102826147 343414056 452079937 542977804 971001519 422726399 288001925 788066106 457127669 772140284 962836073 715394600 355513493 904917732 284378701 776602892 509236114 943223155 327359566 308590722 609214370 483446206 56118969 251525002 33969859 550770104 683409942 977036162 856177442 818680755 567391196 903820002 829924716 517031231 446780628 411492713 897219970 584599099 514909318 983980530 926724254 724421247 848928179 788519945 233829225 959463631 999648389 913685498 992247278 318172699 858439846 443779125 79125374 143271107 695427758 671141853 164768317 228088467 714881657 176330654 258583526 946055781 255046132 840430769 451200062 11878171 274019281 840730223 567862426 320750336 173571030 762691272 513991044 134367875 276239266 831348019 596166575 562993719 736950890 885922600 453822477 764670489 504223154 890737968 643777758 655200566 923955015 712079205 683353064 871240856 322841751 912443288 331241711 529514356 329241967 787856670 582879826 87896035 134719516 983698100 503045821 121222239 300493120 419903469 595450983 869765055 598400821 474186895 374705726 854068863 587927505 496697942 685262142 852655637 867921813 420380996 801836443 244674047 774737712 342994388 516455677 993302423 316477661 748553829 10564738 755018368 22573927 245498046 924865336 758535809 897594707 435213973 713253081 334905590 718305145 779190391 223973545 12680088 604418921 982884151 942014387 507584040 597804161 871921901 748025369 199192839 206699829 834192977 115391623 488213856 943096767 271850387 789954930 807507059 802769020 230944050 281669493 742643545 903229462 795181058 707867091 840182570 344887880 447236278 347038854 701899094 809997548 912657171 947417267 868817807 975024323 895458562 714514467 866561392 483231528 52452051 309868058 846626171 287416207 405369046 787248461 788481293 949589398 679752869 737334309 429665318 111720296 205838225 777863664 911609721 861631788 992194996 463286262 839531196 179571152 533844338 772071577 796908684 674766761 32530800 452009704 546770787 680087676 231220737 207729466 993409442 142482804 199762226 342832972 366675987 306610612 469527238 236572475 481805346 250042285 198773681 682276089 782603324 364842849 553337139 762661372 845032471 945171273 893230254 124244127 577571538 837894443 931419347 819684850 686273668 287952042 91591236 96726525 827413559 923331829 322850775 134391285 925213630 583172939 699119779 585449695 618317752 70492990 848446321 257103373 793150963 765002293 148959093 33980332 677812553 481094029 670989236 995980095 613236389 809410011 556543018 810847284 347490419 293346540 795743914 929437178 454330959 672196416 913662826 667453969 781431965 639810256 632623521 951347316 616296878 22886102 924023452 551829391 640341253 833542070 919825463 352182437 559562010 554950394 52608025 261861966 693402030 860729637 687840926 882111778 410077290 456827134 773324219 602310360 788324380 265126037 249080880 932861416 473620600 745468351 637010670 134954835 968192550 487500429 499667465 605560198 307749365 413879615 430435748 160026454 725124454 834951847 498348401 800058045 262708226 233501651 940134243 403661404 867038556 57883650 121114610 119791235 612045666 67943673 399204629 948088000 518508068 538903166 412540876 431690295 939671710 945746248 277682529 827548964 935304656 536982768 425360985 357024277 889954931 477268834 220772385 990928983 890198571 570474746 758908468 797662597 143981355 110394123 46799232 630791908 881331603 801237978 920056983 857875244 177354162 545440 753898270 818022906 238035235 903504670 695777097 8569003 881161506 788876896 952299871 902662926 912076771 466408899 125309706 419311676 41752885 682909146 423547131 304391926 868240608 889814536 676099676 911515117 369313879 74234609 93868508 690163002 737798825 820881561 355360721 428437921 927276045 393606260 927829072 825223257 24502095 717428357 565358521 704295112 573378121 629649856 311343171 897904449 615544704 125612967 238318512 442523085 879066817 821458280 209063190 972291495 731558535 731618292 920103468 684948858 721520723 246192714 807505434 339254625 215315769 116699954 939312889 396237130 715535116 708416940 935783036 265573579 886949153 730600358 687840903 518676048 777712647 235339346 837988536 545703935 686667600 600829728 676629148 693125348 951331243 309832251 707308649 889001416 811944497 317445765 986067083 905818608 781455471 32372264 178338697 902411084 424817144 687409481 143639562 907417324 553688646 587209657 683894555 601143060 885526401 945005546 475570002 928672420 890680714 520932702 775862151 754704371 222341049 846433810 763609209 325849716 836116573 982929014 448531883 866296525 762334012 793020013 853963609 161182848 805464932 461418300 280793579 880135694 165043341 948792269 476490622 251131117 703175252 711726567 689112977 424541555 756809334 973736562 918966833 757801481 396409120 230207954 618334445 60499327 589226783 831932007 687828487 832374475 1998751 213407710 448078560 991572424 752628792 839463293 41530961 708964446 818495668 148971088 232791610 252515587 149726540 349572822 159547943 246913556 810645008 777939604 845945404 720851969 186499616 408304004 419053629 869121951 838243670 918666218 589342631 899992484 698382318 313764981 675043446 219587316 348056101 975585602 39398250 26119343 806217086 635147083 871258483 670989236 557159806 930542495 801307651 227318170 890778016 18249873 891098560 979561218 958857144 572372311 255459454 973536813 893618359 3966280 303564140 274098909 758977089 701674889 6690910 198097553 14146589 688439449 183878844 708852829 793228510 703386883 556956562 187888174 532939319 862794283 820654722 865782548 458614597 781986562 905674053 108806220 861994542 24511783 30499592 245007461 700558205 790216312 76794346 285588655 866712458 402377512 615356235 686516800 919658223 238797234 875286502 437808868 505263654 34604626 995067361 737078997 59488337 721490922 166742264 922289506 812755442 266082957 828802460 73089117 583080466 690325737 953668211 45230020 597757977 301523364 703823752 499413359 864098782 96316133 562219886 534836172 942084213 437749987 450209280 176759596 712147829 831395737 315585037 329015351 650054573 538831735 254430258 221366150 3371995 69995574 848450173 51527129 731982139 676910284 351007398 342831529 964425710 362391987 417581263 70838392 883029085 857642025 275811888 713588808 533253396 824751377 870280344 452444777 541560768 310445235 774699173 343720341 543221424 20132284 111692644 738100376 141360052 135063549 543866301 670989236 798733980 917772447 50332602 702886037 449958937 769815313 604577450 817065834 832476950 342901050 166665198 858975348 206399567 348851897 571883664 788637965 720293745 568771936 27307764 880777759 991941787 78243252 951534107 708925618 869884558 766681376 456021856 361706810 761677132 302880509 730617291 958393076 654015764 959975749 377462110 892215596 35051649 683767032 415954571 412299857 904504274 24951950 977339678 199038499 273401425 702610958 119978525 127435875 730151570 435960521 824314401 25183059 760107563 41157349 615565303 674934490 670989236 926680355 397560096 649793330 684718543 975061956 871458260 149673927 706657020 505323061 854645019 254640740 496797926 906754387 86262499 437447492 756318420 852494059 753478907 227460784 980046804 12529138 222165673 336016118 393476668 603061318 849087387 438035435 612739527 180047458 506202580 860094157 924858619 938753386 935726349 747633250 861717431 810121835 670989236 901278760 703125484 670989236 966566440 423930695 710379367 923594866 315554818 858099139 197912450 407172553 676542235 904288504 226380710 670691903 367786481 908009426 972243789 148609174 934115837 730755302 294477650 231362286 906187825 63141847 687958895 800570084 46779318 93909880 608757499 799761421 311541176 717859844 975607981 630809299 718350412 382851901 830045967 269251487 117588269 635251356 563393304 104787481 830078423 327140479 432230178 63693958 131773946 808831375 491943381 635679205 868502202 886231684 724035892 413378022 567199859 929845146 286053226 939981181 646621203 710546260 50112138 588332426 218643315 487241091 899427252 327755107 937768605 199894294 154626355 18806318 90602206 980302778 739059042 917597633 57042660 830142426 852101130 431953311 349897318 487233926 704609661 580653030 962098217 737341613 809503800 955012958 955888041 793482687 707252119 768049541 898376087 708885624 670989236 714448029 983340830 963422355 680040695 720340304 305911575 929518730 485076479 848298669 636625260 261798379 356102726 164702552 22583066 731456275 332087244 548642305 948407175 707493819 306274297 779001763 966109394 838558495 982674628 740018958 32871228 620179447 344258891 54049878 507721556 790533608 370433093 360335157 115781612 797363098 811578531 918192715 937932440 44288636 688758088 73688644 708226130 888499707 724133042 727230767 157061556 19557795 740721810 957987716 349661279 231898485 703536130 90445858 341173052 499585954 736054139 452200263 225897918 826785788 202491906 234643331 720546421 753475109 500232125 834593563 814566173 277057296 95069735 250710631 82839623 670989236 449873595 685279701 53314553 172346968 355391423 731682333 167471963 12146568 186095846 491759545 769120210 479453895 195803848 948509004 818665895 585810021 272446741 570698258 959371571 862365332 836525896 896085646 565376012 305895619 987568671 503114908 575772621 697663435 322303178 745342570 89318959 525885816 878766094 706219061 871310148 589717769 448947096 735177699 812593059 851434465 905269564 968129986 167083858 553719968 874576330 717799555 15038314 145597525 359410807 491902318 472171506 362823081 182354496 645130517 21589347 433290780 75521680 939710394 805520765 943751780 183050442 340611140 272690550 392697798 768351729 989489678 769127595 745251162 796674684 809972896 999235528 55695467 666799496 840468710 180178237 200994787 833975249 295883137 233094625 831006908 517577388 805181510 784014702 412902700 639707788 278938227 677647696 804331299 697316496 671441858 910662726 865905056 491991818 291794341 725888960 523483157 919274864 699901944 278514962 951319522 369230073 738074080 873806195 696589792 157465345 875638455 525530105 778105164 57888707 619276711 730426224 216794661 574408639 812552655 660259042 992986251 830423461 23466554 519984258 199817496 194762651 996568004 973708783 220825785 894478619 572738685 224955914 829101083 455849653 846913753 996447553 692942863 121923377 986948079 660902576 132579983 937737568 689576502 38836436 656677015 931929350 752046599 864056514 634327071 874272606 899036829 865198255 778743752 640107097 858438522 825853064 262422164 905228530 239571662 243080628 43830767 447572537 488395516 493261565 818612663 844126194 747333424 115383100 578064534 953459308 841285206 202876306 661401976 155773133 308280501 528517277 979902291 739746264 974629903 306835702 202943481 829860402 101418737 63017825 479656770 736853006 393873836 469585212 771275262 838729844 633251597 92476234 907017251 655206555 68334117 327198635 527488107 912702531 894253010 968656430 732856979 987787621 451232421 714026304 184920539 720750876 577931327 753879341 779866841 670989236 58489746 196733156 796963994 950080615 770691891 31382592 75820541 724671302 179294965 930065616 240887786 965187187 280944291 455253467 1123320 901831434 947077647 375142428 117034921 263488654 410884144 875708485 653757908 650838456 444035306 974920610 589979632 482202531 768104976 536520262 861215261 931791449 693744364 562172691 888922368 839032960 996710558 181909031 316250747 674313671 90314244 758059651 908167909 474467489 998327458 164879614 180949587 806049388 269242044 686830163 680223030 902535539 819127049 917453772 730884954 591915029 749767952 297303410 996483715 868227890 70451164 677369901 816697807 382598418 736194962 994203966 630594110 913569108 173251628 21433302 500658648 902807901 86255726 117433007 770537344 734270857 886857944 947079449 844028300 207442189 325887518 791849497 287015376 723032114 816826765 652771825 735200049 294290550 912040197 373966027 786025526 899651261 426911295 799835561 943984863 665838264 201211395 790711770 434846057 917182256 676349627 164220195 414516287 191478830 996351799 729084504 47492483 697259726 721818511 922470827 719558206 869124997 822651347 360128572 739101286 829919268 727674926 846558023 699491277 524933620 879734991 523642586 280372344 658250856 828719917 75293022 717047776 591977014 824626201 928164939 851956817 551992538 821810827 394843374 180740855 484658306 390398510 972133170 992043006 674609589 939485549 661140278 687088344 725939005 784657404 627576352 894565906 392539893 843243912 53599908 321222918 806145139 628678075 709491494 165700364 296696952 501779983 483061264 964734157 857529844 398628611 981247070 669875063 612737083 927824241 764264533 221754478 222853365 666668408 876742118 521336290 932609995 89098816 879012920 896029962 670989236 540159509 683731936 678671001 259326401 701542895 527931226 935613868 538873158 597292245 260545741 810373334 46550193 969209855 325100017 121901354 462543828 508970029 464760664 777672475 49286100 748017287 224609908 136204321 936695330 847787052 851050554 846410655 443720992 975253229 103961498 627103772 66600846 77591908 347181707 148070856 43218628 742401969 575906194 196374105 423442839 948123625 509982782 802810923 767466258 557642460 740737745 772639396 591591806 967446959 180450942 133844779 722210826 972852965 984857336 783002174 698370410 69930638 188190102 706488162 678681856 50943747 979044405 178874123 154977226 729159299 834963753 608902188 744219867 859586163 804824766 379229612 254914292 744284585 985278454 232102834 720102710 54130529 754699352 114132614 227401189 428768949 906011707 53857816 44282758 335087055 670989236 55744261 417522807 278518634 904605782 418471284 920629731 502292288 770053980 957557603 727156834 805420439 597652508 690338643 11210315 821299301 122608385 584053088 929007901 700871302 850832387 207114531 753390224 992621065 760754449 37215073 897730366 842181729 679017203 125118563 311168246 548452582 736496394 987959434 979804954 785840550 46772209 834030291 998115876 230600621 393650368 310413843 971875443 409849791 285048472 271210738 457418424 862907639 610338135 768730920 630288955 22252284 569457285 264290777 840112019 302094188 770643261 737083440 729300352 852483157 995403098 994988333 504728887 90650321 55542391 941968086 128785664 262966537 822894484 936029455 850905692 765799929 14388911 706518859 283734983 849139665 817852669 792870345 908735855 967192781 185667063 838835032 777275624 773339589 42489851 709255076 284614380 982687404 552737120 642335167 578589647 913184435 830407883 881357860 760722557 407201044 244447044 716862084 780839847 770502746 346593929 630557494 75353204 764043965 203613588 422063407 504094083 170312031 121430868 685958936 327620006 808673131 902931916 205198000 699401995 584111677 166250740 199513108 355758752 810989692 465035567 427272184 89244031 220795011 995751220 231070389 199678211 785726210 455295868 843316294 63240802 700432855 679140876 21467759 551265355 12232444 740223012 762232020 981667639 728807644 825080794 936151572 957458830 755984686 430506730 152365559 64215758 946979878 161627709 980119232 855304775 16172877 161875986 755231168 771309813 53716681 894100961 744647029 554088802 662589253 192267197 767160166 414415056 905908316 754272952 50382054 430074861 83151366 991067217 798254600 692350676 710985413 301710916 3113926 99243636 789529336 593521176 785815939 684411296 228917821 895212571 546174264 679617962 765879171 690553687 163877861 542571521 699220873 906322932 953275987 194876889 811992806 448345426 706686837 406128863 83094831 257699562 230236991 431771881 793655198 787527046 786614701 585074400 330497542 917264033 886264038 878613414 209415438 285351438 10992997 61656973 456977036 52465527 82281148 529318234 129856561 55967541 899659834 300428878 944287750 550191991 766896548 724462060 937419813 851455819 552299036 833878763 894035920 842728528 784247629 306165709 729343249 318516461 720805206 318845347 735347968 737616927 577413749 882423629 965409931 791598265 288345625 348119315 782894453 670989236 169542673 940235880 861382595 808206338 148761663 446728312 211890311 487132847 38600144 95458608 620366936 648981674 589229089 360952875 482682076 825438387 449745377 446263469 826960134 105814562 670989236 767899297 845080977 201148592 940310226 714846099 48350058 114495428 777541406 469720688 745084307 490206585 24806646 679642679 966338618 789129488 146261757 153680327 717645706 560158938 499871103 977767284 692226087 677269784 750412147 139692400 979459094 712074260 758764105 190554599 926707911 682986785 897622934 961558067 445149253 291524909 926107553 388097899 971220144 77086781 956358441 392748646 853509043 763971810 228491710 870707248 920593367 575597866 181880590 577184263 829639272 704232270 511565520 913277966 11022548 786876499 835757704 670989236 128663844 515804146 956601427 350921314 988457725 638680549 968364952 989757802 988493092 81777185 38178250 497255779 772597236 936376826 874682099 966324056 170786948 682052252 98692417 480494636 467869946 790950940 938987951 240849719 990737201 351994451 768110102 386744682 812827472 894788115 798192436 452823467 817637908 205949076 813399224 701480323 670989236 432108288 208992826 777564327 430735448 568691597 57056123 992793958 978415766 659322569 823555494 569711762 296765384 720447968 231906393 392901941 579186655 377313556 527405427 670989236 717637104 26373113 54081563 492542099 931273753 7000201 144241702 391406625 556917933 933258123 590552764 771933361 602179720 872117886 720283600 851482059 893545768 741958512 989429159 376344834 775779581 17548108 138565144 34779007 781652120 460584811 846548859 749474497 291444620 258475372 854656225 684228582 807788026 743850822 650223347 896126773 821906619 850550949 274480578 619744830 135114681 856660704 960555391 805081145 188526475 990192106 864631012 192157694 967111045 920100084 216093420 554170096 388951614 879318785 813856452 804649967 996783487 104728467 708430573 808348615 713735965 694890501 215580009 802742917 625650248 895462910 280466993 85261805 472315601 704581619 799601131 290208441 266025133 267577866 731465723 981241950 751342462 274126971 774000595 640624770 649702493 763175001 448049798 991333966 347000511 218787915 730227489 604882348 954086097 290279093 887916766 307176538 26365777 588171026 261458674 270451505 101743914 738494091 111043060 709764766 107911238 420842976 41584087 934081445 669390453 984739414 683368703 196755597 744532618 525858493 287565066 542117879 701893238 5101470 997416267 355521280 567010790 522197727 939630771 19998339 359091097 197972044 126494790 400033020 707308193 125563863 689470456 110874037 572733935 630346345 50453312 891271302 91364798 742954244 807837834 838389428 605351150 990495715 323529690 880840740 901710139 197858123 435482295 607538241 619650145 724735500 864435389 907630283 341898609 743205028 670989236 877779985 989864981 929934509 847223980 628856448 854949967 688058366 931490683 663027601 748846149 965669408 917511074 144703951 436960795 841940067 344296211 837179297 141995456 419675744 130709227 508253220 553455885 683183543 414301267 886299705 892153486 957929809 938386238 745802319 897693874 915555636 987865191 831438006 270109274 986721443 752907141 790152665 803582009 490357970 963516771 45025230 34068834 975612582 299165209 408339427 474022849 473800344 352095417 993912471 684988813 128490257 843297258 765469016 836583520 723603538 822123309 135932913 864596067 971411070 392143075 690168707 876852147 880265780 933033706 357827859 240559355 929517824 470215882 720081384 344053140 690573862 718027523 138440535 452056966 355777819 670989236 520108394 452302895 887824170 988273284 751872887 942743483 199938900 927834762 782908371 710002230 947141286 852768120 991889532 822963163 27772053 824064837 321662920 141039189 797139885 346995553 601993425 632450837 220751100 386553606 616254686 928783248 993412911 616043586 607259160 710171253 335591711 449211616 916225585 120295933 205208887 690589476 894416981 917135406 906994595 855478569 926955657 786034027 999325788 65598317 403320027 416604950 21102010 284064380 178216176 321758481 686706805 934409362 213841989 884015548 393415212 878977706 526653215 863184770 726304435 552956190 674069596 631875766 860274213 440925644 38506315 759735265 371895448 591069093 972889446 836935751 974740751 456591590 323748376 630907429 236861571 896044144 871803346 988307205 346631241 647534161 928361705 608996148 888705117 840039568 567750193 634107354 997730015 586253767 682475831 48064040 992953868 971970119 928993128 396689874 995609019 74607241 39457922 841854185 914581180 884389942 98268339 206253959 882025176 826974224 234582695 892427272 598792267 655701432 725569502 990211740 813690759 937477998 739720593 944372234 891547985 866908032 823129904 589200666 193880993 211735946 56484402 651953059 168906633 993185895 615238905 834143031 287834321 783570929 680242086 280765387 163061635 835046354 710407487 976574113 334623713 670989236 728262713 976656573 984254968 465114801 867112766 634714022 295350871 414256805 819879188 915433421 753517153 652558728 937936454 481117139 268479768 10741012 497716555 760649067 838045276 800536996 403779324 993646546 73105794 929944554 502899456 885770095 716632024 446874453 35855996 698942468 130621710 288733711 102843260 983332645 855795479 836042279 954426772 463626261 770268432 785393202 339359500 138963634 882941522 963380788 16436851 635291902 538090450 348800851 333830698 491133006 692754694 269164391 139903282 755947778 55641134 639117015 750074996 435178868 395069742 666309701 17290932 47080590 323405059 751573139 670989236 117302955 725251178 897420563 612377234 919621674 983448284 894210993 710886153 500653426 734889739 36440837 143837661 880617859 255436617 986432727 198668403 688788789 811069856 164352721 978441504 906125905 923282732 797893152 880130901 244957453 177830283 929101301 697986534 747550268 708688122 130955975 998650475 645916966 547333405 462411665 423317840 930439089 633890944 828509079 694716829 749445010 171874032 471791309 894902302 239071322 137251331 962605234 171048039 856514114 837238367 244023121 910981984 850698532 826740475 238466976 263078128 365163912 168227365 900838926 133153830 711143827 686444987 342695019 405961454 985533273 149625689 730845180 636406034 102108489 770463680 628931042 550130319 860789796 45405441 704899062 577876487 916260466 894331744 944970265 720134095 65905763 107928481 192107712 984973624 301138979 16974249 619831848 487394614 936566130 140837857 322642057 912624228 107685731 835534545 87600617 81961407 888041888 680935613 407164125 214124712 993957019 856721537 758628817 885196318 798467372 719880191 16683225 670989236 713008383 658785452 991998093 998868949 191985507 707976270 827144381 859124180 713163006 234010526 931049821 250704087 279042043 591158426 383812712 917420492 688513089 13644327 161886119 459163794 997366643 927038505 394781011 755684287 845335217 842001855 732456665 93261053 871959640 22112033 835033508 969437712 533901025 33529461 956336247 415100944 383798272 470988921 866191275 595264728 64151161 107614095 619750435 668242945 29509117 777750708 826742610 759624426 701851140 355617482 952260658 817832639 612201393 222971364 595265622 895410713 758139723 455889122 167301046 890299353 909559247 846004641 114678317 798044074 804826186 430545902 998824074 987873973 456223339 549863507 381114327 433828458 804047075 792795808 660502231 741138785 844011363 425882791 115609671 670989236 143457716 202341941 777389861 670989236 991699672 97705212 584833616 857868661 769788736 416522777 909489108 856123168 867292113 895530928 620209614 751488557 77381027 801570526 419034244 719904124 512912800 976072137 62893185 636964955 461199877 959476721 973594195 952703149 515089799 642510049 523463793 864781877 752951188 543419629 710475200 670989236 328564342 161100814 869900778 482339615 142237986 284466946 879034590 941408297 129618276 892183307 942218071 255788489 596345019 701476077 694501867 86880458 798186502 823029919 2791475 213982856 638473393 273401648 762193919 169219948 435406032 114769898 835224068 847547380 880384901 152538048 543213005 240862012 864985204 673371877 809902013 673886782 821286289 158779970 428754471 413710899 766945525 670989236 723115435 680123879 407226018 657083708 110262266 289590055 802960000 782688394 917690073 153285537 357402414 78140364 603574712 298868035 800959634 704667941 982022984 620212348 792064141 914061574 303024937 572380963 748864940 155933861 951995424 955735915 670989236 278263435 904402525 122614574 196946536 882459753 978524130 333948843 976543816 20735510 808693625 403506773 828966009 832947982 813786657 877954524 389109136 674772352 110690462 786709672 749238989 937382112 766640947 918103325 670989236 470108240 584388738 958403894 797166133 894144700 670989236 729877900 602270683 147035987 930959636 30068595 734762772 394535538 297480130 234644558 950931927 127260718 717096094 268303945 233453217 659245379 903445784 730098988 642678971 705507568 786582618 126353268 957721239 139534030 378733104 762103247 757008362 99005295 489986414 711568405 85659497 796915613 865023874 581022089 962777332 518316393 864905212 8034490 894161143 857854029 409485935 704684842 716355188 121396258 906968620 462866293 695719225 902519087 635048413 194467662 685133044 216047533 492732246 359980804 814258112 512090598 219174378 495075952 942310995 338880659 372691196 813069153 925745004 394725570 986552709 751343347 817798667 300580691 848352412 111643967 756838991 251554729 676216855 242510595 369042864 199333819 891361506 848373545 757967396 936771446 41903268 476973260 618658161 140724311 740231865 301083548 807436402 879826440 274839840 988028838 370141216 432531428 800429431 790001828 756013510 580815684 253191766 6182717 746510240 960740515 834134645 682438027 92275433 719405579 281482130 122332295 820381811 35106367 803367702 800026409 696733411 672275370 595881547 462604306 614503212 825445734 583548786 189425627 483006326 670989236 947206848 346311330 373200428 384074925 595938717 483229033 347447477 802753692 589202861 486076184 589605119 233542828 566731471 385862381 642935732 232443559 822984875 647069316 501210996 729474176 781478974 127593503 712188453 515752875 891525603 229220874 675439930 859495279 711559402 711456812 276318305 818159778 750026355 778215221 950796887 698350862 998824821 374494477 842331285 312947540 956507491 885330612 966639268 723022765 722421326 837928790 656749531 621786992 969438511 824246667 885286398 135678069 594212500 788586545 820481533 849340502 574101380 422125001 158788707 549597847 709802437 847708716 60493993 632457733 792858413 254723038 695678051 751894673 399875649 386881387 918741481 817151116 95211450 806503971 659076120 986587288 666279370 976675833 2363544 107137048 296758964 766838330 837258110 826465546 406120371 816265038 149914986 637672987 494024688 684517008 839516667 744250492 63315479 401725071 102547508 221686643 531132187 687232734 634175442 973162441 915910962 740143806 485478371 77491275 645724984 721653687 991131992 272841322 463974337 268257195 563642891 7180436 785424853 825813097 985001923 954005965 717308014 769560711 848630305 690755956 75914501 171643354 154270902 966393495 818120588 927597658 961907661 208813531 745002204 208892468 172054889 865614283 354676332 737463901 290778063 420451969 166494242 765164031 345241759 835505704 43190741 670989236 9884199 775720426 282566529 382200362 522515833 737918469 724789582 913541006 176385677 88386535 63182964 60899717 915786542 700852423 208278490 790124700 626636808 789065100 299638236 936297431 884075416 847605993 658615699 303055867 705139976 269189323 827175962 907200646 503294711 875322538 817758264 797338984 950028343 262118023 843283913 293148498 245984447 412509247 651932505 235454929 471331366 104117512 665777588 222518930 766166780 793250773 886349517 626902423 504482745 732446392 831345049 867705387 333932055 780415718 829028862 573301552 227772296 305806623 753037206 596327993 17471694 948471147 833239195 798079279 678357575 124357747 809015047 870777012 907939907 910731192 861154585 406761265 142790506 485710586 689639384 705809374 862611321 588477132 730857803 808057464 343245212 245475982 859437940 908849634 579910765 85010878 335137674 304964661 418519171 940671618 792065504 484705267 170212307 718475187 670989236 670989236 258597943 872055058 950727361 274805365 206244982 661840716 709320630 129224665 967889809 969323101 415995582 90160108 12179681 895430840 260774840 683123946 706447562 845670069 368440584 964522030 863808375 837901817 164391114 105899653 978908187 765717179 692746721 261234000 711227927 87478887 697979877 442122807 305253169 476010378 436271801 427760949 914484447 840675739 814122339 975210075 330161751 900398891 939976600 964030294 989506070 455530806 540708754 54801753 766208345 672689626 564255027 835561651 215943538 274009732 294183861 809062014 829066473 846320386 886798175 950250497 495271905 958550862 462297521 467773087 926702791 61502429 668509874 113194838 236884455 428883159 852589130 693192726 170701650 800699980 728266800 920698518 670989236 705586211 853902074 68992518 879619021 767894748 502658046 31369649 94902802 877538754 178914985 982397267 805535853 713103401 794961447 935905061 887979102 586876037 629444580 17212371 962161300 825626336 433719759 878264223 670989236 518648364 107728202 660580905 998584040 746902685 965225377 849918236 1821231 105790165 296018195 710828873 811952176 227019410 926232133 949255306 733482075 927876374 733727217 761011654 838530116 662109912 465135896 710327434 149621299 672173634 788800057 635835569 377687852 948295151 967115061 237883815 670989236 839839360 610980331 466618215 876661200 439641410 551857407 138665540 434248297 532733810 919219573 842899189 818873979 59371685 159078382 529492765 792268287 709263714 269966112 901295096 948941865 88980731 946084297 40946695 964155228 652461419 202511272 297861936 255919565 410397315 839448837 615852304 806615053 524900459 811142875 364974213 200670419 688430336 105358754 487803106 966625320 859594221 828031368 580668105 414943818 650716216 264529373 747843765 196678751 46378984 270377546 532054701 77095431 996233713 960789859 993848632 856610073 531702833 78842069 204693766 775340821 446404369 782376448 512419707 346012845 768275582 385170461 285026950 668792728 453568625 310437549 373536049 125443107 923956275 797373753 110225392 533125310 297116861 899106049 865478203 799572040 730229848 518285858 694111765 989920730 642964106 909882947 841324292 840979949 853203138 676977979 533314632 384930969 228774038 468499682 85379384 690886642 805608678 493862921 455031039 954268381 94766164 884472341 946941090 988025076 793866520 586830411 844022083 290024228 147459757 558549390 995176886 802383060 793063328 971676826 849742838 600266382 461205810 899263535 420893636 681354891 983506646 688560208 851003448 495231049 456097027 967869265 670989236 79240022 538129951 873445390 897734442 559299580 867356386 940023733 724748110 119670505 839824998 352776802 672836785 449307897 365992365 877753060 973129449 915687317 344224347 252800423 426296555 331818660 46493622 683210353 823037847 746994828 268284913 113111211 663083348 116834818 984860724 829055353 920148199 833003563 890945721 230464600 898157872 751977988 791210536 624485653 779430005 608279568 590155230 740579604 269984492 973896082 815207576 908723616 639526746 780681514 582537502 569933147 684358830 63822186 738315253 100664776 85378617 176958696 818986560 820036809 552461649 472577659 22263453 830079471 958284896 815375296 632790982 362078450 776024310 942102521 431589886 562705038 897350822 26173299 559263400 712719476 750193726 995974316 867337904 704654315 772887380 192370025 801256672 338809812 374591167 524378917 681282786 765182412 822057616 774759585 52472048 813097277 696895012 670989236 257559820 788991310 577278510 944789950 626678685 61799739 468565716 871372072 912097937 234569204 399533836 829008136 562702020 229369296 256767890 715019349 937815519 630025653 892947076 917363316 679090800 685662123 670989236 916811820 472248146 44245053 732001852 282974009 807546550 639932036 611766353 404050916 984020237 60040096 347058616 976447604 889666200 254158156 489482449 171082409 745098326 641694583 883018392 552403574 139282422 811073389 135960012 771364258 425970648 967175638 745452085 72327971 531272058 234821319 758898159 985388069 540019801 770798447 659488408 704164674 421021968 398308760 832134126 359754175 996142223 695326525 878766977 949724602 975835480 561347504 890689275 877520980 701272140 278738263 727672143 510781053 810227180 899575197 490913782 235415786 61448436 654092605 349332344 850213400 905275603 576116171 349924607 71644577 794802127 87558591 883985447 720986675 286737933 95100541 573609547 883928159 884921180 58558235 922327663 909964462 878338985 104194093 930156571 448248343 381191063 737526096 933361456 785195407 637532203 749231779 685476594 859005801 820083589 416314148 754117454 819212317 670989236 595341319 709243807 832509561 824676796 23038732 405287125 42006739 871587270 154907423 899579664 954896876 908525537 982084094 400473080 490922406 797976254 860953569 178862539 206454550 63057078 94748649 565814293 741538940 331822384 755000701 970385648 279406160 256682821 764333728 915212574 928938449 890764498 946806415 728214772 503781831 942242272 441829804 569810862 547147676 179704672 525799127 687059099 434122436 222032358 550405916 461193407 720462818 446002716 547250374 292891298 854792997 476497781 374429103 150127421 818939216 759244777 711058435 768179323 94031387 400892856 976703079 467538442 520268298 878956706 862267237 205431119 719575876 147783302 277791223 959302889 116279204 274453595 366684776 853910445 402237565 768859705 503759941 356293411 834553630 185330508 720278710 653097830 483425077 569441894 445660341 938034318 884310828 968951172 178507726 624602367 745159404 397788772 941049744 677792410 940024270 7336993 472173485 670989236 976445347 611092034 383556547 637493120 395130052 674259866 602262567 89089273 959536709 278676309 738926248 356402357 966410781 671930825 761314479 960515928 926681167 954185604 592615227 837892382 802566953 93741005 677839590 469264547 520895388 701758269 710254881 294463438 433650694 740380258 385776711 945422693 370534088 870028209 179253975 721595709 486400216 179736211 668173745 752718224 622678859 630769162 999758131 349126830 165093980 863707528 488297659 410945032 638369665 968460767 101063251 287346675 502538683 980754092 456963252 623996237 628011021 648914737 775929409 106177707 128875454 820946874 232225195 171979222 686533705 800311432 37495390 892390320 335714398 849222231 249881712 608652616 719194773 335071619 744254335 970437611 653266211 682102745 378435540 938784504 998063916 604598363 775495659 762143191 571506216 979174042 879402599 713999474 715789385 773168882 831728108 786198820 670989236 966858102 546368467 698365627 928043535 104756808 151827906 865231050 190896092 783582943 595446266 405092507 867801633 452370701 206305746 478406336 110652243 555969536 288660824 147427410 841773979 232976494 927048891 757379862 139144526 496724452 177857120 777103509 777021644 646588710 414807073 271907394 446642095 481862760 359682207 32629627 776485290 428016337 674752799 642497074 667455001 114187030 173778056 341113451 476809783 431521607 768616363 201140499 264998906 866463900 58890724 997290501 219639955 40841294 979963969 986725253 79249173 489373983 929597329 447373730 722377317 451025821 285365416 921190333 25130700 638569632 942785515 66225049 635732841 481605908 940287648 22440371 724172456 134898818 672641813 906774702 670989236 467263292 692142675 885515888 843837517 45952894 659150595 806953428 888201 619110353 301540941 932126553 749308538 22204764 931467223 346764969 545956883 933338538 447279606 833811368 253020988 519097452 901342876 63367735 409837126 307362105 833783866 792262898 776814977 655190264 733893121 912763314 994262525 57399885 894088779 745032100 703806541 782913597 734686541 782837541 878904988 388993601 308702412 530048620 878747335 929980015 677259182 915196710 963369909 284203435 199039041 958718651 742125466 487854862 887325332 718877769 812877932 178852888 833711414 73493495 22447409 241156838 671196220 929635207 746929311 604443419 14356695 751150984 499968926 814821356 772898518 131870650 747932773 526272775 705965557 718790131 610741914 325155898 355706079 337162127 60850353 978991210 999327987 77156564 907855059 704324130 206758915 926097432 477137524 798142878 989357362 228922886 232876717 95928182 899686884 949376450 211076235 739516206 816227109 52791790 868224503 942218159 685787397 735353156 690064709 846778588 355544329 392214377 599193957 286339026 729783832 710451521 602344322 76993619 190742438 676385990 567825095 99192746 999294943 569229307 467542893 769915231 607320743 271533207 727952316 777797112 609795818 303975727 160827040 274375109 168526543 497596333 280151552 449488456 799522636 649366330 702527361 324921242 872917430 412634199 503894601 725698855 548050642 593177292 506476063 975033849 574897674 601859577 966403261 955561934 793039685 876653802 678093194 759842013 245385496 55304043 568554667 432144450 749091581 146391994 649272796 516714007 314443430 67728348 105384222 855195429 870136154 826946782 223284101 860460688 489521332 895820872 941739633 844227802 697303256 798505533 44913998 382714113 705219963 999279964 156576031 731901612 190866358 623422149 458660030 193593923 610345908 960444322 63272366 159661639 567246067 302583004 547885891 900816011 535400854 939152801 490993773 787464514 670989236 776495733 198579981 753990949 715526926 141370599 279131081 924364551 986696727 78946086 959052659 353344191 342782549 683243104 174280904 798449336 224846275 955402935 709319441 906644923 761694922 408682717 657952571 162401060 318200464 22433379 240438874 831874266 785611613 729122195 375577451 739169097 477111553 603024814 864350201 787196005 828074936 224412287 830793595 424693127 806056736 798251447 648292310 979577555 248816720 662657847 850752663 95206170 560746256 723604809 830658840 369244968 887635953 86504828 813962515 847782389 906978683 316969923 516420393 329219819 206456443 739757796 668884137 768394565 740629928 125523297 206835515 289586540 551639206 663952601 138062203 938857517 656317204 308201051 305728276 93219654 922899801 883986214 903803719 777026064 631210128 978119934 947000428 167078774 894875258 950526607 670989236 608730789 45053804 645659388 993849656 923107458 709500298 761237717 581861418 670989236 578381728 121418584 125561674 627232317 758635236 364740253 359921713 839340815 670989236 63484995 5413463 848196163 697659349 257092451 709304600 862065895 244408575 279978188 703834541 539827486 434041385 239875673 132668894 869062550 59976866 635512272 114049587 871900176 651003069 353944394 325791181 940107235 889875580 277485156 363501213 594146646 862312242 910885398 798655912 695789213 220363342 891185587 311879300 33985128 449232957 742705408 885511383 439332131 250435357 130814318 712292015 617234860 974699044 663029180 699196056 977939032 878083624 354099876 132821383 388754271 549088135 607987469 641972607 27417443 489911453 332868973 707303862 941447932 915199591 678865374 247639331 702420073 667995196 55871691 712167076 900568395 522522993 884108035 59245790 346454826 36494761 228136460 44719650 467888708 586594702 824467229 831523493 541456804 817657674 756878358 670989236 807804114 177616443 916939554 716358316 332021363 819928923 475174148 257682336 156571827 816668297 747938420 704368613 443992521 337081361 749807073 340991858 552638805 647646507 684214561 732012796 930630061 877269363 850463971 599173845 460550609 844875642 638804402 332332661 108814916 661796167 763969945 661735696 428589080 115746135 481825211 90094401 927411458 680781272 621279143 83930953 302387239 256771818 204537377 935368326 332208111 576400181 784180915 680240680 389356867 713485853 498927478 514172324 940091717 927537675 206609082 119288829 718921809 277288078 209550166 862071641 161949989 680108307 920738514 758159857 72804305 618402382 492887325 304973396 842332023 624094209 859806946 923720999 670989236 479922346 335703479 267055710 896629101 361291453 294573641 256737378 973743279 826274844 543103572 51085411 191599565 522684340 298587443 925496544 250456280 111376652 514551600 769843100 449059142 747241152 676416637 719181041 170063772 644856833 502840821 817144180 805693584 401838366 666014648 728562492 440364516 122945782 886454863 906999020 475726196 953948633 956288434 176314197 716675867 230659136 927469906 768156847 2892035 108607005 688491296 401327520 298727353 265431464 387252626 605001148 433331749 85089773 801974562 494594058 103090448 670989236 629053075 902744198 245093654 442596588 966015801 435121322 19026560 462493046 662838796 229850329 99879064 979975840 102564083 269555047 215048924 573922485 636576522 47054923 825982972 268405056 246891015 253439982 495343501 627640349 506125712 275216021 701898452 744263716 888948628 242264356 370836883 522978316 290641975 873708949 218503393 274725544 709842698 701906628 76059547 993258021 637897505 295876663 829747551 712948641 803428969 489515476 333685093 805618402 670989236 778407266 732511298 825251995 585103622 998992518 52493000 732283378 99948725 771447383 150391046 734663075 839153126 873371548 536163493 941217962 891071204 229864123 872130929 592871131 670989236 846363401 843229320 830461543 987329228 144742952 591885908 832454900 620986646 398168717 852027628 905715376 218071816 691773639 619822414 674924967 859165415 40202454 821328570 687347656 740103792 580779655 8056353 552953091 617974312 736926948 231558992 670989236 306538614 536364726 919897593 157429346 556786396 853590285 614215989 956688600 772052980 754149266 776141124 376516232 522842999 957035008 467978610 936832176 460245376 626570896 800293898 957103027 238721134 478232701 993928087 200181126 266888289 764800352 660959706 184587709 989591705 667188172 612776147 833499952 886089063 138485426 87570312 723441039 223005025 698719834 710399697 39552021 64883227 320390968 794802147 470089885 135220128 619315322 421604798 340547713 604493755 679395413 280018713 866835448 910248096 420016819 428516290 985293438 175771239 992448442 115503943 30251658 50826358 37618275 147100380 910774422 723385262 159107642 847394607 105464484 407518629 850420074 299580344 744902212 842452736 719759159 878002828 224430220 673188063 941434399 192623938 938788596 518322207 612273001 734758316 833854581 478715076 869592876 807331203 246661529 958147248 867203458 498562604 838949000 40904415 905009932 963963837 782589546 892086560 330733872 973727894 846065881 105353275 611792908 843960579 504015586 763715993 984116006 52835036 470358380 264225713 970917188 590408125 173164167 710388992 851569668 670989236 661755366 774727142 764439025 819856836 668155115 367608654 743750372 880775655 387447802 194489980 670989236 656520769 974846274 899696980 680251964 250661542 836853895 500693378 700205475 694379955 792259125 194827468 749092727 261672212 971748837 536906088 259331438 88367853 53850237 809355962 962604290 193900552 870707288 512597502 87187186 524682235 544533224 916403241 72449018 473754090 670989236 704507123 969283365 832676015 508985264 976741518 983985935 777173665 286769488 979592396 640771909 960585098 930573525 900252545 290955557 352184562 833202018 970850871 697470439 499778106 154856095 757146235 915425905 727429483 262107748 795369981 496157418 670989236 841941180 564163060 928634843 943724963 149464871 24313503 346016534 156234169 506550994 896304546 58396976 860512077 424743590 557650537 554399182 932544511 592564381 98434344 330630706 910069948 820317630 240100089 988596086 105674638 640996962 375577710 762455949 957424793 776314096 382515168 728213653 794842052 241828988 937118928 770407785 373965992 56391346 774486360 670989236 426710567 841068926 480592133 232688278 880570769 977465679 693233515 888126436 605811015 722825143 951811137 954082639 391613115 704820711 956212738 963428114 667051000 712606355 334839804 716381888 75142764 450199324 282091542 730673839 353902356 927389608 728578957 155519602 32652996 955820713 587279542 819697693 464665816 381698132 9786507 506728191 695568437 100028684 254211952 223338652 225122027 856111742 898887142 996798602 560082949 450397169 175875635 526452185 303155291 851157941 290092638 695761097 281091197 596964776 691925526 921691348 337558891 356556160 418998151 817494095 256974226 413806627 782396492 733524861 494646581 486941839 295819046 867299200 173440218 304590878 988510508 288498261 702904418 799838729 887459337 525248678 783479838 44515580 63284695 683407083 724692899 294760380 801047133 844922418 352461422 676260756 852828288 647340309 788647219 862957655 492166143 735335982 353741737 896372469 602949522 83049832 299699512 386026045 591986596 658068974 478508108 702145191 670989236 970859920 771069517 929785811 477349721 170866631 307772713 120979633 983117334 382911485 435838931 769359024 727858959 990461279 637370125 122362324 894956217 89636131 154544478 468081311 23298498 321293535 72614144 859137039 943469251 80487966 161252332 755599928 46568139 88820264 407730655 662669472 983522684 67458319 201262980 400809026 646490732 440791825 248043792 840806087 125477758 992206287 5808068 1170922 941569340 227306452 920441076 977811945 378851041 621359769 964713204 977041469 918153496 788386072 881738973 735345011 118205610 954826145 822312552 741265269 958619249 220952425 764802981 20784717 30005466 810695283 594846954 724690241 680450586 848566577 713806064 769825053 92411712 930053774 712686640 888172589 285233162 144589131 748734999 930266890 828469528 982917575 815037077 796506849 920842461 146142013 628849215 744968098 529225979 671518877 670989236 849966964 834946006 101119562 806602686 894755646 907695631 149173326 38917677 916985736 685150016 818518685 952177965 948724180 682921328 729737712 893997886 818029398 761664430 701292058 626361315 824712297 964171339 450742256 621915070 536756897 549201759 967562208 941284289 43379053 784096791 672261179 435576632 255930290 830168317 5335472 75989005 631479418 97392995 773980613 120164336 242947134 697928455 56809720 797561709 613650929 795583686 524055457 797848648 896122835 743201953 352034057 954411311 284721454 800376912 197170716 87084133 424461138 349007674 725534365 793473047 809556689 136028104 811958473 612526419 925539426 624819094 804432207 594311898 785588412 91828004 940973599 998765160 744463469 600308219 368304556 996672454 948506056 778274683 556826587 815304822 51834064 709824998 262440582 754382711 208914437 943471072 550006383 147591348 951645194 975755171 219212464 963070376 686341430 483940386 234429423 418425721 584984999 667340409 933536432 386288734 569382159 961061377 923864413 747895954 844933443 910573937 38953144 744950208 867024541 226356357 907804894 931311070 315479437 984728428 786192916 771897251 910746879 864213928 843258803 832597981 996947075 731611393 622266403 790257322 422132182 756669041 279571565 248354020 710124002 561245749 782324823 914275471 514732435 73140392 323013765 943855100 517546150 963029274 852511676 829693319 501662732 256295773 759990534 801610879 435760823 716092001 569331037 491142256 292582997 801079336 89906891 457753567 886116056 923714224 717196208 216398762 749883305 944621882 718603565 323003435 783012994 741614653 696043618 209437171 791502965 602906265 964354786 351278861 746155448 662895095 862003894 858917579 757024373 894941172 289899867 378696740 991057328 860190434 920836863 850613578 972705638 291828133 927703147 717660183 682810658 738880149 451838943 176596450 366999615 720432502 783862720 354026141 413191389 754382310 868715437 947100177 671992759 169636412 670989236 884954650 546378277 213172719 157838824 804235752 746019547 668666704 743963505 297456283 593127009 791689686 493704060 900673355 789374938 110923762 982570552 898877722 400637690 728067032 489077534 447445969 93095138 781484667 143977579 308227599 972080581 289048370 941494222 565102721 544632529 453573105 785831994 527690754 925651040 648287262 733730358 831546464 886859159 72446549 824232126 908012185 105939165 296379238 862493360 191913504 881134591 151740970 803358488 686835077 75886154 178185685 287937530 889202673 670989236 870956267 862476631 277027498 532838748 830041132 712596491 283335360 484665421 102801903 81414491 759794569 922634861 750599755 841901420 745926004 236662959 849005528 234277672 808701482 191135563 928891725 842241293 626686783 147189775 940527401 732331529 227533976 243027376 140319014 559444399 226733941 796962627 96895200 670989236 205088618 174295321 91382886 246896247 978794420 708953842 879971753 789952978 558322544 571978803 874110082 90731779 734013664 954382751 555760671 809612899 960169267 787342466 334645917 561225801 699385573 526646902 787206708 338802775 670989236 714073032 822434921 467491425 44565865 969864294 842823379 687669586 683206718 692294460 456984381 915001474 226540698 778324301 142406916 967858061 751849509 953048897 372543196 815325705 82975249 877302415 785934889 268200674 468764692 734187504 774659548 592658265 907124255 833669670 609725088 447150001 424929246 450060298 847003506 205086971 768363896 866735095 127882883 690149870 560559194 950310220 833360682 377786626 937938619 673975805 457462053 934300632 722674962 494435848 452920137 793779557 488391037 101491191 764834800 331187002 797121486 804020265 763128271 757038281 809559391 774929572 885837445 262904911 708180473 852363134 837755948 691705676 991173792 515629044 165637331 312461842 734826954 562048532 811879670 990228949 948688473 125538932 188827864 933950523 515456885 748856151 718524420 158749513 523132158 71429629 723885609 440562016 907207739 891657077 547736747 670989236 310102208 831799351 690763434 710952209 764051419 455627426 848176547 827329203 771908066 392026537 981062311 308107459 779795051 711397650 257126288 52343536 579394249 979778325 927664310 781601414 680402047 750557079 899320154 792570856 368938607 744965549 393211465 772564825 27154116 774975712 428973185 387424331 461797904 930878755 287246723 681546205 473591806 843636499 905788679 874077916 799620285 486675876 790136247 371384181 22545101 74505540 948268043 349406909 42417925 776711923 519381344 765865722 316630236 838673159 676620368 862901641 200917230 743406620 407680370 856962829 576648213 915529787 409191265 835272691 731298657 932899436 715593880 849861492 394301958 129510104 940907143 964378812 762399195 919711488 208805225 806383914 481060594 576611322 598810037 930101408 853912760 947022334 701404867 246849555 924057749 991044701 695079543 814213637 569102989 718124396 959697421 921695510 854060059 434544568 890139878 457960139 394203299 536414270 866295203 929417921 842977851 694959193 408248053 271799267 601062732 481644285 83396376 17338168 741204007 746930991 211256913 550184195 128720588 442802407 508764150 179209329 547680905 236861970 753384501 830285413 945192004 71894153 439361779 799009683 77246138 862119101 812537555 904285292 997318655 355679140 890232337 740986825 530804261 715742616 704391539 609234243 951001125 685030223 926681504 932037933 740111525 864845334 924326706 675748803 724351283 282395084 900387729 903472439 841935122 862914154 853994186 435635883 968651335 115500332 722056153 472257200 559101869 892126511 687624469 800002775 953894688 863522499 514277119 159410164 188346734 869059714 713024163 179614458 853906176 524807215 935805597 670989236 871436656 630384543 776666426 363900963 983261178 677421762 874632131 191150979 898986778 878952112 814682199 970860023 55746246 704663175 469336029 52932264 938546433 953682391 694790965 696595250 842207871 46183862 964231823 123996043 856977102 605326923 562337316 507683341 31545186 870326354 721274584 727539187 479491249 845929790 740128453 621325226 774103445 764963341 425427611 755827980 632288149 995465638 108957571 87791214 861779556 956928027 616283153 732015039 749064934 873497200 796520113 465585359 5840709 517156087 830784750 802620601 720812844 798047973 461149651 713200905 900370495 873165264 255309057 29361473 200282954 767821972 362330907 358273807 791777243 280043005 645710388 471722284 471553817 442039333 49403613 737216998 183704012 350583934 187741914 803949531 880799356 683910452 337263178 963989334 712907325 895991625 713613041 365571049 508729768 901896260 496404170 972352422 993163122 736678173 541889988 535005797 76873409 916802865 617837835 377341017 972382457 439411568 857607526 490028739 718116626 685731883 634098479 55694784 9655752 670989236 498212475 869858173 632807276 670989236 719546444 770937205 44522210 871120037 530468046 815784263 880615610 942677107 440374809 466291685 973691916 925066658 367916965 248732543 757533837 216505049 262674669 74911125 690899191 237917573 708409481 954320079 985851756 700520580 587019153 658727815 804078017 992583358 420955760 327837039 661275195 323120425 717896710 532126202 823617807 185182395 580100893 737426819 942902384 833221529 722408642 997579980 914846545 281889444 38070777 95768562 770749306 4393345 706507463 57656729 79668154 230515531 808763387 717688695 197985747 141817220 601400938 685160220 788287740 852657332 170128220 650497312 507175980 241784748 680708834 944335827 148451231 391799061 272247828 146574344 161232033 669917289 773120118 889455752 163042880 381489624 872485422 195931611 753085377 759834858 853389392 645734945 338770839 862053472 817813789 665672916 738615536 868359080 670989236 895240043 323802518 875875653 549636438 826217432 70588496 760198557 983892606 273620038 759148628 671745737 592020795 685185904 194045414 825180599 966639336 615312737 785533070 834099250 14318151 799019950 719646685 150706152 121791090 576300810 985536276 740283494 230155548 787061672 787760634 406031357 248620183 540991518 755651170 843374983 831958148 138007265 868442603 706652973 952029791 690778114 719618826 939931364 801858668 781320252 177676816 328946005 574433829 787607910 913200845 623902434 870833230 784569045 204308963 829249408 19417560 939362456 925285742 197025253 562172605 812230577 677735788 11166726 154862239 815515645 996922950 422001965 204224106 877459952 802091810 410382157 873518463 757240018 671172735 348377392 263891712 503653484 79828622 276523888 319610878 168684146 944516444 234101863 331358722 477001840 528656330 497557979 541882425 737614778 922534186 619119265 743701834 202712950 764286810 520104950 836536268 230161039 923786757 431475084 325154078 132218841 804943125 835837325 955884215 535115655 956579789 421960525 469535060 941473199 370375801 438777 175213818 773686404 907207202 969292664 991305830 435244748 684892977 937057103 557220236 960014204 946997876 573674864 885658821 756156371 485127040 447808566 259653582 915021007 278839736 670989236 24108234 236454873 5009295 677861267 893893613 173687975 391470268 14186153 207056964 379204671 872747200 681425533 168591141 673400244 943675973 905949694 837788198 293828020 63016226 202092734 278244478 944152716 319953346 331977599 942529928 279157099 717213810 683177205 830280642 481013085 836186636 691082620 175899274 636099742 952128380 102857816 980219052 481619297 506586994 701081583 963156070 693691110 742974084 771122141 861532292 977402944 928750493 630378753 934279630 454145 871692247 596435742 936944205 29661733 689169253 982670467 997619327 749498505 774615871 320077236 823100555 311373696 875980978 680314582 750754922 176820191 900542690 773692446 433521070 856742949 560629124 157723683 915698540 385447685 863860550 458698238 983633471 990525359 277475065 481563805 992111223 841350045 47539094 443061737 263746931 694968189 521560684 63555116 566286053 612812610 583697336 751052503 143789487 411151755 492310055 853853936 228372772 294436601 198986229 731007786 822143096 922786194 773123591 316076249 79846711 720442651 819678943 350281788 635771268 585291 358454860 93791661 889524007 445714887 868300742 260904505 590474337 984102520 960700072 849538730 111759067 800107865 169709287 319529913 774976696 566652999 403818161 151364195 797065925 499898220 612718959 122394222 421685001 859589051 880703456 45115071 904256447 714179533 416379862 159837735 890204385 455553051 391077174 774325922 611539915 563819731 438417009 380911157 594185562 832477092 803403708 152268419 758760025 355243459 177258527 776650021 761974183 827249551 252679896 736571602 190326979 814530018 25056247 69935626 705319076 766224741 20480626 633544493 308696785 501015416 306716293 172859044 733807828 414863757 898184126 19382276 984368250 353519559 697826691 925692878 641639122 574743571 473275735 837826361 651934571 729598088 528146348 109595363 154848515 713140601 818523581 627272067 829159255 899299884 679027348 901041820 302296927 196904736 991982296 634860869 202783807 361126313 860113577 151133880 750882715 894337575 140364602 775536720 975317122 863898963 551090005 518086946 916742981 764011291 603575343 846547096 675195917 893509111 684513775 809561478 815871601 177515004 931545200 187873198 617242645 341540477 713981135 964021050 575378814 824285269 680850302 317138167 92574585 921712132 931067514 756121405 689028096 215736542 535775323 312090021 963610098 774548525 94628761 918929104 2995492 995382210 336213391 730947196 204912700 91749215 19849992 19625091 868614200 106540784 886643792 733719972 670989236 507220421 843039161 691364436 480921577 784258986 68113187 598668437 833710717 82002754 755578703 433136931 500455685 652479049 623697305 58190838 50482366 817088547 537307482 545849187 241934050 935234851 778315540 996919809 193538039 967848211 950550808 450738862 951010804 756994792 785360719 856114373 584082426 119691336 940413620 985538951 698837834 43020600 642565352 893157641 158985155 105335326 440918627 681734417 418625210 998230980 797159193 671937202 714410818 322834665 850062593 761580020 993998563 521088213 529190338 380562694 72772446 867554878 987683063 946415374 495433203 281209149 683176931 670989236 438313545 992873390 607283537 750331839 470815625 972214243 676444854 708706348 904172696 404053312 658126440 170634699 652378436 757789791 429747174 904671976 681401245 30142494 477874310 824363592 357155884 851917646 496282777 773075261 851316186 969080273 915716605 990001475 670989236 123005143 369187549 466475752 778079489 910668593 686814251 855849933 878434398 464049758 898673352 956471925 660460655 864644952 922550397 259993124 250667740 138871325 862345436 542381702 976723420 117417121 396571543 959793321 937119209 524141494 533236505 931059342 783421345 709749349 888508363 506841015 631890033 900355582 583848520 958844829 815502458 843481338 734574451 364786768 541947593 626383946 607691509 983461600 972949197 254882794 407285381 877180303 868653076 963291018 936136798 526065566 485311199 449834946 41863216 954439438 39541537 845797510 808152134 894541948 763669272 832249764 957656346 574960518 936334879 105442018 995497005 549287544 893923778 819337763 77216747 100281364 523629394 795471460 706607993 639835264 847452764 270256723 933548327 435884109 705183340 670989236 984084603 837067175 621474634 940817715 953470801 515449955 868865453 540426834 27650595 80457227 317548260 931635621 719003947 226806553 799890768 916421177 387680707 147889585 669773366 785665963 850560121 16388692 405526560 188619431 681802788 345361659 711839508 145896530 989717605 937719728 334912649 515231431 623532931 182092587 70588045 7823188 796740843 701555482 604159746 863196851 779279173 708412358 461752028 323961056 604668844 973298952 188683306 517184578 962958073 772827933 601550483 950036353 939763735 792598820 812979257 247843265 742709373 394737004 444176 999156147 838307524 59494884 979939696 755473159 351160206 896971722 197931716 247884751 897993558 711051259 30731839 513916941 840277541 92242638 303459627 587538487 514734337 687452870 746511562 953435675 545825973 159292589 137744268 136040395 375266752 928264203 562994541 929570990 709693251 832096754 580630680 642405168 516500444 932511215 403155442 878509515 971803480 732919933 63287635 989371996 434978861 297619737 32683679 580004171 575564396 85057624 734290554 714736998 190839048 626002445 677385967 913589677 678907225 490542019 915740857 917199259 735399850 291480784 753203491 888252024 946953267 747780791 93842161 654321551 810781307 823114686 742812501 350066593 549826171 922369642 370653371 963675588 173234355 671660936 843894285 994566864 871878980 610010579 392999615 484817595 682327099 567694693 683718948 305749108 319867641 923751965 850712977 860582519 735456697 930803515 646611709 153930574 647409201 10002409 627223781 858038933 576645918 614694532 363675843 702377558 864259324 266459248 516050164 954398457 953738680 762255846 814774028 294751646 753888860 346100707 478127157 687471235 4674998 599033023 591209130 258261663 934154963 42704049 913247380 337057312 359693262 157878229 693457473 323826474 870365977 819641694 109307614 953085651 512037410 376511813 815222974 748550726 423927362 659206275 920810598 335596300 737478724 93654140 970955082 566520337 169508230 762840684 92858624 859864564 953289929 33477387 288311857 868979102 900356502 907019104 403429506 320280016 408650413 713937641 68764109 50913963 836163782 946067347 935253216 785663432 286305051 764023323 911063768 706407523 331811201 772592073 806654211 553426007 564010666 869942896 94899221 924372252 836881957 844991132 626407522 178404781 447789176 150588994 867574314 570355669 690499322 883916504 280008730 439613582 723228090 282928941 763216486 783595566 862068551 670989236 889875852 365331105 745986158 87617837 902082566 745467643 803721867 738786862 373720116 139226371 155348543 841053748 780347818 164148630 688489743 124989479 819243692 259239310 996574704 411272198 104559387 898098397 695258272 60301729 840428908 190496451 855242823 328443746 979249907 140893564 7899011 357402758 484512976 972791131 722552366 877670912 946448938 176686424 275871106 696186969 198821736 431670347 768108195 703042424 986334572 963545241 442656739 726286655 99735477 108649332 721258414 168972339 691981652 621852044 888003631 456403038 639389657 926267823 910354919 302082123 407307356 464741683 889555340 616319432 737820890 734207953 171704302 846676311 482172022 933324410 409038442 721876173 941145316 7209361 666083916 978811125 93160723 209643734 86835396 725463645 187695306 778175714 770908092 619242367 214481270 767958598 616001025 424062236 504383785 930748419 187435164 930744278 712316812 306842243 108859516 857365573 976460897 766092776 944316074 871894434 907685276 743313776 502518402 26515204 694910411 880771407 57542538 999581562 935090882 419152083 700275 548954889 411946360 806371197 364715008 799806030 190100924 954022726 859335640 625798880 894809506 677162451 575685306 497964034 641253208 134441951 719167571 81439253 633664890 642903525 157832724 956129017 838986789 716684436 269914332 755151478 896350887 85678767 420623774 928446833 910801054 684953381 870632289 176842806 589430857 753822227 670989236 86441511 709530764 165871090 883828938 678722021 915923771 56129501 987061782 183387709 995032355 68146514 90067172 992335932 839632647 738867644 825401400 338791687 784063605 583157790 725585825 701185858 219138766 982453989 875489677 80265661 860657214 501859517 794957217 989484496 884343444 807709427 827837139 51767595 808727757 252950947 597089662 962188254 744078031 436105572 961273318 41368276 837590458 875701060 917029698 266709614 803992101 916506059 254134127 910859262 122970887 267294416 847558979 649535263 276419561 335386735 421507062 312434013 866679682 929235214 656191457 217100342 498828468 853166841 822184493 927208171 796166518 930084489 992075254 424893934 789903461 223325423 393707373 309942043 738266802 876162194 350953213 538655759 119298116 48176069 812450298 789122100 677660598 655403072 36752372 116509220 803280702 676105829 731109231 668870960 919755000 530546561 208254870 98971862 922801180 965701161 693547640 976003279 998736938 392848988 604405439 422192271 926721593 865652491 150601262 280934799 940431355 288779786 543694216 447978040 912074574 802569283 995781827 972553250 130252807 849821855 994439108 846372785 839971451 941206057 620471714 756283180 757297290 914738927 891643364 943311281 176244472 822295895 244925522 459529841 239235500 748747951 166465240 116204760 292739883 837222618 323603691 809328258 176662864 161185539 941422855 675135138 224615444 937545369 690559729 881123211 603076564 37926695 693665643 185102602 907345942 429026927 808195388 860551206 704244949 670989236 796127433 407326866 349485853 913195091 945795628 925606899 989304340 210777836 378221212 34107022 643426115 622467696 526102922 309747365 308431772 979137520 743353562 747270636 965840976 176884043 417718674 644144926 966412041 76857461 712680542 97030431 776766898 236224506 857111766 864292375 794433697 366999159 649225156 891800653 858276517 796161068 759350089 226689633 810897091 907368855 355536147 441578958 466805361 673161900 870031425 953374336 846197227 53492604 493081657 49575062 96383810 133260825 41481463 305615090 970075833 531746067 763732483 865006760 628115476 734216395 277929331 305656864 256288595 441031811 803868848 225272119 817976588 728637864 729918029 707786760 721403475 610595044 847314174 68835529 594284234 520072874 437078571 380947271 429399171 852781999 841577415 611661003 324818019 127703043 422518739 278915668 424521274 892261231 889488900 33158709 777063517 303605937 622406540 163715430 688207918 832117665 516674158 740944635 70108074 574648858 218887619 336513025 664071455 987551100 794575994 845933890 860625258 962443131 238464359 703714709 203958673 698013840 158390366 421691160 790461681 950430533 706827318 831319000 309414640 731092815 79784453 949707376 701454758 594569981 917967940 713761590 379018597 67720189 768813664 894612534 632598727 834381316 496956925 769403657 687527800 963825575 858174125 908692373 957025762 25005745 408148737 426343029 692360666 856459505 739433422 955760127 970581855 596907575 436770047 464505648 809885203 996351168 721088149 991864219 19674271 294912865 858756559 293836713 702725241 61987757 950480817 590827649 238892446 776143150 165089439 831229229 455357126 54791472 325183498 866958778 912109225 170665772 788326033 383213679 511285538 186339113 503365750 704669828 143357195 534104781 212225003 114438891 155189228 544413837 122383886 126116956 718900525 705469634 617063377 774488413 989900753 875697843 970953364 103262089 673655638 695044324 196487111 13728055 317145324 101713690 22688121 187830174 38005617 679727491 713706974 204767641 950631930 89789715 254826908 930746325 34261808 846769913 494446351 109003978 256482985 73049855 240909160 988063931 703984481 679520871 876629574 127612070 800781874 682218224 728079065 820316469 778161068 849334631 888978077 652020846 813649512 721865913 414454562 777597039 686296155 674973838 680054830 794528318 275268991 574563447 987381928 916755033 930732435 946419963 128776436 869797580 806629358 713906803 527579349 704640451 813940779 550382826 219935493 735726957 670989236 737163748 127677482 608288444 41466873 121086715 359134428 622956091 366459360 745582559 751532163 314505692 676442973 206828436 186762645 808424645 863226780 260523442 397994721 693816420 363131917 712048538 889426560 694200895 780792855 335727159 307833740 905239726 735243461 424228603 614330381 252788603 859694839 730102403 502621985 800189919 32337791 19220362 941302034 914545213 70571451 987048675 666474395 253954598 867342774 993108343 276498719 944193599 690248700 502630759 765223066 611490407 670012852 146236463 308135454 463776029 958050834 241061724 494692839 283252476 673438749 575165597 862599082 907060592 497892814 704404720 896436775 489550203 576966076 223743522 533831431 632060884 367006064 919839986 731039356 113272720 928099770 385944353 627798322 433546028 113477419 919335586 787554608 794925511 322768114 144716099 768008533 34565021 241813323 148821979 767000771 829159219 630410081 688857989 901102 499069119 734497917 937424369 638213463 901462757 868845762 764447086 132097498 670989236 861759900 199316889 847165654 891314026 366562888 130831884 503417654 599240003 125035418 756245445 416755369 752211817 436974422 953633766 432568136 136550062 274177616 896476701 597286117 220111023 64561594 23874883 803951919 507359895 940021857 766354756 438527559 39492659 367754909 75923941 83925282 851931970 802126246 729172547 670989236 892708568 25684125 805204946 761408446 828773086 814695961 821453152 848191107 498569827 846948341 928974862 937093439 618471286 750873493 469653610 169614745 581824981 783362915 751020954 967594136 823441963 757397978 843040757 509662655 152563607 67785820 559502664 824044857 243794309 580049082 20115893 799955938 707391038 185191418 634653728 961592737 662257026 294841746 190373446 131145472 273665539 422157324 898492294 146120577 246859127 863126147 255273852 829978427 807855272 326474362 105923072 917980482 516103605 398614354 183316407 966167213 910466176 890886633 256564751 586878628 863282959 723431838 880680414 812395782 2454085 995471130 326413819 953021855 296327855 135120706 211497710 243532292 760834043 985772645 294372672 379981664 329709201 488523035 794791278 488595348 226276551 867413501 504335420 724099353 296398035 454682025 264199975 798567412 804497377 826520940 476992198 978679848 699951776 102246314 771117211 415153560 212041309 322684467 335094046 834312015 326697617 293468593 559837455 180940098 97750439 689426256 764795820 362462589 813684154 698153313 351092854 843123017 420733291 681221681 108952535 28206574 928318189 743391751 769853131 989452777 953036311 208629410 482557121 720160880 908120559 812913877 136934096 139253747 763828642 185052755 837445554 218329703 952433345 167176069 803786130 39259803 288393705 346834718 286796756 791177642 454691528 764673684 899298162 763536055 962706653 898087388 885328262 976247848 947534924 117543560 238912733 744006215 110873594 869555199 752642964 641165302 939882321 381123851 463109277 778456149 406476967 935852097 289198248 71819082 741762066 674929427 403772440 557514509 949932161 188386268 996093450 10297552 781777493 515117130 919244253 294874406 18294860 646833738 614581931 149516886 644244264 619942538 420599146 257470356 245407613 728958588 700630782 695844009 244358844 835921182 473566841 235937761 890052223 376493275 724904728 976953105 48444321 768197905 936584267 126776648 162166641 954628992 797970568 572850787 948665569 18509714 951740169 110354026 883927801 914472922 430841799 707976429 574458078 776438981 263421022 626030939 379739311 960896953 797249323 858564363 984814344 729214252 964483282 670440257 944084063 576397972 180379670 410596947 663012740 787724797 702148175 106987337 975187473 785280601 502453639 847416305 764480327 765418055 672893366 546875264 899759757 724735507 758582348 120593612 847626954 690769928 954299769 443121491 907375482 499870781 765162816 906018108 870525196 505836781 874208566 721159589 698351150 770343426 51576452 361019592 282611148 768175400 233189660 83073461 248156808 930133510 867386361 888007188 876362144 934862194 363893975 182218485 18844151 31698292 959356249 961503578 709037654 376485678 423939023 691439097 854374570 310512641 957616751 304649478 444829757 576201334 855706387 244565275 315380812 288304160 538380777 411613039 708793741 929296082 361539034 763931085 819529843 432404494 406904684 447825850 236209844 680032407 583149010 733397207 445794276 506653308 148173194 744603505 449721271 880834587 700921549 625404020 830380482 833323332 629588370 204388503 214734949 999109307 809369433 533042749 724958663 789286844 467324314 608449079 670989236 665061936 775657196 526493649 708209250 774546283 995729953 963739825 868595169 719349968 749498042 930621729 362939895 320298763 800472709 929702580 429698397 938665894 745867504 833149208 867322477 541108054 681727417 682107416 874732869 314425345 744419361 371342552 430524143 650457176 810848653 966268968 843349285 181696734 500191753 907588454 183950746 543406704 50703210 494644982 87506227 880217527 912666265 495482570 511714811 521384020 922873842 885432382 817284140 397696549 723026181 693338149 915429605 438068656 770084490 742792223 558177941 707581060 888568170 29767968 807964717 747166888 986531852 670989236 409406265 530017508 869876336 479782780 861562463 947745146 688065839 33263705 9026702 866267771 655429982 988489878 856009907 682997696 929187695 361642248 679198939 919636446 569081808 694703135 991398278 68498125 991420634 776035606 638550406 817150448 450462460 850261490 850101263 186240054 543273458 97156489 969452206 789800171 101230866 980211118 974953201 918215971 657778479 762587138 655802887 287562116 360223383 852684133 162858791 125496999 744389899 290217972 722608261 435510689 670989236 634399883 884332768 535022537 529462754 730849334 6420737 97193966 739692399 983302152 859388767 456715879 985673012 991963359 984951627 962991590 615091473 684418660 111480518 976268639 931677513 322816102 364067768 327208927 461103455 670989236 935669268 227265420 693208631 684269316 666289851 801172626 757917613 780511638 688761717 825948374 518481147 174563175 60730183 507998129 580443908 837795634 707773082 717691390 962634697 217567194 884436367 697322333 171182200 130594734 636415217 750506714 745956534 537953475 491706453 449011235 920307828 983365992 337653009 567666525 906924665 311739670 681023586 548503295 146801168 730922022 728274346 81256404 267327437 84947108 906851753 762146189 50040026 553555484 342886682 716928690 726861170 812285138 944512459 924145142 565480731 764415812 342289245 817274214 670989236 776503185 814025970 740735635 81253395 792403666 624883769 425287283 650485545 820584400 914299363 682973547 156855418 330250736 36363511 67884504 423971641 353521155 409915034 847205922 820905709 573023202 626665035 84036099 377403005 849268589 77416729 843810150 136124103 782259715 681794872 558620590 674855802 252444260 774645587 118728103 771179369 132789868 934939560 871791935 174184569 312589590 296047854 700705730 670989236 404742711 980013957 787816711 879043108 234622302 428743985 222125508 735515262 891975156 804071331 827148069 586557260 847449927 210413865 301574229 86308990 903515494 109416434 920000329 71231273 688170476 279252877 262881699 97372244 321187316 352835525 556750667 700804020 910121575 179168190 741348767 273181159 684004664 334221936 358518486 743290071 806847324 905790148 930230627 875726856 268110864 7161547 811141673 748751618 856195895 546902189 879320863 384696266 988065924 663468254 666229614 848904549 199562598 923649166 746155410 39344450 677987137 868914262 765697905 946019559 39327785 892091968 574862125 129327879 207164091 927167041 676608643 78016017 791516274 680132162 43472589 721733594 471135546 757748659 718976825 697740018 131866054 997157663 460353691 308263277 506341401 437066783 531855678 530295992 253041394 416477700 587226426 966487745 780409879 722899631 710943905 764696255 102619278 713342836 40491741 964852537 584805431 982855003 7826908 676749144 753062365 925350496 891374479 718000237 755430558 107245437 673109741 32017990 810320533 215463126 341991368 791250765 699648105 670989236 840693281 548780462 846311196 980901784 893255157 899180879 139050953 840914481 482661094 467398826 744263619 368227735 890947997 565630781 274896006 633410292 115360335 448617415 400361113 766276752 651191134 830563736 314984046 982733342 6534276 551102682 94755447 574429964 675417582 818248340 511097033 793022779 456047161 820604041 56193671 80603589 375527420 796458904 55068992 303469683 717837509 990836476 69629971 840781035 9562123 355934613 733290375 893688204 994427240 981397466 171837234 926803761 858153675 781231812 471396760 922579837 681085243 858245564 508172405 896410959 59062928 971447983 151563209 701641399 335573368 346909492 687443389 129757244 259160814 587642594 75318292 458298845 58352125 983259454 230634382 854219422 951888487 634277110 730441443 474203447 111674214 897245829 980786942 839866526 886003780 792288293 586316447 167540597 374120178 866452522 895037118 498559568 610879710 677653699 152224966 153017541 757213947 914904711 956872911 542885597 452665520 928566305 961544288 850155810 585725274 841103933 266876963 718705929 900495310 894004639 140352181 906489080 371028989 736414508 271361863 670989236 62874037 2447835 714831649 688262872 806233522 815731043 674731058 197214423 93071709 359934683 780755780 310059507 670989236 954086840 95599098 14584350 142783819 900644914 837987021 935352136 943043010 511078848 892717979 38900058 14332209 982461835 183808634 992205670 561443831 710306887 512068228 841630665 412386763 716747280 923412178 859321123 831549564 700996528 932264018 800159064 651455686 718666083 200007105 358091215 789285324 764880688 51429789 169948992 179213521 943136946 934991894 98861283 896501949 34989955 693408142 827644673 303840942 285821747 893929613 697811656 949558523 900708621 701284687 678884001 98435758 467089230 226908056 938367466 614109683 683415587 249786027 747325849 901625430 645994626 59618523 512275438 884823107 755492125 493329137 900209056 267016398 217953163 691775236 557852341 196564162 236144064 833206933 956585764 439063361 676915057 652611386 770241893 851833414 213795772 424305882 887324956 382126296 778133015 889125960 547809115 951470243 345352888 320012611 648224005 63579582 89947113 832765831 636215383 883096838 931686863 155152970 111161010 9401502 976406906 724917086 793660264 255604633 773282874 816182452 491509322 212863901 765502984 922216236 33589578 248578459 836262291 275944455 698009595 341118447 878829517 567860560 96582300 666559230 893643306 887405853 678581374 675083858 37659697 538865211 864010385 543729019 37052890 977562501 726889374 845249533 803758555 118782155 539979746 323241355 591346884 179697757 406845268 937267178 813651462 506184099 724619842 536592645 494130920 11022004 976332719 872971754 319559962 972953561 469775385 989517356 89375616 699524018 587176970 517325679 878241882 724683594 762408580 847865957 26736230 558210015 886009222 474805686 893107324 960631773 716930086 525285870 101418340 244598443 838589339 966653479 982915123 795161234 792354122 715682152 961872760 737591723 790357772 970267448 742591555 426247584 809824495 928086933 670989236 366717207 377143187 79290321 939418904 825346997 501417104 969660569 199644367 890164542 997069226 113644456 168215671 863321176 971804946 299038633 670989236 672853971 401379150 764425684 745038867 433071710 578045556 236056339 931523048 675773170 795346492 43633233 871092036 44907754 473786372 738708901 248254037 634381212 101933259 170032348 995834141 551277453 779013081 573668089 741031944 432642650 768130591 273814184 173406100 904452584 718343056 790154314 691463168 173929079 40051651 671083519 766826352 238686483 738882685 744146948 403608174 4626286 511872956 791556853 781149538 931757338 984813611 531479329 381569573 822473557 888691750 752759982 758592782 317177017 402899110 91710618 699623154 755989723 338005233 227636555 831604497 803200990 689972481 505095408 931025553 353142000 723164972 832478441 933707304 217108955 706095894 571236301 903193544 175924870 568099896 933528519 920069977 538312011 41116172 445468105 371846185 450343344 598687032 965974348 988328849 866949631 931012796 204725600 369053356 358933143 412793255 224393307 906816904 896735954 692274055 210382103 883602062 637333478 461207029 88769137 928167874 817780877 718079947 592673975 934347724 955104667 855201776 981828766 73144177 863673862 941184027 393287498 146690266 583239447 898185210 973948273 270009576 181897461 13661577 882538918 983518295 198432580 913335744 822381143 894439907 819357355 68824094 567941550 448943806 978697976 795339893 531610679 793483533 934845555 578239399 779345300 943947656 410229483 19985149 700079107 823426133 331963582 836353975 792922253 919776227 819486225 997902927 795965849 790072060 433213726 670763891 372543785 843421335 920564414 430466855 765449182 440060752 165218242 815338451 856704787 699759329 707769184 969830921 143398176 825209575 835107455 198542063 371291156 39077326 285358419 617666276 9188662 451630441 880188237 892458085 651988361 692108768 662340470 358353331 759395678 968213853 554165299 60826823 953633757 703529117 91025172 841705949 980531320 720774085 435389595 270773407 441559153 746219781 40631222 168672242 881412569 529264129 47722010 832487887 881231714 290741435 41577282 745647758 4301888 342211941 671996220 922806777 983912193 860217159 810559778 324837945 935248149 987386536 71751100 189936500 693446667 711471207 633762101 457619768 403725006 13508501 858192709 804126729 78098777 873340873 556607770 448113799 649484456 844355996 227470784 925459728 996378074 460599257 170205757 132547382 876582195 130402974 619989328 875498731 598495850 401932364 914707786 957536526 351275832 597827815 244397152 103052740 100736121 708457755 755206436 505853117 663529367 686948947 190228363 824760790 279786292 978434913 845081947 681579760 198594247 709866078 941204357 98934280 144091032 885005871 844335154 438154736 396240442 789471540 570069640 850848969 867192321 829503894 768841084 875526911 944736553 637697272 708606779 863056087 756118018 123079910 880994744 291622241 698586638 670989236 76609424 696188282 134989918 721254458 934116449 936965675 540458656 786672325 58464859 403155797 998938993 670989236 182641593 882361728 411489403 692338592 839312776 697575925 190639287 449894444 384667220 197303936 710075946 530219037 370664992 938477473 420702976 885698709 941590317 957016525 557780814 36033935 996536934 226525450 457225766 949984664 655207134 566315748 153459177 518143353 390084188 233423789 670989236 874332419 285886122 140325794 177634514 857212201 512711186 16796047 85116383 894692976 622312058 900851212 829733913 415602830 976470608 393246461 307562899 961891668 681580494 241412307 404700686 572148605 799815128 133090671 505287883 402128761 624416473 725487381 770758278 585053484 515875193 864237602 738437220 129769721 236794145 995871957 759936100 952434080 491871225 680511062 445939107 847540760 690190461 687224513 815462185 712296548 464205663 813860289 764658218 923909786 719742647 258076064 995279218 973260967 949430865 124027203 207327010 99637409 455072857 368977674 80862047 479519894 836643931 749196729 934930572 27277457 411748043 391441504 881439740 149184890 980841351 670989236 65967391 300220257 381250002 670989236 719726787 758133547 140853614 855294851 324451225 820342827 792094886 207791127 279168866 630693112 915733103 366919871 867065619 937156848 797920864 726671803 228274351 636035415 827220318 846752513 959879718 928866624 876948137 898976749 994291598 740510691 893222180 584403594 905791218 217990578 601754657 241087834 931355268 817575877 295526614 215464550 844664419 826444773 935368158 656638346 276798038 930864302 437144244 648441263 830778444 266404446 852844107 913315050 342791849 836994039 869925685 882573127 416710179 646382156 670989236 73893657 829508763 363748611 33954946 876332447 946416567 254076851 299341305 825160304 783874272 642948305 949912086 154580922 752359930 142093789 218565454 577902491 956786689 251741648 840767975 819146366 872028602 837463105 415982639 715643185 767182259 818072233 943861517 563979166 735509240 670989236 99921017 303940853 999655825 968611890 380841597 15425463 786075045 705470899 937657517 739078411 791146573 215808672 850843769 764292407 544039736 685544936 107061044 523465886 792376207 270656936 496604653 374949122 550394770 749043276 337231389 777318155 124946243 799688104 222695424 698138206 670871208 889414006 103665499 698055822 749673420 356721223 461241311 725604493 319669622 571710556 997300162 991124596 701308062 872407900 917307200 691546468 702766530 894435024 984548762 861738425 162927277 949560658 373218264 437692652 414038222 709103815 457491832 243527458 843640348 329553216 875509938 810057613 769868886 783795365 217679714 727682997 117178613 925135804 690276946 781264031 366956566 764100882 657869280 286569995 188865732 154422145 283719892 998168551 310561233 717416586 867936832 947886652 245904808 194963470 650794767 958116256 261385810 753645942 904312442 312061680 956422724 345369169 649737533 422780045 274193019 326449692 252730501 52532624 66549011 611692888 173444020 535296291 952217617 795835744 164865032 690948450 84623786 435363309 444212141 64559029 816615894 738214851 520188758 683710080 724358501 964496092 408372724 625503210 872247618 435643272 670989236 730428020 707000761 863880041 268042812 948935448 357243360 800954131 93011652 488423134 786019707 698945576 891525959 224279020 353254062 422126891 699427016 76504866 431853075 116757161 834754096 930603757 987451497 144339759 432972461 712190520 481760662 795657462 670989236 756609540 920294618 259547568 592767632 334554206 244483648 25058993 908354843 918466037 703917024 742632388 889826440 793919969 307998443 697153216 257148785 707716630 911794864 762107246 493258819 850933847 565486915 537698418 460006929 670989236 215820124 826088073 173941748 493238029 447400648 81803700 488517954 492227033 516116731 721184607 809331221 346695103 8165873 670989236 377374958 234930911 141901315 273238131 976666065 230535345 485239433 879446824 501005254 337043194 98058687 602990598 565182209 670989236 472801051 35070910 730446472 203805420 813555037 747083309 519678986 846649476 79190398 852734679 555271465 925197997 734122463 253034057 998312670 843596223 174915338 26293903 891327232 703424406 170487738 577287103 896886176 208859708 896615403 877737375 378068167 947896220 401055902 976297852 415883357 722173435 172020368 464015813 190826238 720860328 846442095 800854133 942481426 840380634 492592783 448331080 762571458 735523378 170246554 960822301 735513276 50883666 633982652 85525050 838958823 755442060 721450793 950130457 884726572 195129739 926064004 462995025 648793990 873002314 390234882 679378872 824384535 99421595 517449530 534771686 918067321 399433145 5956166 14642157 303794615 951135854 728655442 793327817 29436562 907508933 771484985 886267824 257660842 328700643 864243355 681800523 349144676 870563408 686677924 835887637 793675346 966739162 292257992 816872641 169224187 524772077 504554726 723813346 932936587 776868340 107798640 281496313 951693059 280167708 151172637 608920354 408161792 303841390 757854299 830416301 911147616 439756027 412794777 896760124 185166611 679353638 993432848 626062411 963000309 781603139 821345108 962178230 953234160 974968423 287970512 5071635 67218744 943759156 623123615 264132525 527973132 936893013 292183546 283871688 476049391 877418672 778332706 899542054 863018488 476306663 316226652 833828007 489775040 102426565 335505964 36746040 847313632 932915924 994153023 141708013 769251865 930768106 664068189 263178530 798074357 417992397 565472476 386135073 614781800 32499071 952568978 890270024 133759201 764194246 754329381 82425743 753350898 740313832 661303886 541907956 809389428 730888347 137440482 447994561 97353323 722455451 910541160 906351868 612600140 152930027 745480210 865149736 271812818 840972996 713156927 764255853 488084100 359261296 522983472 950723504 743315616 785843600 503672038 747115164 721212868 775813743 757075449 415799991 9101496 250917097 792667638 25212112 749438963 338581364 306051769 885660194 610217317 469404068 870743560 633821903 650312394 959092375 977236640 280824417 807417986 100890025 883522213 427646560 877150069 742426535 764477650 8112907 187060430 953451381 861031227 806735115 826650611 606024562 979560772 438990345 576488860 907917781 106666182 245794126 313804145 934948073 37848725 5964718 375241684 796202787 772508236 865259714 10261834 944211356 748884150 526511249 123606086 114403259 612958794 820905377 178650326 352692993 28248604 62114996 317717371 285997255 828455719 954266781 682912031 252009658 812126470 65150748 181561294 785365556 523939694 698704273 896821337 363309115 630417911 558032707 983089855 198611653 29001634 801152455 79122280 517200837 856682016 971921813 702256475 556622194 112648379 146772475 148633405 699097282 925091811 803087976 899570361 183171971 328603879 148724117 750451811 666999783 868388618 80436662 317262143 750005618 811890343 98464058 862785764 436597290 123594249 958283961 857213462 975173109 602047587 649444651 605934021 236785132 879019659 355813295 984244109 708803942 891007617 836875210 790038620 59387766 997876759 730965368 813360121 6002115 913805064 43886525 122329040 868870850 145707273 724350564 422816993 857796474 267201378 986342390 837754466 314077928 34467420 422660768 986591137 926595220 695337051 401147221 909715483 463187361 686772181 944322122 809550922 220693562 13757457 912183816 408860434 907283086 47462409 315756590 850857814 684673929 452352126 870403044 693819072 529957165 481039098 37465380 498454436 283756608 732979457 999424552 673903285 673850640 201734580 922873933 576323975 420360573 77478832 876113586 817852599 937100975 930974131 120044430 851196790 391550179 933406470 925088345 447018145 80097562 48464819 783829592 707347768 122109723 974453549 887859350 922507936 45844241 498953613 486261902 28794135 231383360 709846027 821268110 695357531 162060911 992116279 806184750 687628429 888460351 123342410 906299982 926236439 979560199 257744292 82558302 167012421 644120296 297883104 246252298 881891151 706182599 933550828 206575728 326136877 656691430 143325915 844814186 290901270 279913518 263544210 244284063 496420276 961504627 734020043 372055766 108888528 753280590 729962901 512952360 99900207 66923297 751159622 213590123 574454040 243826638 777830792 949902863 264858188 267280818 511803227 936194942 878668566 308541624 600782245 561063725 741063434 82930067 853124468 827105673 901962835 290593606 694221203 74326592 393866452 263596232 938534130 322912601 98812414 632463554 659447845 259236899 603178984 437670851 463226586 740341420 842265500 323066360 512484832 215471915 871296457 29093490 674798241 441064249 269765033 885976833 136172976 972291580 478327466 701385971 442782305 315874099 706448193 756309681 827075017 985089563 623553505 911891104 911099587 29653583 116630771 754381487 760717605 860121286 961514428 970664887 339512951 684859540 421431660 974416000 730130392 834735793 53656192 906943833 816674590 458757384 242347853 704328357 818883315 922462824 23341149 492744665 85360470 200611991 691596038 827143155 930564478 204423300 295594205 869893175 149046863 232316666 596936105 790361837 160240125 427425844 293959038 657903119 77286435 393293266 356357179 925373425 24546633 757449583 631371849 229468122 56160734 670989236 174480257 230928724 791693094 857927739 595926841 914276550 918988584 597230748 944383035 342141995 993430765 833354932 27790151 918656070 711409714 802159515 75409385 99499987 748656948 873358708 750166440 311727189 965403428 209514770 957188522 670989236 798531665 87399675 836383813 236670072 862623087 388814973 268684767 760711524 748129891 920535867 46962158 661568804 327430352 709711645 524404449 433492672 739624231 816449358 533927466 180111282 704347549 478496653 151113759 502380556 822037030 276063950 403049864 964319791 118977334 279646275 931010195 230884619 670989236 294143328 972191567 834581090 995683468 958719596 594004449 820941266 684753753 682066508 230394442 903992073 82774978 272812516 860277817 763369281 699813941 870797443 741932773 123436164 131208683 321294960 784235852 256920778 14511822 358753218 762670158 524796439 612298884 723286130 870703058 672352062 769115269 457827659 372360963 796273350 112524633 949898972 679737772 48552996 522401155 669885703 513452352 380754104 956355461 273624798 697300330 278532840 763557062 386055743 925124596 746975765 676670520 909151368 882902398 928727239 13206059 541424954 666575581 874948637 598236083 276953474 611573637 223665962 50863331 472728601 530978410 454669597 667365787 755602213 403300969 805830281 497080308 753795915 29562543 707380343 767667840 192388319 725083963 609300090 825152501 843827921 780680850 968948388 824405717 865204958 479578862 429771851 513919478 670989236 915358662 215461740 914028414 594504619 727745195 189531111 775064770 446684832 950121634 866968041 763265156 94286068 581569248 531378120 686146154 808276602 706848291 667317947 437841069 545529259 904891407 670989236 552906001 890511596 514578551 27315908 683980908 891916129 420794246 194441796 521918933 808237163 160417938 447126079 853790022 193153229 929467553 241065369 932277502 121971157 577311371 847512931 819785282 983187471 803259020 597813676 934704537 720298806 146729029 893186632 794554853 94435799 957909428 857539532 887641757 789443659 275772753 402756877 966341743 471814433 25800128 597093528 483187771 809915071 369407361 657086986 430804470 967613190 989871163 859949772 513213727 828014525 350570795 721553252 560259789 955642908 940160082 493067798 878873394 120964560 13894709 207094961 747831811 382685750 966317437 969387856 759847559 969403782 62803295 973868378 682206834 889570833 670989236 821755267 575682871 770540309 610438654 985297414 984887813 203222781 141559205 901351715 543852084 715672635 230717741 272339711 514914450 583898709 5730791 50273030 177274191 120953463 683695365 606589227 860371881 639592328 158665174 272717565 699294549 749485686 797711817 799530557 869425771 440582155 316939872 277851494 260651074 978257596 655815731 861110812 702350230 109333576 528754775 424220492 934683440 324050991 792045551 645080670 894460055 703523786 850438696 29829527 787011387 176692561 879754951 286605059 347304269 861010837 364760154 684540017 555734455 868188368 807492266 161730573 910491641 485749546 543893903 799917683 564613899 592880304 752270675 983051148 926755566 724876541 676892028 436854731 393209364 913484167 679917184 639372237 570191618 955447324 8620973 33629860 341807908 872902094 765385029 376624804 955450049 462590613 300304927 296347550 739566426 49574646 793298148 748957210 215309332 776700177 444676923 123028492 66063506 779777584 850973671 712206320 670989236 574117605 27141364 793255454 678910354 375882875 156102651 431861009 831442344 170154269 132147874 461460238 715363288 806785130 471171299 80623675 460605653 916320386 670989236 378957348 80595503 285503157 105033199 339693227 264161406 233120622 937329514 832745867 935641534 799321600 970298761 268037271 814219154 896704932 803077521 73722298 539908931 628945038 552574501 864388631 890996960 606867380 375990432 798650433 678676253 103822322 858528471 729679505 945225040 752423822 363352672 902172286 723294483 640962675 410192502 495878032 774562893 969172663 129882033 826882338 237726582 418991810 440492727 782144386 859150213 469966775 913893086 678036678 762709683 785969972 936834919 845720414 280424842 204920415 711073997 622098112 790720987 765206395 702598522 475849940 582300637 158514393 407065421 856282505 768363758 643608779 985329768 735510115 26253732 105404093 996982795 708497175 573385321 123424212 440156346 179437443 990598353 719286086 897506855 315715684 779819958 190515567 206655197 726650886 725349960 974601209 926488665 247479931 961982452 802118611 692814480 892732126 716556276 588652546 435168866 222455648 705579734 174163565 848028734 624579004 793192160 993784903 180167854 974148523 983327475 383424252 739174094 532812541 843691442 827542956 872707543 789440146 447675671 890024192 59835219 796293740 797807586 882279835 387449312 672376469 959341549 131133180 956812403 660769261 933376990 108857991 881714920 12490903 195953676 807144511 753744696 54232439 856652905 877014823 821130897 41604403 713270756 374044530 598974741 220776730 790242821 935952517 106191798 997899958 828448100 697341683 806947036 188169023 327933624 709438640 376461466 796642148 838078016 202388375 365601989 3838626 769164866 790759340 250388588 210843899 792159358 439798392 698546699 218807692 99649960 555302690 281583413 889127201 832498108 189482544 387710834 755423027 170287353 822664048 881044034 683097351 437485482 953321218 769143644 768285249 820085251 893742352 977511042 251645529 358044416 827634379 365843833 601974750 334156662 851789827 788412006 255052936 230447186 766869058 876955213 976879711 705132555 166088128 880780360 442729053 892627138 708659355 670989236 908299412 819909612 278585117 333124176 63552657 882861712 158718508 897748524 706095757 483859367 391261094 549919029 400353160 342223362 147466624 702006627 842227375 531866033 729491861 108101400 770679056 364416546 774930426 912420181 819156472 797727600 414575562 496621479 107688739 90659935 290901379 544227 396313208 844178583 327672748 797409657 552968158 408694058 983206126 715476526 739933385 229862400 504307828 887746787 137973322 293778316 238047400 262611043 554494008 696886515 108527723 762176667 675819825 506290979 51521092 486956579 765388596 127366690 845644970 721308212 292542267 973608816 971909255 93764492 236395340 49053954 829218613 801083591 561455615 171205168 49366031 58838131 848064950 267405789 557820952 858793266 30681921 724092836 175407645 511787410 849713483 270604223 402858041 797132294 705900173 870024894 868104791 325064695 803153693 957480152 444398347 704024372 238915068 806305272 414941686 143894229 603489589 715910288 780713212 937486190 669483639 726698635 379754764 755342843 822729548 120181082 228986244 12368052 743385535 131748107 571754260 119417559 180445063 611727006 734646755 312447173 426057379 476308501 315456519 988921422 885501210 808363130 729951117 870624737 698897139 792537723 937556379 822590897 206561705 527485810 804458684 713974357 523172137 851508849 247008632 741524558 916147494 164540801 738875151 444629128 758449360 568961311 875159763 278074687 113591768 320984352 202811606 192690033 907429656 748116652 444265687 671903915 965733247 670989236 244283694 689594055 702522774 173108970 844272533 720259651 358321958 936514445 974133269 460055424 607246324 184700285 183707378 437455270 642193456 670989236 990571932 778743530 856036601 770844956 911120094 320504998 918750821 668255105 170637785 875776455 851167170 827877466 767272632 63653692 632382323 901389403 385988412 686658598 891861930 393656729 848138521 279848663 126484417 558902025 814805424 718026981 289449317 875306772 303733867 718364714 204527879 295151844 801134612 859380400 467252575 983284041 680652259 703122980 566471802 420222974 381242552 671631184 246441010 720026591 336875389 124246552 365718387 415532245 512031033 750325358 896743595 880677419 741552879 295749595 677054095 112475313 24680925 660880122 506010809 910728158 261940386 771975782 778809488 840808029 366037720 947576058 893922857 730347646 656788553 226765013 792002883 715691310 425238372 818617749 991288049 729763853 811997091 241482048 726228513 349291463 804684355 227087344 880719247 834990855 562192022 928215024 567904439 654174030 698295645 918740314 220673249 782984716 979378721 708177930 235452420 209955356 95776663 455147418 417437279 943488178 732973489 2484763 672466164 151121288 88671192 832316634 901474131 445849062 676202546 50281241 880744919 637970503 686828762 908450309 711301124 880844606 536505885 346397869 141873862 323960181 701347118 357726264 739995172 595513230 199528008 179119978 174285449 10315725 311465299 41719507 727612356 667824197 951708664 97324305 962636456 898229792 937252122 897272671 806425565 238422996 958423151 761696358 984900183 83063542 152733528 655839217 2010140 674793298 219012363 986390681 923251625 827998993 903741724 997512369 906182770 682953479 998578141 18354831 204181646 829371428 923191398 672353347 419492735 505904670 334103726 532657009 819132485 420137251 598960878 30611380 934534238 541570634 898575423 765052402 752038635 342244834 307250254 738527968 938306694 412145202 436057372 832399537 681058873 596949122 434282258 423628927 656563473 805391808 122480908 731146414 573134918 961522600 687105462 723028570 984947349 781970507 869250458 895294294 290117769 765236603 789314211 918091849 50818892 970543839 795650556 619209187 855703547 928988322 464903521 588146769 989202724 882075650 187287753 515714520 977617181 680276385 550415122 652596822 783324352 812911790 944429703 542618593 363404055 43671620 670989236 782945324 140843971 241074138 780683522 57595408 898654061 145195030 88042529 710864466 919875516 428845900 227704209 562798119 698503752 749193638 512269134 621282125 670989236 787243480 685419343 460336051 826525719 904150707 306331617 433365500 726324315 63217205 716679415 139664643 925959641 595586454 935270898 835364870 606061518 825027161 613854625 911307016 864205653 53223682 961808152 76268783 43148546 823840363 570336785 705271765 849183592 472998536 746927685 356440213 973037663 746751199 862624995 791526575 655353538 420887465 369152243 989713030 90890480 923292585 537507077 49014347 693083371 781804816 824708295 670989236 736221467 647263860 726548819 910085163 994750656 727849084 568250637 692871462 815106575 887035687 912734209 709531676 396354667 333953518 103938521 685389669 756830006 437945969 796460276 862918126 709119125 838133674 3707518 378581581 59219959 153395086 684064296 995002142 346267167 374303966 717001146 520047184 975053915 961709906 790600001 719950505 995847247 883231664 768706354 145397640 700971071 670989236 30304197 162901941 723360993 949805812 817621830 825165074 300079509 830010370 556817909 125028653 482977239 712880421 74064640 675196797 731026722 407903502 591113796 810528046 405654441 892634049 775063305 850330982 282994492 748547967 689663465 614029206 961337147 206046234 842483648 926616417 836406490 875865028 128294741 865213586 860416591 764355536 887519383 773252266 242652475 567569364 199752958 712891003 59884427 713026477 979038467 937274758 261067598 886210094 13491464 340232405 712577629 499233204 24514834 719333349 770018967 494882738 839225511 238324607 315277038 902465330 168232639 61786157 401822436 788001713 575549664 804322586 979864724 245542082 782413953 752607252 369568863 863215795 405262481 282361891 924375337 594340011 632269434 924341712 850400059 7714462 800666624 127026928 448260588 462663025 572370410 573497675 930071184 145254340 95818286 674351728 43436517 752263544 605030046 99857658 117007519 787687236 72439546 386520375 896456075 358608536 393399035 530660428 291338651 104799995 23922675 982251140 668373879 442229628 752623560 762952334 966343861 801240166 851442203 670989236 808631147 67899005 355319120 403449226 826041906 532797979 771410393 496733411 769100766 372593314 805826375 835460680 687200338 282091299 662130162 335839647 759604154 826971299 785407311 883425586 772811981 298628187 974199374 711091325 55311232 852740629 538507828 867771923 416998716 757107673 970505155 815618639 945512918 24132589 770508297 255230023 610933449 560095750 225388149 667300131 921649988 688350906 857455853 972569041 550285481 668603674 890739637 268271329 290979986 714643343 692174798 526087986 795693271 394129227 831302710 791244783 235188142 835451520 659544099 388876425 747582157 361116031 862953385 23196604 685570335 192455371 127696087 972412359 586082159 812115034 4209079 55795790 158070514 604117931 698422641 768512029 904636544 109590493 402130514 164322579 810755835 979484948 139957637 561405044 880893286 140978596 671614848 669538916 52286570 842335018 794623626 900564887 180381096 876478690 885204084 937950119 859356513 871108127 521054501 867550572 596252936 670989236 904185663 670989236 509764858 755068833 445206664 164534231 673323852 191285729 645715122 44903511 890797543 300340082 618883608 757210249 260381194 892990249 796635051 773952477 787644224 171927047 733667268 947475376 405859836 804289892 847519837 186655639 107345326 724570594 274091101 804914943 247882829 360311575 152209118 664719211 421409257 229644996 903077043 359327970 734450408 855692424 162076143 945968518 803852687 905533985 814549319 481327390 851733627 8494574 971451528 356665024 606950757 765562357 317566965 601950242 956775792 358514123 805395531 677832852 976781068 488025193 622387629 582816613 776856789 342857852 766146015 330265551 877002273 433630198 577813609 457083582 271478160 296759762 838101227 796621645 605699908 342570574 641646500 719190531 108426143 814031442 110618291 731874739 651489529 360026501 489537329 26836184 203573115 423506772 968989248 851889646 702669965 984175156 297002597 25574398 983416519 146216626 737468846 761878470 647594382 307583184 949807292 613685941 575800397 412362890 739553227 678173904 594982718 439692769 310608905 762506285 208737336 869043740 944156190 936601371 890876664 24920817 815105238 286001365 960102261 720374791 248982417 934951867 964772342 537608868 578731255 247040233 899677444 850270024 980442354 193477133 841701364 846277065 921783883 372356046 82363640 77005562 830599187 847184213 878771497 479282513 809701433 315024619 545978619 994665897 494243004 720549916 585095824 971541779 119881783 949681527 667039537 756296351 734194716 783510813 652842804 737733557 86973738 723358166 834532483 129880667 492406257 726310052 655666231 982820469 784109674 738259933 522228304 981601921 745995403 588644504 764972070 820719702 799051591 205991966 911217392 101053109 956613222 340027995 915127336 184605696 312890574 840299844 832153112 268904600 481331856 264809545 973738038 37529208 985283628 320329119 946892634 166885486 865015632 941292314 387994535 872616952 752097904 945226209 865066782 729038455 502560216 707196707 905631702 778845746 103662307 877062575 808972677 831511825 779056672 916514522 932644580 931424744 18224644 508514930 134370545 390110058 22364786 833536767 840660860 513636194 815513912 11434054 687213261 315327578 996728444 942734583 864335469 772934104 792606869 789626263 233984072 496801100 700506744 907250963 234924384 936365126 547324661 882173142 819441757 964907938 468355068 806082241 195679051 991647422 240708138 84206649 443731131 757333744 897039813 155676434 726885521 375166637 390923811 723700562 858177190 210199751 412421902 336367907 994390814 77348068 685606575 619477802 408375926 709726332 802357605 670989236 11723266 720777404 884006533 756748854 717850882 547128122 729852701 450795594 250266512 347684289 124716147 186373611 859262980 258837041 818569230 951292505 958599725 749761721 169383962 606887188 683202829 382715085 828660533 152511320 713338391 30599188 656107984 115875125 186084321 595662638 664168973 851280246 103903617 102700550 837669034 28471829 192288672 532248198 868108619 160824692 873418435 551266931 933065088 768226435 848544868 748661892 925670058 831652692 429089666 670989236 495908227 786755117 822969283 647668169 859231165 85910903 244347667 544103141 747068653 740592602 928163391 752673555 891987159 993889292 820889200 282819106 589890211 870899911 946964133 761195483 833872483 847268926 364663365 527988509 84693849 700795923 865802165 753105532 775525884 849935010 665584561 297253157 735152758 358239793 57224111 749674195 174739855 634748356 563228973 758652128 917275169 82380493 793117276 862291820 790791288 722242632 306769089 330291399 880358327 264366713 947733155 35540528 772309134 907714620 6202985 789779785 458477130 944657468 826444423 726169695 481746087 798994945 919965061 554655798 178248401 104406591 811100652 685439371 207702156 465241545 670989236 702652550 279430074 708663275 822641372 896763601 727073958 252613489 281181365 277227934 972589632 90934710 434159335 927870927 986275524 678949895 18137516 876065853 250446761 684257459 593342131 339746152 849488154 274643603 614824299 696458733 736571924 952811983 707049825 752131376 782852010 396065805 670989236 727413236 670989236 149093183 791998583 538966705 542288526 447820004 673840839 675479524 336744220 750378439 970270627 468502063 936419990 39210388 302056744 626577816 683974890 495631987 371767398 957187660 836906130 705582100 765806625 479697011 673932596 750242578 379089699 949081353 167903430 165721371 927676075 737907178 446888083 240235800 968334191 843306132 436616595 630203154 971205603 854946077 904131770 945268611 974050214 582907760 913950485 126969231 883496411 537954959 609441578 557237379 523329338 35904000 825296587 643379143 879929445 839428558 467342374 512937292 678604174 749921098 780738975 596322501 213898506 421897965 142834889 211215709 744967154 801907719 364969058 94380545 93481024 691245861 895237231 369421562 509089562 690268546 735952298 10232996 470043069 855163080 981263088 974150679 815992108 877206087 966473900 659803955 754343395 815164994 597650720 127999017 663368108 416460829 85076364 684426232 105349488 453364686 22090073 830373889 884070900 57964834 317898358 657243734 882012985 863008852 688668791 31153191 733568428 392726171 273024651 947417733 486256655 105301919 887341154 90590498 959288956 928107744 766855268 255536578 803003294 164254163 589580613 468298935 685512172 764124369 441522786 752394333 822446214 214347709 64980481 967029942 774860013 195232199 541064110 80396588 736692429 687367365 944243687 769614232 731785835 351382678 670989236 136068675 193327272 960091868 539797372 227585273 725818092 532658731 252165339 67729250 809543618 908022391 205647793 694908541 168168730 165284813 652826633 662425812 990702413 720717341 227278647 356936270 491041802 698351632 552572371 169535403 746379475 116009865 831523810 810990894 310975808 975436657 287385316 252442682 869522348 796278795 814262219 120035312 546445930 612891755 784328793 559969733 843252582 858976061 740906842 751631142 915429064 939033016 708712675 461595909 262659702 504178985 859805156 474819189 120522043 717007530 154465948 888217125 935310238 822503128 157695840 883196059 719690593 891666112 554061734 866857469 104459108 87449673 700422767 830985878 228739216 625469422 148820801 335468041 744674384 685729652 414220393 192554590 314265596 926736057 790308357 963550150 305185975 265107550 783180251 671187912 953522519 922997287 829615904 910687615 307871618 748668538 417314672 393700679 892594678 751638809 190677887 966347006 746253964 654888140 273895662 977931217 480635706 583470766 414238737 35766819 467036259 206938557 116639062 694819935 716534904 832963625 954430954 116915001 670989236 745627780 922157049 861550390 230356311 336521203 10761258 251203171 976380795 257082451 44237224 208619124 470093539 790762881 136372424 968989711 700203393 955820374 292283369 403403233 433560523 265933922 122447280 815867772 8232635 281839500 231002709 303100189 467270491 481881953 755485669 692400184 648887687 368643145 660050068 712843290 869437311 794120038 945020814 835542353 826932045 849593525 964832650 591349742 301100076 638870734 923106458 566317698 655831015 625239263 883670230 711375572 392407867 931505369 891504525 738757399 471536873 176329809 826886323 715046006 859123070 169894949 412398801 140884986 4224423 670989236 862702936 885453600 604558244 853540075 714963971 191971146 124295337 359859370 747401078 876848349 753272273 156712498 662362610 996338580 981470978 73672711 455881160 856978547 44615488 720857699 130704924 155631364 515368262 694868765 276633475 834369832 512660139 54095012 105876937 339192768 907790473 755010693 853943232 814026114 639332178 401491487 597104364 203510119 854145651 595158301 971565190 181330685 49059455 500106150 895603586 416724831 964202810 997284027 279330054 618311161 951762781 671012731 801731277 974362371 829220603 741253572 635048120 579405748 219240210 688044410 701253854 996253868 680713869 95975638 86353581 21548208 849300761 336319279 805930533 648261136 802356725 786950116 157450657 615428002 879809973 803270754 680576734 582232553 834863855 748204570 8377820 927143075 838619725 906898303 152416683 966664602 595590262 751389776 380425265 41212880 691443324 21553976 670989236 260745466 946334127 298960172 423169059 822405280 414321953 797825715 843020942 854266995 806610116 218842242 955042491 790316348 211458484 14982751 611692841 960767197 649713665 880389440 701575764 65572289 718742076 108047943 55367456 988368785 895534945 307715231 966714826 853069476 973175651 928310148 756546390 93935711 437785271 927691317 417199054 515176242 913754828 701766600 948002450 545707488 699379242 483836198 900717495 705224198 318429395 355500288 499969380 469218511 295987666 993484993 679600975 984435451 784870833 44984365 526099547 616665900 704459516 728694989 9804442 762210105 262553770 857307293 424753502 422378697 913144059 953631259 75471272 840413406 509337711 301467528 434037599 255026503 723976457 398298692 93834843 753098210 941990838 768989126 988290440 796006366 918823233 344910614 231255643 851463164 680881763 869418185 249774393 357170641 157829765 807640927 124404701 749704864 83659829 188958540 269368879 342092177 730364849 671709427 720691431 631647952 889159764 592439552 558227434 854810096 785054203 597144695 73203815 911552829 683842670 405777463 769429343 696994345 396208888 794247446 766004493 673055947 674933284 559179298 839530843 815181237 428484607 401926955 949492406 909294548 817537546 670989236 873746345 264198738 694110875 834124989 490163481 939585113 228044165 42819542 582457801 681416488 864055384 12925924 562372424 137459386 324286936 853254548 854241632 866746214 151822948 750543316 960212587 763207936 886819792 813661758 966066467 453914546 287605919 420430112 108204516 6397095 822553401 874862434 294712585 226685515 717994234 911384675 217394476 723971512 632024201 359034277 606984160 806907270 867822405 903373111 934896945 770668026 756721395 733935770 16604454 539806838 489146761 366377099 932044708 262193137 281290562 916752368 570964613 540075120 352622137 83132370 707123113 4923539 844252474 892215168 217668485 909598016 514152008 899148373 881845416 388097369 989437101 174402335 881757218 756144113 883182867 670989236 198107770 233761481 400549310 470861753 953955026 738129905 527775618 111490838 45456233 126542894 823497789 972403251 47317457 796498794 670989236 476875937 531655176 810906529 677614900 769085531 108225599 483204491 251761861 683352052 731962869 429310082 261325168 701697882 248924337 674278784 975234820 445779101 915055587 76470786 965145221 837110242 913299158 728556043 623918488 971594484 983127538 112923241 919572842 957525852 338683655 976489550 989138616 326316721 75946167 878568656 21645914 485667847 78034564 689579146 36204115 791617035 360282525 661887949 34522008 301229958 637253674 370202278 265521910 824887451 451710913 838634816 977879973 677640942 274049079 388414404 40933253 670989236 154194868 538357794 956719928 81573402 947858232 873561611 796854852 233658119 764433809 682191180 326821738 451762125 797367971 22219246 390947454 822194757 11100533 175739888 76690909 880212703 301412980 818158476 255026580 725556693 321528694 884901983 980194176 483733063 824031255 126055989 755765247 803130918 735005480 470050451 948618552 913994253 882834153 746643141 34532224 895944462 758391778 894994209 700695981 476107500 899764784 210941523 890769940 591137352 396873805 780601741 415071953 202849390 783356061 736560081 523558835 566917740 520049460 725741082 523529929 725118954 822474901 38109706 683629030 840202573 693426975 857075562 282733277 931131971 937707274 926811944 833298803 678184842 40738885 97505535 913343825 690713235 542022588 749881183 647216333 299091098 994358159 816522518 801409905 581034771 750604849 670989236 962404643 720302776 898415238 806017883 808860336 253355936 493987538 831744341 178021234 98384626 827710236 800056616 580847583 88118300 667674026 714979145 377336189 689868577 188780289 751193030 693864898 610420652 640673070 868878745 27691079 797488408 738779852 670989236 539241494 921996614 434352622 793007196 325632461 946370496 807649343 184849713 151744573 952372022 659420036 769193595 899088946 928100040 304181494 386124456 716368504 673663363 874965497 33150673 559357574 873267844 722468446 681993206 289257227 612444850 814764533 321171624 875193585 38875406 613061774 844100126 939741094 205198020 924572460 507835208 423432918 912555874 934255142 103749923 579550775 256892182 705924929 965791545 336754047 842447738 33152503 41228152 427619093 388239746 196086966 695189474 163619839 731117450 780538064 280111931 898167170 328316550 496774694 609730852 758623148 873879089 892727258 224871668 823762818 479880236 348121573 187748528 692006722 180105208 353827485 670989236 766867209 140668511 180010539 392313870 672845350 721154266 179263818 568482992 250817055 700648036 719985811 273369643 262797024 852386048 748561366 777267920 948549915 766819603 758739510 316874152 847746579 915444471 71283466 796723135 311120104 659020650 856042444 670989236 798091652 381069358 725876354 344594922 870402688 907587690 319106598 88570789 576626859 128760233 787548311 919982324 952208126 771204476 9877377 543138331 540307907 442904386 769126016 895198340 657544023 842897742 871710033 531262332 729882256 972191379 595176994 945224899 732528305 120484249 545624067 964394959 885313280 894180061 871340227 961203781 855636709 717075194 572421979 969121954 591027561 659391425 868345290 534164571 964221463 941785558 133377886 966016594 296123689 337927082 288835517 912861801 130514142 859365008 883232826 616404281 564270001 342520788 771489942 772015798 177690591 635038687 861055802 605067277 561080207 835424516 868428921 511282263 969873767 170799250 957141071 423668865 965937084 153620573 803954939 884506639 743651631 358098789 283461684 761849078 621570298 464112721 871757892 670989236 216103786 791009370 593814710 820902493 811656521 205692855 756693338 400801936 759963283 700041076 847827150 855871031 926949875 596429407 243425166 842274016 143185601 114519927 279081687 764390213 989736808 792657328 893076752 327473587 771281020 332380494 765771068 580623831 709218476 527356863 143219175 873250403 845062473 665087650 251649715 966784902 982431366 904461849 906486180 780572797 923109499 899438600 539542528 768851346 287990885 504219961 37409639 900194894 670989236 656176426 157269128 677678796 877089010 135448244 832588199 762872418 674230805 964813032 998135121 900346958 960440741 319615765 998973259 528432980 545419612 760609459 741632775 756870250 817074306 557512846 196564347 226214099 914810539 677481961 947558271 501111623 992180260 706827320 894421163 311080446 989093066 542040696 659145022 340219804 835880520 258363206 964488158 432143972 736956830 901911588 977022056 839444666 676455394 824946466 731242847 273245002 116377708 303836876 129477079 941933925 917525524 495404307 615347093 661938803 831263923 317148129 672428350 602707856 946392380 732475716 649337820 943839145 746367133 866539953 16659511 90205886 875529126 865149441 544485426 380845441 564797693 44867522 365526156 85958457 216137332 543927000 537265691 249046271 391778712 483989919 240667090 684343139 767445443 841945915 703370770 879983142 567863629 13547296 772107949 827720382 923683764 978218615 399105963 876611035 956656196 379780909 832471041 670989236 691674511 870286651 908847827 504627386 587700048 658693795 454825806 258761519 417905524 317283018 210971756 996532455 976393079 924700486 297531295 321409710 380020517 564889460 950709486 531058054 872769234 383414539 831813581 782568025 992420528 594672466 257068071 623847399 62327955 124275195 781917549 790483040 836851155 877651481 86304462 567952492 94030589 278793962 409531525 705058359 938215690 878652770 963381033 719444153 258822043 691691335 670989236 950202871 78267127 53074287 151877421 954299598 782848650 288818682 607210878 911648376 320436615 816036582 758353357 805360168 705075106 780884097 36001082 908446926 462985951 223854526 157350772 814322479 971044120 736911630 807278993 730837858 773216231 488636934 387076605 368766201 495735442 386855978 828671916 725915928 51569910 318863231 257539556 827605360 402432653 960448266 60246712 868718515 85224111 672669043 519012437 915165791 141605021 502097068 298582181 555313247 796273781 820072771 938390462 289109171 806201760 692338165 734338021 839404143 890154888 809086511 900222399 601545302 297548789 889831158 670989236 922642999 130530381 27531422 4707043 875991822 291739296 505699600 385081603 989060178 196837602 143846361 946661491 916601802 309842122 970377109 677633610 786993871 190868193 902931640 769442374 852360358 581873648 889738936 752994827 828553303 620988320 781395851 681658871 610876148 715391438 703768629 682377292 645469528 678031594 717353092 933527807 169450484 429920367 485635060 675463357 793674507 846465463 924410911 802802186 984149622 126622729 659396812 752801323 789273521 791061053 794882888 454612094 590389120 772548333 711142833 85358076 155469226 279002212 731053487 45066654 778704927 793065105 10127097 678451131 894686261 890306538 782815482 848922043 808568322 887030409 740505516 171801990 174443882 803065937 521665953 393726553 995660375 789987673 266163542 966448891 695181660 724925151 670989236 331796376 980547958 82482182 690471815 797898427 360130532 393353350 639102166 313286858 984579686 621292512 158354970 749591569 924264339 469067931 852009396 434717453 869269710 925787133 934154507 487355219 661181472 826983104 504418713 877577368 712301052 591189495 397501748 453396978 856531096 538147675 885793323 359801378 922579128 968162339 480463408 991680675 358333587 909107210 438468606 675928544 776553002 855434267 549382822 422424434 869000620 999989018 681417416 39621179 643060083 777355151 335031270 555113316 928553908 356822254 707193527 193302459 982132548 841200626 968253492 924885822 520781768 872613632 768618248 792487868 140171473 903057902 752119834 87346814 349418225 865138517 869623491 821858571 670989236 672086090 85627929 454245494 68354740 976019652 208745758 379133908 700092523 674185502 781639397 173333014 885194416 184470553 764207066 864318509 760263033 365437317 975426173 990362787 523464077 851634261 365546785 191124319 336976274 896501384 60953604 599738599 700598946 916656208 284091237 577410 44339936 66288964 836063004 944956785 896363182 956930874 304801688 674271395 464728266 882531914 494501227 764385828 856132435 796520827 789928283 875903523 667838532 817138106 543492671 289214807 740646571 282533679 894339596 966470218 323718943 979303670 103282246 830274690 807835906 921738790 361205562 51543267 842476744 953668289 536083726 130348154 394321122 541588366 850549362 867798537 807053750 807888831 757380387 827587248 900812055 163667161 171521518 934324826 239164495 717053644 386352421 764187205 402545821 532472145 850917394 802552058 763222403 709989744 463918410 363758709 478970694 17597806 959459042 692883068 745204382 666922511 274709128 378994694 562381860 63961955 68482761 935579860 99947271 882607787 320990680 869981946 291458701 115423113 83053526 724220468 685547090 6957619 279674472 417544061 429958911 160866848 931054821 902078703 916329645 258285006 693918952 969190512 925059247 127445770 63762921 244996778 961496436 879247988 805677281 53797755 448220493 727218324 222311206 310583275 181846514 790268222 798245550 231187095 211801393 937461304 440622346 851660546 504106706 883725294 903890407 390449905 221684948 842347892 816984326 149566254 874651520 184069198 713457867 756633485 993963997 547762315 30850769 863021567 392398840 275664094 737537615 670989236 478233960 741804827 789628669 755136631 661231925 452541952 326366152 724268928 885678673 213912226 784342504 459693476 295119589 213098047 737166578 202258823 901961671 902490652 354061881 576788168 33888354 704566656 427686066 938537920 7698520 224852384 900777305 548345611 316564719 595983363 887565200 297019629 345439735 846560669 594671993 458934865 594863832 747028909 674341805 488707593 569647972 89483916 885707699 833626486 702767684 706717136 648984388 790698571 316702754 566586035 57990417 95596276 900226665 913265521 762408428 92279899 480726819 528957827 257236788 699640207 225549600 250999355 361520008 9346949 503754946 798272135 886610878 795124410 670989236 770201414 812184723 361724073 566987984 891287428 754439392 835774414 748731391 194940155 780498304 408171488 741452627 742215593 477030942 735334280 469332219 249731124 579038553 185898144 219129735 868667990 228440487 344967969 597009531 310087161 840293391 719393369 700399468 710263598 827986859 158641493 587702988 792094069 395090432 607313534 705186200 637524364 622102516 715457698 686989015 43441404 789866273 743153759 888867228 993427467 934496890 399420476 845182295 508036369 795011461 917353357 844792685 819703239 213587528 374956397 652634017 726668621 890292741 858993262 430288888 391695174 426010373 210672354 406116101 851897618 922081270 667033003 137532501 225284476 691345777 708678973 440180850 485844374 63874585 86531342 692379617 829711445 706203737 960920317 109317828 574733374 140890040 1077165 809749113 358988812 811755763 211190002 611034858 970106937 2666928 550052765 961338332 415237958 47629266 51192801 848348630 863907611 8721351 992510106 377679492 137841477 171912579 513645124 908824321 434028361 646163750 168635702 477230514 282703236 742097949 361691746 711647607 995635914 584019292 229846248 947968517 975225853 670989236 366685303 577178579 377190338 105500683 214326599 53791243 209763738 825293882 363385340 571020872 597548523 807279502 752567754 224222787 736163835 959083644 649600693 779320742 793144396 488527516 832194985 646482893 993843920 922059511 247368633 798667781 362607012 929342244 854411456 589721878 922110370 755748876 148936849 860649058 905568109 861714339 895176751 282238183 48348247 379035801 723111598 504273955 759117673 887066444 134110115 540133289 169000915 957641106 694681164 383112527 907691564 745142788 677030576 827988681 422871672 819953958 704086617 398773110 984248008 444361427 845905193 281459820 836314578 853483385 679616379 727558283 702402256 247974553 114589453 592858489 527077702 428780931 722333201 738553607 798946975 447241847 477026441 804130659 272871564 521811295 991776716 960202112 509799348 361204992 950584244 60831045 13046909 58908006 809129056 751232 971080030 550479240 519703440 649999751 998961366 773626794 882650384 458888217 977593568 386327273 843036088 921372236 87961538 438987663 991571683 715038429 256708382 391104601 326097432 321959398 977700617 821092779 372871605 975033897 805559068 807395093 974301394 834910684 835862157 672289531 839354542 996700427 200804843 715647755 838814923 360873495 858862010 501242988 404358669 366792342 260301265 800750279 795482541 860376067 187326959 41405039 271511931 877932673 861676129 771505822 254361616 136854745 797526048 939109832 956257667 708773646 594227000 190137470 637324421 720882306 307004538 596296293 702819947 594614685 836369296 319503644 531873139 364500777 47203432 395935950 730452603 421413840 204121995 230295678 739946716 271133337 803802553 509342203 983769678 566949027 728055000 680810122 848431606 115252422 815588408 480723688 990755023 271179219 858018397 361730384 898488843 694269099 712883543 823745071 604657882 612726469 672733807 911800267 705580139 581471190 661684965 108786467 407635505 754316377 880172618 126325892 645073692 670989236 717913744 193213281 800746116 742793406 88208465 878167051 577864263 798054899 613420733 580642539 368697287 514696613 698157976 485761451 684404837 73145014 198006393 718325450 804713379 465233458 384022149 919065740 752171477 180849339 941061132 304250074 128820676 530847311 292666329 42787409 861092832 759073285 748854690 841390934 296243313 448076332 779166232 330329877 997281672 902614802 859488908 670989236 908966384 371612546 821395907 314098034 838187094 937646852 128704110 224426193 607026954 194676973 744356760 868891905 763009350 353017972 415460134 51944163 857704276 801747559 558890662 63335703 836373120 247458687 805827281 602583988 671058075 674329823 693462397 953702231 29052409 985382803 891480304 542627138 786218486 616768040 912604468 134515563 77095873 727756511 545030282 909628730 988313678 974757028 917763110 409479176 859099517 220017412 823244250 712783004 275712736 137567229 307974015 402063420 818014258 918535578 853705673 208121486 730227098 467651088 472912852 754684297 475321540 867282635 525721738 728770859 172467626 443041537 725413273 953839720 748743699 972857914 981757089 162289013 838307242 681682600 78985710 362818070 520919132 139132390 646049203 499811970 203792399 854064933 709140222 36884022 965836720 19953409 906219250 718559921 211362674 415746996 775376064 803681448 795519001 700590595 483221255 106986313 965122849 255365061 99363031 945326844 808765514 77727187 773312995 306798388 617768528 807897805 982175783 302044392 599505764 678942644 828235195 812591661 511025598 878735535 397907114 495790662 828004052 706650127 755157156 917565583 713192446 367450105 50952127 146402766 810241370 978885601 623023290 681593621 795808026 30517659 495078209 364580543 676633919 814606591 562445666 305254352 93134039 637222211 995148170 893176059 356394801 903747626 731002581 960944084 756819006 268893983 20394496 30087924 696799502 702705692 730337828 905031085 652267741 46638167 90553605 403539567 230080052 842631359 694429561 240533520 646722250 797705962 167758580 677859466 690226202 806324145 974827279 842031611 830573829 488109490 634130069 867006928 165893978 859340242 778652928 770476550 239119270 60268429 959834133 656269064 654860606 45836045 726950902 793298254 867922543 97341488 614606155 94521808 739011803 158124883 517803895 987200547 720713413 901489900 176973051 932019535 606934561 855411520 847803906 113133781 826552898 892472643 575545278 442645103 697550070 951948093 106861287 311027915 142319760 208405382 479185010 278458566 717396621 792248266 421682862 900887161 796152311 81435000 190509519 138608548 331811624 775124613 875830360 290105173 854784880 821566923 970593559 480596719 828308351 557049652 49637990 219522876 111488957 245993736 975309205 725435258 809768686 841543762 242609140 874821943 997812237 262164954 158880037 745469382 667859576 817766287 64858093 670451988 301442029 174260103 601948172 568547998 684783700 508600621 930451504 431581175 448910424 933103162 726572998 771653728 803610208 961665273 645493025 981403968 988397567 903996673 863694621 712907672 894522022 114655748 990629770 540694386 237661400 769297004 283704794 111824251 540390437 595310272 174256811 751891831 930572833 939712639 666523453 766331991 516923232 794016156 217330320 994414127 700766345 686634314 907183116 972652446 740940045 994053568 840294717 367707177 362153644 198306296 739133516 833175903 686657099 672441140 922872627 252502560 259126761 77554065 284412126 795215983 757927860 643025051 712793556 857719901 794315301 215132363 160804534 808031107 986589532 924796117 618387646 979779007 62921152 986588944 651686937 826863491 827898038 844305707 289349963 228227705 899951303 592087738 887626140 670989236 132913574 786389828 741529557 439701714 878024035 169117750 724950319 932894171 323797411 594161470 215911443 405417907 323408854 898993737 835358454 940015047 699009962 128010417 489739516 937461337 440896739 719005335 972145296 761563001 24812129 895439158 883962748 770048901 774671496 154348961 128173337 868872537 970811381 522651513 676844968 922806650 832656849 992355252 875324001 461994791 524967504 354464670 374589578 342856721 900303632 835416415 165614835 230190025 671279661 442377404 296686586 884644847 767771042 872360011 746758404 880939336 999962216 644035285 392704654 415113525 932538072 876940196 329897362 758627590 98427732 368895972 786562665 348111697 775539856 721566037 252064937 670989236 786028182 763198781 957830979 475317563 735717099 924135725 283281973 738434058 337213139 958481590 244951384 100794408 984968735 880489843 648540430 805929916 837096601 512232975 761983552 537131112 932806804 749628520 405615621 369430014 987396768 62474861 353189638 272671968 711749711 856992909 344837434 946956701 470393484 842043269 721588694 627903035 636125337 4727240 850921165 100927622 868168085 764530116 960388589 651035097 113278141 717174136 906751368 218717039 403769542 538779756 700542095 948822265 24869737 366024891 625360108 608380328 902131496 903474593 986070949 381647042 957712005 899791925 704559565 999820663 821615078 661722953 958307101 480908085 998202693 519330242 37543806 26321886 722016071 423639563 983741027 115221014 528343343 848785462 760343167 629789316 784506536 870404322 512863216 378324178 729320918 395932748 841179773 932823359 856505624 946427701 734679029 682218641 559214633 860394748 422211724 302126540 141766727 749398456 678259838 256843033 981336043 770521542 31851397 788612441 846858212 542620201 717569361 102083696 399922402 231135607 636330058 833313178 726119305 357999713 877201222 216527338 454638918 369008970 743858997 928348970 565868159 720023243 977831518 903776236 516330519 834623478 409364867 193298089 913875159 243868715 893916613 34177858 692411544 852543153 379715408 678646521 858779923 816219946 998787864 90070112 989354766 918684665 56865152 690514172 644157899 528496242 462919342 190254796 233859822 781488114 385046362 914201084 29268183 271658805 873473135 742339438 834965270 366898011 632008899 999696330 899767825 821055152 102664613 595906006 697032027 825245096 877074680 728705918 840426945 994164950 993125845 69575038 491946613 520062378 628796118 769316015 840643716 201789265 963361391 148850158 576838434 804942423 429580609 231842401 389588405 874942022 510816190 461575820 832348500 365717104 904229560 937049979 24767542 553443114 864945186 369791831 576574628 866793229 517988844 275464373 143429003 737216790 970271931 746791386 554935468 821441536 882077004 806867445 851558060 708120752 356183944 739655936 932622353 322764198 114181960 67274140 453442956 961518326 542449145 178029215 270585817 592891733 771286668 568232112 847612127 812853465 322410849 750902168 893973498 725473022 924460985 188365035 625894509 265296844 802969872 909644944 877206446 261586946 136194115 54342145 793845921 675002286 987393726 733992060 288365784 298524768 846593450 956963989 588901557 670989236 529597216 670989236 569656255 853091874 78024768 419275059 910062590 893601998 980380080 879933414 342748479 445318804 864007995 670012953 711745694 876536742 922955006 623603662 675025083 870589447 823520285 818248324 856223568 941932113 693175485 76884481 752775124 848194440 734662053 842350926 942065725 113647461 780370908 861109380 756721093 197175765 561561824 966953360 894433854 788257628 463669859 734635582 903263966 18190959 379007305 554437576 697418555 457909870 920883817 955305349 686425090 943074905 460239723 925397308 544371829 736976250 577527075 137562529 962872268 824197607 551153973 555348488 223217148 872327089 338165822 851291363 931624651 709130298 610778452 477938323 972762394 503402187 227537876 924044718 552916656 308216724 709753685 766725003 511755263 110821953 690187820 83711279 975304070 532324003 926940434 867813601 612193754 602016562 713422718 435667660 42661212 973602709 733463518 71093198 692475794 578872528 853193278 544866229 981598189 755269345 822417879 980513423 351946794 207421471 746672018 951331356 759445705 969593066 917645792 224394597 932665534 607011844 811748081 843469888 470537793 549884986 51656902 886366081 630323002 402586601 481412719 423095225 940255287 968195873 571435539 172710498 844921771 676833757 516971686 472121273 321587192 320384723 225585411 854427741 831574012 650353535 934914088 718168490 426155181 681066909 293355959 752312471 130947493 339348012 56057164 59829973 991987510 829268173 809080156 889184638 725022939 521623761 545667631 730035356 786360442 222552449 496792922 775696667 486781328 41837594 944083855 501532084 722848296 70080009 632608698 90329073 522413719 503659378 634130828 388539230 891604758 883941112 687275099 125719304 610849935 269817746 454930178 766396818 92440136 780046787 692031779 855468196 368458538 779400852 816858228 857075468 571363797 289025588 650343188 838813002 784124625 703448062 806931518 619618559 731489882 261901478 811232737 469173141 312967346 859553231 579736712 410357649 260949152 420960982 518486072 703423668 288391063 917401176 217286347 652006831 410616204 572131424 37001719 191425274 749922975 907636499 110591272 464814977 647821819 505659438 902991638 856334289 900433156 697722021 897897145 507277722 331336794 131120872 794433801 500616333 80490619 841569681 810514226 815845391 512119383 635427132 857486189 322151448 874440748 808222811 915325331 916819248 127853802 140089472 912618169 229746079 958135483 956967392 808945392 216864266 457074872 977183893 361746151 855090515 790224352 123848470 961028918 159759953 689603420 902369984 841101935 551598569 639964604 469487980 615154491 978736801 650581490 681665689 877905907 972848473 968492097 402293163 832877258 733978814 606705977 748209497 715288291 48119602 22311677 676327406 873531661 77210386 210729702 683738214 81446300 18606589 210056127 453415104 538634708 357553823 597217502 924016107 198700708 781717438 315438595 240473563 560509676 161091851 902381532 547344057 62275453 699278942 404204173 221762604 505087741 133820067 111817331 775956841 850487728 245078546 678054906 155963304 715967471 346241184 670989236 597794636 825734638 281154179 733759968 721022351 252250797 794689800 692821295 764063200 474557431 996489989 565263158 450419282 514064912 736718574 725007560 974200728 882512231 440706098 612571152 240948641 108748418 780851845 913900994 123267361 345446304 596631680 628933094 178258831 889355828 631393382 513607427 888407703 703951073 650212471 969699702 958979072 952986488 783125163 813978193 331900994 850936719 828558752 114382000 838865874 937130206 615446517 466656733 70461162 981625408 931962822 765714153 670989236 318552183 669410320 234248846 341199592 797520226 307397740 156114714 96195777 960789041 55361818 772879108 245914885 757867840 825651292 415066519 145251489 603776543 744142482 522624472 79293332 331134016 643956123 663038606 512918282 325088229 411525548 940357692 66737193 316186253 236218298 215415023 613673168 400351149 476831979 816761499 721415931 356564129 246573315 543841826 419293119 785478354 10895939 717175682 670989236 651840874 765178985 708014485 74387316 581014328 157620218 952716592 670989236 735969816 749430155 762094784 909169006 544586585 921051420 926088896 944350930 400641496 779740848 642692946 980839432 882288001 773279617 677939159 692815539 651027034 426112732 726743973 40926536 819845988 88182171 832526998 780869090 344245974 732037166 677400913 986722694 25001027 446243898 14044817 172076441 214239382 333543423 786672320 76934792 558755749 769352191 519726294 460629493 475290075 300058770 508367967 532759413 823326215 218218395 173273092 827954320 779878 835458399 876507443 803823525 110300543 301398203 690501253 837925183 326391321 62332510 178003671 380198437 373305807 919423461 670989236 523495387 820599028 936175994 705063720 727813850 884843802 654067290 39705445 620816496 203976737 893117544 309544320 860022168 890036870 85878780 699164214 776997634 407332212 317647508 515102558 263779159 670989236 215280841 797370903 855839728 877617543 578026571 250007894 321169483 322223533 560030196 455435727 77369965 891142864 922660035 281038517 88765528 888354025 866751794 230917257 728796529 247356376 993176804 863544231 750485294 976891024 247747882 440835345 752880568 126555413 930925092 237595094 913597164 965245429 830453392 450516473 855420757 472393215 881831056 946802244 93432038 610932336 670989236 824745140 770875144 765263095 46094826 712446619 530529437 573775372 681071115 964270988 927541566 844465867 866763929 548671467 259478698 769982340 988084694 16560760 873646349 735632329 276856863 481802232 95235963 351618867 532525459 840242214 98127968 981907738 28313714 893450688 873321301 817639812 973741928 738657670 247799162 546404899 280224248 336668046 451587740 856945364 751356018 437714749 686628295 673265852 780720052 192463079 121037560 918843527 46793144 502300959 972997745 742957065 877866285 673606702 328783746 740979409 788052075 946660328 756557261 788653564 801345793 540292016 303365167 222347893 913942521 857506124 179534804 717174211 345475335 817139962 160050635 344726486 998940281 50575716 926341981 346427227 934063387 670989236 797200023 853080694 748656392 895800406 980133961 638571773 618236738 800326742 844949437 955342431 361573089 232059529 177096936 557637969 671474179 844358693 954912622 639929592 285951623 861312009 722258638 814404172 670989236 474889035 670989236 211657132 562143442 89737387 593647758 550807258 749589351 895300778 863315860 281365035 734620447 125389546 928560424 991503080 745969570 989299847 786240439 45955620 784900264 106656910 687160636 20322020 858131386 827403603 620147298 86765104 312297960 102420874 768494864 848974389 408420544 198545852 195377165 807596804 727535876 853019181 889407417 117073948 956538535 753374441 220396006 976733709 759612890 684057879 694457439 468806915 975992472 750035298 628799446 456807302 928920346 115312471 42480819 880589805 919136234 838153184 660791071 860229907 297314190 477924040 272424176 670989236 818603828 482894871 670989236 821394569 687917127 828259048 188967685 846619416 41098401 372995349 305109960 460681443 673925227 58514417 348233327 454087044 935994552 822645686 918995776 800344819 757810798 177821568 940602586 133452591 788976215 117547205 814059991 96362449 53621540 989661313 774666687 346389140 704078962 632461036 814403333 934834058 813848799 944363272 179120980 605962911 579952122 333398301 817838305 810040331 676744314 35560392 972237783 83290956 155351001 5688183 770182838 128618823 670989236 9624755 890081667 604467301 742803892 309265782 994680045 537510831 189895407 704480543 706491380 424545666 877130392 923915879 615224196 261947694 858124924 725757406 515856599 749177974 586259032 210706232 755756315 988002035 562231409 751634463 626763602 727602006 948309975 302995256 749565030 696125004 184444093 960288751 556142489 293652251 711247695 5597903 823591507 680166899 704030831 289090917 817694728 409212466 902969855 284938698 651162191 161483202 747979231 870755488 589910461 212143083 757230884 961181592 670989236 977645159 705957394 898651655 682053653 938277464 78121968 259252277 309562011 660592456 860746201 865422377 357920192 688710891 700762930 493940705 958784309 419173685 709529206 561920339 674563374 428945618 320959584 234391144 647449395 982969065 416790642 728237523 797187668 642255065 582106887 595254403 461277956 137177829 778885714 672058059 328429962 808274734 132144101 513257327 697074182 13319700 654514753 971911391 984298705 562215338 894153906 604057831 482743710 693028757 454014820 951566048 660346036 927229751 138770314 901469606 458617308 710641205 113641843 829137976 947578162 779977505 151441984 43160123 457197512 353557608 120542586 942129927 843815825 942762180 270246396 871741824 342580321 744161498 739309660 81315149 583881484 892896810 343299129 855447437 752788451 893013748 856025972 511045674 717742778 653129462 444304401 827233041 988217351 734181027 157175212 993342998 26201987 620220252 778128406 977586452 63205624 670989236 78523536 180389510 317282435 848542388 976654435 968328999 260830831 694281175 961853937 49672520 688234682 383659788 888734696 577900836 883098069 176981631 318104527 789504185 611754077 157061110 796483623 234372194 759063503 345330668 812505186 362836550 715534653 910413 77128975 781908572 699934999 415824453 890070869 866928812 844894110 300608166 788327185 37712605 865858425 773751871 179849001 957414100 779796379 843464085 138513726 942935550 509598338 204345985 722505948 258032351 913953870 609569945 930572346 664618710 798574548 500517537 504335108 748959128 807807428 731124037 620594049 750583948 847773177 990904622 216345947 143277080 710903716 981514027 436695486 796141352 732382460 3233809 441104892 862666321 569709146 903009172 909085493 759393233 77172870 44728997 456167076 518989670 745425469 971157878 467116083 253406234 772902758 769021736 283807182 256195305 505901984 876215783 154898314 46805194 861906173 603255501 529635597 624294332 399838015 890837917 284907049 776919277 753160870 792927408 128365825 906050555 998428903 985133987 402887000 66820258 707582260 724525440 513950005 714516695 56528834 42359076 707777876 856744612 677289150 596450629 670989236 252070745 599596211 783562850 709933913 657343231 669464203 319217609 474522196 305504271 479214684 320200689 812361858 80132761 578804117 224184352 228858853 188652300 547690868 879745385 673029554 11586470 70105665 811044689 254872687 816361502 764183984 147524487 786121757 208263687 570747956 307552870 775375033 411423623 425197872 499699296 283315502 461318763 70979633 87227581 555330195 590726789 519236043 488104342 620466329 676062713 583579858 345333726 614146255 815177435 196484263 352074452 670989236 200383999 825804288 974231658 830887336 565326640 97783265 428537740 621964840 494842671 487194082 368101041 983495135 818859605 599252805 302222842 489232124 615854651 690059062 11039070 895476460 685494050 229862894 617304591 123340418 684935003 743076474 316846332 905445856 167154166 461888509 859237727 743978419 696985545 317129841 943219368 611820859 134437154 566924383 773642397 76982226 542957339 696815640 951046978 821180991 646185363 860732267 899187512 833106588 881877676 913602261 670989236 598008511 706596148 769526219 89318913 862651335 308751373 836191081 860889466 952482909 624893645 379139295 765447742 795712219 411355112 256329225 355530694 529667708 769323823 518891010 929800852 986143202 970538379 723700541 785827513 645497647 710793544 306556584 230930507 856124882 392596319 854154552 803039733 198903344 975604023 317955453 438738168 162037197 962502830 491601005 281440174 564037362 86522019 890374746 670989236 924664875 245623510 938376302 951728726 824912818 429864940 929670203 748686948 906165380 670989236 876252406 380059214 309462676 713988774 26455352 721180983 847069954 65826907 733186019 770840069 804345316 957803038 329539043 590037792 953008473 545472532 701029521 904874478 361827527 120276364 381150046 12335857 739203970 996103917 21610122 66127088 814807827 767412230 576784763 364687074 784479165 337184602 804746015 886998146 960326298 873006033 934364529 797302862 527616214 670989236 766292555 123532627 566537019 727264520 276945508 187643895 627253661 963132555 646844218 241526710 53691180 480942708 667357647 640767182 902865034 371464007 360764400 409201326 903181365 995887972 558652111 841350206 526984941 623499205 766213556 674712177 80909617 79532299 809648719 657009313 949850281 207899371 935566628 830926070 844197845 946824373 171804336 734824273 984811535 689494026 919913392 474119974 807875236 416747520 251495027 585841626 801730560 833662269 66466773 698252624 913249525 598632461 784169939 779212252 574544494 710098135 276837620 512757382 507702730 349179086 591599758 70125902 583410192 294086168 475546452 325941460 823719195 616021952 599565157 302395038 589732386 600585705 453039388 979451984 956693337 887565694 882311502 342126295 889196974 282675956 784849753 405513466 143866506 473662426 932192734 277763787 930619851 985720429 681904142 353515727 527644195 102469277 234771176 688792716 842048904 907069305 820499207 609581653 859214412 811706679 775192302 107428974 696152467 881264222 581139962 709851271 736923505 638038927 694746093 847200294 915686083 931293921 566938587 503700265 322676925 329498499 128828301 231319376 714857300 608939422 831959717 968819396 174877865 693473764 860300013 894538261 676477118 634256235 891279981 820836362 950711908 872574292 786977514 904960032 909868064 850646290 917316152 937081274 87260018 792842365 47058297 564863040 870166328 673378464 912545517 571374490 783732959 491893831 465003004 195763038 739250852 663512825 281542784 718592888 759395559 670989236 60842305 930274550 114554411 286259902 966235282 737827486 615445203 505622568 376789674 247833290 75955580 292747156 750951045 625855776 908675248 921472702 213024274 625032788 670989236 754124420 936801001 365492189 436074784 822161366 854741035 800826888 865275021 370187620 684974369 769494790 684515956 400323080 975087703 747562869 655416836 369597080 262021804 345743070 359930580 838468311 722237840 727958174 522313752 857808313 640388278 133461262 858777340 173279369 812380802 697651696 997517202 618890540 854017243 695322064 721245859 615491218 813706339 716826523 246712744 835134202 806789747 621771554 815666387 850934721 155612813 869578622 245819275 156433134 184213961 335332486 530731263 944762154 714777205 693384002 234515623 551946253 433340869 728601914 849447922 887100461 989209589 724341530 610660055 573849849 21667229 582844672 383406438 156421245 683910510 706446334 456471243 786764096 627975813 76598148 927984684 952656639 477624403 233304149 9153668 703671859 525056448 557631244 788300820 820853110 569236092 63294600 43845991 23742145 948768401 184887093 78175762 460020672 694623602 175902796 775110060 796941440 485451571 953173201 720038335 780916969 886890674 720367177 614360853 473648873 552730708 473476091 649366633 842070961 772937696 263393271 211083801 819646379 625814975 278749957 812820398 906101769 232446334 213940316 466486470 789964808 594606144 372390345 802674172 913588004 907788799 79016438 787790026 940643065 297153111 856803861 855588999 653598025 985014528 217365064 335982595 941837864 881572084 306377916 424479752 218541844 303798387 742268455 916003936 838497557 216599560 255368862 497829630 672599711 942914988 418281625 823741135 774526271 920749683 145890934 390701726 965672065 730883972 311270996 800113456 830973565 913019633 315400197 350336980 820211764 504417426 63475595 926838666 271185508 702208850 95801871 347237239 236336656 970816699 408636099 849873533 709707597 503683964 524024155 299776048 502004891 353121555 872522493 886124121 822371105 960362780 837432768 892083650 949381552 639774225 85402656 148192162 117069567 826855248 290408047 898605893 841946734 269520245 378274861 893357991 131759096 860434737 293988946 494109250 699939134 209513188 674465731 928485975 831464829 724628360 369781178 693457703 423726840 828991616 140256527 472937574 763491348 778838921 207182681 852202804 785071978 856358046 861555818 302323448 206345247 395627366 305366437 933125225 777369388 714857833 39782597 35262203 825574378 742762385 435638880 195272422 740675132 530512295 999307867 922497583 594781871 670989236 164890278 11687183 750253912 883723457 47421374 519523358 236510434 681986967 826017523 831974972 804428782 790098216 319698200 424301574 864371347 644407936 834307796 825695913 377867530 583461270 625943888 786397849 729404053 937386936 786502152 658547465 849735396 827015903 757694175 132026500 160031977 443521814 356622401 318637431 943012551 944991286 54174456 195179628 464369365 792350187 888345346 718700360 241062240 973289026 702485444 108237283 932360874 952407650 234778821 736972894 953782810 94370030 459551527 688402422 286680389 690149263 690438228 948645207 964015488 776366644 717958621 871874901 226863191 373239907 93192523 986886658 967557687 137487464 487017895 377257980 322724188 456482254 804216889 833480902 451472214 791491275 139693265 600813418 947503048 808691765 884727208 230940039 886026064 422103745 981236606 933339420 913850537 731328226 928023441 944411097 683839975 818785951 853690724 457366632 719470825 724507559 979759940 695607793 385509796 705124514 955763190 867481575 749857849 690995652 374722596 67833212 634132695 615966211 71326037 169933142 709125422 646894955 756045666 518600373 494299881 714505740 530556614 98771570 472613264 128234764 309118262 364704278 451784648 537292266 60872877 350143244 814647136 57366826 73635716 697115459 645163243 778910787 899925546 644661590 935817999 688078489 991183237 353548316 93935247 923073214 72312047 604263715 274682443 144594080 137395489 507318052 883444495 779617393 616545607 512411091 880154539 768587471 391051081 703720947 433005496 948787227 457572962 432617886 833269313 69561258 248592257 57957188 516700899 928544778 455905424 245514855 138118898 418551082 495006540 247019894 198093638 471531453 875289971 974499209 597891244 505748968 679313039 174444653 133563340 631156224 654338569 196971944 794390876 335007797 559562837 936131170 697643122 461117378 414192645 337715599 732537873 487704175 99473820 702620658 706019493 943250643 985249304 296581491 637855854 855227734 406190788 997153453 348103218 853972532 765449456 56916770 191226567 702028819 682442555 434360847 225236337 552362534 442081367 123112718 898822174 425156862 213674474 730648616 894069648 318674646 190891290 957100667 470413023 887745277 331601269 966363371 749294222 567982859 963082430 306087257 280518394 281383169 124446467 953166113 730315581 945968919 786820944 532414446 193172772 123900765 638573826 140675837 338412691 971296493 41292321 122586473 238600340 402361101 562658600 229665434 404663969 787182537 623267938 748410387 706111007 850349106 507497936 697326313 848930285 32759849 447005459 921589580 370609393 392683033 257966282 256935113 727118213 603914962 909562616 304921688 135974711 259060191 996359980 51351641 856605388 898193036 828028741 372612799 719118887 147651265 790924834 126356837 842374006 708802528 896423352 289581476 697457697 564072053 692817253 670989236 98157116 32910558 962624252 596041883 827178837 749410734 210080730 418675602 595306189 855467608 852727045 779368613 794512598 323275063 334379717 534052342 331071311 816302672 204774876 995772027 703592763 870531085 321297152 684498643 532003245 92077188 877833042 803470737 490685702 679308205 969213887 848801864 990532866 328942348 831179883 781314952 560770270 994818454 733262205 748755323 918044585 886259796 565206041 849345812 47617369 866897630 816793715 499761307 593611513 705234554 951417740 938364606 966966791 577028266 132202048 813448112 497729412 724132253 863846856 589336900 839468088 939115398 71192414 687059064 790429536 968183191 27014296 744286569 473639081 201703805 696764123 732076836 792784631 638864543 326878264 400482981 680145390 128394030 544703874 210156407 363176477 945375894 526609172 31246726 941844155 4646864 586290515 506690385 246810288 888309166 855542593 592458618 550577684 235948141 670989236 325501166 11447837 93695165 31719594 82572232 806846378 673472751 37794334 713355567 457263576 938093126 730567206 894156224 590214351 749251404 191449914 856285431 543032542 35797910 926284077 644255465 677807719 116830113 368960518 335220845 606011964 892206480 86937561 670989236 971602606 50426007 408348196 637528002 779524863 721806247 726267065 738002909 863502852 696379025 565458343 887758344 94890957 627024660 341970706 918672645 928390334 804324699 199849809 135742560 979096352 297278570 273007196 772214179 675590119 483820977 789114998 247851311 6335539 103785032 785570765 678121050 465693701 229417307 159672977 8693551 260468908 918553365 499123041 706309371 935306719 721282671 783215784 151553557 907247597 853108563 843223085 794010408 725322659 918352577 183502765 252504776 936789405 11116332 798633648 207958831 158150331 674751795 804933065 484963437 944337412 788106618 556226709 842112451 970891181 326130861 556024969 765083244 438795096 514919682 975395694 953658999 552920722 506277457 192795590 548722204 863976944 88251172 380160208 628341641 420626944 775017555 711458689 911542924 723197359 903966120 157789728 797122357 997935879 791211945 539532229 676677388 945840774 994527774 797508342 767819800 779630347 740445582 895529100 351600753 89512163 884695010 800333454 516536691 96008196 730536984 927677954 658796984 867319031 478923030 561379221 86127978 143342430 936735972 867016269 815528689 990140180 672363104 389104840 720879721 189331067 852047973 508890783 644000611 682669453 68884560 925572209 453324225 911488157 950242559 219448306 361203915 517113318 449274047 369868646 729556621 934540772 715815105 432834385 734862023 505765697 858175349 203679398 684276696 90920307 797595200 416351612 177659394 308611731 73355397 499517756 33345865 363293487 776126989 538094594 901806501 69697205 243839925 207033005 458879000 284713577 23392506 363575063 946999636 71468039 597273627 665509493 709266521 824906688 757500266 916238387 860555466 691323303 363319382 906340909 427782834 721401118 808973743 319614045 339179728 311457908 669811704 517620153 971107485 819700383 992811544 120442914 406529366 939486347 82932181 100305428 786476038 886320331 544431474 840027896 36145058 638748848 885969285 884293526 120217159 110091758 496036534 675582494 450281043 678603204 687344189 824858655 268227125 354177518 137473440 740491612 429389399 570700417 796833575 22941555 674804020 294986814 249706074 486993609 851764906 718302178 889529382 975489083 654032451 367008261 81609054 108400577 904897562 21860199 261062888 715478776 187016772 114857482 617332681 982167813 851748902 819450396 337124432 780141706 498141708 736289505 90088456 419065696 911304153 829389995 393788847 646078919 978868389 739166291 946347161 570770127 765564283 801625401 952845653 738859156 808401560 466508223 732832914 755771552 913190764 264978836 169168579 15949489 914904602 7811183 705630777 486516399 322084840 260328478 319089269 119933447 727032877 126016177 269681072 380750139 708958690 179447124 956045118 419110882 481996105 933720196 550913134 973227036 587181408 670989236 170056344 124034267 466002578 998164424 803253975 974911820 201094983 756955101 805996459 393998462 851005574 784313785 753647135 992539856 962349758 983906524 711812993 318243465 392473424 663545285 677606090 806047225 959294890 111674947 927959790 977389457 792116149 418274011 946286369 125159794 109404082 947703311 898271862 960301749 916914845 768209669 696079470 537129509 96347359 175027346 970951964 542441245 724384361 54689300 53540159 875016664 707511143 862020749 715419426 951102460 765839449 961723918 617564445 751961522 577291028 840569344 875330116 792748052 397647954 784444353 875604759 330200130 896781593 634533672 122482122 275360378 239476323 466667795 185243704 485482087 955454887 922570677 767773093 1308448 660181850 150016340 712193257 441374613 880000254 302367289 977937957 928529403 560891768 740551082 988718999 856595975 253904842 784742456 673783609 885478107 585329015 857381689 122615014 367813159 671628056 759199965 764185697 932823752 862802386 750022880 357107013 342259983 381005017 926264883 897610595 706054067 211483906 676675603 981483287 648664 920544047 670989236 787198281 893684273 438000224 509096924 479800446 20917728 89903316 109034074 582852113 968599245 247099533 459219277 758525149 404397159 916080388 990828386 309580799 836987550 308093833 36082551 584830089 50241539 551761318 710170676 996983334 994455518 773533265 654491596 120036504 855180042 216432977 207627951 396650705 949520535 919319996 632613409 480832170 494091819 925346311 729509331 630106960 431167717 14731799 504149143 370138949 875214268 624310585 357118954 677899139 597800951 945477270 883858244 654553962 821104806 780829606 869193523 325416645 521308214 380670386 614085490 292528851 988464165 826629454 753762817 528674183 619763885 49609054 930902288 884236409 811834330 540358785 825802309 942142099 686933714 202167831 984169154 771118710 825386633 739675889 274395228 674617947 689625302 416087015 744575421 995625400 670989236 215906374 828915914 402815941 490017479 244396291 894761411 566217796 660700381 686149489 793993554 986365390 524517015 828727072 862464940 909125556 673438347 882635896 708971957 482481050 966760447 914902164 220192131 962871519 344456367 616804256 621347000 23218215 748287379 616103291 846736157 571719713 687200151 986107562 768823658 923715742 28001041 391248913 713883108 512498866 419674268 127298050 65812486 900609581 178122133 246554659 23599166 597620033 878196451 992253467 755318199 847010860 916905051 927225026 693931188 96797432 152424549 989218861 716080845 216907408 904199845 239945844 702941024 396806687 967211195 884525549 287806175 885958611 951051545 892289308 803027486 764758810 473395735 627807143 907534926 473488620 763540775 832483290 206437116 943247288 710317637 84795422 44605408 715950210 778004118 897356736 658221527 600531813 285866475 861230761 957370944 82270460 412189317 263032516 892219082 903032151 692954426 550945201 782493582 744991780 835957708 582463135 472291411 569380421 677067857 949861032 716548194 850268207 516891401 108979043 623891830 202379628 681604299 882440940 722161384 993725240 614881181 20655809 9538906 875217791 879586679 792951202 706228548 670989236 719801128 837495393 881683423 811811794 332140031 420555116 685177374 28637740 764845780 981898935 264332289 14304599 204587451 718897164 928204804 383202655 75454590 423023660 637145143 997344703 751561539 231790327 173759076 348240365 692807599 30979599 936332639 886744439 911905743 317225511 784276973 916930680 41053895 6876896 941695536 452338492 324114349 284089743 804737914 957090520 990816755 204071237 906726894 812929968 776064064 699416407 933755653 161134695 153685324 486633547 822099597 804357937 112888677 300982498 208792294 270348935 691023991 359327240 674358232 970861275 975644734 338703409 901968218 913909533 232439887 860216243 981180902 432926508 707058302 757940416 914712202 925538289 860838122 151536639 419929920 695740300 883048493 677807329 119971482 724344869 48962743 670989236 119533499 125579412 359030465 686793106 779949303 951568777 481533361 645341654 978888726 828499101 347197308 670989236 205982379 953535880 918605725 710242722 382139293 670989236 983869243 789638733 364232823 397606415 409663998 839811850 670989236 703052102 684885868 324166448 969051130 727308450 538946123 723645238 328248373 292073063 512527250 916440110 517554197 716001806 695589525 988373654 322318863 473618418 911880864 350150903 889949973 744190855 716699180 992619747 38835775 473538654 989625719 856150469 276993972 895381497 841205903 97871823 764034764 679759167 789890352 733139529 679686259 879869803 913761993 898204235 933177605 850652541 897187912 881967153 890228815 350708796 986981495 814111388 384790455 778101399 49830704 654961170 200435319 993554778 716737447 516115490 741662379 371548811 311358877 736740330 665756585 909194628 785461863 640039410 768879789 204070301 996316355 713705880 811961051 301583030 408350922 456623159 414953280 908265369 709938271 134926069 338262497 783736582 715612333 641374671 747698409 829654066 700650553 731714499 194408103 305681617 251545503 694064250 571008078 942180924 999254610 601065883 847190434 132246597 761742216 895423803 297037821 875907727 165549821 964406274 347692752 69032398 583996005 716700597 547818723 855466945 463074923 929017862 237642661 908359918 957702070 689334774 133053306 942138492 44468595 213830986 930829154 306478743 825883979 862528489 761279999 755586538 65885289 204955037 399506311 802749508 473195539 707339062 913378871 817191351 771206303 9250438 402564453 253356569 356483048 801528368 808357244 108856999 771414627 5492295 670989236 994978991 919852035 697838011 157713518 682564173 76161774 82512884 367656631 200588626 736692235 53790542 762634025 782919285 606223913 550030990 858311703 128810057 239022469 722685834 926198383 112687408 244789851 687163460 328989717 925911253 883191339 744609648 121469972 755482722 749532355 235396610 613405902 240296451 651686200 227423121 93435499 386109737 880935550 517841845 428271241 486932868 517132378 802916203 88868386 912584156 566047102 77459731 785749477 718239160 283535857 313520328 126441232 784478904 794407669 829824446 611514571 883625054 872641589 243963093 848253874 261873130 918949717 978185060 712002646 524084436 962890358 916390085 178130362 19435044 929582083 774938356 841165802 59070413 795195328 560156166 265123666 906486489 824568213 777558124 870274771 641207574 324706435 348104363 835617205 790947841 640939073 150827193 851732224 356620781 348123502 987931839 777618345 749080241 114866980 677379732 573727110 696070090 678072129 630207245 108772348 561017625 858172585 61000099 280778099 933403419 911860321 872129496 69281234 761873407 422610102 203465158 583733531 86356015 681706976 823949409 137064028 969096972 701658863 918346947 164479848 636924486 479114353 334602811 869577773 259964739 570310608 753348368 651238783 966841237 893297561 180356576 841333397 827795963 859023 770592671 129588294 659139462 766380126 747669469 328917219 559219429 157967614 51913838 228431581 926191138 770124763 916420075 530108989 62397029 571321761 806354931 591753011 419811474 486039612 227767257 44950786 952248591 681886950 312149027 914972039 78767312 775113284 565101878 393950364 357138203 750324015 628563996 874078512 875336603 462460387 544606727 53423731 955487477 710214805 744653291 938432908 900814853 766184920 737260561 879594022 689404643 844165929 765962373 346806587 828722708 755925386 5555570 683932905 98273640 510851158 103773224 949226168 745365139 761312116 57327756 656803088 646164306 718484009 932711759 22242286 689783972 345062176 790723945 710152526 412301287 757634325 233777309 833356690 937895806 986669134 723957314 775892890 751152276 333769792 60126027 44858973 119697298 365940702 496550877 747536611 641435104 537899987 759689259 615026793 189291753 218009528 382927252 918409822 976790375 79952818 584823768 836590555 852335504 449845095 245643212 495334430 201772712 673026022 799293092 763988031 669807424 895114984 621301850 650743307 455616439 594720525 602055931 755113389 853378563 299603555 804091555 233664231 25283123 991737797 778611442 720542450 746272338 933455083 371385780 155575839 704343765 129197014 51524745 635618059 756493306 674741137 956405936 875415554 899695061 407886069 825891272 344924466 670989236 227304225 249526503 662662600 708328064 784355122 880932276 274240318 473736290 731663175 688375678 925916414 719262644 419735190 98783228 907755784 74005796 732251706 973621986 934870164 709179841 573595799 627765155 693838380 109351055 41223098 497679019 66047898 956189089 745589654 661981190 712277138 605867582 60001971 814632674 232226354 864989626 700998072 367833512 829873011 110956044 770502164 729252345 749161998 100966190 910703777 262501882 670989236 39365045 914877528 39113373 247921278 514134788 38000122 466413033 193666817 915324807 505772275 860473127 439270922 927082358 972397100 259572043 736636504 648733063 578145426 885344704 918013283 19012842 688602919 228983181 154526106 183939232 671077724 216470942 460649974 902788846 32794866 21061572 962169160 885046179 977422654 183551672 782512802 622732848 450768471 299467871 944070372 796286124 502255229 451219938 526285225 604075646 891821781 975618669 601282063 76618197 315199888 860859546 752180254 835002993 705690417 680637148 772986768 936795000 433714734 420996896 82475126 670989236 877087829 548551183 670989236 230009755 947571716 209669320 780131961 76235270 855247100 866823806 156741699 298607163 635413215 804251668 357263837 459678182 743336873 781482605 804317177 690057932 930741037 940330551 734051335 928483665 805233752 148977523 366987047 705732285 509897042 399897064 670989236 699639847 916168614 999134150 627600333 529068682 856467137 175850421 733277656 381508597 380417651 13255242 939323143 665944401 846286161 784376368 1757003 758514084 224839150 655873122 649547728 406998819 742901560 895852767 743274339 647535076 901818660 666804435 403235774 161418077 847978201 436532789 524270838 223336559 908802049 649271733 976044210 850636727 72699345 943732697 221488850 377469275 396941226 392183374 51740883 47190326 893572232 35273972 486061991 14169037 311887685 568922107 744931584 909976468 872545842 422171998 517426105 944492329 760261850 407160410 981405018 768280716 76178975 204539802 219084213 644121336 534360486 56856378 53757813 744951182 342390738 790461743 20120223 690252701 233013179 840530410 773793881 899668103 706664658 858428488 961249473 54561651 298356769 261088771 816078566 5718079 883290730 768316078 820437679 772143463 176102376 13720014 873851745 145920894 327043969 786827992 678318511 989141406 702146060 681258687 801138861 487721877 897448216 785006804 246256197 191644474 128376012 955147857 627882569 920904858 685423604 406287381 451682649 874673619 36123775 667188371 324909316 973263553 548837417 50248097 325574668 719289575 602019160 850600583 349764376 897481102 931487793 397558659 870554798 733234487 489467904 218097902 826793268 867159894 894008851 653915347 563800992 130138245 314643602 669223266 746927640 610534350 21122092 670989236 596833032 859306538 866896991 950381590 841281467 679041389 894031305 797451003 853098840 456152493 900413321 884697586 1506505 733077289 907535647 978776461 893975651 189055049 389408820 735742085 677772538 77843879 379499924 468538973 970386868 353632774 985967564 519442749 255870754 810281261 845090525 908831638 95621237 691498473 936429184 929757259 396467717 325891619 676496342 521142705 897348464 377880203 596089906 685916227 856846488 367524594 365649087 711169409 429378805 857978613 781698174 682956008 557628744 836100371 803145405 43899571 499123597 559364302 155291486 242517333 378966966 575296880 785960429 830185804 736810663 37989240 521756892 815319219 645558294 465618547 223041346 846177500 866466157 881782812 285260065 318616747 980883614 376503853 888197358 529663065 676939892 866233703 923734247 438808947 653433843 341836985 109259681 607616078 736451378 670989236 364802537 251943108 875656826 377295974 742662752 531212787 803290779 912336539 17721268 791974344 880256246 567039530 208616953 962403780 876841744 454366796 336043598 690776487 330076664 845761574 166380242 770914428 234258684 300044470 928903546 976853319 678060161 445899805 351484219 692559322 466681835 658800464 135078092 647921809 36160712 422229044 98111176 71288777 876741253 599990712 332152078 146420138 748424280 229907544 719825345 285655419 687494666 707000971 365779477 826265978 962784417 689995118 891178209 501232204 989040292 804944065 587114223 946806547 941880003 237490709 956513866 848063193 602206872 777735665 834026026 762028146 994806006 801173730 303973406 351644783 946559866 948191411 332773034 830819858 798463890 705986034 748014371 871108452 45581438 54964273 923279917 993143480 159014557 862365390 148563553 679571842 678114721 561156557 634914133 107271306 783635847 599238535 695708611 693450876 82929247 604088790 612957987 598519241 314954449 207892686 250789389 638098885 670989236 431874425 972527782 539618836 996737358 50909600 848024907 70278500 671133563 721020948 887740344 946462324 806419709 670989236 772588541 695962913 914511201 781387547 872649362 843830133 12088131 309928551 827485912 769646510 787824799 714942388 578266909 465879701 979742727 441914018 199520518 828808653 426619263 838390617 480059791 706812866 827604546 122950853 443870390 940540878 215671009 659083294 188864444 888664073 688131709 261647781 725838548 397515213 992795121 662917445 805445436 467364255 840962038 643089396 891781225 994323541 199470899 926493512 685571173 563746539 281802500 660953891 687995756 402376951 770096937 896265663 942443439 490375826 902570049 736900358 49824495 764034095 698560916 101726118 365541238 913850488 137583593 677278165 656830547 847006626 552443119 226497952 280546146 909960156 145527488 201246564 987588399 308418096 670989236 98257024 116722124 74125047 844088013 698211160 186154897 939849546 123398186 555963216 958638724 974770774 844156627 443277425 646909432 900002615 970907998 880740478 999463937 488720798 398145440 707716509 695104818 761754911 500669212 513485195 840846132 525465095 776344617 200805939 699079794 688535384 61856357 683669039 31981749 518424240 688002639 134253266 381021906 234481430 287237878 571335794 4237793 987949414 245808510 90416813 383197496 110573086 152325449 937341421 722128859 845638669 875485944 652921386 580365482 531464199 725883058 565510765 191737497 722515526 635926523 685210431 804723595 816146288 886285902 735698658 182027260 982242468 475639407 972976969 435453835 325732084 821861130 74679420 933692632 938164137 854978481 811220152 819673030 92588800 209243154 128512423 806679740 785798718 741082234 66954219 727123741 837512677 863547988 618315796 536142893 759473406 943913941 330000395 805344913 948528153 115965301 893562954 410025491 772802186 899729877 879454414 362844788 437067012 625686084 981710617 652957279 901429729 896557820 742077130 966176007 587512503 678830848 275835814 638584866 845551269 937884404 525930251 699143317 532529900 304505742 399529837 351752978 716116871 709467378 885458783 753013013 530990275 791021689 66633941 860802167 980749862 637244094 602103871 146069743 203752454 881417434 226216175 432852767 824483331 485994505 995137218 974800545 677734034 791545950 212607561 902225031 861413140 710280392 431350162 912411839 900187027 528177857 911646828 685886710 707989231 631828596 60941343 320292568 763929307 939193565 871235944 255519154 998547588 902454123 121163994 416875532 25008930 801657475 84363583 951119710 724087274 529177692 969710392 13278205 796707683 785456194 444222600 128386876 680806933 805325572 745703899 783323012 611329701 337421919 936777937 936757163 879802160 706098943 432415072 394942161 517164052 199438242 957346880 427218236 555294689 901080406 347768348 6511276 873308915 43396184 694957809 868114394 824582030 189166326 647375325 905393211 870812794 474866967 767148047 257955903 190550475 906923474 906269635 892579376 318425281 186628900 642421352 201573985 992680904 756378505 674267266 68480542 13958850 801560774 66527597 963893892 606364594 773060542 167923278 988572452 823723600 163549333 149255467 872246413 769549193 895814815 292732612 528239390 330454134 882383269 326051226 872314537 791595165 774459123 514834763 947192325 995053413 485007351 825281425 881311991 863908369 923238741 51936864 529612625 705428658 447462162 607344607 756235898 18376531 796037727 807932511 864597293 827480321 910954946 42998556 299664494 381171294 801071461 850773519 377636425 864568823 670989236 929748449 255474919 998576282 785036908 589947911 63063575 966239525 990076126 131138715 621237204 344729568 90460650 635526189 612577666 787202610 925614492 316098710 514820881 891560589 236089749 865276217 916515968 684153971 315472940 956997648 959287736 363443730 900532907 992586542 899184170 709727943 969577732 825261599 905649731 679888210 570569934 697461596 478036889 318592247 755756323 592637007 579587202 924918780 944478714 661409674 709406631 70946137 721644246 66915057 556908495 733135103 164455459 766827578 562244250 736388518 53448658 227469266 985124686 403602654 318630493 777552389 362783494 831191755 973607696 844535134 619578969 93889418 278510374 946203457 375668704 303752994 392286254 890459843 648396738 869699348 538783352 461244049 980280808 932621753 890276878 383383647 986641368 206732634 454712839 938318494 376562331 670060814 653085539 713418021 61223212 741480199 374184026 742630973 175898943 512660839 181445220 36366902 247164351 106503448 121949182 700256600 991952009 631736763 891803029 227362498 159400617 794848400 682913025 895413936 652872178 930748474 29154600 874944259 510242664 951483858 783262264 973263847 541999492 123201422 586063764 810687158 781557460 905029663 133832797 678357014 979507713 451579783 456439441 72143526 328886390 578069663 944256139 960167544 796531777 374710232 21028337 670989236 175136575 763876785 841854052 54433994 996966937 843909834 596190824 962526062 385184175 157322795 215820305 584355425 311937383 774617375 255732532 696516577 698235851 724615913 190237197 104964914 487076702 979100907 557134540 144988539 110565604 928366474 839141333 507759074 434943545 152731627 693295317 910887230 825887280 557865379 930074195 800718054 980727737 704936308 563846627 207847931 439049836 747199859 874060327 646163285 930500814 95909086 596413604 638959016 692046955 9660670 152462279 864820393 974564665 214083436 104314096 834355307 397798998 657780229 729306483 146102881 847644873 852173875 858705917 227961290 593434946 445466284 733845356 378646560 373921735 835421204 711306846 869491481 700602127 788225895 24452010 936034319 647036278 148242606 808372477 501614957 191328118 116796778 959783664 921664144 815045255 108905664 683510332 755550447 390034513 960536463 350982285 654091510 995060644 917978131 471868078 272705706 807330107 415397826 24846715 138590955 392329742 843039496 436084567 911667535 782565026 514883382 691205721 346554431 17036336 472161338 809173631 163780005 702671209 670989236 787207841 846716223 484794332 298280412 892904296 908579079 976973790 789565217 863243623 371941634 539148019 576776180 351271465 472988934 819000270 149808550 181233057 913185818 972361316 893769730 801454195 341256287 686098351 541105018 672341059 42397531 12628088 346924037 187486617 752014941 791080770 854244774 69846786 948296538 339366323 9175283 967004708 418897023 420419689 973074328 710668575 585082874 482294892 263159940 236475432 375765709 984587781 197302800 544855738 431984572 24500837 992463274 210882580 481208083 204242008 788205370 626131877 94901761 812248224 674163190 840321244 802159453 908858976 625593382 852865854 352393040 745726641 705966420 851932502 953120382 581111406 426516829 225002861 963543540 670989236 862317009 464986899 850893872 960942321 966553904 975465920 758385408 646062040 861871172 801308339 572833356 448376685 270061036 850258474 773151675 855795926 436115051 101181231 511662296 874213378 628549485 244366995 261334068 938283007 715671689 892567684 914395605 875142585 694840372 521769463 452285017 679589038 46974764 841619244 736908726 164922700 625191059 893534431 345561709 208796293 396597421 941336103 818968110 670989236 855202141 381769808 134180866 140134513 260890229 691392338 460118813 544144581 658811563 956259843 945315582 735748516 289946243 503155126 950041254 608815583 717203223 591783620 693077483 41090880 419662837 719347559 596509957 549549620 842919313 810771895 1113713 271516625 982946661 738657038 765362858 753739801 475674707 520094913 995540802 759690023 687296592 314789888 242984740 463170833 906501240 266484626 423334355 881313871 794657512 712749352 799977484 820679330 179104695 877450400 126606353 364221982 882776791 889071416 827784185 885870815 538636410 636171824 695892992 67429843 919180915 242244766 88372903 974746025 44772337 809025863 695540126 922965332 143525353 541384402 97021008 670989236 970490322 488533225 857119985 834918782 49913461 371055537 413948954 846341828 571919768 860300870 785275232 627958767 823488598 19263402 603156611 667131289 430323386 440663902 582718138 949453155 178485252 108843668 645997940 859253719 863992150 404387703 833318807 965175405 685998621 572639171 681847373 481872952 979098484 35971649 625560779 814889706 144298503 341474226 981425449 483164752 767919304 90901874 681717074 708372613 524093209 867037539 593232603 135419040 720896249 738169317 226496913 670989236 239984181 80923790 275282964 997752483 751262376 115924019 826719938 555328664 597297590 408530872 828424269 861657980 909592861 554051451 859612541 720726824 18045269 813109996 274550684 326151746 581766212 50352082 692484562 903900719 987173105 495745147 863069132 272452894 692941362 798893325 802912132 279345407 973783227 807700912 267921297 41588631 882964610 888349215 984473093 696869833 213365930 890880990 222553007 750305880 824057022 154747643 765618321 912091928 588987845 768279341 981769977 814880942 71754303 769488517 531474397 841299306 670989236 707065104 928226037 600005125 634912755 878917004 887390745 620374744 907658380 453210617 732771048 605686910 900304543 877320549 603131049 955051210 481574046 191741829 617269317 168748003 775659760 726478011 305176562 892261156 860350765 451472721 372815003 83851298 233539063 762654645 255170342 850449473 464313305 537919005 964550320 790075809 323927602 855028889 863991802 641609326 596241916 746408817 488707133 66721549 774077257 855679365 762971147 696064685 238606886 749194653 181898946 527453120 175832360 889575189 746053133 792223014 990752124 459173232 227975595 542359195 980748800 680221486 912634286 936976760 794408705 815095204 405890935 847998214 295769825 113336297 509685075 32914330 690297899 907108900 796297388 680792230 881286025 980751009 966222125 204434771 939582693 983123273 679049854 99782836 767907583 252613661 112789720 276658470 660039584 835365191 325746523 950866138 705168982 717881185 666492716 695862602 971077294 526333765 882949029 383113723 588590603 918195405 553807824 713715888 455684188 140910103 806943233 739717873 450836638 648619773 834839713 5713100 176317590 793370646 969823424 890390534 393380180 151747396 891292467 928019943 788225557 820220839 724610308 313193839 727301784 952984916 945912476 692956799 327592750 931414514 396956281 870422405 427470286 973913026 950870677 721291587 951931960 253829589 737979202 991602465 486670591 530617348 880112058 262743047 897812326 872376618 730270837 731881407 458790356 828549362 509231087 46251408 939738888 35860206 554805726 568857237 865790714 994846498 791497362 428070013 37999633 717667920 918484982 442105199 369394959 142491320 490388083 418859774 567040487 484237289 163201199 297484030 37899542 720280602 830402382 80482654 366808052 697237445 201454376 225119218 845748387 840587952 246067085 280115639 506041407 451202462 76068164 712450775 716435007 477671570 776029628 949871935 390236030 701442498 793231808 938761895 337834437 285001930 415159367 529659614 764367161 542876795 537422286 953981891 840957188 748118594 565867084 928508213 991125039 34579799 190879592 108268715 598688388 706979732 14114066 824022433 307017709 502851187 903074121 922327400 752027633 136614125 677021598 627307444 992287283 136817201 991007403 528565268 395891547 18575923 713693325 866379239 756333356 393638425 317314341 446006765 169117997 220121044 269746989 443947750 467542256 353934169 52992638 973550973 368898227 363234929 552558740 766203245 785924769 906681498 633061664 178603177 67977090 163331407 218142796 359376818 11588195 400410439 862762275 985848135 846567497 261886097 66927573 192080507 534484380 51635138 425011300 798065625 781702881 101212573 191371240 677935828 986065838 432357359 967733125 113634060 600736549 875568542 935932576 983786078 674314963 244736345 869994067 112557021 869001596 123824126 318791986 955459905 755510691 992777316 1981820 242796907 876663104 902666768 557025619 139831265 992942163 947676105 788953293 775158441 23181440 401999851 251791425 812803095 72663867 767270818 337471794 561504537 911097138 528805721 988562378 253106942 545756038 535610652 816325066 358468503 442375310 991248135 749080545 921944208 932048765 598154943 614991693 800502821 854192430 846436502 855595154 131056582 754451845 312787639 666584670 995354802 937162090 803662274 772710416 324050617 703716770 947716543 410799026 623388037 346426174 636846653 875722492 111512290 553084844 639416356 945158857 616688302 845040984 94503748 420716693 694792989 587856465 314406177 518982939 832813817 328416993 388249689 455245596 268899044 487603244 959590459 50687525 567529118 876810406 798072261 675685606 670989236 984822744 550630323 920083755 536866548 183701672 947338806 752762358 186169735 699019441 932403793 914122438 673513233 851691983 68899337 18984771 818071587 895097082 889534653 985591665 708039268 670989236 251198758 693450215 655582505 574782247 846287065 192659412 194896102 550031219 790492030 983046429 867544650 725570562 657950895 259916716 326545964 969928176 102290164 729289822 203343759 783289809 728260864 432706480 525618434 865641161 911942370 959373939 685592780 832250862 595022374 875215731 831825385 105081152 208324298 395138172 466434228 103423357 754413661 697611068 712341876 455972449 836365069 355998920 933132717 670989236 781806924 687039897 51721664 797550808 829788168 684735117 708741953 23034410 907647856 624123350 207462204 961486044 915828678 893997770 916574048 785690465 670989236 418163628 944594667 699308545 898405816 603093489 198092475 959376515 861004342 986417067 798779175 527739391 60528452 747173480 77557505 717274018 387932495 184275247 696062893 76671818 310395132 839776937 689970102 147185678 801312224 688573666 826178883 807803736 96363797 322603814 471682899 389001226 303990392 119044293 57637603 290401867 352728899 251385908 793832393 191288671 336847462 800640670 253313539 780540870 922863227 737737092 63867345 95715319 818225626 132732751 793691312 925289833 644655430 907311877 780543917 477537263 921334189 868403305 275305248 138031688 96098611 423983024 384508163 418914892 515671737 577618450 386829631 81678104 858395813 974552789 460919577 696499006 230576286 803157805 319335615 921873670 716390201 935415621 306411509 336373262 766793822 922634042 397144727 758525570 345565202 358194949 701909305 782547723 599379992 857062778 446460064 754401139 22882711 902314484 412391708 977618741 830326107 78779191 872540794 10613139 826208521 532171232 959110752 960902406 274911934 651811976 486925829 915610824 583721763 11905353 236377262 234518216 745841075 484490466 993463424 349926341 344114632 989603450 911341225 848178588 1804169 966895489 818687865 542966432 949548766 114602715 466121247 840380151 738417759 546494652 277833221 362742501 622425985 897452713 24294018 968811789 835078056 713568332 913041951 556440114 787934199 705858916 216782695 305674597 248757383 874369419 935621346 416128449 655686969 828416303 441910479 12098960 770447678 761973472 308310985 882645661 430913058 514588765 391132733 799002580 469137232 769117980 687728685 715316538 732960195 776858333 924407338 539980603 757846255 923148697 194474452 855549715 885222473 800845541 769251521 319907753 33751706 359441488 343274459 73045656 322529280 947847599 918546047 428158978 957649122 112018058 290684923 939179749 931481692 927336951 338680951 237707229 5891961 599240550 756894173 471987703 221625567 78172521 692420244 747403748 355328940 532241152 844215419 715490113 397124023 583004390 120499182 899571946 975370528 977829343 982251143 670592282 942086481 858403789 327589477 120796687 675825453 899439810 699205973 218019114 823146553 847674429 964979701 826283249 516156636 266154417 296264680 240340412 668753445 9296124 580718954 798140267 146161954 912746915 886640639 130022459 977311803 722492299 797478414 405276909 211554247 606707819 550361653 964106615 670989236 775225253 808462918 670989236 995404113 41704150 728031383 27042873 835625095 504734791 758766244 865509426 208695004 277081171 323703399 113646810 306880064 451181455 503952438 796959163 838998249 388317403 713180801 590464127 330733187 765079305 343327322 715719608 403947868 179580867 30202629 672527301 84048974 425762564 373179652 671432763 445531801 91523032 142645686 273295371 914963882 783345654 45984367 827413262 533102175 881341712 851466675 960396017 373414783 571301288 782200232 345466089 209117137 829571724 936276755 818062316 473221368 838531928 678233267 893836748 978007928 397762906 801092098 750327314 623403818 357597528 326998763 259269885 702495256 68474756 149874551 641793970 730856309 485789921 827686180 974821709 711335234 84410693 962649094 179901895 716057260 32178539 404014170 168572581 157362411 965530123 451033635 190043866 982518356 13903116 975564188 678817559 745958104 868786135 885471484 956238213 834998102 777997673 645811262 880332854 141881550 658112778 878605441 800641808 440008003 444877049 740978108 86942939 932700700 713977087 532891003 577189189 157497221 8414572 80225214 742024825 121210064 766286415 490645890 907058863 567714614 652982303 58612050 676797506 789433653 49529410 22654147 789673065 325055903 670989236 103671761 1774481 810390238 490010266 716534019 589860950 40169550 517110526 122531071 314981900 293637712 399741682 611642567 773862632 925278345 210664191 594392293 334393752 756360952 706846185 586452879 134260746 706704976 672684034 690167467 774600681 810517607 670989236 358629599 794947949 477571155 348807502 829287546 412808555 472391568 264303308 521569096 584107931 75428688 545545934 627648879 220777638 705981677 857334511 841292830 307672453 486077158 701262020 814742830 177734574 741433728 980082101 588460225 155143998 925410643 179851651 876892399 742721913 55071665 644955585 886916655 110404072 460938611 977987285 377551698 999500621 186360568 2401801 834747932 754922119 616957265 888556546 229176936 257884287 71664170 911149547 938485727 966877500 584670292 908636158 212612978 690148523 18063475 918104388 885248613 816721244 765961572 878598322 47550335 127799372 566523513 199329145 888553606 714610627 103448869 114394402 956085382 710763491 842086200 818694859 536461720 420446843 946509439 322835597 738941926 709943203 680196351 124271655 550364915 864459345 995223722 111028931 310925408 512492467 60175506 790272675 364698062 958024496 707769750 700048812 202285721 547912215 233636085 962513824 941011046 707318099 680216618 248998836 71578544 17817400 966574889 696183969 681298600 453227204 134472310 767705918 280444383 484490661 670989236 803795837 963332266 923348085 953868699 919964299 513345347 671260059 534006345 886570585 866649257 627813859 891897331 802261099 775471397 170843740 257623163 673642900 732063687 231391026 236576665 88902236 520751511 542110890 950629917 611569908 930175391 710120066 883577077 351934009 329373432 590483176 457649127 795802405 933088009 923594296 997663620 964415053 854444495 63835815 456609380 778586042 857821973 992653732 535901561 721309001 945506007 788306837 908073720 229628665 297576388 36282463 862630598 745233700 476173471 797507615 88190811 262405081 327492006 670989236 981471593 171483404 652012705 731486100 866243790 787799913 707830564 771506239 538250547 507804930 673151036 860399860 875453949 449345858 640555866 877611107 718906228 2726772 905672100 631925126 851025354 180221296 443150555 240230540 868597791 160524651 284972948 488793450 858479198 589297360 952696745 263254554 605062006 185921331 17195220 862643560 589143070 722106869 252318917 67199249 679967797 704815867 559237136 251432141 895548428 741362326 151322199 683240323 906649939 840546871 733217464 6520037 500276776 309873326 845630901 33027119 340007106 297451434 742911507 366952492 869785143 263466087 441077386 570248329 349393132 902711438 951650708 725808829 230803016 672693872 712886055 887920921 796349972 781315628 503545461 55968813 745228701 201751624 755182197 969162601 464728082 799289992 642774678 640040651 623631999 263210882 315197323 678589828 850017777 484054734 840339417 520504910 895030254 707749437 226288447 255438705 463579603 443155868 670989236 180479159 710102122 875023663 271058207 614001326 949470091 843031042 605007629 256521556 644526079 263423055 508027336 825085370 204311009 796453547 888924506 390407615 841988602 998526205 981812904 494856465 950970712 778637204 732725652 944168610 882156622 110671360 835913282 802535991 651239070 650708958 684350940 792724682 821905454 749869107 113526456 683085913 531086250 904297582 733962634 384369051 99025351 590707479 677656749 962794051 223571402 912161154 70366934 471721127 311095644 770792320 693489996 322440884 682854898 838004380 740840602 360858424 519780727 886882331 165608180 776214672 407902028 423835287 3730062 323142102 551510044 11163425 448781747 401590219 362297737 862273135 680511229 720918549 506995349 8720234 506560153 131795121 834672794 462282294 193283339 710379663 129816812 264134952 843921831 554311702 591667789 237122328 848038450 945965792 843423807 670989236 560949526 986476818 561384966 686672707 862703109 938601359 578316619 27910348 697482812 353950372 28292811 52868252 837593287 688138896 707108057 538794860 800909932 936769420 397307125 132148305 722150536 676894592 672554493 89262855 649107156 908167162 908151347 464798475 846754386 812826749 891044116 764634635 366450471 960716296 754201256 850721477 684282143 564996372 125114126 912380576 670989236 87599098 930434501 607332328 873523784 329067945 930709484 758991367 399557058 738656997 319532755 309383473 364493834 731896746 748410512 107498029 284960810 300574905 904626534 200738382 59155537 623541399 782962024 140740907 545143662 29880013 321890219 644040405 952365822 960641932 139836451 478604885 307150790 332347707 145005912 710296923 893255161 864142394 823072166 308153858 378075802 837099086 857252562 964129811 495898083 810980095 749632677 247567603 604874845 417325871 544687968 671617560 275804816 934930444 713430368 715392652 468059840 984568894 983902989 177682700 249161177 530468948 925400699 935148554 165676669 176325094 782647158 811047999 420681388 871403343 670989236 377057874 11716402 781107763 398617249 64934545 555430650 209377446 670989236 889065144 692775214 714522299 687129081 575160383 502431578 792143943 129401532 144620505 277690031 391300760 486696959 739959152 673686905 912811987 930445144 256468912 807394815 818555279 61035734 349397723 706483596 112787396 115013845 484826362 731021921 414903049 693096438 834657970 960000364 570244820 961403503 66952153 456741043 427767786 670989236 988824271 850751801 379371001 681454805 971122308 234912416 90486858 910068067 978474228 723329329 995869459 490093020 594056784 755796913 481298127 687809899 994850194 927096740 419358719 932280978 320361479 754408227 452827003 711321887 755303676 859385505 461105327 577553555 379676584 493034467 645513188 902413943 951181938 628140283 352044321 434792538 313194397 382369867 122652908 556108924 872859282 473767826 613313126 518409630 122692615 125515513 9588974 639720959 827041070 945064430 327442309 256457082 989464324 742730211 662603152 741228917 745145443 57471545 238574969 842873785 837021646 714347990 959475367 982892172 313619367 862585152 682492508 490009077 363995842 282502034 93031613 388307819 905684758 278621884 901459967 163998896 939247069 252885912 195356573 664708114 652386279 230545786 904171356 288882968 697030720 696506383 928876415 220588814 673350413 193067284 886359860 533795535 661291536 97234316 905638391 870186326 608249408 307475084 556059518 762699937 484178897 830248311 231259257 867372025 897706369 954223231 761483678 936324186 775582293 678410032 506931982 519319840 462393270 458871124 42851821 854177590 680767901 477308855 240423741 991120486 99141106 847174857 792539124 745483155 406631360 961083911 533762529 235137255 978744278 443832455 476725704 913356754 14648373 744095142 996584484 401810585 876128713 66022068 777574299 377192516 554515993 953410865 843726782 507707110 636090421 828942344 471154453 242418105 273539104 773068100 527251410 848950301 673149344 714433014 697573682 902833067 538406906 821074234 853801733 928048464 886447817 777569651 720721802 838223964 916474394 880667443 949670789 829200030 540227331 967194197 475038612 888721905 651180390 33809284 544087667 378049945 316301971 800149836 823546220 812118673 532926046 140541411 453432094 783745175 805720224 999857887 882457469 568552337 968805071 97444262 11558937 102676132 264544192 316745056 441069586 785377584 448873069 730501875 238070314 561686649 951293957 407715053 837925548 240598845 292571761 584386260 323482312 250204649 988560386 817952459 999008220 95845343 858941576 893017513 779241896 593587056 511838546 848711025 700730093 536089621 825672661 868955257 337588678 972865762 94855812 22736990 442350623 79063054 752973322 452170781 476781848 714249358 772523924 273351627 781851157 309828338 568786313 891347595 795747600 353101171 420676027 948346878 443466757 968628884 741472856 426554658 754359150 836950594 810105397 116273883 937552570 854464899 887195874 404427386 670989236 684903010 886935242 749857040 672032352 528611202 670989236 267555232 909508899 332593560 437527994 705818549 205281905 383049230 895761641 190437950 917279812 933271685 936867320 802920087 497701 354915309 670989236 640783374 348318035 647578090 317828378 314607561 1008971 803976286 463246308 411603210 235143938 325067954 64933211 798186766 818946242 771056197 35858147 951960255 847918938 815233201 21433079 757309371 931425547 678810213 914261155 705306565 928230608 439957033 672432794 696282849 835631307 989624158 840286753 930865807 107286195 805209213 755246828 494185049 395212596 776214456 939636047 567788673 417248366 988530985 383324642 32699094 309717410 684268242 603954207 865411755 713611360 150735869 539669776 927736085 900631696 976020611 700896969 136006705 945999551 775403989 819990569 233886604 946687616 463737906 478113764 258352148 94253043 236897396 21443339 765625856 968061516 872398246 935289329 412349279 157293185 64693234 976917084 959203008 952753780 59780034 797169554 965957561 363631271 195698563 934071718 819465064 708969692 778053785 715187836 587297717 800734719 525023752 723801504 809615550 894663285 31765718 58938111 787014543 483212104 400897802 628779097 567230167 571350338 184020260 888169553 216981815 888613195 337717566 996263612 698198042 975951961 487375320 273678237 948357980 307316016 939603474 754757832 787438398 225962674 450190996 598572340 203044562 745802782 917197215 230800867 611251353 755232133 79202970 971486572 482860918 747141044 828307458 509481169 486421780 912532399 934620550 844286456 46683141 723054578 716555541 896974423 913106596 462631934 797604609 940638423 757878774 670989236 731548328 212968116 43849733 968253708 78490611 249508102 973773622 562267537 582221115 434172954 609297336 994392317 226728091 354415628 35321247 95811367 583956950 750745595 342316798 619874169 929555044 733933224 758702744 607356381 640287291 523201042 9213402 710391880 200961422 383814460 833766898 184083678 896119702 607837597 487813896 168422101 3711699 728911167 136016773 751973072 862961278 670989236 56848138 94949135 590907487 5452089 742408790 374672209 63176058 114368485 640095605 169286612 174784654 688902327 672349376 914194623 336185933 719933693 699430559 982656468 919886609 736640793 900441345 272705059 16799892 748846203 531924434 914490477 998910996 46368563 967001977 644291919 896435843 924443839 829015496 355106997 943284646 143370039 461227945 156617706 670989236 810051598 125924134 877574564 827603477 3612777 510239978 172401545 670989236 588179283 29719005 251558102 792076014 994580649 997833562 821599617 619567641 723757278 143933342 777147912 246184454 849502928 916181018 774491167 802251621 165927470 163545432 603377292 577254393 694917324 633846602 715671482 982084944 21030452 938185842 217045702 118022469 944289951 734525074 245868503 471510332 446151937 629836588 987977334 921045356 40411992 887881642 837263365 49538157 863755573 658551689 216220079 805630724 802075100 548021950 605436386 469324615 974694418 914295228 813097061 641915515 937800697 945304744 738139464 250983722 782385003 719918350 533582946 618370643 685812270 635545570 669761073 289872257 814145773 949909450 116479864 445558843 775472753 87311305 286749527 670989236 425004088 647103526 79491742 916922560 422724438 752158062 647253169 7826589 747267 900246054 327904965 719379825 822018015 455850863 182352937 714583554 290259124 88134261 802759566 670989236 356768060 820167002 832198614 136544125 799234419 794364613 579205275 300323949 772783514 917321672 980229949 875229731 24523372 724510133 765542905 743576721 153284605 713813134 979680431 506192382 678963164 890400683 849800767 613727669 330465497 759887448 952504291 683685614 966082289 915099601 906277024 15728274 871691466 429913493 148585133 857077723 20115021 971729840 779853221 403879589 648672994 797892786 755291036 40798764 839556685 123930526 890026666 838771654 774525549 426881786 313771091 286938332 86240467 892859255 713218117 770565213 613252655 687441377 891588023 294449453 420497138 784281827 943974179 630360435 222889101 324933021 394035144 87987308 339187294 218335521 846356611 130681039 809747317 820141849 794002950 714888689 562873264 296625553 828127832 789598474 830419032 216911091 950161034 108847092 292045283 684736157 877173176 461542335 848118993 973969470 897244606 805449609 735236770 693020491 464213015 975860159 670989236 526444156 701877518 702901962 720841654 362498684 572430273 531891587 906131541 922765667 886830640 932366186 596696665 309186510 338006754 882069667 786430068 794256444 869327691 408460287 301108780 228045344 367080291 828632687 15620537 603302669 292290144 908746067 926958077 731285269 486321161 671731319 936842715 751047171 908151514 880263364 339792917 421585538 289907690 660689533 472443159 797969606 3738526 515789480 344990472 472793157 966401219 469624428 748902155 292366585 969554798 903432951 185784585 731455393 226678838 460216287 897200950 756594204 111289320 957699505 382820315 55821447 197199963 129369678 773676208 625036105 797887991 393258382 33328146 781343730 757255490 559373935 675456684 794765742 255273673 746105906 855753332 585126020 828332869 929035832 550062572 331911301 906048433 863188436 959800028 991762896 82140370 614451740 509800618 349655126 873644805 934548422 689264742 403421985 30954814 604304539 157091584 857879227 62422191 812973885 863813278 675240851 563103764 982768727 96658655 779225460 693852090 49565357 640888872 574327160 670989236 85930818 775437087 481354269 939806569 978596114 806038896 10696136 780963214 396591664 685817794 921775374 367906876 368163421 795888349 700725766 930216397 452537382 988168817 826751767 97765060 921362865 982945061 243054445 790544609 488720095 980668596 755432009 457258508 902710719 720490187 614988076 370319120 438201808 823650433 5849886 493134109 835240774 780705139 856418319 678936336 31560112 731314424 835827820 882174325 538057634 723663959 470440635 202838273 521110606 971849251 98063005 430359048 287484111 972092753 502079045 511908294 678497844 245784940 122605886 796289237 985806446 709204620 29089410 3141745 953225250 205928964 156237733 455396770 245559024 711093156 867838575 397452435 60051864 963735371 284605386 992288157 674807912 864207875 359738405 65261231 12485317 499287386 338980795 930918954 75211115 331465975 617802643 399045683 536417455 718099463 928049666 805936752 698080513 851846762 932824161 919200920 830859123 923567587 418445730 670989236 753732096 897076414 187478187 846332202 608688253 530046702 751821003 45111417 58627785 727986791 451371590 290356501 773849393 983392186 345861023 174916868 740940695 823215355 700128104 375375748 152984581 946692158 700029223 676228569 49686230 877274403 777454273 761349126 265581351 512956700 698725478 652134606 689063551 685464590 727952522 348314873 848997559 142049140 614052214 953366727 462452929 187283236 410489383 873235663 685143157 955460178 855266978 723577235 869810842 503684377 928991341 958829822 316754026 988065481 875727882 626206160 349697388 854244509 682423898 843603795 18945985 313399397 417337620 938977183 365613165 580505370 187706774 880529054 358942040 887574580 744300596 564574616 678642858 421413402 969065240 784530302 564414838 873707715 127849199 491546595 287915203 77549848 344434960 52479092 864602888 799698510 618922994 685311844 362164195 851501640 399852744 598469656 995992669 682878359 776465238 766893400 916034707 414242063 530299059 637361476 984057281 376987901 259462725 37793454 216852425 513878006 183977375 686046135 602826399 720195630 964569807 865633450 98347402 389189082 849933896 109218379 274454685 776835430 644681214 639730805 863686917 243054455 856691967 250440818 508192632 269064480 967717976 772878998 684400015 481392332 920271061 354045865 32015479 726920143 619746449 503852016 255392279 700730423 678155372 171335336 281164775 142052142 803347901 636544906 847166725 386423214 98338316 946569300 709538429 676358929 195718104 589894679 846645987 829942072 818654231 745209683 512463816 862509971 908795718 929043970 514538654 556535691 928411901 843625952 229127477 479236472 541478618 801304006 381883736 902758969 83321972 672552685 605738036 958746245 418370449 807379907 152751835 877580927 204677199 143460049 22719232 975370304 861870143 870732677 344502962 923679413 114044552 76560275 32366900 955028701 324421096 831515502 948135500 108355380 586726546 529466154 616104658 738599288 483000709 161030653 748222170 574599304 861266001 244911772 167222206 362733713 111864483 235640351 969067241 422873160 598433270 759865217 180487827 667425436 670989236 959800364 252893262 194355563 204397167 2775206 926598031 716514674 684680762 695543593 957392539 752400278 53850553 308191558 679723554 788623719 924893638 260501042 414988379 179263543 248162461 473500505 761652703 719100887 215092587 775239430 997769780 728908661 813083165 315870269 726728184 330492562 341871327 280689160 959281631 673146883 833866594 164218084 23073088 402421689 539016720 407691966 581787515 555270000 912079383 722756167 898155742 172666520 901836375 314561537 535110500 546805209 607872896 535459077 741931868 705539451 848204256 892511016 799016854 79612297 726215344 263553017 600057723 308586201 716982884 869044479 659744727 871505019 639465125 127815238 463410577 435935880 903658167 632624016 741272533 105152844 411531160 438991538 90451467 922503528 917627566 880298614 697338545 64646079 347477551 715443232 698203686 480839055 357719521 23042200 827809969 143227823 914590190 629499596 393588909 940096846 975955929 71802610 455425089 410739146 869424019 81009086 969461553 95703938 555147820 150477086 473788974 96258187 911456278 381023111 807412011 554160697 905085196 87837354 487800443 119469382 670989236 633244821 104920254 724703026 440479275 477308541 571368487 883150692 572868759 751681219 757484455 813088286 765907328 247650631 569467703 430906114 837284241 670989236 791237340 497479994 816023834 838109878 796414828 810240054 738177876 593990891 963156027 652674250 926101859 802939868 713152492 115445199 199123034 677036230 841258485 142481970 784259550 694194360 210360728 440951300 434412688 586466003 592265062 767039473 975618245 484616351 12238561 719416898 745928167 817064152 177017520 719822686 889910172 399175965 612924805 983841148 134178856 383221807 827347858 406774720 389685652 580775276 133369568 41301296 974592442 66554288 931658678 673616722 310003145 889801275 895182443 150776051 705527982 682328763 760388954 462391696 443474101 116388478 670989236 270375501 891730514 932707309 396605889 197023761 482132022 75831189 930682426 741569808 922747478 293481577 972620990 458999552 730976661 791181415 825232510 256617851 160688496 85113805 855616922 761714106 824535256 628971026 534834729 861902172 27298136 993919985 895061501 791104864 735849817 820569747 236690406 242776322 216702485 512719728 887861678 461146246 854526402 899782376 59488165 232882869 429067718 44820743 141470454 194191495 254315944 722124751 575668788 880021818 356689714 848893590 320578527 293574016 819817815 325067230 170435180 335608621 571526362 493426722 704086142 797633666 187775153 839627037 262060871 756060443 966688892 868016318 671085735 756221468 843933685 840918421 23549090 277751079 415890360 968528303 765419368 790276064 265239404 830002691 701904722 783654135 891835237 940205286 499162440 999895127 753615081 771666734 57378754 905834141 366194539 895496271 422293706 797241277 785479009 26216769 743153030 657676100 917734410 570762630 960140126 786883406 876418912 153249991 983704010 693626924 321602031 906647515 304913072 555315300 846385782 442675204 241505941 668341352 964982732 128414040 539153254 208172747 14286686 479700652 956044554 852920494 990846440 770023 101717839 480788328 877515896 604282736 282691319 948494867 962664522 747018655 357376355 995112162 768484266 325139491 845468130 895645045 150476768 326912844 707412854 757205142 159346997 837237746 995077947 904888586 529218610 755993155 298148945 103834136 171733026 746480595 860725243 984757919 707760148 404605644 873361547 778778967 777563283 540797587 635886870 827579528 892894518 401348140 888673107 466170778 800190598 549820253 908666266 243699135 128946669 744960180 866915363 146829097 671585801 958180538 449957294 719805263 881039197 919821834 847021966 626026303 849880172 85891977 937796583 406424751 880671762 451747163 483359299 833058338 753011506 548359299 670131097 455796962 242589839 749284618 362364497 387432770 473929791 745346530 460171801 983216833 936472768 202728238 39596517 973219595 771392122 934336162 864738361 932323326 435969523 99990462 623707698 771583926 14255764 89909710 733485626 863915085 55527867 325236273 179046419 323953987 944833574 884390937 657533065 547133015 677372754 641730037 808463879 908806148 916486137 365955608 242439858 931371430 165963832 779099522 725652768 717617751 710866760 952225613 673959015 926934457 261705654 776520474 594135557 464900351 909637992 587427486 754044784 932216632 57095613 479590458 755496916 157250829 748188835 5449115 191038576 576367421 718997856 778133054 796137487 898262380 695210543 126302337 521356192 19540507 749357906 770449093 513348515 698199640 877575774 899388968 519770507 335682263 576375474 904032932 612590993 178274210 369055997 670913284 805840666 840440475 579634114 798271828 151885665 975188657 29434851 485078481 779877332 66011185 2273354 596515517 560800922 869229458 871531536 184903982 599022521 799674941 871453105 617989628 69339764 670989236 660149550 865491213 930530092 520690491 179680832 139941592 892469768 116501160 991794664 999056907 908720341 507453760 888882288 921553355 52216419 186582756 13083942 205728834 56061507 828376214 180939116 384257942 149111253 681094992 822441243 210409915 59005079 817189532 381998749 853322730 997128621 893043189 513588240 178509956 815564354 920297499 324613827 124859369 831771131 916846476 349523285 273012033 362545630 538174814 734183037 877150692 871780471 739651012 701174713 628558432 116490726 516646595 781074514 767167748 908476647 903499026 770786174 695449591 931318099 874281104 64342436 942555853 675546798 918521041 888790983 791740748 83895306 191655841 895110548 789856960 838563377 820165512 370561947 670989236 508242632 709067017 43235370 61335322 390744175 431344195 733832125 347676191 681962754 485491134 956830517 137854057 682044122 790863914 591495614 42547149 66936889 801518055 398701383 788321885 369011094 230104410 109141456 425397138 384233528 744178561 968740133 341933174 160166539 534316975 302821596 141972152 804505753 73947184 587187052 680940052 94647493 910277439 720770171 625377083 66318441 233044976 63552727 870401684 976330274 973728079 922389729 519269281 862720015 11640453 102495233 488385958 533347696 524387671 130590347 964331838 834870463 31495383 429584115 905600361 897212222 770522422 471208036 747188791 498952222 569504710 405706613 534944720 614372276 222919529 830371295 52528859 542158930 977042458 824387308 191974820 232206370 786432767 700361009 5461904 643613181 664236810 681880154 237004100 226460088 958991702 871970934 510861079 617371287 304356251 786550627 867855980 654597549 981006415 970540235 711113197 289118948 810216244 883665476 133687360 888536365 824888833 813949779 184220109 693190270 753166675 828776832 139521287 611953515 181144329 872970022 706316010 771507537 931194598 961095341 462251678 608021773 654033535 939991072 897131063 990259938 731068609 882330582 620878380 848356768 466415147 621420483 674829127 999818702 888767435 331799754 791536648 246266772 728060039 175984990 225050289 475766062 955059681 268985196 567598737 707087141 8574923 284088001 73054891 845571269 906930841 677665216 409005412 927959832 897687221 950261173 1667498 611434828 10447315 965190109 955539964 976227759 609314757 241003247 757756510 760887768 413668460 231193833 805759133 776903468 613952946 240840736 370396047 458402249 570475705 682648676 997572239 448150717 346319562 730715849 429879293 239639414 279635129 10095480 683921511 350916019 941304969 181059070 274396199 930878094 968578229 532954850 261824082 538790465 588843138 788966845 952438901 81921935 734318780 949582569 914178234 902786769 351311797 751667444 8707892 924051253 503116408 371494764 532573851 539827441 286203092 254911921 351260404 685448532 291942802 124280773 739950861 225745193 900859724 757840829 153771001 615526218 755133661 862851274 522882871 536349052 755201336 516533857 757554642 919153829 751620896 850684522 701832328 845075059 972583539 206475739 695022239 161511399 319219932 237242769 762804265 897767142 836595461 766072312 521875058 204625347 262546501 829943617 908581035 568389238 983155972 877849697 745601159 886597418 887646607 715828434 843377829 748652755 718362183 218251211 934114815 930106035 651662476 984025078 405052159 359550245 153555734 732397732 384267650 222468662 210151839 233016378 858817157 940000127 723841700 777281961 834833764 672256474 93527869 777084039 711785812 963727494 791990784 700378788 989687132 725517851 686556932 991299030 813461007 300371663 166618095 785459834 91841316 10209382 777595320 971610124 933180978 935027591 301873272 998271079 826689940 973586327 907001199 221136391 519352563 466280588 311838767 557811678 963091192 952405470 726011205 955296853 705006984 706028152 281291542 50021059 486024814 792192259 995943667 960925801 311168576 530088780 778856178 693809283 70149149 765840568 182657663 115745118 906704757 428589327 409462257 198961466 918810655 480447399 835934156 661420948 950939860 920777887 725404102 103185702 45144491 984238203 370827784 78015669 31915630 750755294 891897712 67307535 960868792 742779366 694228688 3994819 908021145 105637231 994997117 898020087 130852696 876196868 182937393 815687578 164566167 127967175 805324581 916239160 881288739 710713537 680784377 908970471 858079741 985809405 643017554 204562662 225510004 670989236 963025373 255752515 552330628 704241388 204998976 64516112 845852484 102584114 742828226 835020521 708185511 229484550 73182829 753492280 938739606 341345451 315462050 644806212 791447149 722096954 670989236 106292557 798287313 703922886 955700726 830064220 209616598 100722504 899819721 517721090 230032619 810833929 133796518 67864701 719354620 796209758 931223561 654500422 919654764 964347984 683084928 991925726 15936686 18153461 365296908 742840896 531360518 589272120 128043318 177698943 735906934 477251786 632160618 712610075 667547485 573858217 362012883 479289316 170139833 272367391 833308739 832842266 440459992 219713947 595659681 963954013 936671474 700760334 746586020 551901082 917432193 863597718 485162778 626950688 199662152 26753081 63317486 911041916 836836530 313544245 664743153 837561325 368817271 139139650 407181298 20296866 670989236 62259049 875287165 533705856 745213728 732427470 813623852 696549777 682897116 657046962 423886269 991139526 281071648 680677029 441386601 789022075 766666332 363940837 382885488 670989236 831806776 717822286 490686882 954108338 670989236 731916579 339890724 984905471 811607916 336843459 932847291 196381820 937379429 577534849 786648358 794305120 956963709 463747131 874445151 79082583 768997050 928930472 732634278 968408319 893600268 587838787 725670054 901321468 119314010 900092306 581477203 842668424 892600177 813227447 907738542 773823134 728619545 457155727 579160589 556740165 128558245 957423999 952258898 491558438 927313060 960096583 824148019 593146610 829197357 397466505 19252787 369074662 292520671 418134567 235084871 378748581 854733733 176332402 288781548 574995948 323477050 783084295 816463913 262606711 501779060 503485129 67431758 779391240 931143901 688207776 643264476 505430577 856655226 190508404 788787373 16827084 547043424 974221506 633165756 83217520 15970468 908183262 543280140 588153705 121854028 769692048 716714012 985919780 322693184 887171302 766375649 335461873 755385430 504918149 77504073 738021626 11441770 499833879 795593972 653367668 973601464 731848145 674136296 167719431 106840308 877956321 404635471 583746217 969959998 967726237 807426710 61955559 811692249 118249340 804257604 670989236 204668079 551196040 773226514 829162056 829791988 469738078 676743940 828290178 496294370 721139714 883704563 190180692 670989236 993396560 874589558 510175473 289794519 760494620 624954228 972745617 117827418 917633262 945432246 889281639 506370935 718422456 861232789 997412143 954440015 818284016 458343733 290075682 827376912 559954033 764167771 762580698 948040809 980014434 669074229 40333215 745280982 679344046 20802860 101187425 969301681 617954575 494319191 960880733 729995294 977210834 798054117 686130002 832594120 248211679 921761848 831862699 298032552 893078941 567043050 511247149 494118263 556719433 51635957 142850748 778900046 917901066 302469746 717482124 943729377 956132640 827373107 915629596 29596262 831492627 212812502 487684478 150004306 454901632 441465357 634607388 771900495 942704007 596836955 772868852 684451517 965517274 754012196 41534755 847867543 774214184 897425407 922097241 364529031 831077241 126653207 16559140 736415851 649884562 734255289 877982914 507595656 707630090 82507285 8395845 991058785 686190987 567131098 69091570 871495959 924664242 182620555 379611186 972424237 628189570 812351788 912686426 844946687 763545001 30987090 755777594 918263164 557725787 198682973 631400000 962495994 946596122 530416533 67085394 602060737 135981461 929981883 960392449 95685766 144662099 214107833 127824913 412929979 87573797 670989236 169015419 723034925 173611757 306117812 176041047 670989236 382915319 157715272 120308790 521542774 336081348 720243596 80986585 734295074 816581219 500807731 535197355 553083599 568981546 355778391 264739187 739841647 403393426 77655820 756766141 678089266 718593681 950415711 90255212 796136728 711299571 994188795 551347921 356558643 876540055 180720773 739756986 105875732 417493046 884212342 296989553 463585544 93681683 499747943 875465877 213665056 153010664 493841967 693651718 839426256 708541565 959249626 917719923 699986915 786599491 653103307 924674118 804994007 894431264 724930969 935670169 636476459 895219706 931023470 974897415 8288600 701051871 287966300 670989236 694848410 459437644 944815278 673146261 374021070 571183622 421727351 300151489 756560084 536705200 930734047 650263708 282721948 974584361 946088318 769818110 479607678 17527031 65815082 614910342 818601779 74072945 371155717 808894615 525895434 173699422 602417261 897055860 667956388 374389901 970460498 909531048 438991494 863989427 181285246 300173203 726366313 627263702 987537129 670944635 732578741 468247190 694513214 677769220 419494562 866859733 986900116 855466392 961015359 549968794 441884330 643380474 366209912 415368520 214329622 590828508 911193416 709095359 970096606 541109906 80404106 613029218 365974069 256109623 356950340 657618331 230512548 73427127 768886985 178993327 848851337 762839144 469317069 364676727 279376543 745802472 970897776 808669664 348432404 306395345 838922789 841617920 618689603 238647735 26911617 763349302 474120112 793090458 516167853 48555607 8925255 145361652 272273417 901769563 417167470 238689675 953166548 748327985 929476936 339623305 225637625 821753510 581650818 784657921 742038302 140589690 364242070 815236050 99726139 729491954 10001594 180127922 877703177 820203107 847973792 968541846 680988307 251511484 647902914 110403078 694450156 152176350 994925593 938690417 859017827 897360143 274032411 533398716 619276017 707582874 619352783 949562293 952429605 317806232 979891365 512012267 478239196 883761401 383955837 908360684 886694596 926237606 515513215 519445678 932555246 672163915 697507783 618107983 494232876 625114109 939443254 93872418 470143816 703165872 833060841 529187593 682463845 845317849 9375706 723860299 23553130 432475807 107247792 959725640 892384766 48679896 698495196 570745125 713641090 862976215 958807075 475640343 874942734 7070038 632747645 516806179 774347941 292363701 660628924 593825382 734484071 510202409 748636204 895065581 369502663 670989236 55925551 968808973 701627942 996486152 66754793 428592000 698706419 843241317 792733700 751417635 642551663 745811014 507771232 738430799 793760055 997964265 744305558 807745577 86945002 432476854 781403990 4999022 754688929 627516104 190546825 945500240 503141075 940239275 774861135 486234019 677122858 518460535 759607223 911561039 974359580 758905029 914020522 942644855 986667860 665378041 415871819 299926560 512740319 818137626 231068297 721833014 559213623 670989236 807285649 809139807 860742404 465215052 921915407 720586328 467577622 551527613 239557037 480923419 670989236 747678949 897871732 394244881 591082810 698467642 147519567 728520636 213928175 558438908 617501745 717653973 961077761 372444735 283791997 670989236 414432589 753104249 131067672 19945493 818862216 741011116 846997247 827247639 93199251 156737601 556615783 832036302 406796495 969499807 931204001 115899237 367066026 123204077 40718900 539217979 247487343 461442686 994760530 345340181 738533828 967301502 228172219 350383868 872465798 294061929 286951858 892776585 670989236 593643576 852739589 382694416 681997867 924858676 875225741 507463560 957978378 749018338 124043561 387275765 759017094 909902252 378775238 443625341 62851811 392734467 305956219 685896148 689904111 542334547 507178107 386277936 11509311 171084415 772652577 278884537 861352695 894915211 594896947 51341011 33448710 951753396 725501389 233963611 321288759 689536165 600050096 995054782 579646493 479196155 59149775 824533684 869664260 25358957 475965639 331834306 534226418 448271247 767116210 703598115 113861114 648059328 818031483 634482231 513181396 257280991 91666139 907542923 190506417 519769065 128913755 935515859 701106533 291978707 780907560 928238024 915836162 140666839 30374981 582467936 739505895 692366668 935582959 541148472 155706072 137098904 295591092 967393339 278594012 832933349 706948922 461479366 836321358 984596706 613082917 803437406 640918484 828397973 570864151 254655743 995535081 940710434 44384060 344231401 502361024 55192162 615879083 859288974 670373565 786352565 16638410 811895797 748380796 724810761 205654183 958999468 617260199 741791832 417706860 785282634 66718702 388694419 733854720 17246073 264212734 25791412 535353023 558803533 750606757 3997014 90015428 821497709 397379737 860475556 829315790 888324214 922022628 238836152 776099048 389187546 221638475 888857668 267420529 390914312 772709885 511574763 152146055 705272550 863938882 205488881 792016863 899092893 808300106 831352567 387602435 979497396 971396437 702666261 329145841 921926217 130378195 699723201 678036407 685573738 742694918 247248281 788367177 77238064 551276363 201708507 948699294 674924294 687723993 957413981 253327640 944354478 661010970 857741362 258706381 792363687 692848851 749606160 163179394 273784089 753887055 607872506 619823499 735075374 765895792 983050365 693710601 917930309 670989236 839593731 771810554 460670856 519573303 236968618 748188922 296183515 287810509 880052996 981395613 824469080 688047767 736540583 634929785 302869575 78011430 895158081 900006177 996020665 995160849 504026212 716518518 443336580 738841685 780651107 716817863 881815022 560070783 31208239 775261817 85960912 696932733 983502412 947182432 906281531 824435693 835395943 190749157 108439346 839955062 171774002 508684280 505141139 425472818 756733183 836632515 466050147 288539932 155433433 883330223 861929364 539335890 643173597 80606 965051703 2448800 743928385 363929022 337036621 42784868 608326025 388404270 755820797 678678261 735504741 28993590 830581340 247848208 844343297 786107057 618867359 928713469 973632607 194136751 485641852 427060317 332415615 841043099 763786857 671313591 981191918 396760384 982976982 936178264 903980912 812659405 686742857 424216757 12628772 864314061 952873548 705144879 998075270 475417931 71295972 52945324 328008797 207066289 294834504 768730503 176560245 139061331 294129253 953252589 719355965 919278859 800333484 655647113 732936375 661055977 908918796 873745472 819338583 178112043 722333357 859047655 689403765 472101898 460683211 919696083 260146479 951932032 953955649 206950733 383571904 2763129 981905322 303548335 749782632 643800362 437701669 573874862 534295669 343683079 469973876 670989236 886724049 999917673 18419733 72728512 898079751 862985057 198690228 897697280 936183037 749271400 739287847 155911836 810690835 670989236 976679476 77448638 788710112 591444568 391438073 683348906 510027357 605497734 203480778 801611456 919939583 987414358 510572368 33891763 536864676 340890577 210141318 385947128 725866964 740494457 75658856 507833347 498094928 867557861 806970147 930262158 807679937 146423306 715882057 330744457 652735179 634607936 953868195 653164125 684311553 767077936 1018228 781853336 353263472 307535544 734166957 762371021 709966218 765791318 670989236 237383579 599167916 756748145 817118329 748716142 757909783 125555329 628519039 71235018 911179863 939957475 92197547 908401340 864299787 876422376 214596418 273227034 11301275 925583359 63086836 712892108 457808607 702352533 19437491 670989236 373901020 698193688 757411323 563189629 394423566 67164185 670989236 616119559 785066184 719741392 744614348 902010238 523962320 980898972 377761966 920123486 83131256 505113532 826429739 746649399 494344645 518011473 599334087 113761174 852456273 979280421 380005000 945274897 745440000 468399302 376261874 469413558 945587161 943536715 417865841 585684916 661074032 42691410 804380421 415169697 740510112 745677903 439334796 549069180 100650575 993880270 656462883 228535360 341371330 483195231 954545820 48902704 950462063 484341690 945014175 23479762 948589621 239737671 752333137 144013508 514419815 896978504 328314888 801595108 317988767 417136212 995581022 426032144 852917952 317630016 632304355 386719687 723728313 935812817 569615713 636413733 673199491 876721787 832727704 947758768 441491529 787710076 972322813 684807460 567491304 628520608 750937475 512476656 860979078 830478747 948494239 85983090 663148400 545730522 454678687 787437349 143429898 605559696 83953532 265279729 122465041 931711979 243385997 168387881 984017970 425898797 657395436 364571362 299635387 706514238 635373767 234468831 934082327 521371831 258872379 433888931 722956760 670989236 831118011 664013580 829692189 132314537 426931797 945649869 522883951 143193044 862678673 956000065 571547425 895090756 997976651 802928723 882831530 55648354 302380900 909796115 958019955 796854035 946704386 687475892 642198243 735781893 195780593 913550211 975808097 886488108 909250652 931001752 162584179 357171544 128800913 558236376 523076587 267560873 257505536 813192461 123969765 936662860 470842079 908614983 451660742 482937754 777831533 803830824 877928963 853899922 850785933 500431365 822156288 91300637 713137763 933733927 751620281 547351517 883277595 942878718 843769799 176234513 247705635 878545174 962479257 866827823 408742426 712661338 314180532 585599722 875319507 798124055 670989236 357483548 955161783 831919020 928292879 952468507 808251262 106217013 145836135 788879997 308308801 716655708 568550120 854949377 119042142 630197414 55740247 978998177 385154450 695497950 699840385 732369857 873717656 173136870 222267031 928466875 858775065 382793319 508076812 751299150 795276510 680793008 213862414 317912048 865343546 287435349 328082536 470405815 418229907 398188931 557690495 49509585 309298025 924606096 529138842 675114037 134276253 694079979 136515083 930573644 950443309 24535091 331693744 962868133 92099976 299540564 885357205 797418891 689612377 31124235 644981482 20409253 690780484 229847886 787157141 919968294 696026241 857033572 537613156 965002815 152194462 449378839 828288946 705858205 74369889 566973764 706970566 658514653 909680099 816606137 369072 771181255 925090972 161549039 979071589 276449054 683748508 720472528 930360662 991090396 688181038 896571024 773108625 453010873 940277397 496598830 154063521 126410953 579367319 423021204 238132239 779659935 904148001 798097769 944694771 535222509 785798191 545081754 315142939 679136325 267639482 801233844 423267000 714745511 251504732 499221033 723496352 110300941 759402070 527488838 14912682 933963291 692136346 179292620 386309569 705240879 710884254 700200425 269812056 967183568 969115738 976726611 200847795 432681875 853743337 825049229 759574204 732217749 941220981 994525973 894311802 860000264 693080228 554391548 236101657 663931057 790110873 697109640 214372087 670209927 187949903 777103066 878152285 872835710 604356098 826053330 730734432 994256474 819570883 712514859 775176831 891062126 987460013 565286067 631160220 524914496 783963606 594580626 401526465 555996228 696569677 870835523 387573903 552522023 875260028 935152172 479905326 960207750 944347009 331691333 806216111 841923911 952180488 630855186 973034222 967145016 864363439 371506429 824597873 7952363 928031752 839817280 680331449 586703615 18992857 677543761 529672083 792228481 134131 421944016 860069956 922053949 66484465 419703782 720135897 810723241 42532185 802530504 652732686 512677006 241084675 93163426 338362610 782420063 741752293 844831360 756093276 660364604 993814999 853187953 780525364 536040589 711366310 647624336 78251541 965606018 50597987 96274361 274455395 885253622 553337893 239999402 836247314 989705354 102533057 423503461 210921828 457235647 844451701 91013974 724990692 542499321 565646247 444591044 960218881 216256134 382502128 953814338 610926390 901685670 328242805 943776810 108703271 914289205 678643847 519775641 919536640 417316864 659836831 640719399 315003804 156720521 702805702 233551768 983641567 640496284 871562410 910985932 777058611 352035304 199971651 439562479 918061349 692739758 848095688 698356911 497044603 661722908 480441854 670989236 865305156 204659454 977628147 523349750 7083183 691235134 212720840 670989236 800552193 183453832 204339530 354451447 431949588 598580824 366392192 929212748 843203091 281553867 10830737 924914072 757574798 786757390 653496226 761357948 994458921 206740985 778967830 266198106 823132383 903304361 988869445 748718359 632331832 112617852 812015715 586547897 703193576 903957355 716770625 489412841 712028956 720485818 641365772 910234715 430919344 177394379 434610105 935649595 890083066 670989236 550306770 145393068 922555417 848447531 853179056 226642473 449009662 755187734 384135157 473262669 990917749 974588571 144847805 708512761 783107661 297255234 203694177 399785295 469791061 219489351 184600303 975947370 107048457 897075291 319500502 821369185 699728956 845501339 674958844 685754855 311556188 449228385 786578016 11012647 970760226 670989236 795806432 675851452 391942308 599996909 397126699 467256597 607518693 250078781 810729785 631735235 382758839 604189333 719194170 839529709 734319276 605922464 681778544 316950780 277658030 693637491 291679113 857697347 778032326 263637446 736011092 834529474 727990964 586257454 324240649 17386640 527149875 84050922 23282228 950699890 333191532 420207488 751116 758181261 737991849 635290602 912585633 504856146 515993611 546188105 860276942 84250733 479694262 354028346 321636158 684802970 316945831 661893101 789710281 339974191 140083052 848671669 313797303 103931493 315735070 691053750 982821534 863174005 183298263 872589290 324299542 349738108 882674844 258252046 739667839 590660991 670989236 775598500 870846177 722179938 182762684 282737641 939864414 214527624 74790351 884044162 833239542 490747540 477359005 470600726 735677598 803606300 949179683 938081268 226981023 85192081 772975523 14654783 75549617 958571850 905495511 769275699 708909537 727197443 931446021 885433842 718891783 592895011 61503294 755343846 17661945 985571108 376953933 51632247 969571621 847128669 956437527 757337504 896144079 39941907 988998682 838820981 705138528 147872738 453147820 918460011 752779727 839054452 127490317 773366735 682014442 571035477 989472410 173233756 674134774 887976729 164770876 671654411 824722286 78563651 637067336 859682197 291109585 370472691 755839471 983092411 832278069 483278227 702053449 202051541 852757319 863830361 243134344 961851756 179714754 917932763 635262679 379212856 936467913 880727030 904256060 199241633 680768665 892565185 132022384 392460521 583011516 8642049 840907535 293987095 398021715 692483942 986873349 280654873 980936242 141749485 156985500 408067137 653296980 891957787 958439333 216564865 256917388 964786133 86107190 517570060 657681648 556868536 236526140 909084995 428680104 794555641 970883220 915300166 846430485 974351917 226592682 675082607 775979927 954719709 190884492 843457255 825380826 532531358 29806976 818039063 38874803 17648043 52487799 134546361 662695355 799830875 670989236 637547379 741531144 678860758 947804262 432492752 27258983 93382672 590956722 894947198 860082865 277017000 911835066 712008422 877587306 165445278 531106444 385884758 786099658 46507899 798206885 540092311 997807127 290312682 477096474 446948320 860501686 927107487 135785223 976626567 838242293 382372384 809034723 595080706 818885072 203146899 694097281 839118548 368783594 345577583 573168414 830151078 374598770 746680173 381159066 825229380 214952248 91567121 340677450 105322336 498472672 295397083 993105775 702970697 706512383 329210611 152344980 706020037 890557854 849594423 317582314 939474801 512450510 946284097 691375612 32644962 559732963 868234452 87614962 916557807 214476088 137068110 84127941 793159413 756459662 898005835 7479881 818793581 968716329 52287486 292079731 264174703 376540698 765303527 880253929 719986388 466801048 860858001 495404757 752236391 747859905 849742499 648884140 671206556 880503951 328620278 321914976 762608745 915239333 510358186 415050913 850485473 952783816 285627554 837627419 709047132 303699200 782324595 299288419 518149146 784838328 736392927 475661167 663530261 334637227 915009160 920824856 821264761 670989236 780386353 880072529 818555340 264567212 681173322 673016563 61879089 990635727 885603193 494233447 31694758 99837612 58350484 909236912 708387249 704747527 254459125 907360459 762263970 891610285 148607784 228371007 226999729 837100851 395376541 652282921 541047687 852362735 806428857 978361348 38326460 981662366 20657936 398737283 998638716 772035976 841664109 480188888 310513905 58750712 753460237 838124092 48773619 73559104 996575204 644918698 935513698 183950186 369424439 934748900 799000504 400971772 506137209 795223648 853340666 836343649 676308391 855447321 309788366 142425970 853102330 757385798 329595747 943870015 586828978 944192541 15713475 691478989 735295266 850858877 849743251 648736578 699367121 389122715 850292831 892397819 30281003 804074887 764181480 719408553 886368443 800996573 309242108 353049547 413283271 396970082 480580713 527766770 115457048 821475871 852944555 805913827 738058613 877996377 435459573 833930908 749597134 484544477 65949864 910566951 366975123 87362311 635244278 976060850 877205482 148704359 657179997 544344604 800931415 843005905 182995193 222388970 52008869 996871191 792130614 728298420 248673231 963373591 817999053 382271643 570402037 873088533 914492691 340695747 976693785 582296371 954745754 207851710 575397104 275866807 200873591 617736368 280066456 615032300 945439324 723411500 786670959 171652422 68100742 682655305 95136413 849636335 765379387 963739157 368654019 87842155 491985741 862788149 989520044 190587661 924582777 70816451 719328996 482862908 830312249 866249525 984833875 484373677 405650202 730469840 261334908 775041339 817433249 992902866 7844632 720049959 34206012 925177112 405250279 43821292 759148985 386659484 977000269 770023297 943194461 293459665 445230773 841363669 314102250 88173233 821706222 586628869 227666859 675103482 841765913 858809209 787247992 843214624 84045174 678283634 341892667 824052640 123875090 963509241 65702605 194251805 890788827 804712687 323708095 86769310 691793661 888009686 784056048 763772890 830890862 932870237 61108073 610369658 893528302 458901486 964414712 481525462 175663313 803189068 31153776 939669597 8686438 541768815 425020026 36341397 848736153 819266475 859176836 611749508 149282467 182940455 152818120 945934514 163228966 762363578 256806381 352735020 775390373 279025073 99264062 870597840 881621968 345182409 962156764 482439373 212248855 880923359 871037537 465838617 280004717 933488688 699606030 772990798 312899714 130256087 657489219 925521748 132423705 220853114 23031785 369977718 135655680 371876796 777249225 356641422 714759993 888030869 822040601 702682446 883687425 864067516 207838159 117603268 638964122 124097171 982737941 773513774 761427785 670989236 892952849 590126038 237747284 781386286 752479956 759424216 202651203 678574869 994086013 608227518 248833294 488608531 77952141 940530773 839461909 507082199 19675002 6374722 943259823 402443698 893210084 847852762 829093621 821774005 909655175 785236769 225459853 779918401 381470603 576554861 409524609 914023260 171518383 891915690 200322485 722685673 929871554 310665087 945368503 481861466 671596374 757761328 862692977 861018435 760737181 797159802 439029763 596774059 964199775 128906978 617190939 434152100 908714534 912140883 62645019 912388440 706557748 624835337 908747174 104168196 949305202 330114442 866987263 531107697 107396141 491781259 748609789 265218810 702864821 526530694 827369413 764711189 900915245 972666305 80717733 700455839 445702295 797776882 243509026 914484801 613603481 836480612 992677403 959314236 908679731 933573543 837856848 729381028 695317454 139522959 624343232 98224758 807821989 936474453 956502862 41044469 285436489 270645026 144148438 908155310 729252284 921192565 193444065 611619321 484446141 848788730 61432668 903345538 285269099 572611090 565741761 211265017 773671902 267097065 311817437 670989236 968698171 936950318 851119745 891568553 456323002 792219593 538939465 734292814 123603466 795238024 843231518 96317570 672004999 413648972 695453244 759305438 407253360 786254749 372145224 90115887 922949399 849844411 735486441 855034308 887840666 906366487 882891840 485577077 875662658 876113747 974973915 151632216 777593116 103782575 26644591 465636782 16358350 778541459 675279775 453367685 396957971 902525754 787933577 992056528 890859136 146560194 910777391 187700582 559471280 187193020 184140966 302480076 317259285 451567153 670989236 222871261 260452482 855283275 685449908 840795699 921963738 710153697 401744662 793690291 26274383 282506638 749134007 686618303 792268357 159093042 772876440 780308318 692287352 826294931 621404968 859494491 957756974 705051648 885443448 584447496 142646244 660104362 661118240 166239245 362811115 689478174 989538544 815254789 319453432 983802725 670989236 826802405 900874265 529682103 670989236 667209022 902261321 785678470 661342365 478993231 604715143 804442001 387346560 898561188 979092551 218512584 168180239 500828953 249102196 834594647 948104257 994527087 787901093 662166355 235533807 843201938 703141810 260064438 976552820 827000638 250405816 670989236 913992964 883956656 41224093 952510790 458187312 134010144 7265896 279889551 924387704 670989236 350620188 702901022 739819096 639238786 155538301 212895664 212101179 44933549 643660731 74952102 513670216 691283526 878879151 816066795 641663377 975532439 872552158 750092919 720527299 891464702 972919839 478867327 755646906 503010086 772917620 947643898 89360489 848198348 670989236 839615070 712629791 901844044 654605367 881211471 746878287 433149559 201799501 192006170 45760033 708241426 249316589 84237651 303868452 591276804 685438877 988738406 649055529 522652358 956312990 818177886 357141691 710592490 809082540 723435888 758105509 606886980 424858752 255467556 822587927 123981396 382178578 954826647 605687570 278401763 726545506 906642063 310273265 721738061 692179459 701240007 672273559 892645258 595598220 940651712 295776623 800903928 673207875 801098257 255105653 769038658 252366087 910202780 972320087 934999622 155369752 793675394 925805411 901698726 974419534 487489583 779473597 518748914 790203235 141469366 847101210 30809769 976837866 521259432 288670442 703022841 443058591 997891606 712581628 717006529 900806709 148088220 627039545 725145316 127210662 760399475 742759894 621475194 214453273 925891528 505503088 760295123 290240038 695431356 423782907 729449695 364193871 411484152 992231245 945672513 880406639 829019520 697039117 943520149 3735703 105948524 797308828 309204047 363791632 827080804 844598379 759479588 937790285 508940942 778899780 722221225 819738253 111232270 317013704 320407241 389520089 921306313 729822350 289364830 809321378 818238263 894228198 919020421 726647629 45117865 771698712 595241293 57460241 968305759 471535251 894686703 901402692 571813672 257680324 791848811 81118371 902154744 829809332 178437683 949798659 583955960 338301183 739311362 526030781 844088986 266882569 234162138 173039989 269339054 797382903 277106898 94966206 920079871 761085100 313316462 279083473 668550564 234661257 421107871 210255341 830465047 829148563 829267405 662431169 945006150 803537013 813428529 845962948 755267029 778455153 997795465 825697033 777904266 993641496 770918561 755308293 496522715 743572756 887849769 925564947 334969281 750105474 724778658 770927149 627369052 907109398 346108566 968510841 935097578 104409484 74618717 741563209 756243977 370051235 695338504 555027532 613785477 771433786 961249863 848830902 464657435 724562496 518720992 260181538 984191529 890583196 966131380 573247269 725831437 134693490 688205403 384229845 45252150 112459321 592113057 798232009 894335102 717971880 911009206 380153047 536993821 796283423 508813397 320511923 785840938 275609298 21119110 815582250 147256058 524537861 210779854 50657283 387825958 672574413 44564230 755537214 136588885 902453977 783885441 902234208 689572684 569067830 748747463 760459499 913294859 132703213 190343766 716140465 767882342 821850787 757343377 697840329 929996601 643227381 845890823 744553861 989864771 738141893 287705294 723397144 808219615 50890134 872552903 888156181 884090349 26813333 141659378 774323806 367524433 866862759 440411646 709647417 310844224 836211249 729036958 930996123 696049229 700055258 37598187 760300876 299050848 680041907 431736568 841342131 830693943 794473942 416066258 687482533 790231903 701079451 707300056 221094061 173215645 136332520 875474273 927437762 719597394 594069348 703563384 899815897 31297462 981295026 860589835 431659021 588533894 950073253 798658099 832511929 502827805 947274185 354559181 813243800 152838091 379848767 727648637 890949816 667722909 799957787 713325005 557398071 823809129 945050801 178211842 316294353 740321286 327824779 692910171 793339540 533597826 60254111 982186416 684081656 844873966 540031856 670989236 952299514 161566112 746115982 304346248 343504900 735717471 230442831 437946258 733542873 721389142 719923403 28807047 356659922 36978438 853224984 551129244 277111840 319727631 670989236 984927790 375705035 873654183 985252302 855652252 481341506 373161047 844337197 619263343 402075259 980781860 470566890 686601212 843272791 710390421 851809722 932187744 73865754 371424804 432236536 901625387 962094326 437519468 503913593 184292538 625761984 678677490 662645109 244028220 217337618 699491147 680908439 892246050 738339171 726964648 249995832 924207035 813179855 726395605 416255640 442612365 543526077 890427316 411825926 177155210 696871055 477195606 173511000 843673664 884058016 855138556 753103537 733778909 328929566 920774071 801510966 208234701 739308731 934362343 851684279 290396420 241796098 981115066 16128130 518274815 891210860 311591872 739815723 219683973 244130100 675837303 103940870 895841852 170450971 283550379 606655805 503979535 193668490 849353732 985887733 897379460 649814075 986645819 698958395 714841369 443945145 798603536 145519153 923227219 930623394 617603894 601468894 144537249 449994709 40102878 867423854 695088882 292983311 258999434 7077452 605795002 37255457 736740623 821625948 820980770 875315187 850253035 396128133 471795818 855845980 867671326 708078533 703424074 252864978 900682668 571636588 654273561 770348750 756048379 328540486 237106667 254754523 965997281 40487265 589889803 561625275 901211167 967659790 799656138 911634824 991388251 321057880 151237020 957852856 559207430 848884862 154149085 232182897 689631485 176314492 704952818 816724038 822162716 483525476 794678802 155641106 797307590 139466408 869434274 813166163 813685771 187446109 241747743 837589730 650232808 817574255 167494331 947767591 767901459 779797584 104549856 224541783 231636186 733278169 793967984 566731053 496381334 57903945 475240616 284551193 5039483 914358727 263458872 631207462 983033979 30590734 531691870 161401424 655609882 991603679 822008835 91286229 8900160 484845708 795147362 690484519 104091903 399437490 293254933 820997908 264170318 891900753 931536334 693826209 677541929 913391359 81246916 973215078 390899312 494459568 34602467 692498859 904553273 834110342 994518985 851275805 891983743 899610099 881362062 787984146 658161759 914188033 890215648 234802871 416197976 725607127 869594137 157134729 405211675 532366700 839342281 846639570 207603651 800199502 807511026 697106553 904103778 401505495 910151793 396460279 668225764 423008339 399563821 256972310 829907333 17080586 633067044 965214432 972565067 702278773 894962628 685311806 844972621 219739605 85993770 480753667 460671186 808999473 255601957 362345166 749682913 451562337 983131680 681863407 823352134 875589902 670989236 891866138 192333878 413934520 873837793 705315600 809418541 760358671 651020170 757091276 106772295 849999485 52350474 849384059 858542405 833085420 796891180 373221188 719556404 705254068 295036617 261237255 102738784 946356775 27692566 866706061 21111762 2267802 568295742 615981664 177125767 953890563 90681927 524937959 661829195 675670842 587232974 806324615 819173129 93462772 569752106 855638956 179006612 795588887 947920563 872738132 934290261 701640538 28408179 773955846 315077306 765786620 671994196 77466742 457689774 882467237 165881082 560328593 642054637 154986272 679078950 820414140 576646791 181617204 273885044 718971080 300907675 790631913 915972616 133064648 726046867 908822513 371288317 947926634 237780381 465997448 466302911 279016445 418814125 4894507 152302024 859011910 886170722 152783687 78616000 278363692 931727689 741825379 760165259 810702932 393756070 946014940 851515969 507590545 685601927 558755925 599088706 821541764 937109831 882966350 100051507 768512590 410585506 567249787 875460965 673995082 206274540 418425587 707535302 5109981 776908478 301577690 868541028 748549520 986238444 181675143 695456572 844824819 993639021 692096620 760990360 11004079 770384292 886389971 654585072 560412734 672808572 769107712 905422849 48198338 865532973 881180809 814405005 161583759 394349806 155766413 969507257 701540861 106396971 262892794 685497466 736939765 992520183 714483278 979262962 114688729 835396659 766983840 457531226 759681021 878542444 145946986 556101472 559754971 94331897 263204844 700061405 820580431 705518909 778037056 186381080 61787220 386449308 35752492 721921084 259312875 651501524 810701231 186743323 568252606 712473817 790717362 474316800 155203080 248276101 62072931 101756180 838380851 935116022 429610544 869657055 995176552 982937675 861812676 212344631 158551476 599882511 180380496 368900940 731618402 477799089 540632136 788198331 261429276 516263592 6328306 386968071 385217619 943599360 827662713 24764383 961481689 700834177 834446498 986807804 241164540 895724806 975857641 818842385 495489830 837781027 813140592 566251438 536399787 731531822 705598939 829255207 359414950 616502328 466557971 493515147 911710749 900618245 353046188 355068625 158983207 405020163 97898675 475333822 595771931 639671320 394555357 971696860 815315689 921200437 419017509 285347618 979067905 730793201 931394697 789800403 793929761 931279478 666521139 672078842 972406969 837236796 957624266 842879044 751997471 756657307 848050450 940262819 131585121 761447778 76158904 736309697 446958823 52851972 889416280 806185895 603687901 676036213 970551008 856507262 526008555 890251524 942120469 852399374 879605899 875302627 810551218 964634414 374154144 636822106 688980801 401474277 219461233 353150817 51847352 798260976 898722864 274389675 705256463 786799974 713971119 717328144 719349315 705349392 811378382 471732624 571277522 815263550 521027480 210252940 793121615 22725608 841827296 218256464 779539228 692619646 646152918 963137767 445845985 843817470 776968000 800562057 670989236 73439077 578368868 733833762 637019753 767669755 864884211 704292216 834485255 563370714 672533461 877922512 368090547 6965959 713442536 297803013 886163106 766697665 675846641 855569020 452817010 94294341 321469536 457737161 748202981 701700860 726051716 270761706 558062779 240206360 706640328 996647999 856062593 221269292 453477841 354119416 892733379 916892304 494269312 137080228 189387130 757340185 519150172 955694420 69451227 694880455 670989236 835065917 850473474 617283934 189585781 570397776 798576523 567641906 162714854 641675193 897269373 213348161 724595405 885638210 706096082 207075580 828013582 841704156 769763635 398146664 713955232 108200477 935706231 785070573 929708151 523766040 907592855 760768185 464665806 524509114 63082842 826970201 694332244 984506578 266712109 737396266 919046944 797194007 326590961 349696287 958200891 647543864 794626620 908843054 342942940 985416162 281434343 653810432 602272967 800075695 732631345 772036545 812195858 734426733 699130254 754748287 719167952 716322487 948661577 313921449 873659023 503209167 126654763 494645034 739383691 459828990 499347160 104651720 234642476 842735216 866252344 688290502 394213678 356468183 885095863 603213460 147013134 215664047 802609067 349989407 322777132 144940467 499827489 533420322 687035223 386750062 791937424 738889337 722862077 803318314 979799236 944349345 297455092 3759752 269931679 808099028 851466247 350721805 979729239 784393993 605472304 803268287 826283530 747395177 564968759 716338656 766819241 774611278 242697797 20537146 737587880 714665649 697112952 890976817 792515152 281458927 834163313 108846804 692866018 287785814 919460741 933489303 449437765 625098360 880303966 583826420 779529675 202009880 677402827 9555070 782209088 759564110 776682449 6980310 850702121 619989732 847637593 227689265 202222268 568532840 244124 606969 711298961 950754780 875930643 714158297 300062098 781868107 860392350 91087681 185489264 565713779 926626284 673042925 255443617 743582718 426579581 581456889 225705339 813407756 822711931 949476646 815868659 171145773 733108143 336878827 571112056 146169510 453727103 976686548 463657792 406786149 333525618 775791245 454899476 932722127 908525018 701415361 95286548 695659002 871144233 794363542 874049707 12512108 850813626 842492913 523920515 986770795 338006505 466590312 872721838 441949308 919403361 844207443 277508908 866470653 376600667 825831838 406762689 202243163 975652966 195040243 601861859 129964132 543857149 696808225 426493060 78420067 292278936 852061717 48717119 835877214 271768249 621156752 70288953 34954957 307193190 206161374 231848755 378261441 259793241 743053736 626427860 976409655 174383318 772190438 390928866 670989236 329452560 688251639 208299985 812427215 766897414 513164401 209110421 863561516 727020900 510373797 805516165 690818914 957724783 874332686 74533798 111052640 720370289 63194480 970613618 786422386 79640190 747462860 159406739 338301011 473348621 843201274 502011159 753047344 825986385 940308135 486162795 809760793 492986516 880791522 670989236 997726825 697396053 320941041 670989236 826059554 670989236 69591098 879230057 19688099 211108092 928415400 339291697 928874098 551675837 210177454 447221065 476603972 147198499 462664454 412787200 950341503 741425500 570875247 516867569 426914504 384086385 869687224 93557081 631007937 696544664 647869786 542840023 452462200 565917472 51426600 258813302 831428810 174546589 441232817 390868835 398700410 552063607 482071924 678713772 548147761 766754576 952172921 422837498 1324640 821400682 420124997 736535336 906930646 127259098 634860428 880865595 935812116 178348751 375778656 781075931 709724974 781603691 51280168 857690344 60522925 765976715 920652520 154010762 527356481 811190635 853089939 463092832 74746737 971344227 991888707 858366149 705250596 173567120 408727236 781785132 321264946 258449954 933047020 989925810 18213952 628003402 696457972 805513456 450241030 179058524 925647969 802515408 919780428 789626685 771245244 907280495 977951385 812184113 602480939 976353283 836848709 76080705 678563756 410346920 296983586 193956170 6446776 676523265 864917509 873848636 259118847 636272751 196323319 368100894 40359473 437465604 525953382 373670649 796508822 952228330 263970023 116384524 856159323 843551605 683825136 712925397 822955238 403374034 469337082 321394869 758248188 409813494 38937248 497835179 467518026 545939705 436415735 768615546 959249289 736174141 394736305 909875449 906351143 379381265 956298124 717974390 863388468 127085199 854546390 791196987 29126820 840608640 226307115 384668707 707283363 98885926 575863127 192440870 866881853 151853615 714151214 962900835 763060499 915637879 838078250 511455884 952722709 229602085 151946432 764976092 670989236 674695386 995613040 762886240 374579690 712183273 998082286 37307678 998272856 740338683 818260298 901207443 963126728 907417511 203168319 964468935 675200013 821691726 666111987 323250940 493512169 530462388 829907087 25475576 999983076 620039250 389388542 58917182 301108691 257659702 302718053 975126173 745396281 612871618 930337244 807775465 41226961 31845504 318584194 760480890 723396305 265066137 837301901 697863656 627863296 279878776 670989236 207804441 785991930 990136981 313870267 685335597 69629384 322098508 32801929 883011130 718405858 730769333 11774585 800994954 707167762 353723992 949165493 27839887 703226089 949249441 827401228 435508935 867068045 868261189 687440010 556217773 223575436 354201612 807076509 109410386 670989236 956303850 857112127 694316624 720403335 548249904 969917015 275559493 639380293 824150061 910486815 908711660 794586344 750171565 976492724 763188674 849797655 437874392 842871304 833954935 871599348 153936957 352884153 242248643 436988542 899756361 36760375 626422491 867486720 7975187 348239029 229355884 670302728 311624931 692552361 684003268 97882815 782989551 670989236 224293698 990212970 647963254 562173901 597326013 885459146 919101730 730206571 753847628 704528963 824612465 846471726 291771890 558313952 552485540 790193878 650819526 371551736 821484879 52080424 857611772 989076574 368718431 301997982 914445341 708462352 209263798 801218091 120667829 660883230 755395712 792883993 697215292 575574789 844661975 518475407 408227852 742007029 634554736 916370922 551000153 657291645 791216139 707270574 749951081 584293590 351894748 862635089 235955606 123175678 600370245 534276157 670989236 481762761 315710448 516100675 556730152 993362813 674909945 936834994 774674666 633314397 6705617 183700996 480814417 986894417 670989236 698022003 925337930 207261264 341153242 888352786 731964372 704384264 678076372 743475812 849486494 983441732 742726682 590464438 441038066 654257235 768875308 371712141 894196961 73875539 452262338 697792807 956986876 727228194 928880520 421227330 944505436 293688968 365099653 384359405 466913377 794121304 760548134 456803609 285770036 984165976 443926848 682477434 850469560 288470414 851445416 383087062 76695360 684572104 692960433 860989537 590759343 267695050 899538163 378435063 670989236 131481487 999782777 889957340 501130145 43279568 621383791 670989236 363335992 718204062 682291627 912466121 389564014 675853699 263289246 998689347 835708964 761226831 728936828 857144211 311183219 868943002 845628734 126075361 179833851 934893463 431642783 222408309 64149049 76759850 921741650 767286306 738539435 850929410 340522922 304221268 868039745 431236501 831536601 41967120 927236599 861775375 117567626 53540227 732379575 448148679 664366346 284901833 766719222 548594011 674335072 631709528 693761603 104414795 714195072 585354170 936925244 708435057 236451734 991289887 909046972 526284773 788888199 890265124 596183005 243500177 958576667 799768068 824463886 918372850 353742003 841388559 105595139 677058882 746749895 118718396 531287816 218654786 977969941 654133527 773246568 923683517 225444317 447113769 354636694 768008570 526075432 997986901 375370315 595334028 845864041 781266678 130877411 203808511 286874602 291785278 806922309 594045261 985161674 257890347 911468305 780710534 511871702 388210154 681595012 624634836 550412298 140667817 653158756 996601648 833516707 909782568 931570087 92782261 281357840 836243528 113275369 643268506 908606668 294083678 692840446 558023064 741172722 954177534 567303282 216854643 687961538 176973861 520918822 519314823 952592019 816775962 448343482 663201849 958047601 823779004 405022992 692410537 270267252 815973812 891055057 198010843 211203576 436750514 446553130 711477133 895798696 494360164 856257563 744711709 906710866 923039252 983750683 432712528 607641653 264477724 691460824 833891311 518144138 10820193 902625967 993131064 685927832 729151140 684060947 184535440 833770535 698827040 106978554 728668614 759888450 985757360 779472000 834234306 769018205 13336955 441712686 981910667 295583419 887114820 806891433 938173401 900721393 207173016 649609820 866873614 465358953 912632578 365488118 468140573 161917444 538147994 919937805 686840325 971142268 841876923 670989236 632850469 901012213 822919354 312245650 105817246 4664301 945630202 451860181 150645577 311310858 696483208 671974232 971724430 951846064 814377699 71652559 371471500 128907106 7513505 992781325 675580983 749468800 433091921 205938618 223969752 971279922 47714829 712747014 669694669 16335561 834742744 275406326 814859495 526152117 76104250 90926900 541016248 813752323 982225467 773013742 42699251 468729779 623746504 589677359 314791344 862043924 759777467 784982611 996010618 757356852 743410804 502272600 61647258 458642705 916058806 786042311 993018329 804698756 471775727 947832746 604959365 264374144 728147743 694757471 137942116 795167348 283709204 755631256 800223321 936540520 443378904 929991576 498824794 291913591 309059880 726435654 387485884 565978016 745511662 870472291 889114524 217984108 729403563 670989236 436559801 33297923 766940717 383931716 884844087 520208970 670989236 841880829 3953243 835614943 960616903 697988647 703469177 735469428 740289008 748576304 303525214 160643012 172166573 194749819 359191360 831041310 900373791 841690960 975702207 400052309 276236356 973318592 20232088 109842991 603117788 303319905 204273221 990154416 212359039 972639169 660407594 818442464 407658920 344558761 754570082 973478464 304785641 816886897 96058477 236412992 829845069 964306413 919395184 740178342 254472097 227454532 756165609 68253199 973654918 192212051 174399 888146042 705188640 411118319 334012239 871025780 181789949 319924675 907436202 727300789 247061414 160162487 646883030 45215604 566278943 105894679 815921007 730976756 890939845 917756788 102107302 581537696 826630101 684770849 751945501 20418355 959672319 884938173 165389472 107508954 898750944 868243990 997793473 878023504 614175805 624126089 848559790 18301370 748127611 931437309 158029167 418152539 694472842 998819389 690871261 394473187 915942087 774037361 667616396 986014478 493965585 271136259 678122121 795548270 366666239 618441292 745724279 979746518 171918884 441255483 363786245 24870460 129393990 943851480 859823472 110090937 685646694 64328423 314563180 509563609 457243199 942839601 417518548 993702290 215658164 19199440 436911526 268814419 500274250 791201191 466330217 545034539 732956160 313418124 418917451 751791669 524013630 641082428 155537720 740629526 216865835 818153228 729331092 74945785 855707008 357404598 455332727 485635556 868377148 562472964 420711121 967291139 710569693 977688853 804887724 178673440 984254148 691588444 592391388 820110882 180244473 961535844 840240141 92438153 498420029 847653124 643292822 292469046 600654292 456481907 796820378 18874156 339999784 744976796 966737088 718197604 931164433 923965606 592270912 319846645 30455400 799226544 166360027 549752729 729332811 835710156 841436212 6386571 941548222 890002272 967676264 802155835 164595523 794944710 21134894 303433947 750082874 823065373 983121745 945166972 157695458 984780489 153816483 891559418 266981270 409909298 929971582 708740388 283510537 666565529 575219760 274378753 958368188 741758706 142057501 326431249 315705813 169009300 731126652 121165266 55006123 921161651 531670004 212378699 567053669 412519187 799337239 895198515 154984010 463617585 809961925 481922608 629635121 193247514 628547912 790514579 887467449 947773783 803882093 64876455 676225169 967803760 745063525 635982229 698354101 546207012 23450869 690305948 930759597 738742680 689405434 357641108 307540327 670989236 879434334 296231573 286556117 865842488 613520887 867542081 905893759 948944405 485344123 423712795 774839534 852560877 906494875 315283161 778408349 639795014 670989236 441873794 908021998 480340454 93129957 428934264 765450773 152820347 226015463 911910322 714880786 916560156 837511165 454762199 902061293 782143629 636338301 462044480 474373445 835000093 942335268 495182988 375608534 524877571 746456284 465199490 561038225 906474221 759279519 953812281 968652405 879918711 432893192 577570368 958674624 767538938 986652926 954902912 522254599 985446602 485978540 596177491 942028336 988464678 163611595 61022887 657444570 971497018 902987259 862938222 411617753 109722914 267915282 520484893 983841717 32089544 732922295 84814995 26988104 851802163 662124187 814230167 770658752 378136563 132993464 865751828 112764394 989988467 848235760 548289641 466980248 6740684 712801350 30445156 369860771 927856931 920030632 729183390 737499136 586537724 12262128 674418662 719100007 647034765 338461198 357700546 774444740 165703233 946564310 407641482 61824446 643454949 910665667 995563403 843425936 62690045 925761119 831346564 243355951 955415125 425758716 734737331 516473982 898079481 364270180 381073979 269303869 798402873 950136350 703631980 817190619 528743745 734081881 472194415 741010141 993457717 535170945 316624538 57568431 706793219 953827406 828087678 722992238 785598844 274209102 695890885 945760108 781846249 271430135 617312387 309722679 409380538 30775787 117027515 625595728 894885990 879041221 767239976 272124933 1095133 800529742 508819532 493359487 808752128 864349553 63292978 974220243 834580181 870542819 817983879 928484638 670989236 589870897 554182140 403027304 387810617 833856573 162935849 443070378 797092228 794352292 440236794 75871365 859955853 785524166 103981283 872731206 59896688 523609300 829134648 670989236 799833119 153057751 974937262 906926241 247681180 81746020 127901907 734954843 737988560 854884048 528781317 252317327 776940569 27734211 78905771 77001987 779611831 941992758 857842681 606173808 777011590 686786412 982639293 215682051 843239385 229140796 669128113 674098366 188317199 811480450 198797031 580777843 761042238 690615467 628214358 252375073 361804685 296615616 648820205 532048005 896557557 829918574 794760753 391594540 531895666 311014606 20939358 352595347 731335970 867116858 631305866 748685000 573360771 458496687 923267602 905418791 106770859 704346917 22652700 737395169 372422266 125593421 771322481 8104032 580548166 80720823 747470729 771500644 41134920 760836278 299744238 942166966 693107598 882439111 140738773 721176886 391815004 786053898 829707394 293908357 938149694 410316388 317002643 60509513 109567960 270906201 796770350 812561970 309381187 464782806 89731544 921337287 591361089 765752446 680780110 462540983 220412099 944587843 679777059 740483991 195180002 95788180 964813701 212319494 931093840 741547668 514054805 863269041 837145332 62560543 782549280 169204877 245017067 669509035 638870134 910835753 566794093 695586747 298155910 936879225 56528027 875016906 968771313 855633537 126196734 695594675 9672944 11095543 349778349 299302427 783238763 850402718 784798669 427803280 125416451 122151888 989349706 412176001 592119837 390521022 940479587 310942365 714232823 906966486 721143300 866948380 601636399 850766209 824748338 976202123 871957749 441076319 383272555 341806834 904176984 218452021 147854784 501343004 326870852 812951463 463168211 935698357 309502937 205307430 928051192 733133731 142845001 653635920 97238036 820804004 482633737 531277990 302890028 512095704 884129183 13079629 901254409 370763972 808426305 968260038 715256827 386033441 349530808 913752895 223361358 660900997 1024877 174073328 828584373 355071001 418081220 685933435 996674842 800288104 934219997 38662251 698724488 883389969 583261542 403392250 325713206 670989236 485131779 962747219 889518526 61281674 996363430 754694362 119313252 884748509 78500768 98858226 805109768 175185895 529572728 400224875 708140723 142821191 145427312 611189333 284839211 187337246 696322354 930347549 80086832 787108910 995328882 733462890 918072566 605437674 940495465 792628875 254849968 775318109 604481416 760340291 375792581 591885367 984234099 813491198 983617903 735062409 709280215 491554366 997003571 961836321 733632365 357306109 868897413 57266012 549816000 786260172 962791579 997619361 211545460 687787843 157215338 883693079 752467836 516536745 867022114 647235456 991674019 718991607 271082796 899336226 112880257 173184395 187833389 947946330 711168238 706848575 786988232 900520577 827368862 932957115 726910420 749734050 361441106 690308207 610313241 531401852 833873587 975421291 566737331 674970023 290759558 991055629 991134304 14954985 986681834 738720807 119785202 329299298 784525182 758597843 464635386 451339518 336517842 297874287 781974064 659481264 291616127 895681792 627534369 735846019 822134637 665949579 633838217 178369467 918076648 888841911 370988478 729215197 529303166 660447971 841192332 514061076 429537232 277431300 191347031 367582769 855500521 306225376 318775921 249381009 544101206 440053305 385365397 667421307 915586591 886994655 417624805 695036254 679299468 464223911 692568812 485198294 631999312 740078271 709894469 274179323 514313800 571747699 885649892 843929763 816230093 519881795 49621848 841130523 963881609 25447755 831548768 58790799 85355548 936582610 888394998 589344125 753474521 95241558 760677252 200439591 501840299 108157295 353964523 421784534 670989236 747911651 992064845 727883829 996753729 839668664 900767132 599049207 747721023 828160805 916510311 776404677 328425849 246410513 341864253 981467066 904876265 121950982 444310548 673314124 437587361 397204070 970328721 333560142 679501904 310507106 714495227 184720393 41252039 562670789 660317262 654969912 897486376 719083235 729173984 824258747 30259902 833311541 732410452 802380558 374914175 934214473 886162379 670989236 936963852 975070607 4134879 738760631 744793766 262762254 589586186 704177225 823326125 743820130 422561782 26698196 766544791 871497183 286093825 921798600 849953395 903381786 836420804 88632006 185336140 786515930 429990216 746255845 235799148 729933670 823773942 671261725 78673195 675596789 925517805 188781629 806744267 262656692 683993278 773364249 412720954 132963003 744442734 725974448 341135138 743589018 586785935 527184586 252625718 730855095 645469939 703179586 421532840 704948028 680099077 259624597 972558535 281939445 355644071 130407256 151783714 903356750 962675216 140037460 736353221 324032894 87129992 6904661 538710232 89790039 68271445 963218405 949127511 535005960 721833313 732165549 657432486 771286105 988178568 302317278 766113998 674704643 380313152 393700994 215255890 787605908 821539567 804705637 290401624 434188890 889491004 68418313 19190334 964747827 101332611 847591083 584528791 755172759 377381023 683911994 56848531 57147022 648372088 674353458 705649532 467948445 925304711 19834784 677912407 310492978 670989236 69460414 467227900 29252530 700053325 970440015 658758374 545865314 574897837 818922033 805607268 695485882 874322770 596240070 694037197 327801376 779452502 40839572 728987273 883977320 210310416 563629613 830667859 285756097 802229220 986008626 916655751 865778829 763329450 373265764 623663010 19322548 850808359 556848915 957530760 965965546 766527920 17210923 78738563 995195870 455753550 411795772 273909652 2642055 419159253 67696958 856174564 367324022 523847306 960888057 253681306 281721987 590229916 93592771 185808764 516157163 828708284 397225492 322936634 607164047 743136067 965192169 140253704 601464151 932788784 831745873 185120245 699916459 708667472 941039961 842024931 207009688 412492743 691562450 469619822 383019340 267531340 896789692 980641042 297966331 815195039 391393890 362222189 559541744 444361585 859400570 337485984 865491450 28262339 626220260 817002266 989027680 889816879 180842663 652025300 353911560 980551141 335213642 366590995 302938471 704219563 436848208 345729338 615790567 946138974 226242266 998568796 956738015 251222208 272979748 362425600 991983721 875668218 558101826 731049474 722403123 812146209 121390250 912908717 777071805 758778486 151766186 864895866 863618704 953110695 616848871 708938323 929284411 458613849 834178011 320191545 119509279 814666637 880872438 284069462 238158266 788227490 83347085 836098315 838108908 934043175 553584948 807690037 720963101 958022672 888693298 622372858 977571712 581101141 754374032 549500411 650996191 599979373 859005622 786705491 896960642 758030600 20020448 965332042 950397699 348986755 277646414 343118307 539504789 590639487 370182067 513518869 591848635 669627583 580020375 545108139 489425609 838252180 308511885 928890189 841023285 811049415 516335847 403130010 696429827 188473009 728060849 573166349 21690297 373556630 485014145 229752267 737016939 561446888 859555090 152868691 788056667 613784740 808682868 698129509 225885297 819435244 284699730 564049120 458163955 26950635 225422749 489974552 763897534 157207706 191805159 628821047 688689230 956486575 873937205 588393951 847062167 670989236 271597707 967091159 339438366 858266568 889310123 683705556 350614286 944907705 101875329 872015737 68185302 507785991 919161440 943152321 377261255 983000118 589233406 876982877 87531339 769225639 798063334 488654429 51878308 291348017 742184708 803055848 740458052 565941575 838037342 268119869 670989236 499879185 271965072 48837536 994233993 863348569 17346834 734550392 215047596 583368361 494025682 311149712 387327605 36653775 147193496 881044595 380362390 325212812 291580289 765355334 835862204 678878451 695752054 157491630 764958240 872921365 731172810 218427345 796577475 995197803 518771427 585732820 697859398 681654379 218347802 87082387 22507658 926875050 329105528 830002937 894983296 101801934 573913879 442818830 322207560 920922107 349221174 979398396 334069499 850925319 498170534 892802449 388267462 418267627 231435549 825469947 78464053 38296825 378772839 799220810 828238115 90963071 657021941 206226250 930294097 964145726 949929759 990782848 888538329 942986380 807872292 853808937 689184467 411560470 838895399 137772519 732587451 679856608 769479926 31549303 612492093 757058962 580678330 634269293 726081847 827292081 756114999 200171693 599821348 796481514 36486059 478980005 255136112 62791238 737450299 110340326 515570656 850446181 324273432 509901921 127339837 782337472 908678308 763142675 155375780 769009049 834642864 4161990 989171589 751009153 950905447 777208908 707250864 782676110 119557879 280812025 130997696 524328639 137042022 892968572 933685702 708119621 378254270 671181812 730322167 298347814 945537680 816461349 231616366 757473968 897533208 195323735 991474119 93436753 730613743 303139953 756527574 674945294 147134447 760193478 524608209 803860539 763130961 986179922 502781277 706258417 325040026 777799140 716295173 776700057 224934086 801083871 633207576 691451783 574323 854785813 460462552 102936843 680356869 871687270 981329658 773153097 230231914 612780261 855080865 730451114 469613746 415544009 440828814 423419970 678807494 412242332 754439596 863281425 122248857 895133754 871217405 78401493 941235949 80069959 70075834 766424081 408917054 204385121 161169487 725086139 148317952 922716417 368202246 465346068 272617705 182767702 945964812 768045304 72617482 904453516 670989236 69081657 673073784 942564947 309749883 783084408 786736884 799980338 736349058 28832153 426582206 880943071 189091714 629078206 484320809 233137438 9612488 575653141 670989236 373080361 399128512 330487871 970604005 657786733 453143891 429323568 956937490 962700075 569536521 735655847 286027991 193638702 641851692 402912042 994437234 351732315 608682433 941711840 965140478 287022236 814296009 313799998 878119912 60961641 12274263 770274135 207683690 198681529 808750885 316290849 335694549 221677004 889264194 548136955 420626812 322695179 527588654 873831608 869785017 749434440 446818847 35205856 488306410 10333682 796577470 986807250 196660676 182942415 876935480 392437385 699972725 316728612 958289967 97033483 909603965 856042001 683281269 601050667 340883235 817368696 942420136 795411039 395287820 832921450 655832775 119339944 257112034 692823119 588101539 123943176 681136498 910054077 117450216 88389254 704045525 524885490 696179040 465655595 226268928 84913284 64675104 640451663 927946282 15321127 371651214 925295872 496323660 115682477 136225769 746045314 968015006 703838893 502736710 175193838 956739539 813809506 142553355 569298571 893468512 870051150 493108011 779466060 193561051 977004984 468828231 641033534 88077194 989714137 52223254 939211341 842045346 626627493 105728746 148224477 11996816 657644887 712274600 893866799 7059542 517431737 903947272 965722928 766126374 746992712 362025379 177152004 933571120 51446358 734407150 914492725 147428625 799936080 392492478 144758779 737160798 628279036 216636719 821265210 672788450 489331693 605803295 676419932 761234517 713509814 577081443 805249235 728330024 431857208 673089785 885280621 923331141 689462372 29379108 610891444 205183147 824891438 581274442 15086251 317542594 921896861 55611473 444494247 495393546 588092069 246896610 134221909 890519256 855334435 735671334 612062178 868082413 446763843 887346587 874166508 892799072 611013018 298937724 877560708 82989648 829004332 996637402 784571266 895877875 843624474 188729367 500690980 751702637 749015984 77783328 402471923 150612383 798760575 460530715 183132527 386000982 728933825 579664200 583381373 995633819 396018453 934264689 550525778 141596430 920564644 459862347 842921996 929118810 723162030 116165207 916679804 824481038 882817033 21722579 771062949 995508840 982749984 492740895 937723386 480639396 434192142 969188553 383670647 824406567 740181035 726350817 722381769 941573521 797825467 428240261 947715333 685556979 502333452 913531801 768309037 802969661 362907633 156484823 688359634 225462932 180120098 163519375 318195625 963841410 934314902 278938053 670989236 673169833 143707591 618624004 835940211 346705008 737633832 11262319 519376666 737396276 771092774 964109866 174487296 506268285 884180719 128099593 838422277 991211647 698842021 333457114 506405843 983137971 112286154 837695561 214377016 182461907 271581046 873061695 102844791 670989236 287426221 227220226 52910951 150421999 764605445 732294073 807690645 83638307 74626271 900106663 280788691 244288364 623256595 946264101 804077448 221584915 61367779 677981671 163563784 552505603 340095304 997702266 225491964 921365808 143457387 520058675 769661195 264869367 94412089 721235423 221759357 983686876 367641663 791302241 771294854 212610250 476137031 362400545 851984992 258782097 922402396 11563116 861891390 279011628 968509746 283935518 697044215 498073174 573993502 352503266 421004140 699347028 875196814 475120671 847449477 267548742 748620466 909650448 446669673 46005665 419148737 862971914 832637777 53330438 937558 736960015 108944743 140562592 234955551 386296124 740026723 298356013 978110691 438315802 818958034 877414500 708839737 802958014 460740902 808090114 364077955 27974422 737536071 851223367 160368624 184616643 701367004 906594109 950365276 380665829 477017427 216656747 310605604 638113360 998358158 475629373 147183237 751273179 68560697 21163066 841500239 519737139 88886601 183496004 892327201 745134323 928614876 702521311 128236376 433882565 615835116 573690935 498008552 849393160 965421269 158144277 394100144 703014569 405528673 241094503 231731827 426864535 990214870 725944510 762249654 812624471 850616060 519497446 277083554 425946320 595065088 891782181 32813840 306925711 34170257 888271244 404390029 789210537 456184403 59674016 846290380 544417740 606045116 217936754 534266775 513964277 403921472 946378711 322415284 692330463 237311722 211439654 745290076 555766517 365714625 670989236 529679582 854243025 146695752 332570118 204592096 361748053 126407891 770941122 64993769 87663850 533230070 647190748 976724742 288677921 35985501 735399407 723017934 878585701 815821707 649241492 429083227 146797803 540112848 863242749 143062726 472785477 328813473 774120797 472789491 161413722 585429111 760155927 902373713 975321250 867858500 679463337 799821038 773094206 216696687 554262303 772091250 440333699 29707973 572533364 595077771 977622677 589042772 818370024 714016797 686326375 679841886 964939480 535453027 824335874 259693888 766777228 798549052 199312842 566508467 921479308 161639854 810248867 992281262 180057635 874147525 592148632 621457306 237444233 237416534 261083381 110509645 890788363 323913460 8690139 670989236 292427787 691065860 713472729 102857382 233486029 834484789 86999889 820583648 886186413 19686500 591872145 739754470 678617583 745328735 483349463 670989236 35184477 686940959 989397999 505047299 345680590 295360696 170815261 863728297 992011389 418423963 982213827 763369467 99048605 79713528 108418484 114825569 350082185 961060436 739107190 228811362 629048523 713036228 218327428 243343125 730322078 703322919 754266325 75105441 238111227 520844603 980087965 670989236 683398658 795408649 510543416 69473193 500190017 781785173 808122381 992197211 902524122 693788980 985544076 562624456 518718706 226097000 681367759 791560794 45343433 699163780 731415090 793702848 570500018 676763229 624008669 780958755 334529625 690672460 654399664 554506552 902248939 141397282 768934435 351469405 365227540 477499197 195867486 775382645 972028198 434028323 580540996 753368664 842476884 254707630 205284032 303132893 622375504 777153050 74077236 546749426 894242977 888878692 670989236 237815720 824323004 627559721 758293332 690727667 700573461 516365662 784631969 129141037 800520801 414558299 138164110 444265699 673108408 231714223 999684320 488120316 75853652 343676089 556093770 932708321 742786858 114197986 540028692 365394709 905107553 367388700 587300709 855659241 729994943 77950803 484887436 379623656 680091402 490328366 282576054 167925324 136505042 269351887 463825233 728120925 96214880 55955020 142437492 384281219 139703967 911369121 479891318 595714187 987981729 126938084 149771057 451809941 703686864 390767461 11865978 698266771 440419776 996576197 785331250 378733309 168116214 442841763 472236969 917984546 683671474 114111462 738131876 998415643 909028208 927515948 902441832 791428128 620254153 114060253 579372169 670412564 755709548 337339644 274231760 908825621 399102849 93074645 708590820 391385418 686283311 100344753 493350700 960395854 751889731 435962454 689854791 868455468 889091930 370613219 721875169 764846957 158364545 888828317 904376049 992927194 201694004 676302053 657011192 643471449 810448913 941892349 927513800 959141043 679333238 719457168 793399225 811913594 387523204 987115560 670989236 295081313 144769550 943101312 765499044 389725174 162233945 143885143 87066388 112336489 997742972 710233060 669698897 908672597 933739098 749798629 598634422 373235813 852216143 653658546 703260058 72570321 682472564 83636395 979575403 827422305 750028576 944318751 228177352 828406114 582971743 476409222 951674401 751973067 751061360 912927967 964880474 771545398 813081561 400416313 879542219 901852039 907239388 38342954 678108433 729884232 792695530 497805574 789357897 828934510 506762122 315373114 415429959 41780970 905566647 598656887 938947445 601839782 702623433 458807493 670989236 137073850 944130104 907943924 798625290 711015641 745368867 485504325 796126758 102832518 860933195 518133972 796048804 326460243 802584369 467169318 435117738 188070565 172965631 717682028 553727094 941329551 848302751 498952526 225737955 942341955 673810707 890029620 324462564 685399191 50085980 625389095 646692481 11405404 900096981 570519151 355955406 936278193 304269252 677222255 840579601 990330005 109865321 524756969 223362418 990196535 893874464 951470374 918488862 349291577 806758204 439930851 143721211 698527508 722086814 819144441 613709400 865063601 544470702 130165024 697212629 867053859 379606032 50627801 652593686 194335750 239895639 386599070 986283329 896844269 677256175 923312668 997885936 345019918 178734901 902567074 785399308 799108836 149951208 31942800 955419460 687879254 405071962 886119603 965151013 893370242 323009683 851410400 91488871 939240939 478362192 242549615 929884200 978196723 691069903 538018604 770854268 399776453 820993219 926501992 408885096 973287699 869765365 824126431 992733571 91596744 761227615 2707657 390147932 270272795 739844836 66929989 469291704 833086030 248219366 375099490 977379016 892476455 852521826 801801852 504670904 431964608 612240540 869120645 799770711 806773318 101621193 179876727 76040288 808523193 644443261 406068148 414439288 949671523 992660882 40173615 902272848 331366964 215777583 298073952 815540033 126415280 722784679 931932120 664564308 528982925 235675116 764228613 677545626 816877769 248010101 931254194 572763398 825483442 300985846 870806687 717036482 238622362 826749345 582797341 341739023 863513915 673898244 755263880 976242574 820021884 343449021 949363767 62096418 997312798 933335497 603069267 739900802 699690589 714427925 442854142 873723852 981768763 346622872 890579032 540509766 349061118 745274407 131347072 503554162 807573761 714578072 981186842 809552479 722509210 86337352 292944140 923837441 832463725 134085125 732577138 883266466 335559390 305470176 417535755 657107781 995805355 904845954 429512776 549963338 953785610 846184944 843426886 812830921 561074664 454008185 882242590 932356319 557169635 940585641 625013780 475192859 957449024 815740351 849947703 897795121 824196114 724713132 591957584 865719791 909857600 688340087 711197038 694088262 42442519 731589454 919670149 729363910 938374730 722639090 874857204 824156720 103586514 371405209 895177351 837328615 423323169 969626781 493705738 768325483 262167699 664062525 429202439 500023336 899005324 742686336 991836851 13717268 752363743 271168836 143870185 653727665 746975047 827590458 536503067 893395002 813135443 832894164 421922207 950810065 741001532 985118031 712655354 670989236 634412478 11291131 998606332 996301209 698630394 245091341 305542515 891897786 229842389 670989236 965146677 766676886 965150898 751936905 731923855 939069126 168101261 806201647 897054940 718030089 657696678 640070490 742828162 14277963 87257309 134128314 807246607 821609399 894970750 294759548 421620208 112707243 808652805 543087572 560839723 514075853 790503678 894493920 22990796 677899597 978075915 400972184 860881970 49219484 910191720 439644768 840301191 783802927 763339930 284694474 988730717 939171493 53547701 270497339 241156510 904050296 601535413 189766965 740277796 846184032 735523404 867659253 757126784 595721838 214581175 988242756 887797034 605851980 576092693 127352374 922223384 331443429 996436054 952171683 138679779 228808801 71027423 946019661 246530860 44257037 603974346 311578397 650750411 130865220 963084184 976280470 633260879 964362282 709751807 783423694 768210276 315150093 490316704 380076808 257237990 591464225 615486710 648252131 652547148 43911684 435385983 784364252 660118362 59851123 836522506 400206745 937020737 751865233 725933760 424991889 720710813 703101546 105081913 863793096 760843686 934470621 914719707 904017609 72517915 37563891 701913418 239647135 773286491 670989236 910099136 136937648 523465047 943213557 636546512 741468218 729786058 548928142 472989691 193354505 610695035 760036798 425173648 689906638 919455904 670989236 595902828 734524038 882066163 995364080 387580735 568111011 960662008 924154968 131142035 482062377 611564690 828113516 820159157 834953063 899840540 370493103 294723743 606472437 566755078 4839108 769963983 931869110 937998887 410761072 619602813 848432348 660392370 984101833 694753977 849301216 730058642 694044610 806423100 778495139 219456213 641544659 697958689 564665286 743902514 556167699 756687554 761121022 267567294 543218828 864418126 766485288 106805930 868520367 833892551 990112117 58555229 692371773 604924145 407448190 714738593 72578098 731326705 790194440 696418621 154810362 798945282 679099605 727504850 409819352 782613035 957790034 941517936 773019953 732326680 628813793 822536220 143489725 746425462 890312395 488385883 842351645 832198387 731022445 608119205 2802171 872130066 970826303 178622357 327308847 607801386 557984246 463001374 736372488 642125368 344384775 79904006 433472752 250723257 627895264 562675433 534515969 719006960 685532125 313417584 417768593 342101420 286432915 988200295 791690820 16530241 603856945 297346396 944655203 267795703 835279138 726065543 951790773 244375534 648020116 76790266 526873369 874452976 191506992 135984742 804036112 978089808 517175207 405454077 37917527 859297949 670989236 737368921 744160178 899768517 512615585 41783441 831934505 691060860 756953074 863000663 210428146 748175967 769368170 833986693 993655086 42405693 806837195 778756513 918288786 804847378 786211461 882464206 790311687 829263408 876634113 574147372 460719336 907326293 408516062 309101633 761392690 971321542 348417662 972234676 793349347 575903000 672259564 867184762 813567113 650233552 954186235 868576609 153271176 821397856 819314315 524485866 395048122 455377258 795215884 513708655 671547043 327212975 920331076 670989236 368249991 894902696 338951841 608974347 975957112 37533027 545802375 129452062 934387492 170220900 585425053 294592321 695781506 795582440 16568732 627590092 705437577 921978420 584264731 375560039 825911919 778637300 929553349 615076588 548215190 775819899 494615311 366690290 2465768 386620962 779517174 628879654 217241514 266044084 915220743 392278629 689085611 808537225 737836399 734699957 791181289 793820742 890742868 134388527 840957024 794883244 991945527 993134132 743107666 688382282 800192694 805578633 761783318 56754120 546783468 664054035 468333781 644680230 383821835 926739075 799812259 13800388 682415805 838296959 79082883 98732845 406277488 852748854 916566608 670989236 241072150 304588002 100500083 244278015 732952542 920705602 992151749 871604407 719830011 816848107 283746465 677310494 831185055 218760034 623767137 670989236 847429319 380699259 679892003 697387454 23204983 392506898 32077290 708648759 964386123 610010234 258110184 881670519 380199494 944194790 25299150 783644181 404459967 686875915 784713464 742945930 785042890 176343314 825372983 668015551 753816070 395474703 673298777 722280409 273569290 758591838 873956714 824834345 919530994 703273394 273647263 728526303 146207259 753593823 279835995 698620014 960699689 766292328 119427824 19066749 708025664 893733908 950889193 538460856 660851013 437327548 28058628 662957279 609150243 472375286 472019249 322794687 938375294 40687588 676457987 742524704 470326378 496813082 371379367 812164483 977034447 98688576 724004014 281167565 520976221 392514871 897832815 505944826 837916284 451421338 978482324 665052887 932823443 710672959 684079118 3572247 308836222 765336291 890830608 33551871 452174904 748804149 640480374 890256740 424510153 53035676 591195650 131517838 787393235 167476170 765335540 883517304 990617581 365007129 505445788 24601821 873024034 717876364 954019931 907839027 761285926 625025006 179652745 247459262 884539289 931433052 151271748 950140904 470051321 922930841 700051953 52958911 192576125 884177019 301069859 478419489 272861933 753752491 749400467 397819645 117135810 553175164 886559081 951802570 797236179 403106315 762854310 886324898 109791757 342822940 651524033 982343580 939984998 756704519 987879341 915391671 349726824 254346954 899401420 168872208 164327537 21553116 821016904 935335295 833608019 823704872 64626480 879347760 768475924 761695997 778408886 804609310 640415140 49369343 493710215 941551087 996499056 76815033 747103905 942162951 73413284 332130308 397531225 68335240 17751841 744020977 908006434 836940979 687273304 69963196 389635127 908402859 859310520 306167257 604004296 296495848 409394801 411791699 921886827 833082912 999967815 691574565 531281083 764325069 672830009 887951440 557537535 670989236 832676569 945992959 652955174 178106242 117398564 833764349 740604413 435879258 793624055 429735055 819858408 913953772 142606951 598469862 25500910 751142525 24457175 891447765 758530514 776500957 931937771 205350128 700710802 750671941 721741757 996648305 864629240 591708944 303313057 184300478 555285209 86597194 282182209 647569186 591305354 974063857 911251751 362924519 661574819 983937492 888989373 156589777 473248554 707358282 747952003 934682890 687833146 954946100 59689717 950140331 143424421 462563548 216738346 210147256 345747297 803763501 42820207 850986852 839932119 333684377 834467509 849768003 1682366 692578394 427357427 229635591 424072859 710322820 810324127 687046317 244953554 921499446 739990791 659038357 610071751 32855373 768162076 447831068 590504813 501722545 40821355 835496061 4122699 46352882 37470865 313052301 175976641 967576893 825394390 278724217 223583041 721855735 891790885 861233437 512473202 94484402 902436164 101609025 910644546 679656984 887065596 828919441 48851012 574080045 422831619 435267679 870296911 804036146 412732645 35024100 462218221 687730132 767172436 231534725 823680608 979952151 835744906 844477626 724948327 882932955 810262223 600963885 833931961 258727402 835577583 243909662 782672845 769045208 375259452 802235471 415944955 221775136 886838041 512507707 705004245 958483405 848066847 689801803 766128557 813621657 802076416 493424992 885872741 62290589 537505567 308863667 891262963 719969057 171381298 262333373 650089727 88115606 335138480 392886054 929338655 160271538 670989236 544886653 244421459 408583617 437805933 953437110 728033901 534596806 737386195 825139411 803814947 683375538 162124040 506716427 602388344 800609353 923991899 414301696 282792270 69109430 707713967 934126331 813930150 982753375 774163727 329227125 168155212 695863586 577608206 822530970 24200986 697550926 744094217 774589966 89484318 996049521 139097287 144024718 190385590 316632735 206486496 460391866 973261797 392103636 519858865 165127181 792345813 355589030 936398723 894687511 884570309 993159234 721140099 196999484 833013585 528923196 816507 509550256 454829341 412331179 839180432 458617300 186865572 429330886 974814263 765999081 599320853 502565228 262242546 739195057 594940927 863943171 769214592 830076690 757652071 848945047 766608835 736339044 594473592 112666450 837067076 552041904 766393161 300590428 828744887 406434132 673040562 192721304 341749084 886118030 973938194 381794033 736737710 902802523 992750926 797839793 670989236 993845281 818345369 543635060 194726031 656100434 986948825 842178331 207677210 17407203 774228165 954019788 186915030 95075070 233306874 631583081 904630139 989002489 391743380 692459067 936137119 697838167 983685464 210333937 628419821 966529057 854087618 101467609 188144403 665997400 622368587 805521762 846916102 71368454 672621655 638974658 684247124 929010321 904874861 190672943 897705085 874956904 720361599 443779307 771135101 710650316 299990023 720244538 516317068 746184461 62307293 639239885 97248547 462132737 791765423 178367265 602674 747335156 771407219 488931062 51531837 325118001 819446018 834500921 667330133 865565618 197202979 717654935 317228075 785942136 905217267 690205320 874998456 96752726 837336587 670989236 833046771 8924368 249230678 874966847 807276959 753419873 39629045 676717293 425738724 188801771 494319750 92090193 763576125 289826813 353319286 724921275 220490627 783228580 876228006 709113334 604701054 220224014 257573268 980710153 859364945 548912945 723080299 688759374 201451053 922248067 322823084 670989236 869965023 769446215 106259166 987779505 807329425 835587715 90968193 404999649 733520049 581431068 962605141 779913860 628176812 366375313 465451168 994158190 808758504 629887609 310599783 792391741 705681640 933444133 568419955 126048538 826964732 610695207 747907143 933484926 257106676 268625278 585962346 255874886 755783904 257862570 710831913 924346287 56025118 469048523 275206756 670989236 752051417 957216576 468919151 571492348 976017713 875614836 676414484 398089088 908323659 235691949 89481985 736943270 623159781 773214269 795453611 116379041 233977194 833076565 43163804 889697106 783947933 768385238 676172316 665915580 131385773 989230317 243212902 878345314 34870239 473831564 827882347 523734234 708922616 846733603 869787605 901518289 744991976 786972274 631749193 740693193 441145169 663924501 831865941 303349252 413235338 807267817 838483944 553643293 676410701 7487768 210481477 137824110 462118148 774288250 75294167 916539603 613397740 637854212 708861854 563448763 462325976 939573841 850512765 546116654 733755044 753351939 718188775 360306328 970679022 789785242 795495678 563800466 885211106 789223385 227547086 858963761 334164784 760022697 141205577 360848583 938130038 358408493 952175782 998878168 750872593 27649837 257356254 736073907 921462391 543852158 518004011 903154162 876547097 992010094 807064081 205053609 620471569 726477008 633223580 200545578 651284864 403686603 822777351 249894839 693661072 204746997 434225637 436029289 146869067 733980479 954413240 284614024 791427410 978296638 938725077 316738870 299735268 38658140 164113121 804085757 690958002 245865924 47838456 499838965 938613117 438435680 74820718 207738174 314682721 704488598 486732432 904161760 680971503 513055600 22899775 766072869 695412414 954201036 268284454 341461938 435200416 813163108 174835398 201370375 978098755 507754000 550394722 485161604 738225068 788448336 972799224 431234756 837546808 674158155 243795293 732623825 827863277 119592696 670234542 798259252 956342681 907634505 360705274 904525745 841481566 432293194 367317705 916095521 959604456 774702895 900905348 315819700 770473174 478552330 676088286 799082836 542819424 204170165 692019864 845300269 706271629 470509078 85782382 343614241 834409591 457815363 747386283 185968472 280352741 972188488 257468840 200078770 32115438 890587579 866425141 907489988 461798411 443065929 570103752 718179323 906891860 804823276 753286755 833204651 38147809 967032745 986666203 426512321 636760583 593081731 921124740 554581869 755373319 352960535 423878600 767063021 387770328 755200565 295733973 532107116 895065462 940446363 682462179 290028771 179757451 768695944 775335984 488315097 820439285 181035461 784015860 678025802 686729838 5537300 866214114 533650273 829414828 696226958 58776615 381795098 350876008 979000401 721315588 143132820 942832051 891636091 965862886 781974008 852361581 682851119 170784951 819044024 764692334 63434409 213087607 41535789 855403294 614885519 687596681 706183519 850369507 725681843 917791578 248599023 636323306 577600394 206579433 930389814 496370006 746825892 863166246 310817686 689533537 395464785 306944041 572324459 805938879 774722862 689933559 630260155 65237337 673915482 590490987 359101154 979380826 176007472 895922749 229567092 479169315 690795775 280534349 954326168 317757852 416767069 874218943 684983818 994365457 621076805 13468719 947036403 119092416 988671236 632941430 443182625 911413902 787213761 542931549 364861608 932320109 78525166 812120538 858246487 21809749 117657635 810693730 798090002 291511992 264541480 932697055 945503221 650691815 969546594 893704652 543961281 981612269 902129378 398505549 207409318 605946956 670989236 761509034 503466098 361636634 743043846 728095094 784396683 817337912 876044611 201749223 676770492 952659809 719696422 601918315 957746756 274410720 333553168 144393779 177122399 654913676 902649456 243253707 831253107 738562086 34349239 90968780 882124290 551358261 228827991 166097061 679094083 936250532 915270983 708702681 217896629 763166905 693921640 661384205 528954953 373774767 646822578 487266761 868711723 217056604 61265975 483287044 605866227 447400644 472840200 140426988 293086935 89223939 410797896 652596244 963748580 411251693 841244053 72226592 200275198 185347512 771724181 692780931 712241125 407797955 964122887 100546377 738670653 860316324 961760423 87801547 79217021 945300652 729583165 349861403 581392999 285270000 874650130 834348787 538039524 393794586 211009138 902964411 949372701 437999319 551483024 277612845 652923107 553038804 862908395 670989236 529093621 133836172 839065255 849682367 347589680 186129360 211124277 333259607 750950554 750733531 694976442 944050263 923236685 761002918 965981041 649640692 542137224 172020703 886223253 907569735 392846550 823818348 453069147 759825407 494405348 996333279 978756191 732532215 305300069 929461085 513508836 601175549 992029653 558113383 763150743 970818425 733434688 714928146 797968841 280821071 647915503 717201115 901382536 201222447 254007279 194123825 985365669 783416031 973216093 797260708 852946939 451136573 830260633 783978496 683796921 585102115 972913692 918514922 430046681 850348700 268373111 857291070 897814469 320192563 866350259 703600764 213085172 942887841 794231555 361550113 676804082 563376204 270870149 680861730 108109334 812056600 967481147 876482746 536959445 838832951 865523001 156444637 175888316 905244220 157150451 906169134 633630555 671943584 801863404 958844128 796962399 645940033 814568373 799991806 840984173 223463280 471699463 716725199 285330896 702311801 419350732 575762898 458441213 540725187 118418058 471472666 963706047 561898806 824712671 624862706 744531536 455600155 742078695 728600002 334644869 226812264 761052724 813258100 643327578 729115026 624795339 767450200 891755632 480072442 998192801 849139262 152087029 857091742 933098406 945242979 662527198 435827777 564932783 799632536 740897989 812019116 360876790 825290891 846309070 269454152 384383996 910719097 563193665 956414919 816889571 794289256 680844576 154636592 701030370 178567656 743486313 984119886 786745589 810783648 348676719 384476910 747333038 983561943 987453713 170794954 49856605 759799023 121137585 786341825 481665762 850096233 512375796 733846590 902321339 903436337 347460088 272463703 154881728 670966971 23890732 867535930 778986586 286300031 834233545 46434849 870952003 964664378 670989236 539745598 911693265 984541958 736857307 602650716 495965941 247585758 974328745 214927852 770495206 829242563 939748687 756562854 262783787 755996827 519640036 692641284 998365998 867339648 291654289 677212889 528686909 291564785 238997420 697837878 865752752 848598552 72984649 728803176 176734215 825154718 373866408 313751752 393116592 402516877 408467326 926279659 779022361 948628363 818601232 578203330 364361452 858416767 677263588 986435018 639676286 453769379 361446311 109233331 292664503 457673912 616932051 522828743 641346411 758071079 131411365 837017775 335370776 835008176 101434322 375088448 751134903 473120619 805747666 681410500 890376836 555066602 811614569 896830720 354211443 704089537 565503535 139711181 66863351 444198248 342669007 880811360 240964806 880864343 756581439 818525012 884497287 796553467 867508418 726570777 913056541 756395340 457558847 934331420 329354308 334277081 942460141 406909825 702557954 995832943 595227616 951789092 711132484 95997899 670989236 37503166 845906588 601063065 453013536 713022054 372809134 419055789 948859636 296021120 838647108 693471440 60568170 667062138 770622561 552451587 711099024 169455412 299892083 344190101 159673002 978504281 961653591 302870988 788176294 818809576 631504618 707900100 956642747 532686823 715932035 863880678 55639799 61858355 715412893 11020391 33373881 877446045 248035259 77339403 426825762 965083745 508613698 851885556 768740827 611974241 592877206 739691137 642056564 944936005 182004941 95201108 595024618 848754516 87089574 33429590 765955044 835459742 980373535 840634600 955639680 981458803 712983535 842616079 855718930 783381008 662985284 224473881 856536485 604272242 541543990 845989312 846725295 123768580 165163076 188045862 253867168 698750358 222596453 309555708 945068346 878920664 925546018 908941353 526653040 938288065 982766271 860045061 353854907 835945862 969254715 405348412 183548851 686592245 672633600 887670190 537972508 587795231 850122258 308198386 927547613 799747293 497211572 845294217 809264469 801195186 124650712 824566087 724088737 293777319 163851756 313039657 937690890 516278000 520804112 878527119 159840747 390576791 745857528 860925152 773230227 172971547 312050420 589540119 565584405 759781374 761336070 66547005 457165443 244677809 904313362 519426633 97110990 460090474 661246549 301327779 972504153 714390541 760963107 660259479 966885974 610084808 334095849 372740614 750449390 659679211 117025292 709108525 677253508 718584491 144500281 260493367 340741449 511716113 925109140 985297706 880387958 882394095 967199399 767818270 127206599 960405652 738152756 770759673 296907717 473926539 862505489 730555769 902008345 628284342 753724690 744648650 516196779 807178011 858215089 895595874 147738251 734897722 615502095 462375823 300629254 299601943 289075405 72609717 526193479 550004965 572603037 37297425 248113521 729346578 675080125 208118641 655834192 967874072 450363044 735365250 867913500 255182831 256568644 966471565 350239758 255693477 86641298 94897208 902795361 657297331 711778275 750787116 436687506 202096393 934455986 119316298 595589168 171062407 359033205 52795626 670989236 359386830 726947692 965125681 999071160 959510760 854614646 618194651 257138710 860406767 56780643 692386202 781852401 838353875 670989236 868063338 912553184 616642294 763228232 692165080 997288174 842951628 839516500 836942653 762119632 129243959 933466821 302555182 554191023 126872262 980569370 427729624 10318834 474895057 137835207 247016153 590274409 572855486 142372514 776575277 675727574 962353653 452575121 702364432 765297853 699358978 709253097 439558090 844484233 449311950 131238014 411343712 45052073 821213642 176206716 286789826 410793961 975355707 930708524 561203956 513754998 208470915 260014739 37741669 75359851 556484087 960795997 816669543 784866225 217766757 908640598 856980929 595810753 314325683 715752763 868922788 491485857 72467874 596969070 138292197 963594741 700466413 38479167 990789494 629274721 863794828 597590680 854503579 375985751 200637699 833306570 861285477 844509503 952817374 721050994 823437553 339511408 344443212 215634602 878107139 228760352 208635103 427012452 769226988 690471069 386054878 707070256 377860882 995142009 933055051 133916780 928735045 673818895 635373148 807191478 857769805 898443985 210776413 947849346 354369812 991469779 969194020 356833883 589725875 884121905 943515433 762789787 231276158 364514636 780179318 760767183 789671590 761012717 847435370 547930521 624387657 296510410 975652412 134869452 864907836 220095820 260302016 275102480 992570350 530231221 861272209 903550490 584445276 74898353 473623210 768028006 348931028 262984944 899546886 978847009 340803028 185453040 763470684 988768589 938996802 235593161 788066655 357486192 277691630 244002245 908530363 58157031 864357483 25638958 310929479 480232554 849706756 202907459 337313717 666366661 758232326 785058512 301178845 677317246 862687093 994062336 193201119 361529660 800924828 838084327 77209775 518303808 312009335 58547051 794814722 937920549 191494315 995387084 728757551 343830218 438727971 719690856 186328583 526229485 102017048 883143984 921894169 571433195 670989236 377045770 102619068 696414118 840003423 707238052 706156804 885878691 35622647 875843452 992412911 40188157 814789765 832294085 584363603 670989236 984909652 58272679 493506244 441362197 916634088 764360913 995262058 720385937 379257699 938673954 234663079 356725130 59811098 274382838 518669528 685835226 681580376 867654296 298554077 38431874 443340244 217857678 883626995 853775708 542659228 73952145 835096547 670989236 916497652 50488438 896345391 843778689 756666338 720418706 781453907 469507337 444038554 864214365 800954705 178043626 820671540 763352772 433795264 156515628 198474341 674857982 719066317 424081884 63795653 359569431 156202111 733421300 158881055 846478016 801799643 130749636 792354451 721215431 518795190 978700004 775600326 663936662 63501171 369101009 635738172 77204899 813983261 726666960 842158368 882727977 596840506 207615609 180894462 318537451 794067451 308329697 538629365 81353031 734833695 124038902 258783864 994108709 828449463 637904189 610951341 734756980 430426576 828167988 634812851 164551970 861534423 45065751 766381320 794307306 674413956 375743798 731596421 795546560 343265227 881628351 383387957 679264203 376694700 674626725 705878054 693472664 997641263 890220044 326493269 859614954 85290811 739377685 643114351 697776353 684803243 644276330 941276659 402897303 617703082 365744923 24696522 331388267 948741343 922077232 804122466 385746148 424881624 762482517 729281252 592392403 841513896 212582624 143874963 463168443 670989236 448759416 177664677 169142578 988816267 61419436 698264285 976159203 888443868 717666687 593109824 61724846 378816138 77142599 751126088 789946848 273785231 976188186 83228830 830204177 383873065 573671908 148299762 988731928 390467672 222460687 883402303 719610402 134246571 765852579 583790966 642961113 831815600 199066038 573145768 735047073 515372905 675534990 868583416 407922502 44541780 350386837 298818129 777241861 412954838 422305231 329063334 380106384 35458243 832584307 584513853 985111707 582014945 831807723 277230012 980711561 619346024 655771593 670403879 455781914 143902652 287828530 137718550 326976417 85852578 30132908 803156468 949974990 787855331 764235557 117713744 245284252 615666487 872989666 384735940 847711081 72611901 325637366 309418135 519393971 671224382 352209592 794315828 342210856 975560593 999387510 417802534 852770194 87421217 217673390 953764935 659391916 922007082 469775577 752952289 963788087 275961726 581367570 926703572 562945422 611831007 695165493 636813161 638291290 573867900 397740286 645479705 834108385 276514718 198618229 107478633 521964066 930819768 772667668 471054491 769836581 959436436 682857219 966584952 680832237 959064220 692725217 124534120 742949693 339681681 726685975 372287408 341337809 435041232 743565360 568765882 924545798 768990843 761078233 988996323 621660335 283583676 903717736 969715452 253511147 367866738 556634594 490187423 182439396 87942168 990960013 248103472 933918434 606122738 795870771 281406465 660333538 164206312 513163914 3449087 283446414 713963774 377938892 681760732 911236931 104355581 518900820 718437730 350217240 384631554 238887609 406967038 920775373 813151862 762663044 384678768 446439329 420378042 322693008 405068997 918554044 311280069 938078943 713492123 738141862 871116032 100231941 566874048 820601947 417558371 520700988 79116786 330635614 796930607 976384540 690873427 983315902 459646143 105164882 278993974 938767262 873684443 350902362 655238932 748364469 83855962 560723366 236787160 681774003 38099449 443613756 730506792 689598622 854978666 292533826 993414992 115395481 952513668 894337517 714310238 997650015 782188753 979014041 164331406 817161360 629909576 269304442 829118094 322864756 580448786 133726007 611541089 462009226 683466459 861300791 281985514 683288273 2306522 475429507 832623269 980729436 911187562 20620038 493192791 25431473 3574964 814767682 9334501 544048000 803525585 901601633 152084470 846155862 959399455 873242439 754788842 725838912 745161744 906493830 528327072 982666450 847609497 316605339 883071385 712509996 255495056 47817123 750808372 597913951 789163267 354567524 587746286 305954949 191527066 814236908 645623962 890227819 290977988 694056980 404179996 234456171 284852668 507459023 689981671 422675617 405939314 180791351 167775678 730315933 293322653 634169841 755622871 873361731 998769181 406516530 874543899 21847991 88074236 188392605 809251096 965670697 797061293 722778674 827780968 569277398 905383254 288754935 206140211 78167418 541144840 927876778 726163376 88296786 498596100 518283831 682936977 823883467 962119554 981999601 880065448 501996284 769751022 627007295 490100371 835906395 699397268 691727649 968675221 277772361 832168171 973242593 996428776 796435122 81205570 796477397 80595835 406433355 294234002 716842532 737960393 396385812 854867697 812789845 483778626 608075536 759207245 998073165 905755776 426684393 829674541 90963930 86406686 909726317 107980859 926627204 106152058 783089226 10277280 300486191 302804582 552335068 647692691 969565956 914681446 858453026 712203916 29857406 517770552 681566051 860027228 739376070 956758770 828403869 338089865 981862696 529182811 758963151 673682559 992442736 469674095 439189636 871862368 859920357 851972573 982234719 469574413 664284094 838634857 906307522 352650275 685694022 422567231 325189397 601822954 68147614 660159993 769479684 259929552 40429819 819688057 707942324 915684318 853274622 700582211 763854103 18146297 348435126 908728600 917735805 364458135 865969603 841342694 969553256 717282731 566705624 934695750 377956933 975176630 967552662 496495355 411760678 866276853 514676090 984760021 54828978 935195678 5332404 610305101 704287856 670989236 796495140 720722198 670989236 494846749 130930303 756697887 348644000 819974432 934353020 456929860 908524263 117445155 645604436 828538015 536610767 680837173 814955210 721511620 751203726 870097091 715024714 339282448 880192075 379659077 578105189 482272386 810226162 865023004 789981704 962657612 202770187 370540988 880597429 316462442 545740599 127500850 980134986 685061084 309860068 236755462 77756982 233381483 30444380 262035516 336276727 651354810 224096234 941925150 404822244 715236631 765730720 694692165 602239273 992897480 396689609 958819466 416019334 473898419 407605758 114051934 529588183 556445826 781993412 791403542 920222421 74894037 725444938 15045101 960001059 157782000 769102746 619597543 450850174 875665114 619295809 452021342 738086071 784480353 848959700 53075302 78955175 270267396 721021645 924475953 268051506 672103213 681403293 174358704 990389972 824599782 80208611 906844663 126009104 834191209 30525842 881391398 252972611 915361859 127900241 472070313 799027858 371672894 226999530 717814879 536464660 676430007 92527891 910881384 764829862 995736448 936390246 463043491 714991628 901946724 783009495 329701848 293952435 739601297 903732981 675171440 410179490 781404785 243014133 309071344 427953905 228735592 814724636 473071268 707421913 57410072 655405043 138729451 358721059 687951140 360463770 993495893 766191266 889955316 934187051 262608841 730125937 843745790 957117380 122071677 386779746 732944544 691866042 981836907 785020070 738937431 970034028 996471008 88165555 801030674 365740411 249877487 610938539 110525447 462823310 383729782 97393015 321334737 775497139 953432503 506173413 6127909 538436547 668985053 894544191 312753746 914184756 461081750 105019166 732944749 849553425 940615258 847174213 478432253 103872652 694437027 805018677 559588371 209456020 425085661 960802586 843583897 153299887 822808710 884074310 883986601 171945794 998752461 777643289 865259222 801805594 591311212 284882487 873789247 745803146 75409035 783439286 351749012 61965518 724954787 72565842 972660878 969643332 987140636 628328010 888343408 870078106 791730798 36564484 68820276 180161252 559779290 522174208 411217754 203700217 413677904 849650170 823741493 311351909 385749852 942139637 848758051 217646731 789701184 976327816 92054731 793737159 835444795 881841532 196630200 278791475 751637890 285909124 96395731 379131465 850149331 925256817 577461984 459510368 336156128 766433966 933631162 830060613 204640872 261377195 173658739 336131599 610208662 264861165 970385862 150698711 441432145 13361870 771243399 955457556 403214937 182203415 409302458 628110193 251161497 847143060 832344787 233405408 354373487 670989236 494886237 313771553 237278742 197810669 198513233 598177393 746659378 709572743 221766939 187040737 653089184 899968628 943985844 935980593 146171850 931047440 348797320 902033773 1472512 873212866 693213985 555253845 687274661 784000562 886080401 525421936 651152004 898031552 484002620 325729051 347486074 692773190 242297280 103855980 939043629 716774896 863793758 740272486 315569153 680829200 496256962 93753398 694164813 681912438 698324335 620200410 896717345 169240480 690525399 54606114 935369903 409660622 817947492 691289593 777650817 769745128 941080764 37453137 632344937 268567549 136448261 735091874 302746542 151193012 815321280 824642985 817536277 506240760 592895458 623468471 340852734 105911899 885063302 808211581 3054771 732139613 618417708 797509233 728502417 297792888 953239930 707441375 704055696 807638155 929632124 875709369 450490747 736744555 890120048 603533886 801614467 731810200 455321873 473540655 677757923 48410073 764235882 765415240 309355952 396961484 545938577 12525870 354345614 926943767 903477769 965449837 887920054 881930540 543204446 118810256 752744153 308520733 409056569 967396121 695630551 262854327 993121515 356634085 546359612 850919818 255320983 662185544 865913466 458821794 454853128 963350528 517575448 995237293 886753278 291663598 615196566 930031696 979258183 854854642 289470724 179131907 383507662 919677105 901969756 872254247 504270083 84537113 211915635 971807035 496563473 106364028 894032679 369039352 908012626 872136613 454692512 200509768 718180445 789558323 947936284 449576504 178035421 807014045 468665522 467881761 925864707 678767978 822320359 805388964 443888715 871380604 997987523 24030192 670989236 886401828 984078723 474858558 321948304 847299123 267227238 715859488 689723069 797790951 686575155 98264610 733049495 767025367 795749387 497971660 44582778 957012289 894424964 692420780 849198579 189886236 757316275 695527103 941179542 488344015 485477950 303476234 539828557 80898201 414824237 356097252 494845686 828694284 573851557 690662772 670989236 393806280 915153017 752303441 485521687 571618111 810179325 400069716 860743812 147452318 981297665 920868543 251727688 386891660 574969902 609802946 723681089 109311315 294472316 324838331 967981364 224747472 45404003 88726406 842779709 451161317 247428113 646642793 800635451 431080062 781490674 629296085 801582397 64323042 477244554 168823118 513368628 231759147 571676746 957080303 781800410 68226856 907873220 732127893 871889604 900446592 314357909 872827692 538430993 892664755 774820393 240817844 46264835 833429288 502203232 813211156 811092567 839113643 920484301 999908098 834253365 478679146 825789116 796012920 171060222 785026301 980788303 430726476 730946008 384225023 645394399 822625289 49679354 491667662 723717484 88569907 890484227 670989236 585465800 798101832 261044823 188182764 270482681 733232022 513470121 622179887 436868025 775013461 547423965 640354300 734333126 75847155 676921805 778562291 687666929 207426692 538700872 718322507 716304752 32908525 156756886 397019679 540099320 429171391 272256650 943985315 626488771 887155596 76811655 814472627 830964326 929406168 907707543 450713881 901843444 222713484 167783924 798267050 12547841 955824906 855984753 952205344 625002129 642833914 807629934 681367163 936843816 893152635 693367036 790802352 803272853 657407542 65186164 164013859 761065151 755354306 180920189 941424544 419756582 256153074 531089458 496209467 958446729 964263417 20442680 989432720 377424524 3053501 707464149 814786628 256441840 782938448 860778019 636769365 501254969 897177512 768610614 93061907 250968072 292796386 930107361 607363594 682033726 109105603 224262565 998973059 664171725 772363065 916691621 15766029 925411325 760762642 510322407 348678807 477781351 659993434 72496683 215778058 306365042 966738696 90375688 366319930 876673394 838950216 697979570 373126828 713889739 2467189 477545233 677278439 876976486 781589615 980243914 374224705 905937662 688747829 92719772 81005759 406498968 811117752 689359515 251113267 103067495 759066655 613440350 811167163 85345081 668024056 404203659 763320675 866558759 664218102 238503037 504050341 904923949 815469582 946187876 726157857 87692900 533804533 436775671 558603546 810973625 15910068 594679722 45943329 688662161 884465569 951458549 995335653 335771804 680348677 403663968 105300282 820889432 941063395 199538752 483331358 676468410 995089752 864501686 224287845 507632336 105781874 700819111 825598490 84448763 400567139 443362474 942021076 584210246 734890573 104467091 453757162 228181677 273739356 805812182 958661105 771374362 798319383 128480949 693333999 269796922 771410789 541624443 292824186 511086454 312945363 945324735 858286124 986036268 817853220 70758808 705056219 785121393 937121935 727645281 972522710 917743303 693574480 772612264 942214278 806432477 742799420 505597276 904101394 325900019 111706915 624213886 880877766 801313180 647504450 873867784 64863900 51652030 531824065 881357877 515951353 734006653 864287451 186534969 78326022 953818912 125407338 693232240 794372589 845163317 727603397 569732183 414385093 126244603 967136535 444895515 481729600 627520656 758709080 670989236 800924672 753647 795984600 402123375 855450544 673833792 752928173 550630587 960839667 931871447 302339448 834498570 752422647 772397796 447748483 580316481 465359620 699162130 897072145 781294694 198050010 373199483 25781663 948654119 359394592 647520987 971559295 779705855 790777397 855939879 139221916 670989236 853344640 414737194 517258718 57257981 675464404 925535179 927133413 223039995 702723014 246999742 761266202 264554424 751050495 910177202 21862272 698610991 272268596 536550243 708017951 987362616 891135804 21219355 861865734 112735201 897425512 670989236 843527259 557167504 191547773 420404483 458569802 204600121 685091231 950462187 698828848 368767086 316083640 513723853 692555235 589085705 923522674 156702737 404975246 707225866 117489888 84108121 496203657 824361452 682484495 398785735 809862829 653367740 670989236 970913998 118314886 37678904 670989236 61186245 963354855 171856478 685918601 556821921 800160007 214242989 795615631 327833051 29215944 710544822 831061077 524938707 15394795 179747943 849861305 787141386 511825624 823562372 535231660 835465749 159896817 819483573 764272447 898401667 41013230 2265633 342371525 765286719 804432496 807341531 778822445 935872132 81404711 324307206 865857491 286632961 945219246 357994511 968421169 242234609 853098573 548186443 806819353 893746626 38505726 824756175 782920236 734020850 625428335 762963081 836934425 281955194 566880510 718884368 119280185 363411914 373040422 125536222 116585351 992919910 375761031 465226879 88457006 14525652 348751651 924902611 150014979 942296700 855610520 545021822 454101051 531807174 715103668 967689750 444284090 542711297 795290617 893643400 943656297 482504802 867820565 304738155 910320872 914502855 291862869 247715143 841896753 166946813 951478379 256221683 70396443 968332867 369589259 781322627 502814313 960925499 959454481 701816489 240051257 847572285 953739177 200028461 104015051 211487679 292273117 994919358 547494960 760294322 834860577 696160265 763629297 808388329 638943058 45933150 223432651 521225127 909327509 661346726 792106911 911411345 278631643 956410984 948898335 815241663 906508531 897348866 561487899 234245131 798069809 748940886 996902443 220828143 670989236 755613438 896639901 733065565 805681379 621655370 696185997 420437827 688502209 741702627 762005769 797797705 677259248 954463206 870224216 920837028 656098734 648009655 270194614 263951618 761266467 978351766 947531872 919255344 491932659 657238153 659872641 523482895 47554423 93031987 194938607 836976991 401050425 725169589 430393758 822088168 828055661 306442462 890151429 421952244 987321517 841976259 358627180 970219822 676770293 673518514 704927088 847933669 981548789 916197710 482604851 181816873 891756917 853390407 828542053 846059692 706434215 547073803 521529418 825464530 981748545 218081087 742361272 56651461 459945717 870080575 106538497 578719379 768523554 187299773 968553299 203228903 144392783 971585557 608929685 740591846 673017323 993633824 220605588 515886610 965514478 907578069 497506746 245710297 229761407 691916493 688303012 922055424 757391630 329032291 781439829 670989236 753843965 741549561 113802658 961382098 723169468 22015520 159306740 20385185 102768770 968310423 948226973 817850660 920014488 816883233 834140642 934192009 658522358 911710982 485302946 177960216 841694136 111276142 713325793 433003367 913835147 931126774 532304477 279456146 858423213 700059468 696310849 677534951 16264922 987533974 696021600 520087351 187775988 863661662 877169645 873548810 175782805 888618931 701104083 589662503 427764668 791186672 289601692 709543288 252480238 503779769 954361267 175830455 711555068 117752003 741773397 943084245 530733485 948241886 252588078 665745458 384366424 105632644 796257849 986676839 831317483 670989236 201931727 866313200 79931206 702406448 934217716 54439373 869529420 932918096 698931954 510167601 745633396 194628949 835936823 795549897 969491378 457024347 98562207 915756586 396834709 530088223 711709978 814169484 401688799 930612599 470457969 385481157 48716156 971035909 418221815 62188142 491791292 146071098 81855661 934465772 536832560 852173699 518865459 437099207 695498449 838968544 722411611 331372560 988716519 460726103 693810981 723070518 278102749 858438589 250375665 880574667 847644932 888144746 670989236 742665861 822617241 670989236 798801943 744449674 604803478 20947232 902795725 752321648 325315621 33501638 879309587 208030714 836962936 22964223 73241637 807121499 795228280 535498027 734008141 370184100 708911717 95677257 129094393 921328267 585180694 567680732 983218283 685731041 936617906 811792476 92814797 368631578 677828865 413668761 140959700 717140715 20539469 767237819 250906954 895390870 890569147 69432965 794582075 817149911 72893725 672073266 249324656 802286313 309049271 729677240 8627509 3656119 157445921 804091505 455256294 666988216 471668384 516627138 299602777 747423248 508490801 670989236 777891949 720762511 416625130 701714648 994370148 216656969 52871341 529836752 823931034 882559357 204747321 889384140 691083345 692886336 748559913 884739132 359469532 718294612 741260722 945595428 248441287 403532132 911701098 259729133 931191921 793544217 44739726 860317136 398096556 637440140 314836219 788009527 742406919 32140562 688218617 395001550 659681793 684770250 686885542 982530595 979590381 407966449 984439533 954113489 708308259 908000459 396043312 477443511 532612255 810468657 823811666 118315769 874830350 798271037 314492826 833037785 630199694 860442874 483278639 379453664 763608868 282852470 203909028 456259384 758349375 722291760 479744171 677801609 958772867 641694075 885511707 149857537 339171717 315826876 224333760 973958031 996076376 713112536 758802455 308819279 138836267 181024924 909024784 452245221 753962588 629969482 177510216 394971575 684971541 910570729 294640837 521346376 298887709 409410614 214189873 732070382 796385388 604282719 953314410 695202052 898932290 818210175 895967442 206415710 131644156 53931183 766292701 748838723 554933248 414619673 627011349 842300851 631111264 450736253 672818523 711061039 146130554 534204452 772380970 379380811 442452931 846451755 715478894 816144691 156280817 793486788 488626768 844400168 768375074 179774118 751624746 292497814 938538950 349437849 988076175 153125152 861463981 305800012 369941153 348202170 323031597 13473464 845989388 619789400 501305074 987452641 744802747 904232724 482327698 91861391 689110992 342619088 336085211 687824197 150971687 717680385 493965275 770339624 349241514 245376014 834436623 414255452 155950466 975072520 541148090 519902772 147372421 708861344 258244124 809253429 688133539 594950909 823560158 957126616 975788021 727679834 898765225 121606756 777766007 655321132 677727560 302358312 840946096 849957018 105970611 147492478 706763132 882649922 45197313 521185289 772762067 654707460 591526544 256521470 555768449 674496780 584798568 28958257 707975291 404980744 689574559 900750528 230577979 801666242 725701559 877484868 985731721 191333453 257554003 812219836 700406909 175652705 489955645 71202235 935539930 432550258 538517235 711848134 193965841 645703727 913014155 408531657 695026448 906498460 870412123 759277114 179188828 839226416 471376047 989272178 795449989 354223064 926993300 877447213 299456412 706154727 763079637 966571730 71214911 4780876 781702859 204569765 808304686 56004983 739521030 187228302 463527190 722184431 672989106 760391802 757202015 896961225 823419817 775291846 732950606 821527418 390034596 770112329 651495188 965213808 668347713 757540883 940057872 534029079 899175170 284606181 766523573 595727488 622025571 35275939 6604578 911988750 849714443 129283665 858905578 715738985 615950425 557540387 477447600 928497238 742212347 903221308 84982549 505334693 749243426 801343760 976816381 772525579 92821122 558964858 985859846 479555260 610122275 25651529 729387565 95476228 631801559 306887236 14500912 190756534 965595665 578169400 832764631 535871337 698309897 954925862 836719013 155071883 381995798 949011938 494762802 242586353 94548351 485226559 151867681 538035108 983375685 137130551 957766753 650720118 205045891 718925202 769684250 931071701 716255002 925994500 421062983 61873373 971994180 109727718 48528408 875421393 802116889 978700738 135730556 406369685 416349034 63895926 542072057 975820270 224828518 972106300 352244252 225151761 804208215 470560163 717878370 951253014 731904952 500288790 559927076 177560367 130903275 392269005 912353115 471146295 347677010 922336322 723382998 373620685 852892513 585458879 999766115 866642796 546924864 746498855 526719488 700081313 120197067 982723282 327099281 216310594 739748582 367170138 809437948 770423156 670989236 935067508 671530169 980591903 730250208 234503153 770730788 589638834 196075747 174564649 911042966 885841013 869015680 597878641 361418116 253804687 970566704 648758577 485611643 214951089 641172502 27489185 670989236 269918039 549987560 707985353 930311339 417790735 736654164 836654611 830352974 880080101 106718807 722444230 907522001 458958222 654802246 735988164 885543590 324240845 876364751 144416746 628798194 603474593 871260169 554031526 569419052 62950159 882537311 849110999 573007093 95697061 394792504 862265091 448318038 228345738 441796022 358863724 871092486 994189082 844903050 897362906 5264622 205112372 591753205 763463428 859725050 227963875 698603829 958981285 890989836 994984203 737983982 711533595 357147460 899167273 154746674 727132322 512454265 240492988 832617244 715940744 125669691 74206063 518932120 82211187 235099135 706940236 846516332 670989236 280003257 976690846 472502980 605005505 759543582 558305343 998154793 450554322 645386616 592537319 814679829 616805940 631781497 373161464 445061703 713950108 656485868 705523360 584025690 741388418 689987332 278850934 670989236 977128513 797659261 526065021 802103629 596564451 17417431 744620602 90939033 684344728 216061061 164967997 982871738 62580929 903622778 182154674 938982332 558122069 987134635 465876895 521464718 633412726 890332885 813484015 556582988 476456941 339442258 682294579 896301230 552770707 503195027 808226764 137353760 257578485 670989236 474801570 971988149 913014851 895406816 693416708 364145048 811564672 794850945 223636362 700582271 847175890 806927616 744900089 51558872 20513892 974846206 841442455 740504693 582774638 646035002 754410614 12390892 670989236 791936184 283260459 967671669 57466948 446891728 405162816 606751323 208700101 780149017 676957473 260136203 847619353 856686119 215240943 64857310 732063474 78578265 863532500 309924956 485867344 686304971 847614999 382886895 828590079 876280006 915929287 116515438 434539685 507124650 705392567 897246224 389373449 568464485 411460682 963198911 673938425 979322108 410915519 998364923 511244102 857739269 622766921 808425041 729104451 737675773 895491959 367970970 659986745 327121465 895026320 926991590 576141145 984942751 726989656 542366659 648089707 102053844 182390175 227997053 993461761 511948976 825927351 170506069 832933646 653223706 759861029 166782554 613938241 964587217 61290542 261978981 893330515 710399241 737439713 297738197 112983423 997862785 264171393 765191260 194810039 973868935 224991559 223839593 294442739 780388552 417652498 916135661 522107825 770615287 736140368 728594542 482835043 988619772 415764361 544709209 491322333 477538521 701613243 956355559 213156867 44986068 931784217 757351551 1449606 970009581 743604325 259058258 966258488 514543552 670989236 670989236 126474772 545435334 677489755 661016190 732154900 430817944 693600405 899987212 556825860 481120818 464450047 909803797 446102004 826515154 793868162 693963046 779359361 340004055 121202123 437672117 454221174 917498129 94471959 21218293 910432527 177240468 745823533 33965989 852943169 248735200 478477483 672659458 893776199 897744558 458936914 289363738 578674923 723600870 605419178 692176966 867442393 575409952 642157415 549259901 581711654 225299040 982362572 156473650 405014418 262647426 921009950 463804003 126217427 789662711 262269162 793031791 657066120 932853255 860997945 704101841 547972173 215928719 400981505 233737306 363465777 342045059 992086823 146372837 808901677 675679768 799314295 684535474 844634124 23162608 727791333 670989236 132526767 835337525 984810810 865533511 29251673 58817917 705049901 477978237 751249461 91900325 538674182 235270984 501950235 872870862 900584143 611877945 735310133 891283932 670989236 920479177 649904249 848332989 541408 811724652 703036249 847670786 683042814 932937123 947312462 844631024 800044131 808311512 848058776 731010767 824504529 553559308 571630979 749884983 829912774 519417339 29923728 496642106 57886500 202428575 837758764 228475217 731582975 934372836 131162884 813718664 49456663 903643177 764220951 772551126 186404498 626425535 712133088 377880457 881229182 235837714 327057470 794503080 999483234 305604869 948297916 290462608 866970320 724889134 438956051 39782715 923479859 454756454 687783884 508291171 747799217 270063676 752267112 942969025 629118611 920626884 46227926 221549350 935191058 59999878 431554037 837954663 698287678 385648601 37766921 732706856 662384827 941520162 580227538 943641816 919254383 786826750 966965208 145059360 588271143 796494231 914235709 684438245 814586042 554395137 888380767 117030644 667025117 364968189 748992348 732066386 840725663 35633603 755463430 807253281 885103835 370705974 166057097 741193843 225772187 74724402 968802992 522660456 659676396 963924273 854333988 484633395 146639482 969331536 573524611 200336975 772602647 733778253 770884123 351121297 560567008 349916956 450098065 960650375 790900218 501819655 181879135 889355031 945962563 816989772 141801371 239014091 343477174 55493507 550881971 761037924 887901628 322415710 160027891 467816368 100703281 670989236 857802486 271032026 789724302 407539454 160643504 102634617 488179002 789878768 104387761 726914477 508672416 908239696 845648432 496552840 42339527 836040420 676810764 107806350 85591727 862335186 530729432 593328689 236419880 883077343 769550453 897276793 915257942 565651351 37005012 733011477 140454272 800376218 234488076 770225030 401798134 891587188 744909337 703086500 652598831 576781539 822157285 396976336 774809814 489860972 229468652 665828070 25267315 383397458 226034910 976365316 407203155 904272834 135256184 182673606 928604401 959716490 965330969 821470324 412700156 565488808 937230500 641699000 221698378 629214977 880100732 995619058 40691927 895818814 975288616 416173895 851805132 209511706 292291730 868344581 920265596 186399649 507590878 101554826 103418605 814946182 768839606 786283504 811893274 800548926 787995357 906330345 208857920 385836513 54687864 464303939 125497988 720102546 62249602 566904884 870260066 958083358 948371856 589210296 311617887 963438005 827019999 921178528 677527747 472499219 914401629 589865753 47920075 748967102 943270876 894860511 685212600 602225144 950555056 584721799 816676128 311667322 712926747 815170110 539492531 378680 16084739 989103404 255667669 712474300 783323927 740005978 816670207 805337115 148250139 509188371 917162415 348313563 932263064 862602357 46751324 993797880 935572156 942394818 754031406 993819731 883472577 133073289 728555904 664786780 157021773 813819974 100511665 672447012 869225778 968443536 601275475 876079816 714766534 303424963 737737226 841456061 15401806 83323545 405677534 11734520 10822209 418593643 714746825 838380118 6916143 906394452 859559992 425750810 150181485 474930979 788207664 911017560 964584522 771681557 728715980 961259457 399373779 330666201 709310046 679890615 291965920 552044938 613173984 752630125 932580373 833275567 501616950 687740647 935569948 296471864 576913846 596679772 670989236 930887020 989657332 187160501 905754602 598572135 179000479 988345756 569627537 46213486 233927889 753348094 670783422 801276632 318190431 876858898 899551005 259401262 581216247 31556277 938346309 53036333 919725649 285581295 837489795 846286788 633816562 650994666 869430329 214729584 785565802 118234832 146606678 758707078 735094481 957700244 761445219 486089992 866750031 393504224 989045477 787841746 865220439 827702299 665766055 764282590 929945429 947725169 340965778 754925270 774030551 886050918 904910922 434895923 375927748 109331015 736603751 919445402 820556895 981633737 489464222 849639906 591391404 24941468 304536845 686060448 743037526 47410126 258421316 31820717 141778652 899450912 107438350 234577024 746694837 504474429 333017610 817595251 980083203 836627575 911518376 46975102 961461921 79274751 545583380 977995800 375875244 953174764 929502976 833319597 430438985 466165220 541091003 285895736 723775089 668593991 753991939 930834646 555790576 97607839 902042844 748232313 493213192 872199254 38812590 839364877 873340224 318183777 57339095 630974053 683036406 870007882 919931319 161947948 792666091 237614547 550538153 998360001 717886333 480379033 419272943 283929365 32508428 774997862 104303298 805623928 200427603 665951505 575207445 663967479 890229939 817024436 873366475 865115279 477224557 887320544 848394762 859571348 946003741 912079666 723469865 645244318 45803684 753778204 999423767 732651007 849199261 770936579 646507783 635827885 238090424 503323095 774098139 72702339 956574009 216492935 5805490 951283424 324521184 852599624 700779155 703421362 253734650 577084459 542653891 21952851 702249269 466017739 49598242 142941112 805273885 142696045 194275578 603676826 106563284 907360913 251915316 241189697 377626489 109604895 449250617 620948203 423653002 999616305 587202456 91206128 124206294 735199757 130088231 297780420 883043588 830889734 985446136 935625072 751760870 655684701 837836101 639320715 204419989 680872982 938284648 862350594 30645982 347699 218048493 406615141 967889889 437127022 875616364 87553534 671905098 847734868 814463743 188250807 316177143 849102492 807538072 947618345 692300285 129806224 485354015 444139288 915163320 212063981 808964127 727853675 870080658 81233914 8383939 783204616 881650182 919572872 415301919 177869067 534819682 585351848 973298468 44418312 673705261 255939197 80660958 629332834 120467753 947965600 578174210 907835799 973472021 561651029 393237248 485775372 327911902 35445537 907958854 755279611 272162883 716819453 352491950 449689534 670989236 714743730 712580938 283603907 898966572 39548490 595775006 125563222 702195016 809559810 696536467 924826008 79160669 310969559 492058468 29424026 752811966 910544405 23827837 164746995 758226499 225135443 722957148 376440474 622834718 932150397 827442069 807483515 885333844 793313758 568164457 371643320 619373896 415296983 936751494 875797872 77656771 837436466 960586233 802249639 767405774 202209402 771008913 898221891 360934417 997924939 995807839 333321043 889496892 562440197 705683787 791553075 130291005 861591832 696017429 957597326 562840594 654435345 571081106 451055617 123656274 724759568 527764184 785145113 380229587 775622219 749637289 867080935 433703371 835323133 623249441 475885992 766609776 523277145 676072405 689715250 214967204 210592717 830340280 879432567 951623138 863738162 67175424 156080645 911159403 766980704 234182330 420463341 243421375 821825706 721423948 222660673 954438175 565490735 871327685 229545649 830683514 663015689 951766000 85512092 43891798 812469513 773871935 773959159 905269075 448796347 815053975 560434172 702764919 743586285 997696348 430279347 103450827 998101911 515135503 864113720 681624828 680310147 762206413 864423069 144468590 830420243 107700835 938419884 984949459 974021680 135115802 510619771 693077461 372150192 773507194 184697645 494882253 54564966 844491706 698921600 755582022 994138779 214508745 643285194 270906577 386628560 670989236 683956073 725019781 912679140 961988053 439199422 743095359 420259668 248297032 951114579 576055076 932432460 751648855 270525330 893871142 762604413 941228530 206680538 712947376 973363320 681010833 930361997 152783673 657901858 797589636 340699135 315810750 191903490 745070982 737243526 575238527 697080940 46905357 742783076 134785499 558252872 770197777 673267498 252886400 785044707 460968825 647656356 607091475 13707046 523556869 926990558 321912670 726329361 571478471 585119390 374446515 645111890 954463738 166997641 834248077 130766425 939858522 835343294 753031656 698147610 944901734 281520079 170320307 410815398 703316669 217946800 505305742 271967444 886053572 484892642 819175492 167300898 998928601 312885443 896658705 720543841 433576246 306479969 727967396 990766635 81568770 41535980 380243582 357621555 742001564 81133287 940240533 394477316 156510905 623142106 860167572 605373855 232337398 469870797 697617406 181218434 725605239 867504529 15987513 944599669 899352536 38477874 747251541 272875714 670989236 944039335 316191835 960727828 384409020 654166325 769946461 721617853 627264539 735534603 828772712 795129517 797808970 983357595 854039062 923920675 611631561 672315267 473639325 958581240 797956041 934653722 124334015 725768183 670989236 811403586 174512029 150677106 785736921 846880005 994926640 781323819 557086663 754031968 704725235 952657047 974334182 532289708 795969457 919570437 719278862 815584331 505628219 336984659 289905250 223135390 121350960 13207854 781210212 141895146 266879157 287716232 538480984 514699822 892515848 769680807 840169787 275768298 997837158 804400735 797771192 667395715 37834856 314119677 686717370 504708695 806213450 913838313 887062590 841007373 441039935 775727310 779315252 514908475 41691173 658876613 887673746 731816798 565044095 122367087 484694790 578375493 557448773 400542314 964875116 567301225 873596928 772971738 740887480 589264114 789867248 551178126 755599314 890776588 705982210 930956893 902039349 670989236 797759209 123077898 933331560 913181850 800571431 681263952 995604254 559858803 430092810 191810666 144059673 725670924 351468375 228659952 992855834 582690755 670989236 653604059 817806511 909574566 743917005 941631892 150584802 127364160 274298157 919755258 983883878 181981699 883198489 179066145 734218673 503433217 704460047 265064174 536583422 883256457 307452700 802453130 792043981 751705200 952372724 986791513 972260005 948806466 568902885 542172401 381687832 980048485 536630306 162609655 574931884 76181184 924290586 765312375 914644207 533187547 911604875 407455950 781825349 103087806 958646296 825178722 167303578 547221295 267113232 189756002 815185272 545504277 828330434 114277476 578928748 132410936 906719051 788263898 819586960 754118179 750556619 982725690 554615610 376116266 655291424 205755796 181340515 965949121 209683431 359115341 785438971 26150557 5556744 753636483 766577463 879853129 322910135 188681940 699341999 838379492 933809694 901614254 752574130 519819500 752303263 931146725 782425811 702133709 29435072 249669385 791743798 334899131 235224407 915687536 775110464 647295857 662976696 498165004 38991715 840066079 62892649 879767949 946549185 529580140 93500587 50591395 858350483 924205256 499745948 726161867 817338324 753984780 993027482 928200601 537406060 440055178 535697368 946549353 234164536 98114181 737019021 274792685 644404898 280614705 82223355 410464943 451327823 665442846 513893875 242936687 988070485 820442094 729667122 721992377 774338416 707721105 847385559 690114101 956594742 693325607 579860896 337995737 879318744 904093073 807329674 774525381 902664462 987919526 760544605 612303077 924351897 461786127 898349750 729993063 770681247 643841093 727870729 811002809 783061470 797313242 925413131 870757628 834790476 920441402 223274087 727584715 706777637 864340046 735231731 794050814 669060345 886667695 894266949 381836745 948120797 694148179 836205028 849378336 820154922 989024195 727109712 975235287 325437626 793818167 370446715 701076882 933334063 408932773 757209114 690462920 795877152 522573933 637910155 609632535 669561656 245449711 813869582 673438155 309072881 649323967 643887596 142319548 887614807 787658724 706916436 715514188 715391411 741422158 954374747 12548274 707295233 678362762 808067368 841280823 945572991 79637708 429909177 404143037 831904097 680285120 379019793 818429909 493348526 721099591 440081044 328596075 562693147 446627557 718766710 931358053 848987067 804199903 932003699 47126057 519990637 886901978 948478406 625812602 654660593 514792183 180867117 438411409 803371322 819267454 435724889 887081854 847172212 446255851 101004622 28983378 487292138 579162377 646784425 511868634 360399215 341725376 567137085 753343939 141330010 869628511 167866564 275155674 492165714 611574231 882639020 418186794 300511182 5441806 797007743 956204433 758565586 888701232 408490346 700841321 687845050 717508657 765278831 752491892 781951989 894827364 210085184 980642271 68233112 91187273 382910213 139625689 875480722 943345936 699810881 740576880 646942341 616341638 781685903 828780460 605327876 785850780 490439803 398201521 786176075 806347983 803994745 200663404 192233140 761865398 607731098 708903591 864382555 81964781 333349202 782598040 778285014 189692599 748618356 743587499 517107358 978999208 889172767 319330877 937354584 845627474 187600799 889853482 791927534 985036602 743604738 217052794 131646017 795209128 138033922 724784385 524757860 818886509 685513584 804878998 825857148 525572127 677875057 27233008 210058761 708927984 944731033 304490197 482272616 106675496 870458777 881816250 168545163 62932844 756400928 667643806 375079995 755181214 753166426 757602333 958334687 643828767 202379986 767390341 915137081 823409103 508052651 947788723 798482787 799427938 823616884 333265977 223275253 414806630 164703789 739497458 998135882 100344247 598226082 992926057 718144565 808165227 679034428 140886007 845091955 694339597 973470423 859159009 460354683 51398470 863690338 861182056 217426749 6000142 738543807 858066777 354692543 824112160 361483924 670989236 586640883 900938874 31825487 776070805 819632266 894487204 959577620 545977421 712591240 859856295 632451466 620400073 944158443 737466763 693515277 674504737 482647725 871116424 921415149 34042534 728661147 173140579 362639971 962913121 944047979 643280485 552178756 233343118 711882287 882697436 55369810 607942074 737465901 754843977 283076057 74346196 989939362 570317424 190401711 554867607 484771300 483591967 324160566 861046766 527877265 834293686 983092835 746450864 163971810 782856604 247064566 131251169 86738468 935195462 848604648 727548213 378705852 547243773 915477811 683991250 150689415 659728930 882320212 191180382 29740772 854542186 888644123 216885593 816281219 771286320 972354353 871355250 709295932 378670944 868292633 805476288 367248052 128705220 551003977 85426032 527524383 949319155 344450722 545031796 379109749 179869981 926573700 850515115 606676242 45286413 784723503 9925420 578387557 722486580 764252260 294410792 120191313 566018317 647374482 464267435 972311763 522095185 313001433 101662197 312804182 994844012 631184000 909093808 954394377 783453289 876347829 231025561 618176796 907395165 1525124 616258395 480278394 250791134 964777515 738624624 706637568 710956779 384499361 584221622 103959169 675359831 960288997 640721020 679251687 930845736 655379541 801191558 885513959 759704376 916698510 942017624 133825893 759338255 616043141 179670549 713619063 131339086 429111905 826529151 159830421 967186476 84085906 650819678 337524169 293955987 69739434 173235628 917626273 824174958 789938922 835357570 288402308 12959074 558714552 848821010 309870274 995251183 895126110 734138393 751507386 487826561 703571317 902452727 345820255 85310391 24548941 580858361 755591368 670989236 344920420 684861103 701639499 578293088 747170752 699174470 909182158 293054009 382909826 733443835 634001786 136611235 904241284 945992101 386932427 731899663 772934479 381302071 57375666 944336613 673716726 578254571 599002568 238731752 630519357 741675585 677907227 127514616 849739310 561644467 954003105 912170135 550716800 646454499 768322758 829570210 706580060 76880602 375186722 397346278 165269777 77869446 644540814 282145394 964521282 628116753 81821514 200639893 232596951 881800695 755515227 210201546 813905458 51361909 851251435 17641309 311885085 939305761 219479628 938439156 794349701 984142340 610560029 267372261 832358427 515694616 560821416 64477995 233274700 422170969 412057550 947982303 231782737 589193339 779110294 749997848 470697280 857941040 333835649 829646366 799494175 786986012 831080592 419923338 94633174 572478945 626275897 55652323 503586239 996846233 715168953 196467584 650186112 346504474 357083972 397603948 861157490 723633796 606539391 206078808 388267251 920913026 60821489 363881600 442530902 286940603 687287545 263826218 393850067 870889485 475202450 277010234 664819528 553028740 471889843 29959091 671888363 283817496 894610368 940783328 123829424 909447931 753827155 709089518 779988166 132469208 19414395 293762421 818810932 667246400 230603085 386682057 924146031 621597987 875499913 480039415 986681460 670989236 534404927 757627842 447819274 631403405 439027281 231719952 407130014 503961783 307790260 14547532 140689664 942414967 145432469 72558037 163133345 862250359 821800398 987213620 624259723 495212209 869777724 827495694 570581709 582236823 722006743 805993013 813205498 630958521 492906112 450801589 230044093 970155956 287119728 901691670 959468782 661616114 692252959 678157564 989472390 845560083 281239057 939860565 777106882 489769117 891201773 139940164 283957560 49745166 497718357 791371702 283383040 867614638 524888945 973030606 170421846 348796514 347183776 941859888 720298752 719782663 154694516 852771640 278275748 980190306 872873601 180886086 9205834 382860392 318352393 222729935 864518465 671665094 422385675 902823826 874793548 487307696 270599483 318855750 946178600 747554655 945902281 480351636 672782135 483262188 981641002 517440693 229779285 745225328 905413508 393075584 869158805 458654604 443682650 670989236 794134807 448975037 770491832 372810560 526285509 52994914 180623834 946826167 509841636 825550908 834331554 463497641 218543244 102298462 920398217 650416573 875611417 677752885 45547481 139344116 975732407 486155470 757623425 319025700 563203370 831492652 949928358 880158300 648539842 720910946 353328013 351404026 29190612 31826784 793292727 883303658 958866436 951413204 239828148 573349918 991178107 238878173 261814837 921123158 781249472 518245242 963633064 753104894 670989236 734745527 789240809 825092406 718848728 457970456 800510857 740835614 178220955 129093779 792216755 767496463 981520967 261795154 305108446 842604637 743046981 212903786 157092315 360685811 849599770 677798081 20519708 907617450 874631799 631033744 469853064 452103368 927402371 543494075 945353623 173678716 909013952 786475471 747684216 870981718 169859055 554203670 819993787 432559767 737596286 728345199 235126146 542172987 967908413 703872704 658137977 649654113 370362587 38405842 848250095 787324191 544617700 912792873 94216224 561965982 701295829 239083295 13554172 33888157 505143884 164208498 987057990 672467353 596294639 690332397 701372954 420860490 921743605 182666178 732034672 918596879 306349450 858287274 738275907 789450678 427696128 152723344 826970460 50893547 316459370 545439095 770764161 93597035 539031378 688333681 155623840 25027241 467284602 752399096 672406701 677474091 915933217 264189604 886802269 232420398 169709612 969232311 919369131 102541203 790508906 850513181 788959296 81336822 701527263 404338206 565711235 971308516 746338888 745577028 208250429 736348794 662754960 705413806 5041657 24154317 178940981 858312521 307626988 704518066 805183215 580591492 291338546 367233912 884318384 911154745 970922914 621597977 901361397 343114899 787833760 473026757 413752242 869823310 527611937 551058996 820590701 5886888 583564092 888694625 76672494 648874981 520322783 933286122 645679808 853284546 656480417 224262334 515325898 18019142 293226478 569557112 536742022 705249321 779106522 964468752 292131952 312640365 700097610 934799671 879896294 178251956 166508136 776182598 747135464 21529572 777470888 459060593 264827271 699116421 1675442 790294810 696985308 853039089 22109781 874898289 609341016 777097063 136555228 670989236 905714072 431699718 702600976 34808344 572798740 828833867 776214683 951674291 970454928 812497103 975573584 35716642 846808468 825162096 178234505 916428324 736318899 386134152 865693116 401786012 467367142 992299873 811334506 559256125 179839432 128284438 104524818 123305152 223953237 285061444 800957435 613309564 810517828 907869534 917316700 86005185 890844091 949167520 477489639 886768603 913861694 232673665 11449188 885536787 963512426 557680073 503991702 904383558 941149077 718557235 743998508 614586890 653159153 506580855 27285988 43522519 258392105 561627547 983394554 809969931 474768307 666796713 697367479 114030682 960153118 135351465 213627728 467063490 234820618 287190136 720712552 670989236 225018188 901931269 751394803 896903506 993346210 860434866 425631111 617504976 225061231 878717882 907815382 407266215 739179462 741673326 541579100 804004636 206337526 200736812 754326033 622780405 851105493 903559585 62602253 770397233 956513328 458444091 821587969 696766825 791216704 338635650 992497447 834143496 669227050 780777829 214211952 900198165 468881068 781860123 803710478 960339904 339954093 959017969 752046863 749309092 589277260 33893485 611275493 978926652 75160352 766902154 186191783 868921076 694922891 48670607 855644520 318983010 661130930 693224137 448131011 122263734 963731603 818999479 946059495 269026415 593653176 951680757 599039943 994434142 635784495 25153284 907951240 27120527 723775850 650547063 939862043 454234142 135713264 485888669 84192344 416640677 689489029 95926894 538200522 862768368 724084024 880600405 679841566 326935385 921687591 695974475 828255724 621707184 339514608 52781778 214920507 36268925 998576700 207446543 855498240 630844130 99623950 622568888 698324364 649306881 233394248 679342023 997833193 438854271 941394328 519846875 478147676 974739564 42660302 51445586 912903407 685045336 795098481 17414544 762676429 747166858 384214554 723117525 573958749 290087517 106053737 878354380 754945309 486192937 949613561 670989236 207862516 888113707 755724648 607880399 452680467 280608903 274719935 283148390 63020009 538649203 470307856 745969241 927658418 57038502 574786289 694509685 269353701 837141693 258734664 927628069 728804111 471476003 57486367 592743488 718427688 915959696 842287346 390946816 743214986 990518122 276533730 755158010 742859890 560260369 751287750 132650600 64575731 921494524 801291408 721649025 806691333 424852478 948902382 633423460 956867277 888996874 388769485 114763688 616502750 850619325 744003929 466794588 412191979 971651648 573468257 911695471 901132400 531821555 746693484 366549611 691982307 69128774 752566921 707242366 835857873 26557047 800110562 670989236 860638417 726296534 35382742 23495103 856809809 521088460 981263219 581633030 744343245 588095966 129899683 403950680 898193464 853912402 530067475 901746781 308606118 57978694 59654192 881432838 584677617 97000814 509724502 256663553 578969586 1903897 496763900 687541278 780824832 863214653 136735549 439347330 908501363 659562558 679199483 164186400 909789516 965778239 894508921 678862631 957232844 883771389 839994854 421940677 118267155 970164988 947417919 859312266 291052742 983187497 65777313 754097153 185846645 859807630 822472545 442212917 212908354 910285493 696128803 826537195 153077339 707643843 499616263 955245712 79848313 686476467 818161886 165332398 804254686 912520507 878019492 843340742 882089057 898810115 746779831 982793315 93133387 987474205 979359816 818201015 259131647 974620200 61392256 844555878 234661791 88576492 454597492 532236999 557188663 955724932 876286224 187243952 329644699 989619183 681492431 807983705 727471485 556778120 108216613 973576938 373060848 958681929 284375117 719675384 950591686 901057158 965375554 869726877 987729969 703949124 677928108 989174341 735008898 707739065 913888528 959979168 652552385 224667829 902231805 927851439 95203859 820019670 511736520 437258666 184477234 371545966 924296412 670989236 54467695 640822095 85973852 731403512 143386645 832157677 77443911 599534716 140902755 872964713 337511274 701706894 675080145 370504000 542046359 909795943 430379806 172647087 800073353 290293955 597186147 635926192 931073249 556148160 960653597 973887338 904284351 982200864 830697048 869146949 353453930 195623911 925580660 513554790 87924916 846369637 50255145 787690182 384849982 380984907 853085684 660544690 987731592 867594776 698461108 750613736 257415026 742581547 863331524 256987868 944478017 471149135 776528248 961338189 943343758 722923942 341302506 804512571 530887169 979653252 674757154 162513489 890060744 723547031 670989236 803458455 93650659 46496594 342930828 757329127 999745733 821014993 781747613 724985306 632030690 635908611 652214277 77958425 986723155 884465304 890426211 979543811 107639890 680767610 346865961 930480509 801870352 947194177 221805801 670989236 355927420 249070893 885670828 904894807 871348080 764903315 332980158 450906184 633033502 810459080 279990638 25888676 324128175 971496212 732092568 595258225 986217836 148056420 736681415 335484963 738835254 92818606 273218085 921661102 469307149 511532164 900851715 729214008 830907257 3321451 121562261 604873025 732400083 765634083 982092444 973120933 854049678 685540419 858475291 386280171 767924632 928005216 498260232 917019452 835903312 662522671 66069985 942316136 167375313 776976784 359725054 43941385 35761786 772919333 777955300 23564426 515792088 475258113 936246185 604661315 633105299 973308851 338171458 85475351 207938282 16029638 831002484 898893587 234001108 147675774 712034390 183987788 171242126 331141514 685875380 736389684 76850684 477634928 681611263 955469368 969044078 690758908 718348539 658548732 399342387 672967945 736290767 495099268 48593724 47279171 331498509 879252715 904764644 747790651 725584732 932722831 684266966 404916605 985227671 56555426 654132557 316759476 829963492 726096433 990448922 342648759 183284613 810146464 987643755 675143695 690287324 814655853 948080411 670989236 392807875 319019183 796989334 884408269 574556339 451446912 695355778 374923140 738514643 401739301 785858131 942130891 89201783 537859014 682424678 955916145 860618317 326073040 323115613 844622432 369731502 770908541 548448736 927601884 533627162 721708743 147751466 531179685 630715597 896538702 732773488 898623145 688226976 407518087 744612369 938155323 531680028 183077350 483947042 874230190 950977084 637004012 287714698 967377345 526372865 990994663 405634402 426519532 195691610 857295043 386597696 856570423 802485678 979505755 516576229 808036489 356715046 60751960 854871297 410528569 224689720 394742389 447477894 377515626 498197102 260313234 4921850 226705862 763506529 344923360 109535213 940786275 137294954 861263065 31979786 940248163 670989236 387388612 835198880 766597310 390590323 501366892 215024403 584344749 380065354 143940213 718832144 860307724 228527726 906514471 857205446 813467588 711384452 681912568 582899766 769225647 551034622 237521538 776671950 132938117 880645498 247369157 132558539 399339676 674491364 670989236 122522144 254724161 855904893 717895167 647581988 727227633 905463161 513983745 241718432 328410851 972702540 198633268 719293069 719742801 871966194 678728343 975503357 133618481 539240979 30985746 960972095 302225472 677040227 153502725 602541483 538951277 161579232 836998752 836805417 760798377 405696084 194164777 714320906 961433726 672186962 935431332 861692501 452611124 386990721 94732363 812750877 898895231 896023622 790714784 698038312 806293418 80841611 797811038 280916071 986504517 947437535 737575951 670989236 136155472 520440169 827923545 913012524 864771389 219854641 369548235 501399508 748914833 807769526 374788039 681997994 852485817 206501333 759962277 993662288 797860592 959940763 834037892 134975195 767344493 883425547 963155002 391475663 809933583 911961036 713151784 406053819 779124422 761530909 241459174 762589419 835420083 796143833 929421684 111391318 693832222 431243677 109453350 370652227 428901148 850206055 704637142 79035223 845163662 314110180 592296601 241232404 772141649 975917799 242792653 19652864 185854372 672359816 713440045 969402067 640066933 449490822 761703223 965492109 944793436 212363374 672232457 98394940 927145194 607951962 909753053 681121526 827403992 777302763 521167244 844928152 891606393 835272823 950736341 614249862 343073089 146966151 806979100 924974477 706904210 754390816 784015778 100043923 676168746 945910101 33772254 743502263 920864431 734257615 56924597 696838831 842807573 166793316 981096982 145260401 468294601 785766866 722253966 766987099 579106326 857731289 496079002 670989236 405686416 141269553 869051368 731394142 215839367 823229322 605314166 600892486 820300091 978233152 739143518 115892951 790610614 386808657 760605933 895245809 860152621 785291026 662224822 825919922 590623279 791224388 32161359 359237149 772557046 746102128 30667575 261196766 766531328 973364530 984016925 962904761 71385939 295974867 376088331 415536614 806397197 531938981 811582238 358456487 597607763 627790501 621810645 925857691 967797807 772672197 859645735 218984069 717418948 122056517 398561648 428980012 929697064 737482425 771185154 458209166 248332033 655446535 685685870 506305204 381388243 727632510 847060513 807708709 193419442 862506455 75820287 813765070 670989236 280771507 21854057 884536155 285221959 203287733 993225418 995530747 734655925 577124720 796321173 629198941 972074083 857247854 599094480 419417431 54797614 108628373 206745975 270270038 289918699 603010346 778784007 979733959 386376719 304772372 377536248 143452648 732365659 186549547 663350262 56706042 615609648 55408160 948927450 746405770 513772285 525037351 670989236 451059497 186016234 343848448 996706213 607098095 958222784 825218831 757079375 98514746 161410885 981342919 925345158 716046371 785006066 956022756 692053628 459311958 590988583 707846354 172267281 631865268 739461282 607253428 595421870 534159947 876416371 999172963 977765320 812543300 70500789 408989585 488049206 231276968 972860052 989953153 958060392 687159825 495246782 912383820 899532053 957245312 722394348 789466381 864010106 470702850 937402478 655109460 902807796 893895690 853358337 517669503 922764178 920788306 381003024 786364376 359016286 601271931 767196296 858869565 826032746 476407669 112460739 297457952 925109407 877118896 697872029 847739405 341469059 694788843 967426898 755738026 926720621 884622403 947704526 103155529 956364461 825019853 360355014 573194072 984911983 923698152 177911353 599551411 765542377 366814290 313045746 841269996 960853460 517845422 579538430 36132516 865012055 30329071 695170628 63238270 405682894 718211740 789104062 862220149 817225859 408255287 775007472 497964432 21711136 776267689 679460064 56753691 948040410 821918512 312710660 69070616 901728593 396604342 520407251 771744179 10338178 476736167 195023400 539065062 262268906 796657569 36215530 315084848 69309904 699304997 678004500 752245026 612304827 398447464 643906958 789644180 749189409 268556986 986339333 715736986 539636556 507365348 973323992 782699080 586621581 988889417 714863759 567103059 719072083 869881258 734406398 51330839 895362501 450243358 765093991 795276188 32911630 792103259 515044979 893200080 648013441 197537414 898185979 787542114 887579536 739601448 668969282 17290202 486190607 634840319 937697846 455119047 880315110 155314391 327577951 257945250 800081787 822748215 938751046 768149961 859906086 920433099 650967937 773785434 972667317 817638736 282700115 963541527 140756488 193021747 967338575 991288171 930984406 839185483 860014353 216738446 671942595 14926188 464228537 30344732 816924330 906849295 764236707 573897292 935456592 664168522 994974774 569260323 350240855 250643141 796738706 710458459 300112393 40495037 895193741 668216130 933186810 260699441 119641999 640139601 886170591 980920956 804575400 682147092 785893665 276800181 916036033 266443793 833864435 694648416 712472501 264378268 873302164 437709361 18816478 11082351 894002986 864336406 997198210 429739771 900894687 17800536 676597325 477402129 476928773 193966427 242459090 454374135 828213033 139786212 836795253 890621457 479830752 675180501 581314510 312131701 642585646 855076563 770696314 971901866 69925723 980360330 499308140 887503015 301002687 927145369 814695062 788708454 837780557 936205365 770696148 732288720 487065447 811539909 670989236 586836874 994604902 866533278 982978997 6761208 786858393 517247597 542201532 957361746 751230885 113663068 535224858 260697582 944543466 262766523 686232325 929849392 638717435 723559214 341627126 994873915 280919118 793199282 338504664 74995965 933007201 378109502 796644250 997227764 141095558 192407117 168923284 791363504 119435394 858135113 269435360 905748151 952047190 884511398 920910531 865339033 24916456 294360062 586694598 187674443 808173993 75073581 959348227 877820037 885286572 752353999 616324756 142449860 699880330 793457149 114242187 752131090 746215641 616838145 949093287 855291823 878867423 198747192 219388835 850596028 643922288 548578913 852516357 595455429 655988506 376076208 425530294 672944370 822150143 697809893 454003827 804574989 781464339 731266428 131535124 646755495 157204440 804954274 684634147 801050503 182131892 850834599 115468502 164842884 866828486 527163167 922941436 339913803 972575857 418744283 680234757 127843883 220533916 832010219 625215547 950983031 256164401 690105332 579973234 976334529 793211488 341535998 734727902 986477143 806925758 846657653 957750487 685755701 514958396 130892796 518452742 854131459 775583950 391870181 607724434 170371777 970946838 759710218 950076299 474474747 198516551 915313137 162594829 923794629 252504142 953696160 774185377 303707025 546490959 951050491 518031114 59339965 254270442 220500563 229330571 215556223 932426306 770927565 902390175 72505121 655531537 495781580 898245721 959925325 806271848 680706370 78789089 726786562 900528037 289647095 603413321 780778340 809627370 254328457 855887611 349480253 529691376 699701959 769939141 839734779 859035924 852234978 238378316 990468628 670989236 617638770 616877489 888013534 850842494 176956242 457444067 709096549 795301598 999835262 835777882 638080367 969929436 630381951 990843610 835985798 702404795 976863796 990644166 444694466 856864101 536806749 681441316 101229323 298252273 348073711 661365187 540510888 684615010 779931075 87148832 847937290 641271668 251939890 283952573 985791443 20466971 47741246 317511376 687248128 950609264 683629926 613951945 837518719 911705658 783468533 979439426 687409654 985805361 838708433 475940593 316627336 621671530 292113100 877266173 987876390 703130269 970021689 982488412 137149124 899188479 561400688 888175708 144357904 732264195 476927835 384252745 417285124 208025529 648600600 696917856 811758950 688362630 488678385 868166334 795949605 762271791 528331200 646261598 804363127 679262567 994207692 261150095 576290021 625636817 545553243 633237924 201244784 939400088 63582520 62715363 957473428 805707096 683043035 425406598 250681257 807156341 406288050 805317393 352279111 905867692 913750208 170994368 169082524 43644544 85809576 380769363 732392562 71947205 893309056 973065452 939571241 789829271 972852335 687253352 353241440 924096729 254226402 829075187 790414329 230008282 514838184 741576700 164565847 165960314 707232583 827383705 720032008 810711635 955980605 450801012 121976126 724231495 193539622 688761629 930883089 370646532 941513179 354365960 183235309 9756858 267439753 713431584 995264085 987156147 775428008 98991286 936751358 637515067 56505028 915041942 523267446 980858404 741964887 983731735 401856759 926687924 783851002 588175182 997921491 663437229 675497675 243942765 551664353 351307483 640415759 873477645 605500512 113645086 547907825 797722336 333347111 87404230 965811468 376436277 133190417 632152659 867207246 243326931 841002057 498420484 253363937 167055806 910309666 771471659 439509594 246013060 710555848 592846227 930794693 693370253 679609426 792177441 349285637 427979581 978957599 983702350 290081165 988177329 125111833 959443128 16539713 608165130 717460065 692355260 20897157 943306495 670989236 391374549 809992960 967368511 956590784 828498644 245369108 827990470 292014140 566431639 635432530 810723792 254111647 375949170 175798866 961969961 977182149 782362670 440186890 468176798 295521349 408610702 646215504 770068029 708814127 321175584 32221893 851584520 888257168 606052109 889719323 360968347 813855254 532796097 734387937 796151747 259383432 862809925 556688477 317543529 462878555 56928588 171172908 749296372 299671417 298646148 556822168 693924246 386382193 242613129 687472566 351338967 373355482 670989236 607307981 825814830 879405302 307054045 952608128 349519374 230970829 649225655 147987113 862621584 369462715 887937033 384481792 238585799 833980622 176614719 314518698 49726356 672059541 938147159 778776395 169215531 377592906 36637582 650884966 219929219 905739556 848213416 445462151 319663655 655115281 920388406 986201644 997570766 829251745 197652645 787823634 389465502 936440896 710528032 911078265 297116308 763425184 918485231 880135439 746978279 834568299 770980938 74284259 98097390 984733899 787492614 772953683 228013991 956228467 549064352 12064989 195342585 813480581 849704175 806986425 256599753 192317605 897257096 19068823 83460875 827474124 842769354 670989236 351393598 72322065 140519713 808569353 838846858 521723610 483110984 309925072 202588536 885814266 110880099 891705127 355296281 735609089 410701263 770884353 816717011 670989236 290250486 262468053 674097632 43454177 735931281 850053630 646064176 216892480 953273141 147975588 814874174 949636744 939209767 262303232 781973962 894054227 859757462 820303694 817138912 667005050 827508788 907976952 636027293 789335382 772429776 823259949 19730720 473403995 1790993 252260251 826553664 276450612 719846898 200282023 218506400 886245050 356380223 819648521 642703441 732042664 141158389 387680961 174635437 451679244 392474547 305963364 883086680 911737764 632094069 732443089 237921802 306321554 16862185 47306935 525956099 898482794 559709815 335072513 332396057 206696110 283086921 981451066 404743661 902900126 645188339 420390716 443713632 783268079 863897978 945002417 966217124 922841569 870402279 31155442 768070475 905295923 713076269 808182461 570682950 667686026 680780768 391387732 783341380 983818773 873753180 183685496 272711824 162082813 629437045 821489451 308378015 423875859 950036384 434016583 841858536 868138836 697956339 834538250 966844548 938002610 289746096 933337155 947895142 242580706 273091602 532047508 411440194 777615474 267794738 893239358 594430215 684015373 553204834 311055929 998777050 997704088 981617555 875251454 581263490 843930322 94707647 120606163 928028957 275907798 869673529 769058717 681229692 929671525 828098459 190358311 959750704 365856848 388651574 772814522 994013810 231161300 986796934 384782438 680050215 644826049 323173546 208608902 515801357 71084305 724688402 582794388 625385360 154574257 831103091 560645027 946736187 823058130 30387804 756184945 707681877 44918546 25334805 330624336 947460849 260750902 676907395 822522797 910007433 398847983 279309456 791422419 528198475 792921931 478650708 675342808 130626944 596511436 60587378 71677806 670989236 868268148 565052714 478410178 221624207 711646988 796022339 440782130 46998891 531506734 752546471 419915643 142885892 693554589 704619602 933919065 190518290 325128479 341746579 738982134 799476550 71390297 458776519 713308979 851100693 82000583 60847742 895102795 951001224 957328746 670989236 856140579 344933595 723873464 918616980 889375685 952508144 670989236 135129883 443834120 716271876 177240973 227433361 764449927 263148889 366851859 691684029 148167926 690481158 229216314 552290610 940307263 954866607 612707427 671216047 808912996 234635517 824897792 918611871 653314146 518723637 899224048 679385488 101116193 416222881 897064194 959918066 433277336 677088938 799189884 143030617 537450184 427600859 786928560 986703017 632554898 995978780 461670630 960721591 955925240 75213413 494661175 861067909 811745202 670989236 678050523 524116720 401492445 941926449 952361706 759621878 946999719 640970312 974254990 931604829 730486900 799723509 479906640 891782973 851745041 831007735 851588030 50399014 225231280 114796221 435053118 696957984 820448206 409336892 918653476 788274240 526819493 603358801 915751062 899610291 826134057 851206635 783631613 665889676 595331549 891920136 760622715 940753443 332831479 834900736 367076778 995440947 19196884 199716510 658823862 679312975 929154218 563973303 674894508 816015790 741592678 952528105 364109524 110443576 785019275 483083698 991547219 876749135 662996379 260242104 900426599 189550534 670989236 932548919 617186407 953838859 549353439 527777774 383862375 761921307 599859744 403275273 16653709 639130683 793907064 901495042 844315849 226839181 545437159 759599328 838767263 710998856 452385458 338479374 848933727 65879453 843789610 380429663 768637222 654422075 843986014 113369263 255508112 584188258 23193521 307068965 893373750 147793767 912934326 724563201 25165885 83298470 874880902 681567107 941511067 506697630 875664632 816542059 246995240 875049151 863713781 647251267 456718794 870161755 705865692 256874079 359143042 414419789 926942823 570768514 194834865 321593836 907783935 111739796 45823279 670989236 256563920 135383030 36584360 901720686 759505265 819459148 677863454 426866721 670221020 745819127 984415737 537484057 848388108 200053777 730513381 967746998 679122782 846539922 975351506 8478234 415761187 189003451 811731576 732486030 652816500 260316040 815381990 126746126 307467532 515152229 925973687 31034862 281784230 414909519 334569464 238068697 680716220 485710974 991627320 829755175 731158399 796755319 799104513 805000882 79778518 279655977 992497115 670989236 447725290 588130448 437892878 839691943 973902407 454565424 991528682 386867839 410492264 296164997 912526402 305576593 376618559 41242474 941434298 72460818 296678732 305670007 807264831 671935770 706678518 992609595 760039986 754323860 531649243 149723481 3431595 89076458 676426456 235766311 827923385 670989236 131417867 644379993 441714575 110902506 155779096 943723518 950058751 448999074 153348806 465018853 618832766 549083006 563273472 160587609 812165829 304528301 622852243 924534594 824820606 827164439 698259088 573504599 830023988 432526507 271609030 128419395 800324081 573886265 573562516 607499078 786391602 123514427 915755603 489533112 37695697 982261665 683523476 670989236 791959295 722779729 842773174 899475324 4819088 806844796 768796399 679752932 809582741 278352068 993462535 226508643 794736804 164466238 701708595 679118050 148022731 456889189 482690086 804983244 621802388 637867570 956581412 248790448 681608934 822361051 692043471 902179601 231745594 749840827 825245294 566032293 659126634 937875235 906810371 427476369 161893006 843201124 457647409 124314161 213635600 459930389 21665506 705583159 725693603 856999242 744248557 804164539 865740398 607459478 421038985 887806899 820910596 811639034 22332820 548461350 937559227 683715635 714231408 480457988 187001686 96470800 761488151 556328729 843993094 130188160 238370840 852500075 970072046 878553222 381865204 997526949 936931434 969567787 593120865 752673953 918099165 670989236 156291849 500172471 850582105 46135696 958115897 77033720 746879310 278697607 252958509 767166531 667581914 98934121 564094328 256899153 861905011 131562419 320631695 888004182 797367248 510299680 909146198 165366701 345394334 823957419 761330559 67907082 104840800 138856166 80394592 904026121 215330877 801909294 872350033 779684861 755738492 488035112 790645990 575797239 43645005 772262495 862627109 867819129 894178747 724526712 995501144 975770465 412929702 679885433 704374780 884238698 921084825 786509236 896891975 908676703 682765845 848150761 925025334 287911141 784436518 194418281 699112815 424316408 580904940 722144042 176829730 302225661 791139882 833478615 973445125 842303980 178235489 951139738 297754717 708356656 816948144 994822918 781593551 636387325 896690990 137317269 889332734 713418044 866661995 926911560 881367387 970145460 199642453 606899213 268060456 880049188 738052577 483351394 976095127 712532702 866645939 507089669 348034725 992454128 176110809 183736214 383775977 837401320 845040520 907041802 625896697 268192327 845303302 570535259 486088292 570414127 136653370 883746493 424095442 438844227 407341501 115672325 523779336 977567432 516949954 897147631 830684443 26699083 507065587 821359454 697434230 161624698 888216621 32968220 529927903 160228864 997033862 32559084 56751343 764594220 997095712 334682496 874432156 845427457 442784784 265856392 241112558 938108751 231831288 811342028 283356737 685089218 935487879 86675144 75735670 364407565 551741836 794733041 579050170 750038826 759983095 927891419 717017770 861443070 633460866 267184599 910320524 202311166 63332831 929141247 52266285 862989192 807878747 276699646 567451302 997920811 357804956 878157020 411159330 757821248 401609264 528086884 663243273 461630561 822864066 474303392 99454878 636917697 954348367 665584942 970519982 517595771 976229846 950624324 76086457 361999631 405443737 871541141 978773786 990114354 810332285 738778855 855612756 964404863 875699357 760162660 597673188 470325462 693694179 559979746 922712567 335120162 264086663 581775087 828636132 778342589 721846307 525751672 133368788 598186040 898035630 952352530 538975911 128073146 225194785 977971907 811602245 461939188 909197461 475185257 695751350 795703117 866333386 757339481 766618054 352855284 679374177 204818151 288597713 773374406 861914631 785165995 485573216 865439413 517697156 834562375 263957506 583731719 124225848 580361994 128443933 305083642 140472282 774826065 808895250 487195054 990087146 818579906 211150357 30171019 762996431 766914007 118542395 779173303 725327772 773164828 736473458 674910924 927811507 925678101 118369497 674094709 720187569 925370242 983457434 747379915 782335774 811747225 727596069 750326807 670989236 582341374 844264622 550513894 733254604 814979455 498966993 553823418 230488634 764854462 180933210 5228045 405453048 964735146 581435442 698084392 933935709 217443853 828537203 402244827 544806024 809145097 506615467 188562986 884849838 798948796 825063286 432660516 109765926 701176295 339325902 942303006 89585852 645749197 399221878 776068895 705265440 750784098 987560702 214627601 978333949 667068419 818379669 81671437 909187283 591764823 749990443 682514594 670989236 578171158 885318529 307216783 269212239 778528659 542120780 504346003 75349611 398388854 899374501 567552297 507177091 844878433 671961598 400616372 766331929 274991616 690248894 175980940 723631552 679180558 818608782 884562563 672899614 531532208 926000029 843192676 527230780 438246466 878337451 789449216 81201948 363109235 390176138 603053055 998692146 69233900 670989236 690551974 603097742 704939524 736930651 750158251 982863034 810437703 338717845 933373757 798253796 169426310 731300966 423257054 976527165 462227505 715922864 396023294 249349544 139590515 370059375 975500105 871692112 785181389 641064341 688969187 843628826 695055508 907099458 830362333 943741634 853710367 587424584 670989236 165247256 92665748 921474283 253301231 785125068 721839181 135239067 193586545 908203503 905826148 298063163 55700613 960006264 62511573 204912921 242054779 806312507 48731851 985408383 250797701 914448932 422848451 698842368 457443912 860337774 781206354 331370129 914135762 762088937 747781740 539900503 25392821 784659087 462656105 294445855 4521291 783810798 17708259 711924824 327590179 698772550 97940411 383769641 244890081 705053890 779967029 144326577 449300728 909429635 898934878 691346145 943084343 349511153 714254846 554605017 763870806 869349892 225243191 193211271 101746787 305455951 77734706 681010119 878150699 670989236 181203091 775662830 775040630 885469897 963839693 660444759 467693230 506964567 810242984 593305566 446810240 824503741 942459056 965793302 742313005 451081283 814758745 124545679 816235910 759669585 842136607 539302211 940643019 747679457 971911106 962557336 999130101 607138888 551471008 398820166 703682610 614031332 128576582 962670854 653295508 840646700 331090428 636385850 906684849 507429917 657048834 124721128 687612377 930619303 925264954 799094740 529782694 757531986 293791033 830768470 680989693 145361111 826151018 908089303 910448417 121082219 15602664 843560502 962141190 309327409 82033337 921401788 765751549 18678918 686101575 563029735 134304228 635825426 524182614 803139478 722221010 776096235 58012163 750665959 805261863 369673922 447339670 210089104 243185864 143586183 357122047 211909054 950425132 177735723 119631495 747965271 985205091 140994437 483342441 485838004 507441874 601915265 670989236 682583054 566071085 124563951 930721974 83262180 690874405 759955785 758024197 248963971 379521305 267001745 687006739 443472490 115803344 670989236 895633512 472766404 742186374 660222035 848177098 310875606 539056299 16471611 322484333 779360368 800948624 756162988 942080839 931610694 362975383 170778285 817504731 375424427 182947791 394937119 387753356 905574581 594111520 761642338 823254855 82901514 664984329 782671921 854031543 994082112 345336757 371954660 987210817 503074806 853377298 624875544 277884926 340475609 289801829 338667300 676418208 214027951 731880173 666763499 679121007 856839095 101141467 529870009 624168494 974141707 184038381 857216345 952455406 716969764 716072359 212695693 739537131 807806810 127635748 131833437 847322259 754869962 115347856 291421006 983308440 720803315 661053769 12067946 949022291 969060418 434960911 984057014 736457563 303271661 839718480 47366324 688149071 112058276 882052132 209645724 369068231 280209210 712409343 266798846 778359614 493841390 220249934 890930328 57734677 5188710 665353403 934704606 429613279 848609678 678529528 784494395 937396548 849806794 916207974 791944534 425188668 360332432 24763276 322445692 216316902 489033348 815979212 749882108 465446336 603714427 158712631 387231922 690388695 952883621 12107219 873736016 884714677 765552723 936067165 395456976 397290170 779159355 956857286 795368022 349606581 692333335 282881521 719535592 602399768 151531489 841223731 812986521 817871068 608269309 746201084 613064950 705065741 337011814 966085000 481114785 708007020 183472242 665734473 871738004 270978824 207931652 269969476 916353048 433681037 536693072 780190075 676163431 874801021 397049797 891540493 851894560 964776644 74246341 181937380 808266738 160980678 891907191 158949804 986982756 177706479 796795154 316484825 811765912 995186805 679738944 845915530 555731511 105895761 965537369 468851729 955110837 790944982 762865691 618970401 673600428 914406990 858280427 32203437 359936727 283548765 879803725 275831800 93025867 451983635 144701432 180390530 25651356 429298925 928109450 536236210 677081923 896107134 681227570 294196082 826108170 140574961 958815916 813715976 977970115 18551447 954893096 730331836 670989236 847434273 400337693 785037667 747237380 295335749 431547324 916927765 889553365 898862635 983552329 882340544 51281944 878713708 95035718 639583269 399355738 906234093 352980045 876915434 173887910 978552750 198145128 866329822 254151060 913573414 213277483 445143113 741049194 821906992 850365678 320998594 222955817 755137943 473854155 704847744 210636516 675920432 910980956 135032788 148932276 893755292 839616809 50544363 158683119 818117425 711084615 84776758 203325420 82395442 709695570 766505496 574238738 473934208 76631472 781764449 316651411 731032729 861450620 310034839 34599854 845817074 986099359 756911014 823288543 92872663 9711043 946990051 855792353 711000264 521407756 479258154 500392576 31786291 636974380 662427954 493416796 672802681 785145832 436652419 909317893 802711608 698059291 65563513 141321755 206377691 764860108 37714641 904313964 383237144 819160929 7398505 505485805 155271021 184819412 766719371 83147115 58400348 213707448 836103350 522746910 367703099 483847523 936923140 799841720 456996867 904339920 646272156 710104345 447691408 339155772 734054117 775203345 959135814 792801749 577497903 142108002 586274524 486685512 440718318 2977379 557131568 773045627 829571231 524820439 500832697 973213171 355578983 919628345 636165686 497893075 935483146 760946554 936583240 789405836 109907272 314352601 864280225 971096394 637247555 350004446 448062841 886220245 200397338 605983021 805925891 922505491 759650855 824413385 609284634 512132441 677460505 787202673 333624868 155859525 138298399 980423369 212909792 790736406 565393795 946445831 572319665 699902882 758374231 693218883 670989236 454717419 409951716 834027681 605732470 959671030 984684694 670989236 434777502 178889714 707656816 433508322 520658697 323316767 217001774 275532962 294759949 43724436 30879454 867060376 737478628 892358323 746958417 644907285 17625546 35540820 170783469 726138660 382676115 246167132 822056481 741864406 272856172 786276395 861841958 898992101 654292563 253553490 460145131 787454019 797926485 440980356 392578317 155662296 961209824 875189777 930756733 282393020 896234998 657546920 981923136 68136050 709027246 181805513 875795226 599122973 712064313 353202183 283915067 281450196 383361376 876758028 739506505 441869646 327538428 50505398 720334257 784774009 810976517 589084576 875480505 733787386 670989236 423665676 786713926 358162848 124251948 384758719 724647574 724244375 80206318 256624364 324123717 226375106 301300389 979660619 628010173 376626323 465607283 774937395 179616457 204242545 36933169 657481125 666964288 742512612 379541707 613021989 931744828 694515566 239796804 668007009 876472718 965942682 766914096 605812634 831316025 139153235 869371660 670989236 757671029 350534656 689864478 712576768 782730660 39230598 137405638 782382719 25143804 813581267 499885193 671090721 825285903 700269821 992058332 138324940 322555540 304345693 986606444 24913677 98287486 600294129 986580598 86779809 20174703 829194424 292218108 921592809 517401197 15385203 243775611 354425769 372935869 16697865 953285146 670989236 34449578 82682548 523840202 543426742 624513394 856039176 95030345 293958217 835315739 725576726 38929841 569313535 628774417 803482343 759163674 866889265 711228048 140560369 517759795 753706760 781906807 334666842 719200707 630332407 335238878 661581659 837724526 633255447 4433063 811867566 760410965 718588846 846653764 31679523 716001867 737077003 474725689 161517076 840766486 299224187 53293227 487782045 805186106 101725449 338487385 238903163 398374421 69616124 907121446 890897085 603766952 807628348 867060416 596885093 946130626 87814310 965220982 122195665 147702001 630890517 688661660 702958796 283566066 256828317 660558780 448947861 782966565 42074640 672399954 607598471 912346576 767424548 991991962 394218530 460207988 823660941 429148629 146197552 871872754 782157604 98271228 802629078 207037362 720579087 781158048 740225945 966026454 861161034 710885701 519883098 196522177 837231944 165819793 155736578 705181298 388768614 894030629 945560830 893011596 756019979 191283446 749144307 556443935 967043828 616783610 905164672 598928024 258991280 840625818 950585025 670989236 750292026 719965287 961378478 628303971 973605243 761244380 260529301 693456860 12563979 423449576 406396457 414301254 212118115 770048204 672074503 962854758 73087931 872800652 737778355 732345490 752195607 407806387 434445413 836099527 91779964 811498014 541377984 762005259 826149751 316719230 993856502 940949732 728077244 694771014 296614877 192612355 972243882 584091413 960822003 490677819 971663155 818408343 975167430 358864890 861295483 970933983 404982921 215945754 894672508 805180100 477024128 867141811 527111261 233878501 782369888 974793718 941828244 744639180 857176900 682306475 622646552 42608891 284995679 958437212 743411031 943007748 230577394 817910321 676194894 363356715 324490503 531247094 922731570 410861488 838071180 304475515 652589392 947483690 372767828 659380291 22482976 510941142 69332132 679117659 31047196 935549181 411124944 155120209 921042054 270267973 244754279 662475768 684479288 558634198 893282050 159254085 105247844 783830872 460305849 3022463 830339207 445161487 502128615 747753903 955426654 724239952 885273268 331252140 908202501 565829777 592260702 773623332 633528565 193214417 654370830 541851009 862734106 845019347 883933456 11839013 237962789 629079091 234254249 95070094 427502170 923840782 301979490 991457483 801578863 445992923 804591282 696791373 739658089 793140874 998036195 784023123 378798105 550586341 193500396 30731732 52177994 302011827 79267652 364260724 190816569 686403312 334941682 12337395 977865518 263620292 195842058 809013742 910047272 880057709 16135933 894603813 511245685 998529380 670989236 269897487 784839057 782318292 641955870 848002560 931300373 282290823 607784495 599274836 585165874 789027214 690870422 226499468 394749121 625825674 806762675 116635199 936955247 282651003 136215377 909522499 998599181 850763441 266192032 358071894 792761897 387662150 635452811 520098425 957270437 462000484 449133441 122279624 173571600 566334119 67305042 760063911 999361233 683029538 323233167 154254141 213765769 800042866 213320092 565008913 966026498 643821763 523001439 888426689 226539499 578146856 137480655 926212939 601863262 863720270 744592367 350944261 402157154 970718857 882622666 276299757 244622379 567087941 891878634 43297604 640733532 750348245 714706587 766671732 673887898 423678416 228394053 697939346 726721463 565102482 766783272 282242185 514197095 819387421 351483524 772553060 854372745 705050377 336276271 291686687 895356110 556963085 908576744 339539823 690681027 979789889 349321218 804058677 616172448 890915528 318218608 915723969 6493774 224321210 271938412 920779497 402286449 755264716 600581403 797281808 788483351 974918412 866640506 722973608 287724764 953418111 537244021 396375766 613717244 779270639 741510720 271522966 986653116 716237772 824862515 391084769 613395488 691004014 26671567 444024325 577668132 933994952 48618071 290129672 301502716 902496070 395205662 781706888 286627548 879609946 771048072 896071774 473696297 978842061 76024907 908247638 846356761 834256404 691871629 715467170 934589248 468927846 443219694 79878309 643908840 104665514 396450453 262579272 670989236 850785146 976272015 741174597 458503112 778986197 747429559 807274349 23692614 748338357 196984134 5851571 238691798 10695571 820633491 961004107 727397783 622849273 325903391 123984501 536041978 865880265 262204462 108104282 759535196 924493031 931732412 789666469 850209473 409782516 673033393 777344163 929312788 189365029 812121269 274950770 273126699 59275466 936379160 760388553 735572669 780982927 754674467 942574993 980028929 380994646 638946467 722424854 710044363 194154960 828111317 711895062 688471080 760776253 804645221 878875700 649991038 652777717 772606477 843892081 912247634 652605092 932573123 660835342 264947033 263042578 186763954 487813304 662873494 58722455 133053934 741526753 976721929 854254940 676514797 764615698 98114548 981908812 906254147 970628578 235071695 409847274 862442987 75364676 386113770 225416815 320385337 306869849 936260709 919558513 774504754 954079587 982254016 118640570 811544102 186010595 917017080 348276308 932530335 909133648 42613588 599384387 436377834 770507057 799404607 101686847 181370795 170329136 222923151 357728184 835023149 540598287 736500201 911393110 582032146 949801529 15765315 36609080 308737994 25287802 788330684 131033244 592819417 545072165 807022903 220138394 230390816 950104396 777323883 578896234 981711627 896594448 781596151 347128699 993477325 799034550 578252511 221778629 110795002 99156632 835580855 955886753 748377938 887559084 543545330 104683494 182411821 762042841 759328681 835341700 546783783 501475201 914691968 404750474 931929863 323411963 284711367 452705441 337646099 9529594 577592822 837222084 682440821 936670417 406635187 371330589 153786346 889868311 738563149 964918063 759196739 107173138 900004630 977419008 731383196 872218555 873115534 973134327 440450690 733460264 893703631 893479555 960242046 786783640 710440982 22108164 823170329 79159341 204883907 211074708 932290569 177255595 676147760 313696424 593582319 966682209 421155020 355119792 64637189 44777209 690005485 689629540 971790485 807840199 947135013 787177640 670989236 898041717 867136412 865397480 779139112 874310172 796312564 594865339 554432212 749282423 767210509 874612144 665326817 111639854 274306492 708552142 587322306 578628502 853074857 990111815 933477439 831261008 95144813 955283600 765482397 208833762 982867374 977241488 602495058 535591723 10250478 793104232 665743778 887703325 614701150 877099309 710128876 155741312 959297366 30354478 458604107 790762970 633337980 394263297 474029483 842004026 603749089 976806984 690547545 150733532 114021764 544023824 545164662 85916366 299533771 439038577 601422358 831280037 412389030 27417947 463392103 937366547 380523107 732548913 325592699 745205407 401737339 894945013 741605453 962387620 670989236 200220945 804228626 763388241 396609571 370236236 780800662 818090935 885175574 691194838 797931234 982363800 985517931 970813764 528085670 568787407 876127746 286306285 876693033 580531393 5124884 299567329 70479788 912903320 779918194 703136335 700344178 48795151 723013241 803216237 996787872 905864930 931382220 137593371 980426267 855959087 697719463 945901272 516837956 382247373 955154037 843038920 65091071 993723098 907564174 933121654 912954145 90675997 850633037 607901264 535932653 518681359 988090958 827755097 824976939 671896295 703763961 955727221 975407320 639917188 778223156 896540221 288700396 205448979 704247962 552856042 93920857 525244806 952131802 582446110 788676096 530563896 965668912 707813342 554576073 104883078 601216371 108840196 571536051 698141651 634475605 152022999 596968660 434490561 24193784 379649402 753744426 261970592 66707452 616338120 970953549 965856840 592413886 705226839 695808315 706461119 285506128 374770336 61723395 904232509 196688923 904642919 851470469 157063320 520124356 437213159 746138965 701845261 221996786 775824602 180323408 880068271 881361441 758256791 887934580 783183565 824522116 706318858 859233939 973072617 902874969 722834237 482919987 440821239 657820019 842610006 810406536 771510577 829966783 740987444 993089508 575195124 46499500 913945463 5110697 672864979 259534762 764984061 284927611 261408751 986409684 927940250 16858022 66717602 987889829 994335000 644124206 640181485 582507717 800222773 204995195 750324996 719796112 889112575 870423608 929111629 61542624 960548189 862261049 901243759 581449364 295364579 297055331 61895864 52882297 483794208 685859364 744999119 936454469 328733786 968664531 521014656 828860659 207734147 829097452 406475772 287069618 219153282 85307956 997258279 769396760 789831887 629268364 866962839 287554462 837525465 989166000 504258813 101373134 272099523 866885082 81496448 999196898 304243720 876865849 129017833 919964826 279307186 276295867 732041739 243412299 717125148 934563920 163599919 864241577 608916123 410545726 732693802 396782663 790139117 409518540 811864872 711238435 124696224 905888413 355585274 824328275 214212185 171209790 724884230 614388892 131325659 749247203 482785016 735128892 938423404 999257426 261912177 909030304 807352127 933655425 704825402 909159162 164296652 825973945 943474068 837637527 808117895 750532251 212723730 401993 115729907 727267680 142374921 925334377 230633900 832596162 744372693 330068939 898464381 553781729 428702721 523617728 830414993 807930851 927960447 298282380 543063879 695056117 811404455 670989236 159439970 483662223 404553951 842365526 381522471 125254814 854649244 944894183 678309492 67614059 99621596 267541473 581895384 828139384 709101098 921550883 302289261 703549039 725011320 474689101 971603213 450640603 794237044 690205836 34777346 85086343 704018522 703676408 800184477 844466636 336734496 866832932 874951719 978639974 805949401 854480731 481890648 175980601 710493768 322514891 560559196 93702015 677754199 18087559 839079809 657402785 691056523 259473033 522643066 274895647 603750962 721735340 61974444 738555824 216777254 223662582 798490666 900648523 768828114 774393509 624795184 945655554 111610693 790469705 263751834 559794157 995936856 764464303 619530964 735966918 713208738 870871580 993718700 991206381 426972354 876291018 971150592 842880764 908328848 800092369 160252657 511200533 463851317 496613319 403010028 848564978 82525917 755135226 69470087 670989236 628827932 429402383 711893554 968125653 705223805 317100519 820216860 238264705 881155329 615248635 909627072 547307141 32174077 766787490 828099303 226360100 683259648 920381541 952607454 754068950 86691552 13268675 253435456 127858533 748201811 792367126 792368668 851906262 261315142 831930996 543926152 262719781 232890690 640540115 383729867 745257170 785942557 924558469 429407862 886823179 136407972 707729059 597855690 978548580 992852645 948220886 990221026 17933529 528275964 382571121 578762940 462115804 718514750 896223844 983109308 818629927 942065620 751244157 563720912 878496277 342779722 456260237 454108103 118341498 823133866 104385596 980880171 637610456 874128165 312225369 284461762 957966762 692386362 830488815 755444537 314955799 313041062 967144494 822864633 721869362 438554445 321523693 214655055 238234850 207683842 841846873 639291783 159453086 240918011 936407622 463470081 254683892 130054028 71124788 260925905 746522178 731621602 562345642 882350419 243779518 381854070 3341946 398717626 821320641 480055896 563348529 67412769 143116600 260462488 681792 866806660 799113507 753109830 315354964 756985753 990895600 605300837 959402520 732239969 861084449 4345928 274708695 94853989 15345417 106660198 696308671 761406742 61029835 442188169 672340227 158488900 657588086 138299099 121125497 809666079 344225249 651540864 972410409 826456688 596734560 554911818 284700010 948235867 526148350 902263941 840971073 398003341 389639541 266358049 413524700 142573619 117585604 391300917 402047045 839263298 802358663 433341109 431365771 383910776 128861538 831007074 809314126 691618645 53871351 662912793 976416788 670989236 874617317 419891972 700324880 921718147 717787409 876782196 99155187 677289681 378373119 785870579 676307305 191450818 880569636 517696065 54349402 267260939 583865367 798804676 477099109 880697329 918826312 5168583 673876250 818581963 729877321 856965840 913743679 962273697 82790395 607001251 787035023 934083569 597368015 355936797 883984103 685570282 976102520 80300676 555540814 210633282 943835721 744530727 132031374 906566160 965189924 770441048 907425773 569920722 200371545 161786518 798021674 74225437 948997178 523556128 581542373 403655377 14472394 977971889 952040776 794293843 321471310 196515657 440695972 312809535 873905711 300807917 680002431 636813777 746859304 970704732 703849894 646757371 694867295 777824660 518064250 177690519 670989236 961102050 994075264 197373615 85840477 367372876 909806031 846486101 110470932 943103805 926785590 362871544 913280964 798228633 882420886 109970356 123136031 65645340 103917852 411137249 104172495 537970091 705758705 676320886 378012004 669335082 220843833 788608352 692764522 18667097 72486632 406281168 41586820 358242564 706727246 751106294 346131053 379150696 670989236 974715928 312065309 251043565 608295854 824615781 988478572 630147666 824107373 158192551 981197081 350977617 959231100 549324759 388365492 633230222 937811699 450986460 989298820 931640787 231218584 348243957 240625521 192133127 319486655 793954431 290703699 918395159 960878444 862585899 706059273 818973343 348691784 208886982 923675877 99796252 920044948 83282204 790698502 104955459 292529582 469303504 299854329 592606038 504538049 513407448 602503100 611524443 792658488 502527107 72259527 726444084 530465112 800134685 845404786 408460912 971971081 278156650 898381848 673676909 112758227 354787309 38017659 126886799 355562455 559625847 66646565 859406429 38576059 573455529 729532220 432281298 995246112 37540119 126883497 771538877 98392995 709749202 148056015 883794534 509384807 734345500 139350100 757868789 7577093 838947597 990774398 52553652 247532061 759247185 685378892 675106603 562415942 345703059 902895842 58209328 560812371 670989236 966072507 137205611 531953866 166437285 659196337 300055957 796417995 8361819 757733285 371417288 497722976 812552425 837637758 947035949 349825280 171849239 454903801 454445519 455629723 575809742 584826068 784028410 774320588 413614628 858518578 492273723 241423788 615484506 588896862 741111322 521952675 571539746 625986731 584666228 230375796 861622590 432031795 600620760 969013679 735731294 990832992 100533813 764393375 678334943 856354560 563089619 571535815 311481214 937418766 135405612 143104104 570980074 907359869 699030381 370578250 371562226 203313762 834666904 834535979 442893463 789314628 357393657 950030919 994475033 764913109 874107655 60557800 664640483 769209494 445471322 770882679 732342077 933763466 596832981 783115531 751433577 9850792 578105148 374188452 924546423 40951974 400906738 351273421 268169853 11922492 880149224 543276025 891979986 154413245 362943111 91005565 87264840 281202280 360158183 882766980 827969469 99820288 814166955 725079693 749485914 102432394 276816595 713047076 456007234 27961294 582855008 195499774 778455908 146630956 670989236 728921621 159771382 795629426 319328489 870778891 738695156 154744449 812141312 696755380 350182510 590270274 929965028 979637067 872418326 692676985 456290820 734058283 397479577 286282299 769602552 917985966 697906904 447363920 432915128 182963172 187367356 715307848 912749019 99783196 988704495 604992743 362147322 770091435 791244222 982212594 829071846 265650986 220709499 574555513 898786627 763285808 215074976 165831343 186198504 333822092 221181329 975754172 861714576 845848686 734983124 979177391 405097128 682865155 196836093 996244867 964453554 781570037 915862593 980857750 364477964 781193158 485923304 135780424 244511287 980414572 889341013 816397677 958621119 320913437 701450726 444586076 727205898 86835922 438675990 617986577 30094951 963948919 540517843 301109642 409554274 884845023 289025619 28958672 678779959 928311767 546871381 83306546 993048921 152888198 824624016 478723257 748436970 807686785 744353261 753180192 688132301 748103621 789933367 151950175 243779031 754698715 843194960 819787096 436182200 153819755 23136255 252133348 162739490 450478018 490382624 246791717 629898588 632727232 278182840 917685144 754845830 717759089 852270224 881661074 970774465 836513672 778859259 147499076 452920879 688288727 182456235 916476892 685848062 398220749 968297103 788428902 778856232 816977214 543608346 173960699 899862240 450916238 198325659 820143046 961864184 644810788 706137585 700266956 444983057 450237229 679108132 811338133 210730221 434383526 161146134 353759397 525826558 727505031 842602206 722111498 820848076 466173070 670989236 20548129 187774712 577222883 948689647 680768883 892336705 984828522 167969917 125570203 160198360 872790078 246829437 3788796 723134510 668584861 979292841 768174159 887316075 657787343 281262494 855696969 446513593 426052249 719996083 947495189 334235988 207857073 290334708 961297982 247398413 746771620 974013812 725974095 886331109 851529791 878517990 523765708 346872528 781886296 740795144 214331981 918958722 643892796 914261492 15689861 313392742 537955815 783116449 960797861 877388560 836520310 317026964 748360278 670992869 936404147 847099269 899480407 687296778 735727682 606562565 279453644 43472271 334326235 960873933 221215838 88939399 683768256 896993603 476936392 859052534 414815586 196369084 595087160 39193164 282995715 408842819 704713581 848129831 851554042 370572692 89441382 154958223 184415666 996494467 14826616 590543150 706014942 932116247 824559207 960229171 157528046 318082641 998755611 754507371 685477235 864810100 761283347 438600912 640228691 993794707 331856924 527469294 469287136 90982369 876683775 171204414 861298460 920262066 139960515 398204503 119660583 796893771 711506149 705669175 632889721 670989236 892130120 534833921 869874949 705734592 673141773 944471243 392094407 965513860 492430705 680672372 855226861 375696791 306295801 78780746 640607551 843926884 839036695 833894441 458192167 717216209 641197300 215746472 970435023 967404666 808465347 702085071 926365886 977920503 929870522 246165590 701018611 432562181 238560882 801332895 165021561 682445464 18678878 738711683 329532685 835120270 283687710 830064823 853189621 954203255 100615240 384164456 9071398 799955104 672578566 809321986 40315966 867095522 117034510 546055502 927811564 789355790 549434488 124923683 302304201 492729989 973708849 237987390 947361081 756136313 193009899 40890651 678517734 309230694 891184539 804783789 701393335 713280785 701029372 132503480 51002993 929582993 188306268 896879056 944692003 860352528 247095270 585204317 461464 180321183 853192895 873032408 58817728 482838313 817707862 688521242 503544792 779857438 943647487 50206127 79787956 989807573 539954870 974452368 681244775 560331903 835793840 386067361 189464198 933175091 875737632 330646839 767912452 596697992 460263073 911420892 129234465 665066083 725875081 944459746 340969688 269249878 810570425 577690816 546765067 709816389 476437993 337590091 897017894 232097100 45008035 427424991 298828414 988230563 524422049 433127918 991946292 831952229 510960345 935709198 547809991 937533932 259178829 782345076 330062159 333012499 268540963 812252130 691617827 753943600 856293392 168194 1972661 94368374 12951565 414299493 452541139 637762788 25354832 942918603 811385165 805684507 820159451 60882551 648676301 215964495 997131269 942132611 321195405 440449093 713095979 682642639 150085771 683177791 897307736 801080653 943515785 816146488 994723577 971617060 177554493 447058462 616357953 292548666 57656160 750696939 372766356 967694024 147529471 780653675 188651983 798854521 811592608 676869474 670989236 846928682 512786022 22017941 964265508 670989236 754056208 974388206 813724022 12447692 878923952 964484078 605540794 866933018 270058449 832721447 280016099 836163480 836523310 779955399 751935947 237436710 681611075 687252223 833297978 565767713 885277284 610203741 335880433 597111861 406514369 963660452 328949318 635100587 432129558 95012898 77498831 916812024 638528327 968169697 228395357 797111517 731733736 906840204 925868499 816623401 564204372 50798858 463068356 323376397 123634058 688033173 96896768 595767372 386911913 80800753 330001895 735506839 701447590 14505902 995947413 884049211 410767938 524262767 962372807 833740648 452696299 606906566 185273483 36701330 463923519 771585618 42000949 293555557 689465633 725505353 838910215 785521346 576021941 758385414 314687379 702591096 139362819 677952180 865993225 846013044 25653552 616026047 727113591 617424103 809884082 790557394 963266256 406817587 867739111 513904502 543740109 909114048 694868901 951380747 45057913 235345761 624182412 480031438 581812995 889087951 900160983 628806751 876664785 997228877 781591601 756350163 807401776 333813571 697284509 604316573 836972111 567776402 16389879 798514794 613546143 871146819 975500034 202885834 29590722 14336447 258088947 682306699 682841044 930483879 773930965 202554002 27350978 818079576 626259722 713657705 370678753 992960169 579198601 788743429 670989236 762895650 856978007 670989236 944131353 59761746 570101596 23484197 520979227 793553997 505188976 860434363 686490848 461109505 214285978 920862626 432658004 253398641 843609018 731013663 69189198 707736377 717748520 479979870 503381511 636611056 514385063 754832827 719984495 888579368 449426310 936034424 177748822 995615861 979422086 408739557 905623610 412115258 662096562 909373984 693259643 225389381 953103744 953543909 246347369 196723026 737643232 790109950 299322406 851811542 652354798 778906715 498139148 894146654 795134697 597011481 838450311 7330854 734929406 56596890 826016189 991953288 441267236 809900558 259855599 125375976 719283495 959282551 752971009 710038206 858719519 316230520 747254919 657150781 246457267 158628434 445470069 211247990 31940894 750383823 603926801 319638396 360960252 697971133 820318354 28451400 999280458 964388848 32274535 987196447 577173598 310304823 670989236 605246760 528662236 951610287 668428746 767522942 611813037 840418377 827512792 858759073 67659896 723122923 409196345 35606097 277285208 459235372 845581684 922060044 757981741 856248071 106801151 954280109 618202162 90338451 490441728 989729512 740369255 35040641 700979504 818387855 569816825 629065203 873647210 763764921 831429580 178454758 852504846 880309346 691813397 708683159 24382092 935501844 635410661 689653122 308138824 894363172 15536359 223595057 826524804 262270249 804138760 855821389 782344123 25305370 68576896 895241087 815922860 79395719 562857970 947621795 956607858 678853434 878535921 668667909 964485053 530438756 499661461 462747698 149674509 865746102 368491783 670989236 258906648 59599385 678960150 581462373 977330724 670989236 737447229 818304798 665420482 127809421 681855713 168233528 860594967 852158034 649356771 729650832 661076720 661477502 543247066 830238301 144070114 332232068 755853341 56802981 828348714 130785304 865142776 422867533 797338723 479708264 975057222 420071560 725272514 29410291 114638326 65877461 32419016 335973503 670989236 885490975 188152225 978194943 975592109 159303790 302987160 559744709 81353056 950868100 391065925 685607842 351919994 419403766 940645279 701198787 886005562 500144140 498999150 137420891 112428727 317091196 32946583 149515718 825024920 197740888 562815532 921512470 740632571 850389293 916001799 659713972 449579392 567514616 264050317 836782588 414195281 438513174 838830119 506316774 492468972 744707494 697179953 763386500 270015707 222994716 907978475 965424050 48032871 144810860 19850456 981936300 912912674 853167064 678452429 712054711 135709338 908368957 195666019 884008854 619776894 891674222 572509358 911847579 738011346 890330997 232102788 727678772 128857298 112437624 800135039 766405331 870819877 708554924 861309595 941421488 697365483 158637096 589651244 928886452 751557359 681849677 48938606 267826255 236238900 550755347 410950512 767588545 937504958 46981063 932706196 908672521 449735520 299443794 924007366 75845105 933525971 696582473 811837477 685732103 465597323 855242095 745875181 807720598 902505817 786712619 523698828 410550859 541587338 347747103 755117634 791665432 273741693 991126690 181904685 637932832 909122484 673116620 516867654 377527055 896551135 182612857 972156685 937032290 460448907 44449087 201803698 682834182 123473436 689897955 569853951 926776551 493891931 232076297 670989236 789054352 59311718 380558543 648590293 965838974 250100821 196504829 755158678 400494826 65302938 916197285 221026562 587823790 958062089 674470461 676163087 637561099 750626334 890286497 808030794 735734726 405786030 355220280 901589104 854119654 85808711 899787025 227196492 259752968 818799475 194703741 205653356 705575572 236660292 821718610 12767032 491648618 147966846 611529945 673163330 932797795 47127928 145899359 75527502 871943513 59094907 918627063 813635163 957144496 728787400 541440903 99784751 810090045 813552289 974300721 590890741 73162318 821839838 694933346 57604931 279700507 19028657 305460222 916374324 365873792 662485331 793948961 701113449 816760361 606925182 131332235 43398848 982835738 126427006 955085571 57625089 147789368 948181032 848270806 947127507 616558225 785512404 251325877 235593550 689878002 905395545 828047618 524369349 657547480 273849714 687270756 715296610 778247934 879205508 896111168 500373500 902580317 844296891 569023222 967619202 588864576 778359171 880893500 924984179 939654279 112530876 760532272 832753172 317816790 854523728 862172871 269709828 150336724 184044740 701639686 750459688 618388366 798100542 722270655 621730478 38533319 425729959 162726991 655421516 197351706 178653503 453244974 371382443 157128861 698649065 897629933 131431357 853566758 359600033 126260025 88181915 910828113 929480495 563949122 477651755 626272433 678954038 330912576 711279231 746456736 817546710 878081724 909075278 405689642 769483426 277930947 862252599 75480626 751497871 151063963 885587233 846704451 127083441 338261659 806205286 675813187 724409036 851810196 740310586 660192143 360926993 983316723 976960229 215482331 923338868 911470465 278263556 959022355 807924167 123007423 512465071 678956967 790628697 354199017 21212967 843773613 200743783 977317183 296257460 334032975 538660689 944654608 163535272 407997936 697926298 631050107 998683501 829244959 278937135 794040531 788850346 714328649 652407822 920362775 778161921 553801208 500965310 902122876 102907432 557312234 757176760 824245202 872494459 870193178 260360683 763729084 794789011 875999899 599449090 981430023 838022152 397621619 978241582 527592404 918703515 742862264 140985657 744550830 816494580 768056768 487152352 497418261 719064900 696332515 533722910 919764837 428667897 906558443 741016842 809666960 541791380 911103366 690421891 815428094 977705994 470735030 863473717 472820492 966337406 356186661 999293681 785589311 334773660 452063056 732007265 859478399 975721609 873679189 110106127 746862499 999002088 40116026 853130887 685611885 47727406 774570280 96188797 512665573 88626428 459998027 974071910 899792538 443453680 484359291 319573113 152477656 489454350 830566396 246408008 703606020 918779880 392673585 794046226 972561830 880063823 557801949 984465409 624370376 81966069 42877493 987398668 737091398 675125593 860730470 695687571 547120257 763948932 653633036 571570416 764436797 991358155 717931457 946372372 785217043 989130669 863258863 637893036 584011545 777737465 539191831 314410573 898605503 730202158 474772906 199031009 911318191 912759635 702668599 323701933 961306855 993134333 827241198 26895871 61402382 52506715 670989236 886483065 511900847 790040928 691338165 917174063 21262248 401850467 7375829 223669423 880849282 415741790 575263883 731204125 866602183 678149659 977309227 652120029 235503311 5479124 123081515 902643908 416297177 107386094 941302606 505065334 659255366 568682255 255090753 657099951 315260183 865907344 840717723 10348114 36589973 794719249 793672437 769997405 796755220 435039083 973060396 166316044 637977504 106862950 125661087 30111390 744702375 722062598 736549092 318151556 539974250 949612729 937359123 56300754 928776296 491088875 437917820 786944221 894782490 945763456 133379824 761018635 955556462 685807484 429595088 897105731 658941054 208944059 845903743 935274902 756678728 525790671 769940475 136871334 936017992 215040904 184953821 80286695 595734646 684934063 383125270 480405889 893207753 432250976 975834390 994466209 33362725 864337607 883586970 689278894 94397702 231157718 803193865 917325033 281605482 764327337 115972729 605908571 945937693 427597834 752500712 695512349 673922984 825166587 346200220 16712923 182928474 238966480 670989236 47806854 965367988 363289847 79166755 437966595 330840072 701716306 695243112 722384237 559231391 774947713 845885137 745365619 868356039 922593896 838146117 936572979 677157925 36165896 109794253 810443002 973211317 218550424 484527855 464094671 913095270 230455144 569484154 556891957 978272941 679717732 673280979 760277608 222739130 871793482 211971656 939262387 720972068 424647615 472594698 786955419 127178926 89862147 678908757 866546001 586683576 708742202 815319610 730684870 998623498 694644054 952125568 299797699 67434155 203588324 905132338 855031973 375431321 283636223 18599448 379273630 789613278 381869005 606254253 774891045 778379488 651247052 553519884 469038099 735979411 956216242 772783889 394263300 693458644 227453023 763539090 801191554 975724018 835474280 423038472 872564439 332545363 134922790 745940668 305482594 696232450 723036924 681171170 686816437 846112421 647165128 598069390 921707961 312163815 945859171 783470326 450473267 865137064 726699683 230082444 622775840 427853860 963859019 993212602 614426748 15744976 951944516 134092338 684210811 882212840 765535932 62515544 459910910 673632943 605594281 905244996 425902713 979690920 481294344 207861879 340570037 187246187 851866042 449231515 738035848 864164384 638218839 748317887 704598369 187181478 930787334 15328958 52949856 255277659 737582585 358999458 965164772 504937421 899201379 646438628 894393400 978329431 670989236 932560969 473295957 818851546 968839544 871580098 846489825 507145965 452818327 884431723 872402677 504691022 981964486 867503695 231171227 152775210 67414082 837122174 446317568 899283585 944289183 679392521 221064161 959827185 490720584 898908636 340818378 734871306 670989236 682249678 857949125 765724919 764034632 6694028 567161383 619294596 153817951 885591555 944219278 495127056 955390470 685610890 984163551 988921833 500329335 959131388 484965005 680389622 752764937 373259729 977884856 445886667 977497486 963847404 725252209 455664324 748564501 806347925 932361451 948767734 383056736 796275941 230289861 734705898 800656205 132615464 232791468 855825259 816054773 358095621 616949903 440628169 590502272 54764848 944806225 675836328 760153353 612879730 918632469 785234647 853025258 780757079 396209502 98532976 830155634 889763964 194187086 255331691 94323194 588803946 818609764 848418956 471458130 173507079 853441081 153569617 742965770 606384792 118774779 572931145 336629504 671850092 968255115 977706960 934485296 514983396 139855329 108731341 413543003 924942544 454509186 951336042 609902136 429919810 872805617 164153582 919198254 969935628 184287606 793519131 819322902 9575189 783247170 834264651 381594210 873605874 171882318 306768372 264391239 734326109 417878318 473402019 645057157 878236713 302602519 937284007 620452880 828304340 51976937 587330041 264455923 601937237 461876247 298071700 667585570 709357251 724672204 440716939 539313525 501739841 496669779 108227857 670989236 372857797 190842051 704314879 855928605 737210885 247479015 760053273 177284132 129042300 383528758 405807411 699650921 164163468 590393878 967991917 491134354 966948570 348186722 781907572 671943352 189501203 807581455 981005575 595739728 119223929 645189396 855324882 203241414 150681380 773883476 77319234 161419341 447115852 717465201 855396766 501486988 439491108 860869833 836367787 283230540 934669066 998840738 809964339 58989852 990834019 291155581 746035583 920662319 633833230 782132187 786361371 438370042 282024737 995425227 21976178 5059051 854084560 925834609 805032500 647263256 78367501 73813334 381773793 921193293 134573058 950548567 997191831 955982164 750694032 798242343 846506565 815611981 954564024 13217437 959260579 692950521 789237326 863538352 887328513 185465915 614853361 620042331 178863709 805865046 62023396 854379195 555518722 853703982 335513530 476480163 272136813 878763028 242216019 949795474 741022419 744988323 919274138 716360042 905444162 157311973 948371954 626295680 954485997 139222777 399756336 870311785 540106520 342445124 254899313 161435340 670989236 992408979 793179026 751448900 58872432 916694974 893692773 363225933 737412850 298541512 168355793 222795605 184091210 763935617 486935918 896809636 809970524 959391361 998446317 870126391 349206653 359831270 815991546 348765049 101636775 781875673 976201139 640990521 850964034 20277104 220049621 723806089 239527019 806619005 992738829 24559313 811656014 707660212 721036623 836195122 711262743 884074905 459772887 830816392 994762502 493891717 878813532 990745676 466193811 394320353 529547041 70884923 322704069 491733423 879744684 723713384 286867982 870826795 137573208 942775909 950591978 103155402 128393917 234881835 914771866 286145234 725115976 833484001 357123232 408412456 867828847 906205422 969060118 272519436 814406353 941374212 123089175 997074839 251576014 27893634 759150299 996327755 207511690 27009720 220090556 726674263 3406401 66261816 558128108 687181020 846919347 253863140 363917598 759777412 398408774 765685497 392608390 930832298 63150443 114735612 251372391 262770024 799947484 705280020 966479051 812967497 639653241 908402378 912793246 287067881 609104811 360806263 817393847 948424683 903490708 309024799 577295386 907539244 765187090 622827783 887450020 691119072 295770510 662862583 195274777 262939229 816548727 25219529 449154454 725291881 75596932 311287452 677857569 365366799 805591091 952044417 617465981 847595469 976663979 416863434 962952678 179868727 917871047 621941329 305074116 981895184 634002658 427159195 157207149 610148483 459997515 967133736 993477438 343709643 474900181 440727770 70258069 671875958 675388998 183260601 418777957 36053705 725027095 188106952 836441466 403340215 77942388 756563585 762043754 595450836 416443623 299537291 970321024 73104756 973929318 70506373 761494066 329011936 489650182 904504615 657170465 773798335 614646925 716140166 736190265 842194950 942647864 841730327 751997551 977608872 870234568 611276839 289581057 745053988 930806433 108065697 888524507 805314034 904806221 690908452 597787687 670989236 389859070 200378918 399472163 706226874 926442427 508169367 816127178 907647601 955104651 717347025 275651653 334699605 367509135 611854463 23935274 853762208 235370995 901920216 931206212 962630668 670989236 810718419 943091559 801724887 524620973 28621604 977171552 775911600 705165351 870641208 696578552 634137806 873901923 984117917 709945882 897755280 751915702 553579240 454335504 191596534 578342497 232908588 170607695 99168811 863455220 802410160 704753454 272815316 724618969 815848921 828621383 704891175 851995886 631956672 560344253 583727979 948614482 661785690 817819022 634090451 484848475 242228358 922288567 185752046 858508905 918196839 984229994 23284561 479017263 837685358 537496287 953619740 454533360 843718275 115244576 804994114 937981439 776492914 76844280 456665355 862495096 740046050 846240945 763936497 875169838 219878749 525979987 40817118 241433671 637798876 461590484 694396265 990245909 825211734 824867217 816281264 663356724 993577290 414101649 874019419 922905093 365888403 820457533 827551471 498711462 859040359 695992008 881804894 945537079 862895874 282470293 495059501 695061554 826827370 364159841 727319204 760709730 781866739 53004997 701475681 796305550 462259473 593310354 481442150 388048121 276114053 968113331 436967383 796486931 765309023 670989236 196913906 276564676 670989236 61348900 187643718 234918296 709065730 976454386 179054780 857770101 977034521 125722685 701447550 433928124 123824662 757330362 76394613 850109296 239864084 188314996 79256128 47029404 24914069 914934207 938060902 61652129 670989236 378678618 14764192 752946543 774121970 94117364 831309358 260342124 749940457 937749646 878493106 886372005 743239499 853459434 408858625 196334213 786219560 975781062 351898634 280877171 850366941 747363435 701304459 264493013 812972738 780737697 586938453 111229333 682287666 804278777 492722249 886812104 389778633 898398218 482495647 199976272 530920281 273300205 706556819 176691258 700903935 725082608 927923349 651234825 613540581 754693777 827379164 287475670 517722061 486330443 163764634 870542324 768731504 864798263 178521980 871230859 700290495 997688216 86027445 990858978 807003259 996270463 768951309 787887149 470820274 670989236 664780879 410356425 698494728 794608370 991028071 541323536 740379446 747402177 831632204 609149450 720920261 466459590 4733811 84864333 333952942 182871670 875502165 16882013 681497657 437828525 606640017 852069377 740805248 74561250 263944493 933868755 784038528 457343234 293132864 675406656 783842905 684297772 952975846 675857788 467626047 257745551 449042773 837267839 848739652 870705404 559492850 731840524 795693891 569988066 198458840 731843526 813138915 219176543 663149017 436300356 735568582 748990675 862658002 687761761 424909982 273357398 338523959 961097713 706753632 925124493 685962860 859353264 881160010 655808963 921366650 353041857 610773939 338282188 35063684 578567476 637098809 843516009 705651245 632106549 786314895 381983687 603898346 937654843 912954375 672842886 950818393 938056513 316242580 673468549 689362699 379805575 670989236 620446800 853756385 827408931 62062252 207761736 570452753 495373509 672339154 223864145 618482329 919794051 7807118 153924454 296182792 881677782 139798722 598481306 8450524 212236873 978230364 922865099 994360286 884748038 409168732 838752088 113191504 595195461 759585596 486934752 912762680 230022640 195489515 734694433 110482033 257007508 850809970 909600911 947433738 146822649 658187000 202985955 457477418 696402597 342987512 573110927 103368037 224367003 835008192 598768828 764411373 270095173 675625787 535394392 888034283 814147944 948429168 478485268 10109195 930035314 212468217 662799604 973889806 635242836 173188649 822458807 820477187 182164065 819051351 577895085 535633527 441806405 88171802 751376449 464993209 670989236 365450720 686015930 790370022 454115334 870740959 960822377 494610451 514274426 443014649 354356532 469644152 677234015 710797118 943698965 68498367 196800215 380005196 157954352 297743758 60334051 922820799 888782159 399711684 739122656 636370659 563464979 292464895 963876937 999308126 990338687 605726521 260115616 742962760 47099720 389219977 453162759 341792633 528861402 395888773 577234464 842592926 870772708 465221346 305380484 402663887 948947205 773688616 710573650 358150450 2289456 789293257 778732340 808926081 739721430 726227231 668589342 874121315 204661628 910534639 822789478 474511967 723842424 688958876 613893891 137191379 284004400 755354160 559934333 781899679 774320956 712202540 272550793 87317494 13687857 442555205 996408922 702695066 665489359 694452021 881757443 286844280 784263991 445537667 793012388 594973589 871270498 81130971 777599602 69491295 524467571 848347672 671862531 413195086 821158147 537651746 626590008 838310161 817667680 258380369 349854261 823049513 903897242 547944163 148917854 436735023 896665967 945877654 564535921 70650519 789234195 80769198 495770115 45340953 872593302 246506493 789831535 285873341 235752707 407040870 729365339 822945220 36848230 724421793 502928172 972463629 288962795 277484905 890763083 811853404 54629845 858416918 618040056 314453015 496545318 835451740 748872476 784896226 603176376 459694297 17968180 774392307 517395113 955461708 101937758 869306103 777469837 228243009 972864047 788111831 957822871 196333241 92271541 544233740 572704712 307661568 512857578 985643578 16408545 850925742 343440675 945696310 923376192 338439670 671752206 322952941 998945605 817879978 502597446 999940025 805358416 431172935 517913201 7459539 484440427 62415775 466031362 642496444 693495151 161452461 938931653 272768523 621349517 118892479 609677473 777960819 919102240 848540443 940599828 212253112 157709900 468777911 438861994 934590444 767370897 558672811 749324847 399237557 717551057 382086750 712941784 467148756 721328329 26538168 261384391 911954757 199139189 902617753 254639733 672215698 735894538 791780158 290402258 933184610 180026730 913660321 518337120 959708711 768851238 951835842 757976604 774407386 872450641 743444453 659669948 777220580 782162433 222248803 957357709 140397321 887189688 741317391 247028806 162892014 475141556 669399046 712240121 996055576 296480453 150533666 976096199 154957596 888475599 260527793 528676288 772129399 127617670 602215483 137437435 924367085 469931077 301873519 932446668 691444204 683990369 209780544 282515352 377718476 253580499 492694993 361461794 377185816 800147831 358571075 181011114 910265460 321303091 347616750 989069915 804197921 732169037 97699443 224982502 110398248 278278991 925052822 135629195 854619206 918269546 549828341 529986012 353553386 664711581 822671360 723661011 370762240 731421419 775977047 680812813 892460295 369531994 869114716 918579610 815670648 133800567 164191309 856277333 463689408 899853058 166583702 128079052 670989236 510053164 966601891 584388649 77220389 906796446 467995265 888367673 931790229 835241668 918419345 627595510 738735877 890821079 588758736 733461052 762732677 707380583 822378812 9773671 898610378 262110014 386016431 487152290 819446623 670989236 670989236 721349857 463009930 659722743 134324872 748260405 519356939 612954789 842495387 580558675 28130845 104269633 713344088 34172563 431323066 730585734 651094489 541010764 180929534 906113010 257009904 827933970 467296882 787976204 755361755 631492994 652455944 980106557 765624839 905797330 573892162 233172449 712041591 559662114 194876975 274630481 879871268 477809329 392402023 724887470 650680894 921979618 826895124 611636230 759760692 159486323 16621381 875106943 769515409 990150119 24063201 257621540 722164744 775836700 309241256 538688216 199483059 747986151 873414335 504968659 727720180 470882152 683384026 881746305 894239430 424089205 836865520 742102738 743818789 394552398 672691785 686376299 533672626 780668329 913534298 726536329 739597532 856835928 998190990 247658433 744029543 753465411 71835501 543500785 15017388 538691716 729778332 163972475 453937159 804580923 955397215 730252274 991621617 648979512 944494274 347678735 12316170 129495714 681672897 670989236 58192384 119104223 766479633 738796210 615779634 391180023 859959328 62082104 442058492 129168215 858337410 611570009 694798421 272378401 377469899 923836585 54913924 906756863 304523579 811818896 855706959 95507994 969812603 273980562 931040964 157677594 315713690 971893829 902489163 612055096 724632069 971130848 950623724 942670616 916788718 882306760 670989236 992744356 657142166 647583820 122576861 397311752 509287772 807849922 83171978 139635199 903326529 725841187 698310483 820762461 848023966 503892918 894232465 641439651 857480436 932016018 283219371 337288463 832676979 971387066 392976281 926583476 759069120 865999346 1436357 521232135 844649751 418237011 111235733 382928273 171727033 708407119 670989236 659937538 783941310 817037709 198746021 355270453 973471746 871087643 495329027 578233666 419750542 841234264 805281009 664919014 412109837 987885701 508913073 971909873 905439762 968879875 252386895 924106865 455863104 670989236 741769919 608612347 788742453 818092456 614429876 306370858 834838076 729859612 758577635 468371414 555643003 367153282 328185689 272304218 739134396 737030863 117134862 716487297 713642016 670989236 733512015 795663214 913712250 876660844 571386947 155262215 289465688 691541674 275259622 955157576 103635565 529448271 897738498 845854285 775984722 770193395 346382999 635695293 272552805 683582533 335337267 942998200 826933982 888299048 883098500 648672049 770248322 485140183 18371212 320292120 820701063 285263796 850373458 349722120 199641026 889024287 20041893 215624425 166430744 581975540 603786499 672831686 26533949 331980935 509694419 309686909 787218493 484331720 69096927 904655785 122378834 16871266 878877395 66045447 592435760 772985002 227021281 541286602 947535244 722829195 710923450 954038847 942009201 121487404 441438524 908014762 726880890 142046891 765699696 751461072 501132399 379326283 791477118 341479006 209153480 988789328 524303251 571308672 841475135 727477873 764098736 755790845 977945451 991137039 795629953 2506479 303721192 680277462 965770333 939025951 83903179 748436327 193772319 510723539 770715123 472313929 975331372 999553454 838398381 970815446 231078134 696935819 184637319 997662712 136789609 453950455 767527365 86214211 662782788 976266215 739703431 747884937 857298465 862542403 309324567 740514587 175259519 701958682 466694546 351967840 468708212 716050581 943731480 745103010 498478391 965628011 796135964 889451752 617129650 361906437 858522658 769969026 921391696 695667739 332926291 507867901 689920919 853271373 3190943 701295305 378029040 565845642 670989236 414813563 461588304 865827421 210330239 485415092 945111907 415845150 784725517 590012206 581830535 102772437 392308355 694370295 311273437 143540726 786270630 158465059 220373949 50907523 361890605 30576595 49708849 917071833 16655738 259636784 685390253 278291548 257264949 331032048 858796458 615903654 809403636 24287824 880049121 447699942 948750589 919661915 968742869 226658149 113075899 377912731 160476226 616148331 255566445 838475977 751994231 904773158 869647153 382882461 939151479 924127993 923073010 414617601 204775033 359641387 951266588 617210317 444286121 258925997 140939955 838020137 846853124 792065189 877466816 137974132 818844507 77565022 879848838 425730321 181060225 966416452 890292992 669891960 291108215 780434115 269042239 495614394 80395017 807214064 929534127 223645382 132982882 532362026 670989236 826444729 199146522 229402493 798076356 907623973 247292183 940026994 684018244 756228829 791748832 816131426 64448025 663028916 944577028 170156618 792469869 287030057 452921973 908576602 882816803 514916851 761956181 670989236 535921362 935822477 782200004 688259693 373785789 93671978 185310905 420759409 996007464 138815161 798138313 65832275 523631685 846970714 972996876 39651763 904697023 431044188 189927393 792942799 962382957 395545415 691139238 914308162 621923371 488074545 841306599 312689747 457383169 712490016 795723941 888729910 973366196 875394551 860950553 823561754 856849659 968153992 25530717 682103611 827582467 363067594 60786455 787182347 603933178 858233644 676622110 87766538 258008368 533374246 100058663 892741277 290235505 481171654 667534906 963922950 269158815 388985821 898335086 470813844 780272998 342317907 241558614 672703318 697964106 867585420 627767258 936785245 214474620 211615938 100060464 439581830 714070469 82076633 392183273 889875862 731471689 622301148 923844087 831747325 23511088 160147785 676432803 134006421 727353331 600581434 420548138 612447109 833427672 860543037 466104947 671310996 762979430 784007754 920565373 496931374 29203805 989809484 326149992 230948220 608950140 745911690 399560737 984369443 694927841 879662414 983604832 177892794 937310775 227807560 555153387 790650564 792361967 311415999 914177173 729817979 653634433 672475027 296719140 241718921 676601895 871277264 257219221 821137344 379045679 783617548 15430120 591759164 744288960 813100852 794623330 919629017 591627075 987890275 137670448 933866149 290925572 170553695 364971514 698011890 789936168 979084582 37342397 787232925 404412420 884630910 313544811 880669972 951225191 396456187 249975190 58538250 305562256 213761586 911261552 282393978 783253110 497440142 469698324 855149149 273879610 940384858 790361694 867053814 216828163 917524788 315564965 909668909 639669293 848016373 805009246 16458668 703229739 309258867 891332362 597455870 192370640 993392244 747220914 237544625 922306829 17175649 863629353 868391870 817288719 102314067 468793848 890546907 608042202 790391713 670989236 335782216 918184582 12682435 691223120 658990885 735966981 61303138 322877120 798048112 240562822 966585424 952294136 721688130 159989340 87331593 285317960 465243511 284962578 357303425 869029748 944261530 702867820 670989236 87381678 958617757 862441059 854702439 674803381 252069813 967157350 737804900 67201776 79177681 957282647 510713801 964677466 344741573 532824219 480777589 872766223 633716269 179135163 799361496 308167367 151583229 37461364 981279535 551946016 947294569 591478489 934180487 863102223 874539431 920723680 670989236 620225270 500129931 959634722 960142554 955128297 950923711 887961586 406950349 26489947 109307133 882777011 787047103 57676584 650915079 45582653 873514139 917157638 430060921 31166257 838754738 359036185 222405086 830775849 670989236 583667223 513392601 670989236 743182642 97508344 45570148 720805206 459265507 694743635 946756903 382594140 606106267 334955693 739388959 354474373 809242812 694666193 657947002 215614811 25110740 567828264 136906648 871810063 762165497 234093117 320574684 832011393 395459787 764396614 696739331 733292690 791045451 53204863 521472550 844170836 86867200 507602698 670989236 737412899 780536088 288990080 664406596 235025265 361062053 744985834 820417922 360993043 675573670 316932055 836817656 991935026 730494680 937855934 6002075 998402614 6876554 510750542 891545045 38599551 989371457 588116004 857030518 14941926 670989236 825852812 840796572 423519888 457544868 196697934 804526703 455172329 964121281 228533845 572062228 693763324 906224963 287453136 352588925 975582429 543017810 922349479 188993047 929143309 164996122 743268700 699546830 335242661 795967160 797781674 449626566 795045102 710280287 979455250 880796200 820211616 840224818 786878264 715953058 736571294 344469453 508589832 993480162 804061547 481656117 353526753 752151500 829480467 105773240 889300767 233459336 103849331 107291861 917473640 631210494 430818049 489293524 851868895 918261463 453038711 322542686 357486141 702715160 935749936 285766855 946276417 768980098 603128999 927822636 476775044 753354598 88543666 209635909 637748864 389470823 933535297 932715772 305440163 788411954 684488614 936813319 158668972 875157375 487814486 133533172 925030057 743774479 927032940 45586948 854537154 922052275 405848566 390165036 130227880 18482223 709955302 699872381 899000045 739486794 503599434 215137875 640226227 92988872 219907765 956200916 670989236 942044051 699974015 801641240 874911665 301021858 975772396 6869138 874233943 143031609 610491824 901922800 762996372 884835666 988922672 726241265 702837264 503467188 901546620 932683769 722384448 70229764 732634226 87243034 954708741 402935934 619811207 746142697 375351069 37394314 909208641 189602387 670989236 759531802 191985384 995203332 248733382 859978102 469229307 881011315 571158784 849462627 487838587 134011939 305579544 706018040 583082045 641941457 991890325 862354980 934249305 797702161 305850022 780278607 732868296 680505110 884466101 206161309 709232255 772302183 487408633 922898866 444903203 372932522 549596413 603395726 887342214 832124930 560725895 892139215 954736322 203151220 488207670 546275267 991666951 686278063 323067961 899982716 581864404 522961270 351631375 259805909 851563879 462411959 750369639 670989236 599652712 232131363 390728629 18966986 489734949 259578763 3432514 495427702 568538835 400612428 334354614 212557530 382933498 953879459 821685859 403391177 101323889 767541622 432127441 10155781 700645807 127028363 263297975 937229167 76938589 60054369 993175557 819776610 448115194 364821359 706153529 670989236 493577022 817490093 994269475 221702723 330745316 315921919 377370194 155079517 113318135 732741530 147849147 183499645 909526939 963910567 840188773 999013284 900324415 859032402 926714464 738651107 887226557 115142171 71860490 785427497 554630479 340550461 340206581 598944743 821299020 480526873 992618727 873000772 840127298 676660124 890757896 966398249 422834873 156913440 794096775 481475567 777370663 726536135 831178356 686573861 390859816 106609553 609869179 155795114 931304293 688281962 847689456 682328007 140212264 230322559 771457688 894425419 885646538 561879893 202182435 4079323 835219841 134607216 830581199 988654434 664334452 576081288 111011833 509464385 990141854 246923425 119135873 118709667 491022446 135416216 162531742 857331080 877688442 278509821 840923278 874327896 236012556 29078239 289749425 599812594 854934483 831764725 819985673 935465866 779883339 363159400 712303286 786208428 699694696 506392 689855793 443400564 82301069 929112103 670715009 216960163 653967683 931694143 165058505 733074432 739053124 44990915 794183798 920874208 874392922 860685192 426788449 999190784 944792774 758146796 123400524 894434260 785989854 240428266 261187149 239920339 404145062 803436566 192422941 774822224 796134424 782598785 509176800 574078611 687446745 335460306 183609793 567424796 37913232 802135782 852743449 670967536 471683831 893579713 631759108 598236167 816376344 884788864 801575785 963696662 836682744 332959715 183262398 560037404 530435588 619876752 229676874 557567136 166396350 942501256 670989236 751953692 720160408 242941259 503373830 902213666 682375651 990311125 827030269 123189422 951689831 590385227 155077967 939492835 891704515 355924944 787435756 14642565 851116775 893817098 751182391 794638683 962404258 416513710 877065192 671142875 954948466 853668926 670989236 844121209 54744800 591196787 720390590 646744729 980811268 873837538 562356146 670989236 949259964 844179801 783805490 431715332 837067019 352436582 77939395 240602087 100965174 275645649 751570261 944964501 217220996 151815900 757108966 134757108 987930086 934039058 605787032 802461418 850943540 131321216 717007775 707960968 759541689 700218059 916333189 609847364 135527739 278126704 98353635 724203858 649995859 134520757 829502808 418953769 778659729 394987945 38579785 869671492 713975663 800420399 381599016 58371173 319170497 327695712 558916672 851910238 998399510 61916448 853072707 214462045 60405142 862067100 870990201 744919756 42135074 311176161 930192377 662053846 771734565 987264510 423445180 730414140 670989236 264033206 257046967 770630959 766313901 966077416 944014783 37408510 898024672 282739335 899586959 113145498 62946379 837717697 642022340 757941209 178871668 301922561 828458945 363704429 254495942 356967398 796666920 572981767 191326245 216110387 904078142 960973585 728320426 670989236 255935060 439583402 446291990 892763654 704567309 334731470 31340574 654998403 822982379 470420565 256907525 580678454 52303529 772240248 762772648 892751366 800453814 320029473 864375081 764596834 986914588 920715835 485558314 504819414 113063184 231690613 907948042 661194535 978872260 915173096 719613493 589657109 270160744 841532206 172434028 470552415 957844296 876557468 816533067 645972204 924689607 323382987 17204638 950722148 953345769 886621833 694094031 819923234 882689091 863945978 817715420 453448720 565551603 794348273 670989236 964857445 990979109 322214422 924431868 766021304 371349468 407129868 437982876 807179537 300392906 461959540 907346310 42435019 150332123 979294293 756055013 853296035 986230524 259040984 802155013 907380334 325999146 103915835 733430867 947402430 718820130 179794445 806205541 789036466 965723392 772381911 670989236 852510913 701712875 717952694 755835987 742034063 777048602 564456914 622649818 750367113 117215752 108108621 865345766 282946848 852259611 952314306 747580008 976993388 941268426 493817197 977230321 973836567 90989251 978749963 942969599 89293106 755553863 979168438 598430786 497043359 160264206 141472020 935613730 62759220 874600473 918322343 900913975 311844983 580369758 674825332 15343418 839149297 995881201 720399148 214441455 70451333 953603090 635746853 223461910 216992985 549644142 848833960 597304301 758095682 25495115 670989236 957869642 547076275 233202923 681355800 681446937 498052454 370671396 198036847 177529192 795986708 938143094 946519127 689657783 469740927 573907616 565740778 977104439 820037863 793640083 334147404 942407155 495330764 500805402 215298563 815492621 542065089 966500346 736800503 99674053 694552871 173706648 457603569 725458793 673371693 990178538 738792908 717571545 749407726 680371959 19194413 758885761 877936115 980772044 736211495 863477903 599364949 764209557 973223029 983206856 232995797 854187917 117660903 796238619 489612604 914897863 565236544 785213470 965212594 717087789 474704480 993943864 490124078 827481221 981973700 266342558 997194738 664304748 513228651 962373185 565689147 625925907 926618869 794745802 27871417 300780395 843858653 442574884 447546522 625937002 118965306 904896187 886139087 348813614 783616079 848289102 888669170 638181652 745509215 267277279 852064151 788607574 383006673 394272373 960049267 447010578 536314960 602698483 55667598 944967056 485399401 166246372 5401040 385636647 630197221 513594537 544103307 827675315 771908889 228236338 184717484 396288054 801278597 515492386 809350092 880681440 523253293 860203466 551046097 741529130 705214576 844948096 238966374 897156503 918313530 614228519 794161585 552478233 204209842 668726305 822650675 363940519 972236158 673989420 164511918 72660740 223984103 689698451 761396087 275915565 722807106 942796972 87155863 916548143 453830115 997618362 35435931 775322276 851065709 72742672 261583644 676055833 26835354 488446170 247418772 839991335 306333629 138416656 671382099 747222129 111112644 984501303 569108504 110294701 214642136 271095109 495844873 670989236 284914525 926308151 217495000 796297881 701641361 45085364 709975985 946990342 909284414 23602487 211582005 359060953 39557732 850256521 986694309 836840565 152967765 980984392 908473769 979458123 681308191 227285623 828111006 927804551 726149815 68550145 863787447 694055541 625256098 127686080 838376912 820779699 272407081 750571569 546244342 999055965 991644623 719069798 843747438 557042422 942250548 238503784 231503503 661152444 59443546 144648939 962088062 846824478 876619049 802672716 514225442 699518144 831594165 66273802 892871288 14242942 930680264 633215842 744047168 803819311 339980389 167937993 427736813 155339712 288079243 643866857 962978554 16309606 626702462 677391043 5703488 970784227 968004899 670989236 218464009 818689255 450934867 384423187 697798174 811637382 107891484 796971566 86842678 892870874 933777277 128053666 890142955 997345517 215042805 504210721 909647893 959236373 638906658 444043941 966298339 9925496 898965844 752565302 629847341 786248919 890137114 436546961 892004221 712713141 841926063 934414248 770026434 130340141 217565969 623263384 910330460 895026986 975667978 705760133 316482186 723322153 916809012 699655253 11019802 997676165 861610016 883767231 266631969 713312272 861715754 711614095 952296260 691398514 382461744 679726372 472388579 495806014 639563113 670989236 704570922 292384597 284731001 292435838 736585933 244806837 330072382 302402295 226933783 639855071 383400323 640061790 931369169 53114203 275414262 379407523 116107717 254847620 466822964 49481608 712543131 648525321 992138457 724726966 752655316 763585465 371079255 389996454 687261980 613997473 840680213 235534142 254698807 658457110 237644639 994528045 614215382 548548471 709468813 539224317 22499322 198741275 817676093 873930186 722203193 412258238 287630634 829610617 747086871 67626509 670989236 831034430 811612014 977261162 724427132 850528081 37856931 971363378 967560581 778380579 375722235 323600368 669862418 670989236 356059616 308116683 156366714 281086681 770369374 865734191 73079346 14039697 497372528 719329939 138139345 952044654 691679992 188732593 315026446 599899155 727430856 246337734 659755878 732831971 481036903 790144590 766218732 551452210 440609736 474359404 925164220 692064901 781275702 915915257 991845681 125328544 961608391 835416173 252403080 916125878 874674303 589239451 448084699 938517951 338719833 857039362 302933012 930987453 257826274 599297902 484299258 203087226 2168952 724137871 851211450 963143329 39788875 649513125 664276795 789401297 841361048 807364967 542350373 517196629 402054410 841826498 766589491 472051488 763840955 341913601 636101862 671857343 908346973 255212253 883324128 966984491 840662264 821359444 815467604 870898707 838541306 658178449 510798448 934046882 775683678 742819606 825690255 159118718 875910053 962063758 399128450 207588356 727360190 904381260 329109418 896586436 403695293 224032052 853523699 729733485 150732106 900210593 811990590 121699520 663221776 768429761 165927911 863811331 373856491 18517401 680259037 963708733 948934995 566792110 899288365 930995284 730423874 670989236 814956627 614892797 276136965 166712953 465114723 826411749 863519113 428040116 958808309 964659781 394293505 582068787 434021973 860933451 820638851 227887380 390539716 791644648 250713423 442745296 6586178 633869753 894665466 161689628 244363852 53179175 947704415 489444749 843351768 480417922 444047809 657024200 416828507 366959734 584579784 634557501 982113783 855601056 42113231 725190425 860774372 167992343 707403230 180169253 782819776 861472562 373802475 535783064 985615122 322019202 833511069 27843685 672465902 813074120 740372074 809649664 436227887 734970615 296253982 245679589 799385482 963753132 781078734 801647346 547095581 946942763 962723141 694320457 107724628 366154786 630167716 837020769 811673057 965744990 759398664 561188571 814666063 480950435 728655740 906011366 985152087 419817219 219116401 847493386 774482262 844388466 471936498 126017926 323427752 894918820 895270427 804671396 607526494 670890321 458173962 9444562 825531124 957895500 795190533 604629438 617897444 971906439 751411303 961290989 896264614 757633451 340908954 304555128 623748634 906159145 710874966 126266625 745321330 755382223 881712375 788897172 911590336 834801521 32781273 909634544 604045790 990668854 717073025 342119215 670989236 114264247 961582514 902440167 722512446 590385358 673713993 662976881 651778332 894974889 899018344 622069274 668207599 309564854 478341566 720935027 436888453 935805964 876593785 348044106 853861903 353519366 967091940 848917127 258809270 295455611 893771897 801285670 524756015 127290891 36413877 820870116 676865574 977454966 877397539 818587214 133194403 42335138 131719866 951269266 830496452 734653137 830070122 696942407 168800916 820082177 605887599 930160866 324810093 938149427 461230675 423700741 876644843 10404745 756996875 773275086 321159445 547740749 222759252 443523229 628518383 658545368 895670586 742568420 350050472 811041647 757618558 483743374 917097966 135068813 302347293 54904120 715225917 448240420 227754309 763546972 785301578 962224903 859012721 783377401 381888766 127784120 609348402 852099043 853129734 939555425 761911649 454930112 670989236 992768642 186092359 843853161 940468075 982817467 838995183 957802564 846019914 745577960 845917016 711486030 618695538 990300188 929086609 876612833 938197952 872069191 644592032 869107023 379978573 741413025 729367983 487795156 69820890 953124991 816652292 594929497 869157781 587104874 871745358 953675177 886240581 660714647 518471786 390126388 792093394 683071853 986715343 227535828 754402122 914207858 512044732 393672901 720251160 463663489 843335787 906455073 547935136 18690702 493483601 711944356 711337368 317813485 927923829 824608105 714643755 633555790 782054768 86807847 991534641 746235927 350220145 728109255 260366860 27239065 677525888 755717053 733229684 871842242 845581571 477410773 696528093 541824688 733774683 818163653 890942194 881333483 814118284 908087342 248541717 644286808 686248399 341379191 723525083 930159367 760031313 900823489 349028793 355251406 162882665 477831041 328002940 103331737 882423909 609219019 142599169 706161330 170575027 335190547 246505123 327784159 539087256 528350359 889496902 138425494 20402867 703830856 757430645 974839528 253493812 229192065 156880110 805670905 274195039 963155654 829972680 821139992 978095197 591822607 640841611 374460688 72574805 736131351 83236561 15058128 730406852 672392943 594384721 887535303 457806919 418949680 463561656 802381513 122116356 282597751 187665719 416115235 675297436 840822734 883121395 151837675 980065347 431892701 859107643 779271716 930341964 707397698 872563944 417441552 883821538 73157447 545450814 75146116 779389297 652620227 666757164 884329753 756313812 861396006 663112988 690064327 34695144 4546159 49320995 8256824 697312813 967059621 808427295 610023312 799525179 823029291 257701272 979958597 282966979 471188539 334784835 421297429 427154152 504886040 925603336 33069185 420737664 432154871 876732769 497166281 469909501 870410602 413158995 662924708 319319805 291955585 547084388 819506613 578986747 749680746 778587650 465688920 282654486 796453441 796167982 740840933 46962479 731325757 725183865 719909676 150420288 713715357 956492639 876775658 519485258 778196074 347708895 554799229 753591511 114090335 519957926 674732309 223563314 918268923 970862579 842885577 983459476 923073144 919256723 913430951 670205974 977019002 796412345 901521881 346756453 473321645 866976566 590165855 980469724 885236323 563041242 40385809 912567900 206672298 959272327 927328419 899875753 799456857 839154679 8439872 731857853 953163633 928984175 763105709 27694649 875003223 273007273 335457963 467124000 881734122 766502357 785632609 269414181 72728022 455233465 926951132 911567020 497212937 812967490 937284195 521254210 809744991 829216461 906956682 860995704 286940961 911838563 810158876 462575686 983544432 303959047 831008428 670989236 839073434 893832109 105713323 670989236 731480247 563113039 874674925 718915522 747927887 596412322 902241390 435069379 314710775 883490964 889708412 363802203 976084778 916648094 116031480 396032374 951974391 530125153 773950788 237949833 134011558 115606490 877968048 813136313 629471565 985541244 369865046 632697275 160093102 41581600 763812051 751617012 553622405 128105361 198423693 768116395 776552302 706796955 682010324 446546615 933981221 896803564 224694681 847553073 297797446 469228423 547333979 294146199 439832257 468810010 862452267 837067946 767824488 941003197 588371437 805200044 915360583 872716653 906807838 719256701 534397697 427698251 967630731 788112666 562897383 878200530 470796495 118264290 410325620 74882507 68346212 102322850 901445468 430588089 949368896 694257598 122756019 366562317 786686567 748246266 33917954 728091283 918226840 670989236 211479668 862686769 822934189 866944967 944215775 919001295 889773048 482364504 956222875 101274199 170193204 645983279 688084799 84475613 702838731 919895197 183636429 606605264 894258495 587780487 941350805 850700311 524489686 422204755 730852423 988597021 545098628 978828299 772704425 967884161 850777984 738287267 273985850 604562344 384146241 386452937 123243965 369760610 901751034 725409398 244574302 174755764 78176139 139357727 436950745 546651182 489287975 382021101 911003612 955488133 21753696 94821948 23880931 909551814 756415794 990950650 173186020 748719229 980012873 437625264 533738763 675754624 991643448 696687101 603049050 742938155 45581633 772208658 873434965 958247291 982992441 802253451 880863412 944767378 659680801 677059704 467157454 77149843 598894325 745665453 628188015 855341013 726595773 938018604 88065056 750131682 869653413 159387583 56424083 670989236 703485979 109628609 310416595 823083759 9181549 967333454 343735928 517998561 802307478 233562805 409973559 736140190 796066003 670989236 646053922 859807708 545432498 905114122 837967494 739044937 386182998 78432199 673290390 726157487 429586369 919825745 508640334 727782633 212460099 573336883 666045987 652689992 816124270 857970325 101328484 955330739 105161073 770087425 698825126 651321186 455918047 122207147 90725599 852051337 137656658 508057933 113356225 940757839 824953055 540578027 115111725 735088785 740768087 91602305 146395464 741854803 562927630 595571648 680649997 705518112 141624707 896025577 973941373 838908232 587071384 55434505 390983095 800104934 913099790 901668330 104362485 894196135 856973708 714664898 853486406 137262111 246069840 449644661 215866323 851560374 149477645 281490788 963579256 413809037 379875086 326165765 845611392 80561283 937265496 730487806 986097950 154080213 870039167 810680688 789805114 312668197 655350359 970942023 869557356 955278320 304766903 739044911 956332585 505309603 141442178 620382906 85895469 768957757 820223498 48892424 148783303 596456559 205106232 978490985 772073903 774380050 858027122 780858852 908448777 394047018 139798611 258517010 586354830 376736917 919129332 703167780 690232272 950994708 825952966 676322829 417893811 899539049 852396985 948096513 744242150 649580513 882202818 228718384 881590215 764197822 852515889 748865279 841096174 602904338 522460655 127872221 870303636 815659231 994614507 76181702 792871937 813988610 466427125 675534018 684576288 659423687 185941181 823721844 634775297 861636336 293557361 77973474 963979957 891615351 780911565 909359323 36112985 890011788 404240676 943635963 90164577 792911252 571605400 441376587 950021889 960733597 18088720 771941124 779654053 590532528 64454593 12613135 122666182 984356977 361408169 609649101 209997161 975657222 721888357 78154444 380212021 539981598 826001754 614617376 980402233 744437586 915965173 450445942 668356069 940991601 887938339 762719901 821796701 650415783 197687788 763796506 507654998 956136402 807559916 752409545 656999926 314902730 249343400 670989236 326063167 471594591 922181015 255399335 769803050 309113724 687259911 846391231 793420928 671524940 980770611 695738489 398746773 931023401 782984026 467118472 859702270 505417877 103370519 933961002 814656341 470539516 76017473 568680099 175047558 824936576 39427320 692600894 844879846 835963697 207474330 900232688 948166631 399379747 17225151 789333089 117587307 268824338 898994521 921808587 963508214 297551502 68879894 214669774 560480943 825703472 823480297 704370082 666509763 469295037 871241268 240866106 987079323 221585447 926643455 182700111 670989236 912086882 612849411 104197574 236844173 707166317 865463850 633025429 944970710 799156241 857492764 233101979 57979646 614193903 229191851 929680216 777594996 448345530 389654856 185842293 917948005 120633374 358974949 700734805 298997278 236651416 785622423 512563678 228070704 790042873 724037392 564061861 311221986 836152593 989808603 794866240 981787274 902956782 782395730 490646863 353285574 909344419 659682691 686855708 965616861 972431895 871536281 461213225 977450460 437031193 106437764 475414439 470433484 207027683 444040308 939622479 17675454 75293524 999003277 957564891 887889929 776374571 781526077 711662041 417745272 724526757 151689474 386450747 873899103 189307328 160602354 300956290 342459300 910005582 457307187 512375046 878098156 563247813 543301305 824770903 746166301 588692680 737778876 782766288 482855558 136255302 852064757 38974114 217220996 849759059 985407139 583381097 640545507 954249215 28648803 172261966 745819144 896332960 876890465 595083245 130771702 850824423 312150148 205293193 2111204 392033775 213928552 689343719 312548430 689053847 734861015 991331543 994141303 750202381 378267717 670989236 553635479 779415629 685378981 984733316 921073179 335603470 924302588 307237120 702902211 195325481 884526137 147600826 320924997 763480641 256047494 713313418 797575306 830962293 584532188 247586298 890610317 470584593 32296046 921757869 544488690 653953782 794084513 216122836 845753082 842856760 56009338 358300433 538116172 814938989 717429000 186397210 973540307 615002991 893989730 938704866 787167488 686759513 734485054 960840053 419874456 930463399 528145652 861452461 744786658 714609974 997936507 692035383 279650843 974126077 175325649 241031433 413373832 887788452 950689129 937390655 503235457 963376444 446856275 627072096 236156723 885582972 524478421 769467849 810702187 630482686 95796315 993582361 725801830 676467147 167125276 177977240 810726767 695659095 915972132 935953433 881965660 56690870 865054698 284106370 412565168 770142151 858767548 801116623 715646458 79679515 322824417 726114979 859438160 808495146 866251638 952292038 896690 968809253 706359453 829877689 103253281 777304222 779809877 107696480 747565713 830964976 613237684 760506987 317032641 992559589 908344344 127297513 532750428 346020150 658206966 549342700 678965886 333623758 773512292 467680898 873330811 479585195 712844613 992267831 934564322 467942694 276764724 436251408 127757878 894640725 321632781 213525306 675634978 116625335 356789879 594250497 915172164 862158516 266653110 116048343 856476503 946114265 792985834 733928352 730376240 673415363 875615950 281763670 236836700 829100251 249534291 349382244 397937372 829216790 595931285 409794911 52048436 332415473 727493969 258108252 308740643 965198386 694722224 193222003 878890414 764867139 191954729 310696204 346531078 37799259 472899597 758721234 450577551 965694610 285483574 789620710 394787370 110444064 798284826 788454725 925033183 847867379 238707006 850952012 820336330 557116902 915067633 48496369 351590488 458908261 735384865 615613824 78916617 794144204 418965619 331549430 845913551 902511858 115323397 835987006 225586933 654757244 882655446 828418381 812784009 205485124 255923325 561787743 913204529 690168736 974361406 268906752 388244239 330645263 649558480 923327244 37205834 573069594 797843913 766266997 897951717 955927668 327540251 130407841 871570654 136603980 107868265 964154771 850861249 95889740 956874732 789220045 529787000 673404224 177633674 925311807 970281610 884764046 324891137 810692860 166148059 720576349 50779170 798344343 215646895 931658539 446008577 321499159 14270953 926074033 902687095 575867541 489546104 376899882 609183904 623502255 484017651 687331253 410442652 608266330 326458768 952682231 426131835 750732194 749921124 937571403 256432889 143014616 720318199 239178998 876420991 291787265 164857247 964178305 618052514 496694754 180984340 299592850 519616450 765668253 793759733 606944930 738949775 857981130 817051882 600224016 734823313 949289297 804658369 982805050 934719117 304010034 828069760 358057259 915102569 692612051 358291430 364777502 850679640 926805530 763988919 931381173 449353117 596486081 405899227 963342885 755860663 500719054 707971574 743991015 410257028 900176738 110895060 838221853 730246032 899805354 73974576 587017140 245857213 552358076 743208390 887442180 968863975 692494216 980201833 445197493 268294439 880598009 335673360 519801336 668022404 350985656 678537255 498021874 757099087 987771506 959963158 59014307 704954789 113859458 898580323 959419313 763095494 893745954 56696577 975749774 274058285 854106400 845685250 827605802 962174865 726728344 884747661 785358109 289931100 112199837 986968800 805352101 324350636 674237252 176120333 686209852 988452848 958043752 693394922 85866242 903282771 804146192 695565669 946652759 212466174 78947585 864420283 826072699 733376244 672867633 965709677 773420803 569258823 253607430 774410328 714246863 979555356 749624091 735614021 517597282 781053188 449567830 775952431 12259656 544228155 708280437 492825581 683471524 835276262 327012793 945222273 695828371 683031735 216587000 489210681 271086284 470188216 757170278 56230110 88365933 903138463 649263682 274476199 738936223 255080888 309398895 761082870 73841927 710577549 804462456 714357322 320927008 695590836 319291673 357093189 316634692 906152966 445188273 630060378 118490815 310771664 233685574 126468802 939853854 622567361 663519359 592818591 948856009 55190892 167100663 54355617 599650942 748034604 868222127 342606453 791790007 758629572 781353843 934892121 909598348 371637965 835484138 115352432 955637715 708051189 65427046 946277762 749723929 824181960 904331056 965464224 252491520 320661793 840904211 968823244 821344029 205909621 917567689 824741626 955295882 948341740 862798096 226745973 804772018 786672098 1577336 985630149 670692964 749856215 16774696 601996635 269440882 614789517 958861745 864913189 51978575 721800564 275309907 32176714 290672304 824947154 129984654 177120954 922097963 795046040 673053804 690392452 974765084 407588271 474762166 895821738 889985797 784543209 951003514 924748838 748632396 599005145 303013908 939107234 216998728 596722946 451318680 289879490 678913956 461332967 485280151 953162871 972983481 50949946 552536133 437726498 987777958 690964887 21764289 712708389 2641757 379925187 288904451 727318899 996174293 767037016 175864373 973460799 309652738 634263569 820824620 693236309 631191392 980413186 670989236 291642020 37904231 344516165 524579417 857841873 878626372 977899618 569282924 197181755 830386821 735888958 292125909 784412341 231990722 880964583 132623172 894731287 553878064 739033731 766101287 756917296 25442648 305336930 832577597 477089309 748575435 81335281 941636813 300241789 584416774 914949848 130975122 144317843 946091711 879312766 394644831 999506286 984418632 775357464 858594811 129892224 985408862 260934348 309660755 504468087 153282817 90684593 787626119 195560769 605600518 885184524 791716583 673071653 688483100 422124616 116166944 876400636 939782842 195617447 70126858 383968923 685262966 947951655 835601517 670989236 143056362 890103116 622649837 163385760 802624189 462705116 654261600 142269772 314933414 467762179 766454880 458325012 818244281 580671945 44299450 426403726 11455831 678633845 900391724 985441577 759954474 949105936 949845547 863612061 961909513 212413856 695222375 882974930 296090815 944074228 221965281 553813706 769543870 945857954 636522937 230848905 249842808 968824739 516088128 451827656 13947001 270549950 866259184 670989236 753538868 670989236 36791522 931273473 342320354 161250327 907465394 301712207 147273478 30948542 945899824 692465008 182836474 62350001 131917380 155674793 908463720 751557231 339458741 860030823 742328921 760603314 802910553 902461316 703281307 769270745 624506417 937584750 247757257 596869210 66739020 266918180 856769497 900225553 873033488 404294594 541469180 490927141 180827439 591377877 736019310 354627384 504074950 382272444 535508734 439724632 387399126 803047969 809832317 315434303 834449585 304425805 934494673 269116930 298935235 965501906 120465020 24806452 364377074 475524768 928846912 925007012 502904102 493092249 806534571 947575449 700473857 685586464 951318248 265754660 719501381 484897077 995960509 761154316 360752249 220514417 876483448 885281454 807377758 922829799 498381390 262558112 816808373 910735394 839600015 88647416 568698934 627942591 914964727 182959831 876687283 641435956 18874861 138717942 959247399 686263891 261457064 789841229 764206317 246006538 795025059 91846010 800235169 470411765 608510431 970397850 296327794 910842141 14596973 965932830 423901241 796343780 346804749 711498011 266575956 586040950 444943346 655123765 794892909 804722988 646062441 474925173 968400808 872790659 932285412 593559059 120276165 136086272 511009983 202515384 369473018 830088887 183659523 899387103 782461620 260812468 190724783 287451766 177665563 803324535 158240245 535984332 873824518 332431817 759788265 468432485 405596632 743245095 290850243 856455044 485224344 918148188 351899697 946336784 508479534 704222858 830748091 615404486 101025380 224736515 892138519 902802823 976110240 872613786 772894951 788583181 669179557 764884265 940437630 810218845 66341621 503659710 710263508 960223038 323374524 758921531 975344202 508451945 486244793 717183425 364599469 761688291 771699818 79193377 980678048 642273717 982059701 634195237 339607810 979619529 736484019 692258150 918938397 201654680 473112380 119803099 735355523 791972282 373544589 572011027 265793558 213439863 72838237 452827600 962489484 408587861 592190564 916800878 903204528 670391381 102120368 864621118 650751057 742126232 281245938 261251269 9577336 838486492 477997041 175282667 655046854 801994158 10964201 168724336 950879276 58607121 77891804 944817153 55521152 978125378 46621687 795350583 91746773 171905826 756874907 299580274 750351610 888543387 197602384 154011501 856650976 967831640 918540179 726301298 707323086 805302357 750279510 229251272 927469136 692176537 457277903 43506293 666039941 280810500 712644209 889092635 637993900 780554157 973082649 739449823 528427401 748355588 16072444 217563699 474672792 335385552 484875138 787060560 907933389 943278666 639489302 641842194 707284715 709093359 492248152 982845735 600857020 401423978 844035284 790673901 126687364 45071606 746672070 27562072 215056924 970953854 938575250 747306920 804891358 958702532 927952771 198940932 236232916 933655832 319456621 603640488 923509851 349402773 834892942 839140845 956830568 366358117 609530735 863613012 267996425 88835696 241438119 498191345 599430770 834523154 636199046 51863600 210802691 78696465 806925118 909261530 728479500 436284265 479596984 432382543 672984136 920368298 627958844 477643541 720744434 159520018 212156736 989487367 227324262 368163114 253547586 510101730 835546678 521135098 342291722 911757525 646496744 858514334 37892608 43214670 856956863 256624024 521861917 907362090 757418013 798331427 913666559 228528144 973472243 983302672 97146897 971050146 817474865 574222799 788714777 834631137 760602755 799403061 956581832 926402689 339323066 277585799 61206414 670989236 820182101 777531204 671698422 66978762 920565765 710468666 65044346 978409432 771036393 604651270 283743968 824515974 68989446 685065950 861095204 678516329 796493692 940080556 864538396 683904313 964982205 710300839 983486989 792021549 301837062 418215443 431601657 905746623 713167375 955629559 996785740 730134102 23733073 948987181 906790218 765318339 947597822 826512058 810555222 713584578 866796160 993044237 843341983 792292445 86301781 550856312 923888453 974476455 929372013 689259768 827543821 472636919 138278511 107403168 35601477 909621048 822338561 964712447 677286197 814540764 325266646 721590628 953194841 352906 390888568 790702718 882482293 383612628 629014629 302386610 158679906 899330436 416694455 908144603 686606120 708836262 278354821 664453391 861895084 616570782 778746254 723403483 994478755 343400320 173408950 999388415 465033791 229788930 507653436 58567036 169893107 445524178 677537980 890183203 704523056 843201760 856055394 117644379 986167543 712895641 24990420 30930367 357011085 876896614 471587748 989688422 618071773 673300790 287370465 129213564 208605547 694066207 909268280 945267725 371438409 765042781 874290458 833281337 752726782 277246554 305530941 146119444 517248258 890003751 864848349 9641691 705583725 670989236 731331765 78872413 265997353 916406081 760498890 840962986 473972730 112353478 831054733 751758439 913861812 575366152 201646903 51933031 813097966 14496305 475739030 195152924 499572074 211756480 360028233 829711025 570246721 728835047 310599656 124170044 653219472 355750219 250785950 227604747 6228047 722782889 398858682 789934154 204810821 714478710 179287881 756669583 867628175 178718115 329164097 966725505 864740 571677607 631493687 767293189 170099374 510355617 717403225 723671679 490378885 420459335 818744336 941248571 464424139 736282961 123948640 267661881 880309522 85017464 976167957 975191602 674738398 683512673 629393025 696491692 670989236 998073656 914760561 584768701 391570781 989298228 386513050 612905388 817131203 989518494 44326984 856576936 670989236 851680447 529374897 339624105 915216211 447412918 954512445 784112200 933074186 305532142 47768999 363102313 982595097 724381285 507109369 724581001 237660982 84879485 689362425 805204332 346502742 670989236 877987699 733046291 18065590 404823762 365419713 497060911 533703402 537249447 503044042 356179619 715014014 492416579 642551303 536025425 594382595 123821337 464173564 565049054 831465005 871563144 991405816 534807214 818477469 985677054 990231277 802203839 842293547 232815791 353808234 437416914 415712537 29801873 639664285 947260619 681708495 535218242 19608292 639561233 908763484 784935514 863667375 413319008 51395342 715374959 198523099 992710185 935669668 338109676 912822921 403084113 998187562 868654842 40736987 644732546 684761385 89448855 773117946 672031 858306854 136581736 915747270 370976111 513569934 670989236 924470190 955892857 873007957 267874505 848820441 401239583 895749144 395212593 892164502 193550025 812245983 291355647 579521828 610005899 19582485 965757171 975364830 798536 68865084 194585340 812987944 217081859 769433232 343422649 984082254 979111615 703791690 893401823 870103149 96120506 319629102 298346343 247884769 399373060 753953822 791054650 840383415 393366204 25897362 817821270 670989236 569065392 726127689 138667416 638538486 318873620 305133353 168910321 571048446 882539584 758177827 700696913 943901914 144686439 769839145 943231547 106911494 807597097 878565918 791946589 472750234 670989236 580919969 2278863 12684331 971515995 298175308 353786292 531551853 851905988 859750270 274426252 338377286 684272367 750402968 986821531 808140040 817646463 7866221 810061458 74498492 420656025 304850033 83322794 97798243 605832723 418803973 734110345 850056878 687720934 765748834 992196231 531317228 745692123 801767739 3591144 41724461 488383952 12449121 741714643 74551593 107658758 542330037 716537846 836072852 546217694 275812780 549575243 142676614 511233875 291993770 638201865 163289076 996860361 846109691 108618550 641461815 645402153 471697195 918265548 949648882 856990734 621277361 278945536 195583806 799744275 376943853 597471584 978389449 966116472 695625188 727601495 247835356 720227308 603906324 107218837 932942493 2743523 672004239 148527663 411208015 909305425 912680491 525898462 974590467 893980278 907037384 37442097 981741012 195413354 695316981 873769442 509758695 178770409 115887142 456653860 844831173 958972732 135150520 677038742 402489123 514923164 950306095 982754757 430269547 113339722 783126897 25071979 782305200 788593035 839306415 958079831 262319839 300755302 867588444 754631879 678318485 835139264 246781296 894877972 65872619 839739157 721059749 279967286 344412446 39569662 825546153 980502853 53739487 272585985 876330639 393517685 214766525 905792162 957829825 994014952 528860696 609340879 701661548 769237374 358446331 866235102 694607890 31199224 845524439 739688070 822808297 848103800 724901786 928479497 757311269 429104130 550610373 307070103 896039246 57777723 952220052 151584332 556018779 752329810 567518094 716982495 768346146 19620371 958532523 200587776 912534044 82643954 232281144 979580010 681242910 434335886 634028709 765599160 841786922 888695540 789647148 916283603 81984390 567250739 687439254 115668703 696331624 987591349 213831234 861121169 384573049 127378891 284188449 367333395 439971788 768511593 810394335 693246594 802116680 797324754 677711206 164101353 949027702 564747076 981976101 741533065 773974025 424298894 353598233 955428549 530251563 83528376 553305727 834059597 858905591 687312382 730672605 858567706 358641484 790114821 472704106 353416040 752834140 418430708 284754740 36772511 128139109 528501210 980343058 935584177 770221670 944216959 784661558 995973692 580058796 724546286 508603968 873669782 770643288 979607221 734469971 780479486 14926002 736188000 964004378 980253043 938929768 17751231 410644973 683605886 466846536 137526458 20591720 397922291 768757852 476305504 808987801 366804531 954955799 79493823 66862424 817888245 120888891 87304410 930006382 778410763 351867662 687653130 212679481 965502215 852712681 144567505 297701622 458667039 602635798 930129815 909079010 528603415 407105928 204637255 993462706 591283620 125898540 984399041 536483217 811561964 121172267 479753816 707659928 943111878 127770617 672491549 785291971 996833841 797844867 647537422 492498886 877599887 411892776 879315376 499525708 310287858 3447998 355472580 689605254 788301190 191099936 924008284 854962624 955225850 52483532 969584671 285423991 897966492 655283390 327250704 533440308 47242520 435433273 368054386 21652016 167211255 760262101 732467944 738547699 748442083 218269050 541461179 740114996 102653216 670989236 525278033 716486222 677715090 81065749 209879360 768328121 381461509 730354481 975312575 530690992 942977687 869932609 709515638 144999886 756753724 311233213 973124626 709531098 543157690 218462745 106553100 787612368 640018104 710247884 531575635 825823673 96067285 612417605 616147518 595179805 423449641 326606792 970878556 863846820 171293825 730702963 265471242 370029661 102520470 694884592 381094762 804171571 926253697 975216254 93539836 698299368 877449408 711705962 635520042 87719435 487666189 678944290 343150177 91114639 832057122 429632706 138056770 974898227 353066842 41198497 116030299 68277558 247675957 975631669 697284176 174261828 781482489 382604221 930977912 939277245 718112314 65695873 773565481 904636472 931195857 930697582 688164175 702557563 971309539 908133881 907147980 145596594 487644129 940595186 909790789 921157142 183990211 381492848 332819783 273290020 670989236 797905132 156068162 761647021 376042109 48499095 137052716 461439640 701899212 792200787 917209312 806924158 53073766 516661706 388649334 560820499 643812534 855097963 345216635 440118721 579518310 711052502 705868547 877484765 966914169 719003588 776135818 553788216 873710120 844907218 317657477 547276953 339036752 182590053 421565318 955428628 884521918 960735281 794359025 404716224 497921564 691566706 608146609 231518430 721203963 406512937 572893911 804965054 507693569 62026022 603602762 640745740 210014794 917877659 891538890 137257620 817047504 780182285 909394782 513932696 380308470 269207758 99106379 889715873 142687096 676178101 865694075 365888682 960312163 907246240 34210995 50090317 711350805 404852319 880534642 455083874 520169169 806707355 71584340 370602509 597038967 100658952 469309083 915756355 587147292 35046139 151197694 403954903 670989236 79954634 918796732 452646870 779092903 418660858 959755778 310799782 799672612 631495286 173070532 773780839 911705236 975014062 861079492 336007771 738112776 686221287 831423822 146422507 853112687 853472733 72025103 903180198 477576832 256161888 815469331 958422369 872027520 796481665 792837642 185690288 298890774 337338223 991100764 67356303 852897261 385521078 171653399 305891636 715366190 835894418 878310033 936272039 925619596 850051546 635992869 679851913 394452562 732211055 922657393 693256031 338927651 908679721 703368653 885111942 504716117 901151350 28484973 746182221 653219392 824281924 554184747 389851116 721544249 670989236 916604996 682146317 826673214 686336816 538930931 748369373 920613468 670989236 411954395 3812027 719824899 108519925 965011814 557623287 530768316 363927930 693334892 498013737 735341461 138415909 871768349 525924315 902567840 612659155 208149123 195279110 887545768 969660841 770378123 562422361 411657889 298932704 745735619 546202033 728237036 665566911 312659356 1944509 82425332 519607313 953489677 192455114 533670457 892873185 699950509 822446853 34690380 932809529 524159065 20637794 123914014 389173277 180037960 8361518 822669048 687132669 584829181 748070896 696124675 141444946 992449539 2463274 881557412 944234650 331553668 287448999 587708050 891378845 722215239 742238610 209485648 361934561 472172908 143421630 992210485 303974137 451680848 453855503 996067420 587170341 948002755 419065559 378808293 642403068 46023487 933574078 170367146 174251622 490169107 632306424 237574961 67239527 55992246 682177483 400139316 524441794 829195517 63439869 694243725 727213068 489210923 844908894 742267093 995148893 235861794 776083069 368828788 366690098 703162769 907400002 360458775 766825094 194272282 344870136 537567654 315123229 832051724 788908694 627566682 805498647 618966185 812247821 834783185 834671402 676481421 866241675 641031818 768404276 492787161 232193395 685372118 838815513 955302989 43787981 941436141 397171202 552819273 267263685 242926704 770543727 238519135 444424810 950708181 974405574 679228722 644049238 547543311 638461134 450655156 936152392 966139951 778380980 711101335 761108983 79902200 843124861 72919943 384865814 752267192 246023231 670989236 629692563 770762670 507217813 672097482 31501873 221844569 860459985 694345665 893254372 522091674 942548135 862345176 690458707 213136140 889388874 339992567 499698257 49414660 973630872 950431558 792252454 896220719 25767203 978406712 166060276 331726099 387284682 29107336 497041559 299873540 864003933 130478653 760622647 748993949 446194044 749581388 133960238 922661064 822437927 201179991 912356459 408821169 109818814 951872737 74033210 978076707 404051132 90950456 99661532 316243034 982022542 211273181 268588825 713292542 698218348 851222538 80583466 788430643 581175364 921481596 264915808 148143507 696223869 501820240 537428069 18615622 670989236 414207032 899970981 912205932 742352249 540868999 241448272 702477408 116496513 733275219 918349420 697873930 974242440 19162297 409696416 840618614 871814943 846988659 222829112 657928367 768064361 947030462 932126899 904456516 622096402 766239898 983261078 4547668 799879886 967300101 670989236 248540939 116683688 692987469 310617349 632597108 785872271 686034695 823228919 538159291 998222020 17955466 784494543 194139146 359426425 738635763 994886955 901143136 366701249 257544461 71954484 822232839 42421016 968482322 967352902 433532448 275220520 984032038 325173101 131379973 494980015 689077871 172681512 833409922 978618575 877852434 960939701 549239931 345419679 819264981 915048698 564818216 908978716 837899972 701508039 788161977 242682718 952910996 946065085 533116944 528043725 294730328 763599895 2353200 685703228 748559596 278906750 131871046 678496976 526500103 976792625 474173594 986941511 843706530 301239859 747139152 684670665 505444835 774132686 796491116 737858732 347403143 838605383 548841189 640256532 718712155 873044718 710353634 952578044 777354297 8133645 388247221 794234154 915615528 935851415 981161036 187577891 176518486 865757818 330434239 155874639 227435829 511372070 88246234 455492930 233000829 681797915 956142211 714042397 503211816 777065916 489997365 992797979 621863721 697261493 943181731 801044112 893513796 670989236 210150022 346888194 683038353 571161285 760459500 644864060 986277982 588068604 398679106 735223448 690844658 994651004 827798987 726652649 806940950 404319138 291796875 314015156 25554943 763601167 589175574 679279095 933190721 194628045 846520270 891242747 280240317 921473789 495580152 780485499 110654746 211117284 501655470 156323789 215290378 717639845 550820495 334798957 95013412 837992467 951337746 778481490 422661395 311844233 384849903 141075589 581136684 831142646 411473269 545001931 346021073 629331707 663112376 726219281 929499233 761263291 162999818 330280074 843288376 633263697 639146535 854913708 912512737 597003983 948848990 562609743 316908389 960035874 918836280 829399391 466852254 385030734 485331192 976308388 964805374 249059679 750763505 785581528 970740114 676071359 561813992 847203263 722312058 283911789 230616311 535442390 923682716 870733422 687425437 770191398 768351425 896677826 955239136 803717912 832032637 227618992 631222535 888534682 926118825 733624183 116977383 897636443 16544866 503431615 243632628 554506558 557426529 535498306 936396823 549051594 956909498 358171404 301022841 525641648 723760176 928852704 262295790 762167875 737959295 817819089 396439226 670989236 57213316 351891996 127747619 718172111 806786335 762686126 423790648 467005946 220810008 837191265 59167476 364175189 855422302 941111174 76951373 532072379 670989236 771669668 300201434 121232189 826890218 817677293 983023921 166832169 785935238 925765819 853274750 266837014 229860472 65494289 359770265 446190752 639502162 426506786 964998844 865765209 772703793 600165633 495313886 584128272 726302157 483705293 293078940 831883177 990618773 38073948 670989236 920887019 324495367 885768003 100749372 119227522 960337546 526986541 873369626 651587653 894963782 950122674 536121441 761944665 311601552 110916788 794060998 909600913 279462960 703721860 572083315 979577143 509533472 614476322 336263578 844260253 755001209 68076304 401645928 771740166 176040891 608053007 485877426 477551942 608258584 958052985 201848533 165450837 292162923 756071418 182508832 915290074 9185248 831380450 99274651 455950954 793410820 336328270 77201018 739664404 269677429 966670827 936566902 749403051 32154456 619589089 990938118 396358114 438374255 803303888 477913261 711075819 882313643 41925880 625111958 770851641 916509157 514971839 826611066 921768153 747783664 338053350 694363511 928137436 956493407 670989236 726943588 224118833 169587211 277797806 156898068 712961025 212689900 870288641 37303721 58318578 935816512 904592718 152747366 787582553 412542486 733430931 985032184 810023249 715620178 168175726 116551745 848014405 24022706 196701787 628516007 282484826 438213982 771288326 144223068 86775861 69463183 620880693 967283922 531161002 732051098 433153880 960503167 280044908 650274861 965925283 963374408 337708475 39345605 182558461 280816059 568404682 846864962 811316551 940520375 377417659 986913384 370701596 271437897 940438289 125526975 236878506 512642068 881385672 406011238 337645300 97902043 143753646 907815471 311340824 80025713 299893430 473542465 897369096 932683065 375636194 909484761 759912185 381948942 837044278 237408332 78113703 784954246 263093802 696374235 317640949 805544108 539967162 489815350 9689962 31907965 680791348 775563657 53161854 717766714 839811910 420096073 845648119 746849918 694146984 572837526 261184269 706128676 735308370 172262274 488270472 823063639 790862493 320027061 670989236 807359307 417621197 66781024 176735187 470479948 48916676 975393763 703370658 905657478 103302590 567505863 813279203 305362388 843501023 759497492 279188432 18824566 13553237 986335665 44382066 704473700 675299856 835015454 774610142 752776158 234031953 594268380 881212321 559635235 852436200 87296897 976748118 716960297 505454412 339066369 12685730 47680238 968913286 541604093 175352527 957839238 705349336 156662152 297557680 474203814 63095677 758358750 860149786 876955787 816056755 63899939 520626024 328349442 919234484 930275567 14414861 591696802 745110185 470240198 976666400 477385707 302066014 947472622 857208667 70658249 851055253 41471791 670989236 596848235 127198472 971517517 548971635 923749599 769487803 43363761 433833488 904469094 425339744 310654649 266061266 674377956 824031831 716345098 771143763 625026469 490500628 41035958 37868657 424174868 918706918 694267661 670989236 781781442 413565644 775619023 491000543 971343210 343111 597959495 661255016 760132386 497749035 674935008 801907979 962417461 767223310 513619241 286387077 927926946 526156993 970760019 690439239 674257358 222385629 712708525 205404062 776380362 917662402 638962073 93520597 953515113 802538676 851555701 267162165 70195248 8259967 892661453 998985251 794523159 700327923 983598903 746027737 151669811 131983217 985430944 642564933 863105944 431703242 752114690 183219707 346299819 713185468 700044369 583173649 496096951 250051903 633612581 754872120 670989236 519022909 662099313 985808372 275033852 611691516 71419198 529519265 818826856 381143431 946104906 681514837 214842668 116186160 42286225 855010457 768947182 671699447 546236782 781074463 986394599 569797272 104929639 994852850 674488641 643259745 240587144 945206559 287983376 171166280 117760946 880452559 527115456 999084927 955534526 774791200 294567205 740310398 874421374 943395053 870517833 592430786 756120938 956139388 621770344 74146550 554495129 340911039 134960046 948576337 876245101 933673658 979755695 901442525 453504138 916429440 387394805 366790828 947712153 777127160 670989236 436935250 209117420 374043889 994579610 833108299 898259943 22344946 665779707 858405628 956171377 841693612 682777685 924780669 128562957 117075619 292327103 901602936 720349028 358198578 105900385 525601378 537438773 300082614 416929971 192192565 921850893 529571165 857408709 827166320 915601627 753824687 210429176 690160349 809841093 155368119 961167494 161325491 437083392 464437254 692423769 426752119 945215583 670989236 91193698 704353290 934401975 997824685 4381132 849511690 556906723 678161425 846482618 330222133 26749116 292413897 959483342 803155493 24468528 72574158 709864782 63100844 448911090 10965504 883103903 449143992 688910343 735599219 418007182 437067928 712490250 530192964 590893985 225269519 43991806 141336762 777588895 790741208 757908534 105625855 175572505 687090274 102832291 795952132 386919317 189082809 791459066 699550026 893813709 551489608 797193769 903734682 297932028 144769044 912147301 664792655 683876042 659526539 278426221 854691683 40699419 998109797 18444062 387833975 855740339 516061465 63433863 609649281 272235760 934437947 974915388 916915936 874863690 297397160 935423004 872319160 722203003 682728948 974735675 168190991 103434296 677614876 444019039 744850161 768671651 696121780 747770982 543672491 573989016 911544612 243665486 135163164 379906387 498384299 734802222 701277075 712782819 728775013 969509776 601970789 75197604 734103932 494844030 979888738 477467816 180193705 694170493 533511356 318850927 857073974 649494763 155016669 215204274 407781476 134846707 241605474 201863949 861186705 792878873 681395404 790726229 851333790 824655665 421243685 458545283 712514574 968346777 362372104 867367166 28301846 251456780 632550724 654236773 569931184 750008179 710587150 733258951 398224080 724378171 628050919 181500219 900787068 587544026 506732974 12328928 737704496 423524158 814326074 580339943 844931723 572331185 35515700 739411328 952283258 733495178 464745802 758075159 827102783 877354961 764045684 855219977 991320776 851244513 85245907 213854618 757324481 907815755 760886759 170516913 924695776 827616682 349446295 650532111 950701351 285996373 894892338 815156144 273718119 633679795 773162553 703876117 441409564 15651363 544489946 335800256 171000930 282192476 839192327 777041149 106916868 738026094 820638091 473835574 172513672 460553815 941143086 767221526 311817616 133035915 967149169 216092358 653258479 814057388 548660814 770407544 134352873 888103846 427467275 904534588 18162852 808119873 208095978 729063217 974000681 789601014 834171063 776516626 941840037 639675050 128417986 156330314 667082349 930530276 57003033 259529975 531355473 900191442 345232373 990108340 258384509 938492661 141285800 660749982 245826218 530844156 313777027 672136826 799269767 770114924 935389451 18835457 468396042 963267969 325449439 968153659 828672613 956688081 990625087 949833974 798917370 669309745 310919749 981995900 685606716 399387927 850356875 823248456 494766212 915917556 337624724 774973197 685388023 31021527 251842212 995707232 721270411 725573476 106383852 843805510 444494188 899915511 632760508 848765996 870920000 994276826 753283485 344973865 324757808 706448439 924603898 534925678 622817016 913819859 872092108 978723249 158685603 473174394 395105772 999392995 749140467 73192387 31589583 673991457 813258170 540000417 689062059 186750083 990997052 463624683 377479625 676471328 773118874 71444486 257340196 629844933 733232992 949901654 643231686 310126830 494441973 780888418 531190559 986098617 892512611 879556393 560678616 379248139 788029696 949844783 746787670 15691189 382438874 461026055 224692254 920313845 552585965 313182415 326690140 564890753 768138528 838052495 889398502 730046394 830666196 772229307 90026732 102172120 686438898 244492749 414189431 138067866 918480813 794983544 227121233 726881933 907629772 542778642 403415436 134574150 93046932 911140779 686846290 820515098 423975344 682044563 652122517 728616245 823673327 850510737 717994260 757169924 968873813 856068155 335215841 712035225 958169038 526410165 871211408 734410140 752690479 789195916 8885307 254022701 829746598 716405225 121448339 299387942 277719684 152513626 686641869 4658509 661442663 161237383 557097425 795415133 805234422 771849448 74420532 858205281 939117097 239973412 218722257 863530420 87856601 672783759 525163605 433731643 388956002 891455351 33016106 144145553 762898252 824980152 426059867 49200670 25377057 586894764 467511285 763131434 826808341 948247300 960821117 885672279 51493445 49750509 653712612 184012198 179896964 982670663 905043048 369160482 388010382 741937134 168046172 314125685 571496529 541116672 679325777 356916183 898077867 795823576 675572789 874868099 33517472 175366874 849731118 728335515 460359052 243219459 387830394 863237881 83177344 559266987 625795569 893217362 284950040 740539039 852705937 525335993 681135400 690588220 644807552 992702083 857573773 912665254 333632107 344237895 750827928 734522274 808479273 740165292 760603247 931281812 609219974 594069270 724417898 91827164 852327740 64186909 376926913 717672308 892522434 785342187 517399184 756143953 775263726 989498597 857170164 281241598 580665768 688335827 252324376 845962927 174726557 873314945 465351101 669074416 901914113 989124565 901378673 916372086 938221394 799587346 723890406 888884243 340285200 412528199 37768537 198690232 434814391 532478479 905864799 948942722 41372593 227348198 143291255 599132151 405882206 313323668 818009135 139122562 527867778 445405116 847473172 13461246 262778462 797656829 796733204 374163192 940599869 246711833 296789035 849829618 113086617 816984021 641905730 356386204 862273703 611700909 593714991 803158955 479658446 685786660 683771859 987696663 31714010 859515833 156660147 871191807 770939188 113621545 873724061 418517000 13762208 833309060 46149716 681177975 850403346 536617685 868742065 120689736 980549325 704195816 832626907 4025669 379784723 470535495 821922468 914459152 922612354 233387505 939967965 981810309 191432338 213003965 595843579 865103461 147242023 814839171 911436688 210650300 52263242 791210562 329244811 921969158 548716095 508851088 953500105 699877822 682778285 711966359 650998619 861282787 919041919 902803944 3558336 843247277 576121476 689711894 540686476 265793783 68048144 197603792 878956121 26623743 600018251 719051891 784463802 720755145 350282739 431905191 331441251 837472037 746135485 314705484 899356190 48657351 520066775 458348491 732376264 13562405 735833693 877320961 851342752 712934932 330326324 975587601 842411187 16125431 680021527 928662626 471318449 447851483 959163434 100285279 643481359 52414199 673072036 280953208 10347731 862763576 911372510 759127479 50819232 649036031 417744559 591595579 959054348 974462128 822725977 756907490 436139910 383556354 874850286 233344895 329144365 928145055 490652190 845254443 477050452 203857784 463830883 67437947 856320021 983088538 804188833 851040209 512713071 718747540 485194588 678768130 709824936 670989236 739841485 74146389 913127959 23765207 748720912 689062175 233418642 908538044 385973006 684004086 188975835 258322114 397703550 860070280 878186887 189853445 42185725 811368874 489891548 624055678 182775864 894386849 842527990 969167106 771943667 948699193 303253585 382901422 636665658 646974616 771308065 68395958 972924742 148022932 722743248 609847159 859054765 7689910 923129503 546941811 680421543 747984629 637432108 989494660 679088380 720189347 310509945 119431750 125220686 874447554 677464963 653901920 684989298 642562902 645820215 685614564 473330837 811215539 652447998 16318464 658243576 930309470 929090793 669157683 966968934 769159997 856635391 273296725 772724829 354584105 739476922 798534467 322265446 873473717 774688082 766727827 668606901 940862187 914806309 108456591 620202867 549705782 227939201 927333367 230946466 678345598 674240384 470374504 994407401 718535460 852438010 751711557 938375807 741689851 985563103 972127578 473793435 146757544 764262318 933122684 953544256 153543827 767891267 808162761 718017195 80769935 703256650 257759567 480442022 912505068 903043000 799587775 928944095 179748704 718864656 762552841 300475431 324988812 271519775 61783395 784579806 646452904 739592286 34206596 819935250 104025463 790405222 423872176 952638681 420273588 978531512 834252839 340605073 15403583 163142404 994993709 34475142 812681537 624873586 914982164 11061915 787232305 576128473 702226447 877976431 134843441 655128021 950041526 482285580 874907557 971309030 977021884 970405386 533439196 26185273 356370922 348618376 822985838 300885307 324906290 682828520 404177518 933976812 614628891 53360746 805733605 93856097 238347026 618268684 613618301 966758570 880251776 569715116 665558443 760089817 230759299 744269176 973578584 899130969 74282462 691953988 816550632 730563104 887153752 74308259 29414741 274127970 525093412 720494500 862354638 43752284 4734009 197097377 685454993 713914476 259408723 834537420 280415905 709736260 793061005 771411648 914592835 877445455 802394852 418639843 280900511 1723633 777592038 124383622 885806838 5801718 256982829 197670599 975790633 888960008 568722090 689925961 3117854 695575238 670989236 716227894 530936864 818526270 977903606 805191266 738283248 835249403 757217626 176190515 554480750 422554199 701902693 928835461 715953298 5504897 937654263 323689519 109998732 861543563 790545441 842702374 793800739 84061667 884778548 420861595 526425120 417493219 680956951 319692390 143675412 626629224 755613081 998895499 710418951 24970955 577727864 227336949 825714197 137652617 233637689 708809756 631366988 150981140 48001850 190557603 187217386 831217637 12524064 123349751 54759191 776459467 517474975 193078453 785316382 823443 897572822 124575782 377573226 345767858 436650821 897582689 837679717 651321291 361046860 783108819 953278072 793675698 308599860 912444264 484606725 862720231 669939193 557342465 856022210 304739667 561330181 879503406 877987264 718538265 825282977 795226936 675340837 943008667 393496726 463737425 922041445 870362104 435430213 951660512 531639961 792822444 432778943 725699960 14857414 530784628 303052210 702694313 692871379 854123839 688229787 494054468 238368887 288007140 222327267 802402017 408346905 419233877 102121193 670989236 829262660 60154171 40042955 234928473 289987395 130049720 688322406 921278360 892862612 484955551 715702092 825301096 801064218 761657308 773327024 956966796 981040432 642692257 603840810 711916887 273036880 342781377 147996286 180227240 288452068 878881514 894305663 782463339 987732268 602478575 258092403 480333697 543410424 683259386 537062970 844711968 508737658 339208393 933548043 686638597 875206680 926740501 946282107 827005013 83053054 309223499 588944637 843518111 75383553 56266810 938002750 857530584 173585904 711606913 761098117 710203437 195153047 766431942 870547400 63746992 224549556 215462868 411685405 600283072 125370087 830803489 678191766 892595554 7947404 675055485 894509782 913185949 622755716 821820265 427161431 888803231 28257471 949824609 946031280 671846617 947690620 546610428 916736998 951080431 631577342 766877270 182670047 934336864 285524312 283449243 570410457 348745610 994504095 512738434 726799461 829727957 330119093 245027998 953439002 680278550 754960725 876231848 60690751 533328872 777250995 429040500 105058295 641640506 678531294 531750974 108912723 354158674 887014973 338920444 346898583 837538038 514640304 527403361 119428839 457762270 384016689 925079941 336326566 685128675 963955090 976376282 24280952 527807538 573626643 72832917 40133701 261532007 497763642 204711128 264800819 703713403 552354081 251293991 823629726 867465968 991739589 894496837 187862399 96456553 637589037 790894447 694045347 811332732 693079956 137194144 973091754 899637414 821483221 158870298 965042165 943863470 306070864 876257707 660368333 917576342 8071999 362898862 693838588 634859381 285195178 166228677 931107231 827020902 166341231 382815783 200557560 362602201 950699238 80721315 201974581 798922099 411015680 926628018 894496637 941292278 749868810 424611042 736415667 476602532 378682651 410948473 648973397 756313423 74571489 991602118 377510923 473244699 238289378 882391731 549979174 168050310 818417229 918274931 146051625 11726162 680744502 144582651 369259643 763712498 400613559 935731522 455748090 986285912 215038208 188323620 774632249 399812762 776873263 707285602 959234970 61746459 862545554 527853500 590200577 791131754 116399558 828992043 182517485 517039007 148864886 685041667 666210547 938956151 268086664 864209065 199023447 346276079 747610988 140481485 365972240 744366180 622273328 745431602 166480932 969856686 655868805 959251955 446845836 696006625 11362057 704369507 182458884 640581646 724280797 430411419 328104181 796631762 717510090 119550169 496933295 777332610 604494312 755194278 544494072 937855782 832916475 226353396 342886928 167828012 670989236 497276090 677492520 149580063 740793729 290370762 676382937 793843140 201914446 939044060 205764525 307092760 925554917 590616480 152429570 998787233 883263385 791087470 55946360 157460955 334474931 373198913 966471013 623108179 757073402 635364662 866404700 306256850 672066420 733973467 17525397 106117125 718132823 875390760 438266402 135572115 263163662 27113203 748075823 852302499 700087493 93360546 875189479 816220623 681932752 66224099 806775470 978413902 558176796 776487329 709844293 649850792 851498846 725803140 96482335 131252183 629933651 969079920 705942639 435070511 911010122 38484856 897807429 686314790 912290880 626879320 781702535 97892572 832704384 740510784 930864477 984476936 240057013 860975440 873833964 756914068 182591392 130682006 391016104 834396727 480960291 698963580 854189276 929121054 735602963 716730166 679147530 115336267 594447006 292824773 994435236 895921194 542543440 250179227 830621754 570164610 898330893 3586548 1654328 913455499 884698557 670989236 703338683 475534179 861112290 739185431 418978154 133958317 70433406 846236935 481148455 498387536 894289230 799556212 770430435 812920323 849803990 923423210 840111143 859575597 79797568 882183662 699359987 776865074 198574666 838272054 927758520 984801645 902240529 942348870 957849668 104729814 110613459 191300479 926500357 988676176 997464886 280627510 230071419 228054585 868128389 993542556 275521354 193913129 890432535 433223467 343459059 627478548 430224984 773304501 882983742 967847606 844731590 138783009 703508298 688602135 67693234 864372278 781478850 837652743 501311199 907945757 274568530 860164678 16754324 670989236 768805466 81150987 995844408 35099404 705721573 986487140 958752074 829152247 882626726 260297939 622016426 459581336 976961324 810388297 581648283 529459412 844793963 687997061 789869512 722795907 865628611 996557216 794123543 75130632 750829075 559081089 448244908 820477021 979234108 811789887 82915470 861201104 895159756 389389154 316025041 354490039 776267303 705252684 273071399 207030073 343809466 322634064 311952510 877767808 225559804 258318005 700874759 834236683 212442227 432086392 806408522 9682028 317761210 987683055 727649777 975001912 705363177 879130711 530917099 975017126 130452920 278053862 670989236 315052397 670989236 222368424 970175279 156422697 68740913 386930669 145454353 853517143 918113309 365208446 927703773 210029529 932069273 894163780 378545714 884766791 521532842 902837624 291097546 46092794 863725916 68765312 678094478 871323700 526671729 820573141 933477101 620288946 863484261 712380129 452042592 689072170 304539070 832325711 681987224 987265245 568673896 788407456 811359702 929007674 112795384 753840802 841585091 139284245 138943662 787055686 76463188 587275130 747172967 316725945 819808853 713765248 112471693 88892789 51048095 709045388 963794272 229923624 797090693 739783398 848519531 807173713 174742176 839937070 997534874 683822626 670989236 103828778 301581477 973618526 969763114 459145558 998929030 397971157 862320967 766439004 16192323 762535507 314146137 606820586 685589083 464912322 139051429 378346720 893616273 705520671 959971733 774248904 692739749 728387942 744155852 359774432 766581715 316478617 370488183 156567282 223507945 650183673 902514506 733220923 296786835 814655575 497686681 154315170 888874276 532086624 74879390 917146616 239333718 472602679 439725124 741541805 906087548 555523923 964254163 366600223 875210999 749275608 754142332 679925687 186781073 424385976 679029589 822082403 886963562 287104377 202216815 620092836 479087044 677718632 251770865 830110391 996401946 20299760 906666333 271547536 75547322 955464122 906916618 754701547 852913098 675495702 950672854 76725873 10016029 514433374 359884767 268255512 963274050 865117617 883844008 941866572 70866410 136412025 809195994 12604469 344052682 993003010 756470997 92514186 678601857 900104533 198198929 359178892 767089608 651867927 21897314 968124335 678649408 675127020 109891014 933980596 811013248 867644029 700652399 633105688 651763388 575238431 489069201 577043797 709633717 722891564 804740670 851786110 618255514 860166216 845905712 215467081 601131924 253372720 900472833 567700047 388284950 880425388 922038998 969730332 775094815 147354042 47266250 975354174 999657709 369554732 310678719 160677787 179787776 674786952 268955606 17428677 803598848 951013704 340241525 131295030 670989236 226281165 678644498 891532246 89272713 446690763 548501179 69410107 167847055 75275143 282796047 956137340 461056800 198665728 694399803 796558932 610235307 165490947 556116712 360466603 851640679 701939403 671468024 736293485 624543555 492721837 786177933 819622270 950672803 689765812 812820619 145194103 285264055 905563429 29813990 796158813 851790360 140137975 16902140 665955722 460915111 830349497 198330808 656766824 419483414 55031669 949175767 942461827 166967292 784863700 5501245 707219195 638767271 960909227 879345644 794963672 208203325 405304720 966211306 809435363 24800417 871457530 759228196 275298962 216594074 380100635 945748591 728590060 831153101 668238310 706240771 692974970 706110701 49660284 692561942 786374328 957139468 994153748 689100040 938736269 940549453 964941767 533156010 496620463 574514081 343931419 414000387 954953829 511015215 697730809 231668408 619971090 812078499 832009850 907674026 424956015 506874196 403469330 999662601 598400503 830840353 412461630 970820468 793333147 100634940 384456101 173893390 814244873 832881164 81871236 982121108 988360962 35242555 159982138 674483478 573473481 138317272 915159354 62819275 949878345 637816420 714889580 116879346 510144943 308758712 281829285 764196457 672913493 772310882 478416499 898077649 765243831 335971827 608316878 240133391 976614885 519732130 439163022 53134838 464019867 127328584 544021580 670989236 3477638 999307324 447470491 7159072 221799725 102167119 684608777 762554577 677182033 273066712 774728173 564672573 986195520 849268274 539286206 209512796 152032430 480821045 359503608 964003408 29623813 841504251 789885244 670989236 747811795 425213957 511189681 679159614 782663405 149155348 28417643 995161837 405581486 796220666 388057977 534459153 805112525 3617789 925016115 908139627 674667444 497731729 601580898 225064135 738330587 393556877 569372494 961593101 111935062 213516455 586542511 167699824 182311177 604893788 953554263 576942497 588295199 734584783 43643934 518326864 867346391 557649372 697448992 970958728 102917674 47236163 833004144 6771836 684904927 911877358 429851410 919379874 724525262 783565646 13789351 81060676 701615079 747756618 743649668 606028404 521775319 390604943 873820529 884283826 952091309 199934662 745991993 877000153 814542401 916824572 437441716 67608517 526292418 873489035 468297383 843394414 922650189 887895657 753424742 699463837 399056289 439883343 965877214 798118646 142980967 767478471 160537290 141231617 854909348 784708321 765238114 922199473 756162385 805945666 941924348 738969548 770487018 357719970 991166332 702534950 244233356 644438812 332898386 595965424 718410868 619378929 497498093 191124826 254286659 911342726 728304232 99304708 854680479 678712980 480047783 986130745 764421340 738848071 855951711 364208664 966507767 670989236 859905163 91143161 794219928 991910820 823845726 848831022 943999574 313444813 930634688 938116867 899808559 896136750 772129377 759790580 989525179 379562090 566033776 468175044 670633230 541320464 483013210 886189569 941677167 421264512 683496873 943299853 979242051 559592995 763095007 468241715 138072712 803850076 769764118 986620874 422395278 572998561 851884343 151090266 324748357 654282984 828171079 483279522 423949458 837026649 364410135 969729429 407858337 990484341 564039854 203311049 758227241 893376488 796062536 609868629 783884572 926121873 984777860 676616451 612979425 430121103 942513044 759898096 785971120 559052607 167001607 962461807 977450048 284089973 774255822 906113154 827543178 464480388 429852153 420640124 614224543 913758211 602247286 458347959 16539003 344172637 187840355 752441918 909911302 869829299 375111788 90351221 119062364 898712759 897060303 974081770 678754325 953430375 790265691 452597823 655131813 684006171 576432338 277916909 545986808 326018686 61734416 803911866 363642819 105726297 847093603 181525822 345997709 678737293 807466655 707755469 999855495 615846496 987525065 720952878 849340919 552343320 719143738 570515309 969159220 334088529 105676220 290294664 484597801 888944712 86812000 479953245 823307659 80780048 545502781 362074937 674847194 621230940 685784287 410710311 872482232 602661941 82661597 854829135 966663575 70765333 240973124 681259016 733454860 6855240 671168592 934628714 818493193 687590107 441019526 717128626 73291391 852777711 683272640 767847405 937961685 5765136 263745577 727075331 976570273 41147311 803640988 239560916 890132660 215521925 527976441 581752177 72592445 867675168 856072424 77709365 960686303 834440843 698637360 264163765 754204203 719604403 868934863 812072832 965671667 991537490 682119768 683281384 557956584 314329592 649912335 676869623 592231473 976202268 276321391 578178012 357162987 400168989 184092439 907546430 607814344 123556511 25274535 687484876 438528206 522847708 34653179 843565939 761375645 678773596 914291545 372790885 2871707 281916937 873441157 439952287 817107952 174704333 606410 434785177 989923808 956230571 566690323 662986320 447573425 623440286 815197927 273985148 603560854 566702388 463973377 529629158 821678197 545785953 483215020 900664231 710080358 783651897 928892584 764910248 695101939 755734669 709176640 281262108 566664657 857820252 68398918 159649805 695253439 606265418 798020646 659889871 699542631 863158265 973261870 872448094 766313617 122308537 621664810 509382201 303728359 957407618 869871185 599314892 112821914 789021224 856599296 54751976 318181525 669738570 865460302 140831285 736134417 960048309 951007382 814887390 740490568 956638483 481380969 457470447 580975131 961957736 653957680 346762226 460496623 332229587 466277018 747714240 323984720 555094964 215438217 315413573 30695675 2160270 771329884 885362378 687771108 782863145 856408527 726512712 298838006 955808648 52452997 186190589 678272388 813975420 670989236 764453348 808879700 823672734 677502090 674050706 113110814 798646775 947470650 768894598 527436048 459683008 217347357 830939446 371667220 829630005 863112408 668226204 635139906 314514747 803209214 163532823 452589493 670989236 822017587 670989236 219471659 160529847 87966665 818003123 106206634 886933222 975716942 201873796 677845297 876269166 98954060 725678896 261218442 139955879 800660912 143368772 356494800 713082327 474870916 995828179 843015562 470870303 899518001 836730268 92835390 291130710 752790164 670989236 688508357 959602556 73339686 452516870 834794471 320668176 613852066 225313244 918963992 24726167 993879751 343508438 580760914 72437607 867008416 618912563 290379488 899403247 960283000 979905818 179251684 882626458 232153901 925623411 781520207 600488484 523704912 820212224 950027326 684800674 853424704 931318684 272489467 982957831 763375055 627760482 688213565 960055586 663935430 54781475 409590718 438879837 997240328 731087085 720312563 463723633 461078341 190132538 174424532 670989236 934107435 224181394 95778824 859944556 427161821 892393306 1558567 267369356 828528479 829848203 793941807 721202440 826499806 421202016 999483813 179955347 287600252 695108472 320912822 588851153 530404866 902025936 935709492 746865580 882420890 956052888 895771841 937633158 686143390 306821076 705630830 850692837 663115435 827930069 742867732 686763993 995347380 637793043 286530510 874489986 77643889 463432992 813638391 940466876 861798585 231385998 930647057 699801757 684095772 913214105 922982721 31360196 738394243 981427606 239279279 5398706 519451811 226557018 340338226 176434423 409505590 189435816 859349971 824349452 934250986 343320729 509418790 168470707 501390542 837600622 323058586 963236772 498116713 112923356 368092479 953024512 219979846 614019584 733591745 227820352 795248537 990389873 481785054 902336091 727834059 140758892 692834173 577734789 638406302 802148274 689382304 682679413 436642317 33557890 590548363 822437834 303744194 649830968 858855556 208815115 835498080 800975650 831364693 696997637 415607635 590936278 375018817 682020925 130249826 231283614 988982538 962170627 992340630 544848881 794403056 617266756 198046802 670989236 769444000 903609544 974210734 977722139 9528073 634185227 20017134 756015663 639426580 571839620 890378170 239797867 791449387 672220688 960870786 864519791 295364990 126828022 762167368 892766808 208366374 889208039 917249315 596693450 919283786 801454050 951740192 969769922 964725054 339900542 670989236 965806982 806542631 251941827 964164858 892791445 858814934 853766644 713898095 632189774 20310866 916206408 691333794 6001799 47333402 546265502 155059058 273979904 997083484 644857495 66255578 612682378 974632670 942305670 428084978 577224590 670989236 80745154 480484782 610123192 136668090 589487592 684451180 837234160 717322668 472930256 995058396 340553971 721370792 110073821 735481964 999901686 716881377 274203991 712746390 67366060 83038115 965380312 338908225 939727712 929358552 861997800 272058905 895604166 960687730 849363798 713013239 732085629 785234602 439447376 760407484 789020113 461813166 163810058 377226611 722428356 274761845 559510957 977854176 889510741 180978972 288661283 223269462 263383601 573802364 879229212 599994413 493431671 221213511 653267049 476759084 915910533 473996851 84750075 678111861 825648774 83027659 494562480 512108838 753740214 40418879 370178652 126255342 560079502 450266270 788663455 863908774 704932133 786901448 958913350 475570880 855789307 797629182 803733537 650053450 528979931 137694305 839863670 878694179 970905695 341820622 564012921 271972988 829084182 642588284 158032083 549576395 890772415 470492603 807290632 835136576 377565066 603231074 199678081 670989236 355523683 436271694 796933900 273579622 689807543 636260387 446133247 903353117 694557091 703228607 20241594 670989236 857667820 993771115 458459472 428722292 933312665 300578693 2918401 47607507 841299643 7690662 933021042 75198324 458839911 947469224 462767863 87530197 93087340 964137918 197723231 725393129 963872599 642519504 918662772 819171202 414955431 716575696 290892458 168088782 131640312 114231772 291621302 516924222 816406753 427981383 742236415 989539231 875453583 813648836 399856277 665443053 448977306 518233827 522751376 765652615 225106672 800139409 946538831 201166821 208011106 871697577 120209809 914530564 223490216 930804544 20536472 825452414 218806705 292696945 184861259 938108839 821655472 646581775 673089277 918449514 267146527 909735054 761279503 545002491 854347585 473311879 955844317 127037314 262675875 962427390 805981032 190736244 704730569 344219444 670989236 988133040 756391612 702567599 864286527 345092885 221937993 973556903 74057226 67232291 884404196 995412208 261146911 494090508 944297700 141840924 567872088 776071399 908623368 748711885 172918068 851255005 93322279 699681206 910610673 720193802 679682131 837124278 138701987 109179349 939697612 449724883 982939802 987288839 881104781 50909243 386999811 847953491 373546726 676765909 260519795 284613138 234058109 139717373 692316655 840817552 111075011 159874498 137289528 163632763 891168405 861577161 812119185 381974116 955812202 984013812 85609374 728429742 677463434 899123446 680153907 666187173 523425435 62640822 426809847 878151508 796755602 265689645 172366223 978949824 31246648 713789914 839209736 697243581 602808784 520314206 274041789 603088457 923368647 914208617 760044181 935629706 730179143 736074057 42772508 849508817 831303823 433974962 201652241 694109483 607790723 488834902 311072337 860111873 848713143 921376254 802435976 528990171 843623458 836965434 660707095 884619036 604053995 917910148 712945422 177740413 704497392 421682479 657051646 735298715 404238604 728723153 470665382 443138387 601029313 786790672 214582877 784927700 419184715 743270342 380974844 707063115 449676260 921645320 969434955 150213419 475213588 547690770 463446201 240126701 537858341 16072769 730895747 247394649 606300539 725692333 129020551 956286194 30994641 677696545 414195184 680619057 265228456 198694246 770338358 886118355 941746603 875558830 867358270 883240781 884138500 488926459 382513221 222467465 953008238 984991584 372249649 753978851 974001523 64136738 925021547 36454699 919961425 151460234 683610164 448622184 425898725 731500447 476495199 476895955 609330587 86939590 677694574 136147110 80038236 321859718 986828044 690618903 961934294 926369369 862664839 91505589 906846595 161156914 863380357 6251577 901384098 551305553 122318919 626642576 15965897 853158079 823629628 800154517 750335966 530335638 563651937 817831806 670989236 860073203 519488923 790841222 446004808 619660221 701941488 898297199 925962590 927799324 758459905 23520655 491059490 958393214 546660265 522574950 976456105 747848024 803077196 707797406 917446638 780386654 670989236 257645637 893348069 399256621 63252323 393399858 834134976 834257871 642289101 460367465 367575404 753875627 707021280 944358140 745076350 729942807 752204251 658900371 959682108 882608468 984928239 523112471 74531686 821905789 432070211 33230196 374438377 928884373 198363444 983679763 147518897 186952405 485959370 202859940 443795808 428664285 629726477 337065808 35742080 417429549 266956523 61966779 326864649 180215369 627089865 77955497 216249181 666039103 670989236 127005905 25457662 99966610 262692549 164889773 884048994 999409307 839036683 454781236 31145547 147695209 420770055 609114897 726164325 774128995 609139570 787906742 22883687 854521947 848742572 892127290 999614633 69822442 823704608 337836204 747317788 343842296 628134042 171044020 150896492 834601158 843228349 806970815 445085424 319236989 685719194 858924296 253823977 749114355 967513815 594774491 234735105 756994096 581264335 852602892 467960982 384473437 501085328 190685312 780328409 905387634 985461647 48738197 327936627 993654989 835097234 637184168 829955713 394333698 796227146 544297580 764093063 269290615 611850813 898800812 956973436 344696734 467859804 777563712 684155613 18076599 859010301 984101672 430823625 567252325 888808873 453718970 821011663 219978408 959721876 407805494 946447024 765975388 439628574 430524104 828178068 913253672 152351894 774547737 623241991 980404527 188246394 699492082 244826663 310271443 868333634 316121417 696198918 239559118 469046604 490397393 564861267 726887877 855326679 782134738 8701456 683985764 790535964 369779613 97243126 758160439 623071267 774188059 906164582 734933158 23721518 358089672 187384788 129837534 154102654 710095047 287180409 728353897 191883072 147868526 46512377 717609084 959815020 806360868 147825285 700679745 862372917 822544818 932345228 225662091 986808296 754994845 938497183 843506731 714703965 871045475 783275516 326103415 125654994 699493787 756833496 855888735 335214313 604769739 424527922 632381736 708999643 112925185 552796104 937478248 982977254 933277003 764438183 613833571 422987685 873472115 588020602 773713726 227221228 739541938 491230032 738269663 712032958 375591599 853808129 23632453 931176670 544144295 594832513 845816195 818746979 656572429 234452826 748892183 738456210 506366335 287359999 571049599 796969955 829582557 869254362 679493094 801344294 955725153 71899537 993852914 725241523 798518648 246371916 710251471 482223804 345985289 777951152 812248447 41208136 257194797 145657273 75322233 598420778 908745314 578492573 239936363 364230486 673342128 908462432 984681460 219422039 147104959 835111425 197518085 364269082 966235928 780915901 859473395 412807712 946157088 75422955 183703970 931753218 672921771 691368822 364109241 865607188 866820 700782053 299956810 425710467 544404552 610149931 986673522 797075161 762827379 1523760 166938099 833561171 622530434 170348106 880029392 373146111 834725918 139056778 68770021 787144560 118341258 630036664 244617858 974294610 284971026 670989236 602112110 965038270 467761413 632729989 722150109 670989236 196080506 785094557 944816443 937028453 236575927 704682526 983147464 747145641 480484046 717300397 237171716 456547353 622246905 913901249 799622013 253941891 787176200 755260182 899928088 526841094 972623051 797344987 630935408 545627451 975718655 750529031 974790440 960489042 962864702 129618837 45133317 860693990 849038325 203091971 749190786 678179494 800975962 941293362 605196944 902739119 303776939 475151200 302351747 838744180 266342618 566580561 873754537 788659230 956243366 92626775 684888942 510815388 102423492 707511300 136601041 903485273 626489084 234449051 538408656 195212231 997132537 101800296 462453185 732607778 627936493 792175132 670989236 679775901 850538310 403306431 435150617 325140328 586043332 258849234 213631174 877460660 924828957 739587004 965817005 722481942 896277556 642783673 776039418 445050153 957121413 165914950 988362096 294366149 467610953 293498728 493475332 63952723 169764513 747380022 155703577 749892789 452358686 246118476 90145444 891797139 667448056 824624620 627097331 869572597 891337181 635484741 8952854 278561790 704313166 358835722 600190923 753538702 444435955 451054952 700703183 395232753 254836603 935175949 979698135 447043488 427609777 732571406 932656553 683230960 824027645 533006731 4168831 962464496 293638976 202526248 780961954 489834904 981214978 717585756 927884557 811299053 850195593 999393327 868978537 744556585 265699506 554209515 81972325 258335336 339050667 990787624 768719140 844791325 987497556 891720368 66247611 254605264 851706230 11053565 227589299 538624573 670989236 670989236 232930362 859410193 235638700 49347835 964584251 934819380 720622606 911132937 408080091 570703337 59456609 260886213 817534977 670989236 130495592 988308347 872825484 945989591 847221371 22538561 261455738 796634623 798121021 165419515 81537925 188713132 99196695 85524532 670989236 654532678 573346760 677605733 526253921 252114208 338292445 686584579 758041804 999496079 871181894 339126424 28467679 739776948 463675486 8058141 925270968 810140744 161689585 604804914 977874834 746931270 624015481 256728638 188589465 599131258 352381346 496995109 962053692 824378985 132179904 623887837 775560160 369191500 433185976 874491226 851765153 724436182 557201424 875929477 184322101 829813835 336808173 105583070 522840536 908640203 696952442 382438449 398547585 896740017 595039133 995713729 299877596 894554665 208701719 990451667 797666225 435202270 323870952 449781446 558467784 512608677 686786020 740349329 724796098 748031374 146705245 594751885 140048479 463009781 437996028 977452684 974914544 912637663 192689827 903792425 928730307 494662424 998968606 160177372 639394332 649416196 163774384 36278746 949145876 445291828 768166737 436822215 866430815 284906596 823602076 97582126 544690235 614240649 786995262 677115205 414817683 499595055 684261751 822065202 809622361 807922336 809549834 672007403 806189254 995126456 662412928 753343722 614665362 171211491 869647783 822621796 373609342 178667648 275088237 739094150 371444524 138533830 596375004 461897329 379538510 522956180 996437395 585331780 762611759 952896403 507949326 757742877 120931508 348112200 991869178 26067766 591855236 791281198 725316363 984751295 491417574 344484202 305620326 976547348 931088552 168467746 55082688 103066274 469742444 640515348 751882741 164675137 74021584 191193251 869521425 390844974 803535371 980373575 329275559 153231266 592012926 461922118 824690561 670989236 359883827 775021646 746134551 787441806 899567656 692714601 231910347 121945695 904413139 376065403 200472620 963519938 769647647 914009040 7815723 129009351 425676634 690755011 340134779 359439394 512031599 961027811 906512101 659178119 851378309 904657956 840716785 773463545 670989236 604094535 973309978 833084707 902677054 834355537 770952809 474323371 166883171 647233912 961932533 998907284 833853235 496680793 444352999 375216900 761401635 607784043 75921861 407417538 553533342 914503380 174720375 430658526 405519755 848019591 889582744 670989236 980584087 788112273 879555597 893216374 844538925 931332576 762573574 550270059 467950123 951923170 713385042 641071043 226926339 348570862 568168968 347544281 670989236 870244427 507890124 241637855 883258410 563788183 951851392 340071261 578550410 865668559 762085168 500887454 737586256 985038054 510139951 181613583 341048022 639404306 889348408 300310613 867897838 170883587 577278448 208350818 921780605 521033564 772035241 730778123 478049676 858562954 139830824 986653896 775831380 89321416 863084245 407434892 657618217 34957071 143389289 873458025 830217023 547872963 212562177 238165627 786341724 676673380 978671554 841475655 53134568 774022705 785164434 877561840 721350745 461434522 245303470 468978336 99743446 861887965 549733132 690623841 835189955 986719758 442961051 902993758 961002641 873894563 26225353 341458066 685003761 351781754 571447807 744088910 224038203 857157674 583328096 602149318 285521004 254023891 705443285 523633216 497117501 733850159 3662791 795916064 400516600 942967263 495592622 978853087 620241584 484311113 261091426 843078602 380095134 691785487 175272709 670989236 845400352 979141353 95324301 432568094 858252812 182548428 34353166 875724273 841488885 997326021 917721653 267434093 785525198 726468964 308049897 25286485 147257959 201286861 824890483 475661741 8183642 923353469 132635500 8392616 763612140 765099813 819205863 685334662 481054550 892659490 48953849 470975616 403353844 389358942 782276830 609551181 251471364 561358062 885933654 992453675 245910287 753202197 318799667 227914892 818092223 928783676 488603843 682980844 549696708 947967514 996667445 43134076 794984851 943717093 274515919 608684751 699508855 904645259 263780432 685238277 833226011 856935754 448685837 32302152 256782584 756415015 706693732 238276596 798544252 960274029 103027685 89520632 185106029 969208826 731257338 529346774 989432417 874586924 272184823 919084565 784288048 747456533 817759166 910360364 670989236 720187610 108899553 348175145 335960795 609258767 803516263 582484261 819896480 132285902 585707789 305411104 742343880 508019824 374930043 992358125 835433299 673945479 697406462 71079436 33886148 718366576 72607609 924488579 906727965 611681650 368356649 44018780 881889973 9901526 242814635 626885751 776332452 352818257 250877962 943008582 936844865 963836843 151058886 479945509 85050655 309232011 914382354 590848449 776797197 202511235 334975851 805625335 893825629 685714561 290281107 982914936 682036121 329720061 137890780 695649666 48884102 130922046 960514740 501452810 172042353 727306545 638667829 468078569 371579600 697519531 899080701 747080980 374406298 547610052 530755805 481583014 759883845 912674026 994357844 655805377 15458129 657318630 805164082 514305973 942714978 70215891 788316195 565221016 949977177 738465246 120418491 948581594 880088759 456395648 331793780 959408203 828658365 438570826 533099329 899001055 740387452 848384160 95427656 967928304 698023057 238414099 336844470 825046435 486185068 177373105 697228392 617891158 490893686 683451755 1031805 313328187 992629708 720654273 837792672 889756690 572705416 763958551 341467131 532868952 841731628 787943456 992920008 434683146 739298154 867996901 586358407 931445139 149584116 348257013 827408153 686357544 902601841 874656100 787471528 127530349 744331854 684699760 19359074 580241415 946635625 493044439 151739699 305013795 99211320 94056355 966330863 484227910 984311255 163975324 281030035 219695121 836224460 298633689 982754993 131158364 750459532 116455199 756282172 571041121 770788255 921951277 696310605 621990063 414331896 753349053 675566276 635025030 613770707 788343027 215062846 42408275 921614488 970658476 840813341 989279685 105351502 508827236 687977574 942114222 865292180 92542719 963421585 689932032 966886582 265407615 893640277 4849430 149253409 718900435 810656930 39992028 426761274 69612910 988838179 589143047 285284773 898068087 760318434 690364603 804821350 956727696 199705575 360689392 73253853 998447597 484660392 269086398 985803986 847038224 818640827 705533931 726247080 245629485 411075862 726784937 499813170 568082186 361738811 971026760 635890129 793287354 126397803 729530206 811599294 371949407 181787661 587856118 519446001 819176985 756753160 911106130 133180304 443728156 268769422 865209442 896062803 11934357 726759526 652653882 688040225 134054006 825259453 134079444 960813661 907550655 647992994 665498928 434684047 607467719 258183339 911137857 673488562 469760558 619668128 123792098 403979539 588041625 986927100 539663007 245082914 701451757 817357274 994660729 594872484 737292931 542371939 981707073 159877515 855304394 283067798 998452164 128948285 701702076 905807543 867464406 365065296 36370283 611471538 101208589 884342684 239047784 481469007 280652405 415603667 315081168 411325143 462682017 318425230 843248569 364631076 983178883 966258434 896922352 161467011 483343200 89935965 740960245 722745875 595324411 396743040 192786459 38452870 698208705 365515574 372728280 14004756 912778405 737221858 189681542 330932666 545053417 747158236 384241537 105122308 60135429 817718757 979631797 645871391 733570298 916763171 283474787 788891014 862699786 669763237 964610668 753553902 999526307 829780505 604056800 774005195 714849387 759394927 583088483 709822921 140947712 496355124 143172995 403578796 561912410 899796050 33789144 739927441 968008807 812649740 707131881 991545024 730646683 877683559 46495070 776426353 877929567 810284859 823102496 49472638 934357346 789985034 437083934 76522336 3321713 861477278 732724765 622380994 149954541 698091636 562524644 145914866 835882217 376948519 905750273 828028828 662412414 285167595 87523923 712088089 518470245 923749516 461573452 952961944 666221270 693943661 254723893 766384023 499381145 780478463 350724540 931251232 307948901 651240820 465258024 909446064 761846462 167022715 276577954 861126419 902677240 268252302 721751887 144229561 231139926 532567080 152628030 625997835 910395815 722518071 888072527 168453283 795233763 710414433 518361473 807050443 191383249 957444287 488294643 781511101 874097797 114519828 712121931 742599994 845989884 393951513 357724227 651719202 862214014 179809019 687504864 523528273 160986430 177623230 256866812 894733347 706513996 760178175 548501991 541327726 166746170 309468296 926922823 561823159 448568797 873766982 226195119 680115476 312172269 516012539 559442289 813506766 545364350 838572163 714510527 883633662 964046115 857684838 918775096 299769814 423298590 364015221 975401770 170063280 253860334 358608127 729416793 988527415 728517066 529350863 930761500 311106124 257112590 856485368 461747186 778400586 623283444 635133699 152496681 123880093 286483761 818271025 764844584 140358094 862545757 204226859 64839961 311391267 300186590 375250759 294342706 763324871 968979628 193916532 220299599 215101451 937693371 745903755 425551480 192687928 205031413 156619918 670989236 431769109 842557991 649231231 575164558 747071740 41758277 214006062 615037812 60758685 253028542 195946717 821234184 735951980 865654214 670989236 994075640 229774440 861363323 510566831 628688596 352258878 473119082 356768704 686749500 760836676 780199534 232839541 232837767 747557976 771338043 735201140 949899449 25908468 885846252 397110287 122647196 36699401 971087123 641820576 915578039 896017509 285450181 767508234 526207819 381869145 628651725 571979546 195341488 456218725 200538010 789888275 782637524 730590257 812270707 882184021 740749954 982640371 219739665 870360208 912089719 798311847 684264988 875874995 737049418 851246030 962419425 907543495 968694974 813300219 349961078 758999810 751230782 800782530 685005315 338530374 771785588 776443818 737039744 999526994 561389348 21239026 886641195 143676612 545851883 817194349 790628105 416006961 296775792 950513864 90116376 406614188 580492345 925628821 979086257 935372905 743808018 837522882 909534413 933574069 713269584 861741216 598036975 874340741 514722937 778516051 706730132 513315518 154971040 581709715 261379236 694582154 764739979 729407357 721113162 591136750 935727211 847400260 869823030 210966904 851880571 964586443 365404324 106818663 627790251 953448378 305971152 687254391 450388109 979978269 792065380 909367755 661998194 170564274 370281421 296836992 112632322 148669308 117264367 935388547 694127641 98524274 616906287 46027974 430257241 920615328 811988195 910760290 880107386 913101646 612083384 539782925 47403807 670989236 829368920 201815432 724626073 753600195 945361307 973521692 725234692 272834662 986430587 602110150 195122242 817181738 671643833 671470853 700152549 484515499 782636549 854449894 799077819 339682343 807032374 648275709 189765531 71269651 948080674 552157541 569545782 661484232 355363155 708881075 161343764 973098507 954049724 897875115 824239380 836616151 955204010 843379945 655725352 624432669 603383434 682163640 344744477 267921926 362026837 558854 947899424 80627617 766027258 480293639 805937824 896171091 800097573 562214686 361507446 863655010 228215647 987951046 846579505 858410240 425082798 966768957 844861948 59205105 520334738 538861055 936707339 688474634 918526277 613112664 341510105 221839366 697543571 188737209 48119810 934477348 242197144 682988651 360660445 324217939 106530357 191524123 678480887 605203310 143731958 983104918 456213661 638569751 715079413 915736009 795074021 562091466 628921497 745267938 139460917 857918077 574335423 796615314 262336833 299090389 933424278 378078749 977958354 871825606 62697286 437692434 874023760 890148942 565914395 898802321 724788032 711258137 702322192 771896826 21124581 937482374 125260313 722281105 197976058 550381074 785430209 978434076 677513170 959251174 605335366 311792162 703800072 850320542 941147285 173958780 172342819 518972353 974645744 315851985 829890356 797292862 955914466 777729565 254925357 599553011 688676000 871269322 133705719 977333701 971833324 599287408 818123145 710210077 398629091 932421232 716422702 916775536 338270403 572768747 803788473 395524191 743268218 275346918 816889525 766334443 439173554 787389159 468362364 774773377 308589190 997893325 35337218 82179815 940659788 54816733 888157859 985277485 299510345 888124000 262430410 350988279 421020101 378369120 964038258 876869615 493223675 878990912 851190495 990149800 872939998 670989236 366790103 180271974 559502291 563343752 31721145 110890514 900302015 351446756 854914950 725212529 953848501 970257871 461656157 894673288 964279099 120506474 342687990 748702200 819033004 107076466 896995654 970968802 679862909 215619684 217532929 532954688 193032620 756080851 149177107 735952588 431577978 2304642 263180139 740309871 687044574 565404108 543308865 838671875 267423158 200326639 639747858 324739709 849374735 904245586 795531059 900617868 685136845 870231722 885713960 31350823 5526472 915792992 973572822 887410598 993921142 501524550 287907640 676851230 877406213 678515738 973299320 763017727 5437189 236507799 275375648 220392761 142493340 975669841 492055919 959475814 783374706 635480327 584242379 809987469 79280680 508225705 782211986 835586412 371606612 789375037 682044009 711038347 580108815 23683927 874583363 670267464 106463621 50863360 839578605 539744110 739960724 496084884 82416186 485067636 873782076 932980581 288926222 918759348 417910562 721693054 747646232 144387936 824402383 494067686 933491755 118180083 926128770 134762592 716757678 796841970 426837135 437955510 280590257 412574384 684407169 460074062 261678709 55603532 691149295 6106458 673198035 135689199 794616876 718187893 821697035 787587409 692742656 598247095 389438673 891782287 966795895 117171315 195708165 185271755 82053656 326480661 505387366 849184379 812491864 806733971 706225051 886432606 290582436 605691558 715429289 433852077 768507761 980482615 839186891 686399160 485228844 887241277 786135225 925602177 893282565 905827013 25689607 495938790 246185338 792248762 90512720 403864175 392733565 117882470 692155419 995349685 729279055 750844535 894995375 791866871 684557244 401405826 805653465 794702440 437872962 888393956 699094994 506616097 711228955 897319442 820612200 120011497 900753809 879709550 210921438 874436090 689164541 157696435 670989236 704406746 839042274 596511715 981139580 316066606 70125171 510659174 191725533 970403281 976726608 871311406 639032175 779953131 2287118 116768029 964576350 821313179 531924171 837443107 799851322 724502308 958188631 759251915 754040643 904883088 346639497 283967615 971298599 245897433 292815762 38436729 98917415 386932320 700871308 354211962 810268016 207213387 670989236 831561852 913859637 686233872 480465279 754348040 932637138 627811015 979014026 886395955 762767591 376804316 64448072 725086063 360029155 132996381 424865712 610320556 744569989 36990720 397919816 453528027 170425496 257724170 668528525 50662785 653427664 42047733 967407520 593682090 218757750 568235539 924021376 949253807 538137322 90918814 831711493 431832187 433616197 546477099 712673556 187347737 185770423 741835449 211604203 797723169 675025355 858709032 199992591 94731631 145897691 977292405 670989236 804493046 573815744 225885258 859209922 160739352 917375539 724835036 372201558 94262110 546872612 872169527 883791088 46535569 710974905 554567270 541216856 755963508 24839350 678904663 989893502 325190988 949837748 294077689 920678122 1227907 572581577 355050301 920320563 957201615 379795437 119497427 255224565 513879994 217175113 287350353 162375390 438036133 299662740 619911854 704246419 964652144 716002604 251130576 528959240 677532779 773596528 837163970 172322505 471561065 932721789 168950794 954544498 713496806 812332232 777232207 981203677 827192822 670989236 945049004 492697939 164142040 959578257 71769417 704198054 870199618 996402902 29277705 895717074 786110560 412182022 407056673 136346705 391819313 299032501 850735004 937359911 412916482 727779162 649552820 674540809 876166323 670047794 798938583 640553111 752641925 966944922 901778002 170677428 835845688 802916056 862977356 947291863 926901181 872784833 766528978 251547825 634785755 104334487 658698035 396017904 875735826 825841810 939429625 998566822 670989236 597778940 67107403 960204557 713457622 699491443 817028410 881750359 773947028 293039039 99916567 776646676 448492406 525922571 821050181 149640295 30186577 195913919 742535380 798339024 608032131 470783082 58080380 870137670 960698384 2074435 670989236 617396785 175102150 114945480 673831136 965361626 735432868 636267421 577108734 792525972 603175678 483025282 661218465 820321358 210165358 185960327 755407943 774259061 761497027 241635023 979234812 752921131 296682861 367177201 832311613 2615586 970542839 423930392 430485996 844619161 695490494 666743883 928148177 682731976 138718435 690260304 728859876 703942165 310999006 374771588 177465840 678918030 549687390 580366478 722880296 361903763 740220451 810637370 321779904 22657890 681279596 352380139 146732221 107888728 822411824 379230577 989510785 752870700 77558898 809583204 215418174 612018383 587053968 264511838 133081141 670989236 655280084 781476226 803985223 890950884 971205753 376270159 670989236 861492711 152517253 997014266 539725772 43196912 981077478 835303292 365126172 403357926 41339849 388974381 845007576 496540680 816476807 419912460 452176712 840577142 105505194 135495019 847123057 710224955 190837711 662737002 803304185 104587181 639171493 900405290 481578466 733390620 462699438 826926936 716562448 991074590 913261601 516750969 107569147 537551193 785948930 573235390 307044578 269029675 883166018 808688982 884535290 195238094 904213064 92141184 782936746 959196399 931943358 55883790 831156410 659345262 90504211 876889756 846301101 280037166 711980949 832949600 798089733 355148336 807478899 801974581 511148361 748363856 775195912 427463936 655026793 885295361 499853436 855197982 880511956 928846406 493888579 105349519 509043453 719492901 729008080 819701739 373689836 225230711 445251006 453223248 171049524 150233412 762895136 906792650 244979128 567880276 11565955 304569386 299674803 441321797 336366186 422642085 787591577 405403291 389166660 644157151 670989236 69874158 2570859 587525032 213747829 682543865 823993922 811441399 736239768 851166399 526463057 955589665 578698744 695537955 399579862 632942165 864425707 596118891 778174303 699315502 191625692 145404298 734814858 894192819 311004557 427116036 8686449 510651539 159410544 825420835 717596812 976600991 883176981 734017449 751469421 832665352 793812240 952292543 857041719 976293576 941655660 869947331 512464935 990955074 765275816 866432473 840440625 582662458 551934839 63286585 998390494 401245161 516573416 254429746 129337952 674874410 953570449 825792307 865033990 972833490 172899052 709878074 568921151 546019875 8557852 913963698 289012555 770262587 902891855 742221470 135915352 643106359 853578187 704520168 135364071 773057593 11885164 627512506 420221706 196687226 969620626 622658956 770810609 886894534 895013769 687948034 511360993 691842786 242264230 147693902 871236786 21734125 576348304 958271923 225802386 743622898 767416141 223336746 430568042 99774251 76558112 366357577 860693093 976152954 899010162 159642533 617624285 992751321 670989236 727334739 792487930 368838252 411054171 704207576 464751675 503460644 830075526 693837926 728963124 463355423 957638336 899564813 746927286 363630127 42358188 988819744 215937234 777000280 716665367 811111957 232183573 272454819 807470250 670989236 834190015 850499977 928316872 227127690 875098842 795270472 950910621 960513961 885198188 924476289 151541908 626281445 538792519 569792194 652809856 767355923 117758407 770875562 824380712 451813166 711842422 804085762 896332992 592201410 774604965 731899565 777560811 894931672 124526535 818908056 677285621 450360473 822600455 876029536 735773214 663209316 957210498 228619916 878245386 880057326 843981814 563222711 98521274 103710994 562675242 836142177 945007359 879569862 40719249 438086060 719013149 930782222 827681738 885520657 349868179 870828989 575870564 80683093 329097666 829959516 169189192 331628979 678811896 96825783 637666172 694901830 410098505 407089230 834862175 9954667 970432799 299024720 940751087 708578987 985074429 255522293 683594705 297779781 691269965 479008156 210057380 918978230 852196020 500409820 812174488 704840498 739255404 732353284 23516627 186121426 243987522 649208135 82700860 231134745 486694391 957663048 503153529 651310314 117108979 535125309 957511565 810945145 738565957 541799965 453924225 849714095 12486220 905916783 772353541 363359938 297493820 182744182 966201540 861906864 754706560 15830109 244873600 868996574 490146679 547010388 403210649 325820543 916968312 788635059 931722901 509478027 863638700 341478580 5308290 277413751 87631662 212301765 983494468 702602582 923416433 823288995 980784753 210771755 158548013 414720396 192537993 178749173 367086375 780840388 550309079 447557291 767264119 882752500 791350372 986644069 10371445 923941514 525075178 697296974 258875401 334103842 951035939 536836 692818011 112229256 240839954 884312169 630256958 501647449 169752749 975017394 949881405 702328691 522875198 43033785 172726449 141240551 344114566 826442966 524916574 838386781 92502417 745673484 678238278 683468319 133111283 386729854 468146632 229020445 720206664 953158758 519040065 11361229 767559142 135181691 849952105 167686356 51789354 356839065 930433338 749863319 294780679 837045482 277589422 560920711 369385519 910520813 510745217 670989236 94064051 821123567 27230518 875958325 763687580 562884976 445012839 483332887 40295249 282135402 222375672 705744120 124394173 473782502 710445100 620881628 202886258 267159214 976735430 701542663 737950961 965038787 935077312 910407152 815393922 671094891 692764104 685130193 750039257 806083579 442520635 642468217 968408179 539372698 798068081 948276358 713228398 589517344 704203249 734657268 764094103 212035989 32087873 207089235 874668067 28662289 967466446 377988255 931255188 993951999 132536670 23509427 548236199 461609276 858463009 213195311 116319468 992216162 691265933 442132096 791561295 735091914 71942051 799389896 39746041 733514402 700631682 865065270 885775940 869206336 821839246 899687188 197318099 916358245 276552382 104108619 70020609 662482108 444392811 507914098 67883929 319578242 283716260 76986675 742006556 770366787 728398442 745535976 626791976 215839427 670989236 548462209 65545990 796724737 113884141 995515449 958656742 938085144 545424860 728436990 884999508 97861193 558523128 858154269 246758476 808340087 138145977 239300135 773065455 698986873 150893011 99288993 783948484 75772313 499808356 786497953 910669494 30732276 846822468 894161625 861661590 481543218 402105880 175549233 124258646 661120987 833706623 273404783 370047465 857898312 739389014 692575211 318434138 937678453 628977889 801302652 310123629 707186228 633438725 264890443 511202359 81099255 733887126 752755029 822064203 826669173 513512554 462828689 618482188 942700167 677138354 993063643 670989236 972313864 219386680 722459911 945400872 360950791 836811367 6742046 531966841 944618782 776521041 638730395 506751819 511073216 752238419 498174205 893634671 799662108 249030909 595389537 898264174 867993280 702486245 594262988 888231380 964190521 834959936 681827316 429806658 889011963 361779406 773043824 102604887 808976927 819511419 251479028 583127610 917239728 851325990 586732496 185693237 479258539 539014066 32041030 949744055 499506313 548178963 857189682 366325991 92044764 905398990 942669563 300795817 697058147 47593498 877188381 934091789 949976715 981228789 481368312 439639886 332741766 920494447 782023551 853287824 790344167 247783215 7457300 598676740 852957321 813077191 758776299 85238541 788680959 837655671 959244077 848915199 705430964 965831609 803585384 619697992 529023334 546334658 933246125 124093737 78959308 841115465 989937059 14100748 558619550 52236314 841980078 677722783 14981873 491490248 215362700 95569946 731812841 953215678 290098703 632191471 883709669 928072979 696319265 477615184 802063366 431175325 959159515 922251192 251583028 865663540 828387586 123342283 889599249 977897142 980705602 354589761 55030096 997111751 69417999 276127154 570751291 844993575 177061917 903296055 916607117 955773780 888379086 612818857 691588645 51689065 148973587 630969374 60085423 939653049 90866195 932750853 851614873 593090130 857783821 720413066 155095527 186818497 874500463 670989236 952162796 333730916 293274335 753836046 527630622 417432351 594121188 589595917 261837964 867520737 657279546 857792285 942074838 770163385 812558952 80736971 928379519 153660061 483591883 897330378 79696960 173470999 444791296 50652527 812525890 616197323 638126366 121478651 250317994 710443026 291430465 711935757 501738585 270019001 738251921 867204471 779083684 940883266 625800627 713052225 563119634 950062567 924119500 773688703 737410366 357758250 754644427 207841121 229680437 969182675 931757146 576605855 33468092 383406745 940078517 791608162 78884785 583087397 822401451 126878899 792394887 135932169 887278775 883097407 670574685 833206235 925843339 616774175 846811479 410041408 728450022 60703954 243062101 674423008 911275456 486986313 847460406 932870189 479995508 809517796 670989236 850797188 830778731 967300009 211339333 676153332 684757790 953766914 684074134 970804018 237334422 375152420 942827093 327776851 10285919 299145241 276885048 337438581 874626255 673868182 557357115 670989236 67455400 671555814 75070275 114720592 842643673 499550778 70689436 422765541 721745640 433501966 768531928 471974508 897690661 333191384 934592175 401218273 706917587 923900161 790614838 949244120 207228433 982524185 260826372 971336515 526353631 895393913 932863417 766020430 762285406 232721831 605672789 8683008 618227821 166779184 474443097 859340315 417031059 677946559 630874628 917536971 766426066 237638826 756242806 891228528 319778385 388689640 981213395 944885592 854316594 670989236 986025808 890743796 745467330 143007724 314990212 812595421 670989236 790376815 841114562 528179360 716081970 715128525 824850234 401901794 748317375 75948763 708916874 44755112 228308466 447970774 462731464 838063187 1633361 594549201 322171707 428125711 980510940 687309496 415124532 745538545 416337169 994500791 259976860 410250025 807463909 808645753 380647899 587084527 114542527 754375505 505220771 777615898 854024719 631441875 761517901 997432516 185474743 117571366 859582186 858586435 578557897 402331549 420151482 14786253 849988386 25777998 884548938 207305168 94324260 464628681 439965590 756812734 914038028 115449264 975983788 674758307 780799597 678030483 687026162 127526503 964919690 225706103 984756232 692620524 999640535 379615119 296402201 527380675 435461300 793913265 228746233 788012932 289944858 779787465 722829781 724418066 742570639 193913955 375432510 781286762 164143368 342256012 417226534 748486675 770563513 792809226 44272192 987684545 795063054 882655458 994112148 930324595 670989236 999561869 146442217 418096642 877733823 487247788 859206479 88598108 346391164 963903492 494524181 46617388 805393903 669698783 707580815 709394942 738508300 553388550 160173491 922078598 758330774 754230921 538423385 845862749 730729064 698837384 988670472 78875924 339976620 549619952 720109940 975206370 331313590 813362841 956040587 122166625 335091934 896457465 768761394 734090132 684955979 924997127 872606126 772772620 741190851 285945312 364082700 980403792 783274964 113423283 791388387 477517809 31577684 408304115 866992942 92774872 689086094 128611344 784245048 755228205 558913939 619277432 878335357 861768963 447326195 703615915 965469026 52529268 465014074 173214143 942587693 804526284 790528090 247490700 907637969 913704068 910508745 805654634 611898347 755182589 670989236 909314905 876500147 954691066 447276489 69029934 949577029 843719138 808821158 720873929 70476688 641654648 813701862 869118150 870788535 666673506 455861153 521290819 424182691 11974856 956838814 956864658 981685414 775309825 861180912 209141498 900623758 961265717 948025998 417070910 410514452 916246154 730467336 908458296 962598254 958656345 450778342 540179602 56337059 934301848 933211909 974746428 708986537 972229279 361064498 797542699 775716381 168750482 696690203 689303568 829934043 323229734 176194556 878685085 706408368 951139650 297246978 923548595 869764978 27321053 629188936 807064580 676062918 84817601 677652710 710424064 108710018 21827055 282742111 16453611 60922213 170650535 770626000 778920733 199199367 743444762 681293783 660290564 434544131 995863656 875856420 956875082 616668199 81002028 591300047 619973467 949294806 147691881 13510729 852882882 824041702 827201980 948745517 785334041 372058500 398069144 395980881 289156446 324446781 513556637 952788921 134602960 941530538 70063210 166316728 411214463 91354887 302993790 166729980 779289471 386476163 459708042 712707888 734543065 388200167 924783077 763480485 233996084 815803549 467091259 231662822 874311420 828562587 727409242 790534841 509612867 197277810 724456790 813277073 581250456 338780095 990059619 765132591 341137162 670989236 861669641 57089324 861337513 542986748 527422082 712032156 959587807 868320660 346987579 834409251 285225998 54516503 889298169 725418916 806433491 867575483 929471516 962658743 154108362 845053144 806353439 899733843 546022060 302759702 379644141 926255795 809486931 839749015 914477936 999865458 227259476 20512572 976622532 493549985 932677341 885229934 717133043 844173574 249198335 41306240 156253699 792222660 921806787 79557386 901331258 786767669 925293863 706259217 897049059 259498382 777436515 605670494 467887184 134735858 998365355 320365937 827754596 101115769 943107451 113069213 399290631 345698327 415855941 501474578 798486953 967510837 808228827 905747148 130990193 783287314 150053852 594742871 87742953 928064277 629200349 969200262 46891638 105357609 755817657 897671582 768510590 54905617 697841179 866531424 700867625 883105422 202629902 148097464 833245427 402357663 777443738 729819549 851176820 38739615 693847460 897704167 160633499 485810431 836290552 831288287 94026801 421226166 169908489 866852930 353998225 996845587 791441169 281341280 990026554 730944958 837111848 845404051 923206890 650185338 371064486 504072881 473138917 16746307 699743773 853803173 181294915 788761560 398927608 915513417 252728123 718832029 656556823 806289720 950085158 666695596 809326640 917399513 87388869 821525819 678021371 689761494 125124031 845240613 987556290 504072331 680552702 831291214 878179794 108251483 213562176 772758129 973063236 1302728 514068897 756838307 842889435 433916573 120624746 826185930 664457011 769913388 917559451 827809468 376334625 645415382 820551818 33403352 852008520 899586806 71888017 1753812 595796741 982102984 50104518 876325639 740698295 878463822 840551859 741015835 859975121 994652263 674926355 898739273 966826574 641877132 986194347 338867899 50061580 840020898 988599689 553387339 784293437 99936451 421724356 473523310 177525064 751038012 979128430 484846080 27239274 647413630 190321045 110026727 670989236 764929648 760106730 241957029 628302268 199216711 369924580 191778901 942942197 675033553 573887918 136034430 567735186 873469151 539785121 948734298 594111663 842113800 714229017 824300483 755058617 570685018 213098657 989916971 670989236 783505776 433791602 199392658 782995308 921806691 729630615 751323063 981065263 740000027 44293714 606726792 506661493 855699307 998482298 511998294 945857283 826780847 953317144 406565387 854408097 640336190 672193190 724815508 789077671 953801994 247982012 842511885 973047214 27751479 503968506 721486415 149141943 288186339 8830996 680359438 686989222 728346800 750262181 122991453 126121742 822837422 35715193 730573744 615678360 810306816 751714761 144420303 698030665 751549161 682219926 629927603 564838640 599428252 246631460 800883037 828059982 33769443 965989836 700805577 92350742 798097627 140088294 798172875 891687632 387468967 360125083 701101876 414268021 328874752 408182026 989754901 574729070 903629176 202713223 699554441 641353929 105314895 811267277 966339868 711073168 988521149 327279667 920950835 779975185 700129626 180313858 597561897 913579416 396958545 923012540 894344271 591964093 455973886 970464447 723765991 581805076 55677211 27123867 643466845 692989279 755227650 917477242 752042931 898314197 954771280 634649107 621556068 230083910 624613448 670857695 940103570 920989694 460895210 605030765 861510523 237468570 811791657 875068942 412715019 324231185 659097173 462912459 792982841 130230267 765691790 439777074 935678048 476066665 43588573 843245842 702387665 477743380 44042331 512389441 690105808 197162919 244259256 153115076 769586748 516186499 158965322 983586328 316389570 328691260 913257709 14291818 668593408 940629382 731560358 719558188 319255743 753768993 342393544 357890539 979804178 995201288 533838130 734808338 137182880 239505421 885569769 926562124 524455648 495663819 701607244 756948544 289441648 894869860 803893674 835621765 689409378 828179859 984195918 269630339 550653601 812583277 763905394 852745588 409502187 213447666 438756150 776370382 630657767 637787876 916842719 991160497 648850643 172894355 683912712 603469851 268215157 811571587 404170022 109804506 241241249 50071639 922590564 796120895 997882313 382343418 789468506 318474573 963892474 683165732 642663369 187932558 888371774 836555885 260952144 708956409 154012936 295955068 949418795 496799532 567276821 940068987 574797758 442095659 870675027 440841612 571783813 248283496 821259642 984699617 851824730 360724144 308770094 438083388 656275161 872074341 755694172 847860526 310294658 781525364 749116732 703447883 827949695 668934028 596092977 998475450 892917239 833897577 965222223 771514432 865641944 962743992 193513007 442360611 463012939 894354606 102568796 712600464 670989236 671744984 524787762 165444471 776319215 660057309 781940628 106976678 875849660 217388935 523730553 787603106 995490137 74996243 851560381 62341047 870716838 719656564 462703112 355600268 630596993 689023795 925456013 217308278 747991790 396891121 371280188 509439374 678036585 923673475 410331842 198663010 426177329 850121660 826844186 436404533 732186882 758316859 556365919 395540848 760207554 528012569 888662573 672920545 949003217 82774162 337817383 302700169 619694654 975531849 429536669 804970876 218286870 668227569 104764874 766151379 786192083 386934321 812589171 998729973 591610530 964048225 191229801 907960585 907095112 182574505 962961684 206475920 896316228 907572246 442683987 762798882 958683314 128025898 395608961 971046940 687163030 811326210 724780319 256995528 225785375 423879905 469019650 955137471 995495930 629044567 344344362 710317446 341950886 763987250 880554513 732503687 525120383 956343069 708881895 702692486 840347402 915928531 652607901 982187696 648423022 997469588 876877555 120633178 546410013 745780728 440106941 852092561 969021540 981220925 737404869 610406393 84159335 175649505 538556415 891693853 863152362 189732613 429069627 654715149 279315094 900423235 983149147 414024599 39998543 432845820 657008572 107117648 696477177 770201064 802111286 209044731 213111486 519018544 991077472 253836674 878414368 952611210 365044716 270436683 893890666 903031670 719228586 833831933 996270799 853024870 105311629 196858370 784337339 911534625 783000600 848623822 629787333 917967844 785741669 723593846 3510065 577501558 689071244 175311275 682670610 798351923 607527708 824303772 261395887 909874697 636721236 58380356 420806453 106167427 558563927 636069400 471115074 694330697 947994343 676331133 493995015 521341293 317465384 324344674 849293377 967709164 670989236 956147878 161935418 283909103 421745036 122372376 931392831 189205826 381799157 411682165 493700280 21982324 980433768 670989236 776657024 868237910 829330472 689622108 789592166 802837005 563335956 744297087 844968833 694434405 547812026 553869291 214223354 96728501 325155315 966343538 960768394 562817458 286034629 161464270 180850185 44981326 251446748 71485636 906607116 529962494 754298421 879133586 721388129 731412524 983253357 57451009 2233740 447306628 966827203 697385059 183578981 966416101 168873017 801485371 670989236 103869437 960261679 794253493 800077588 527588243 197242021 108238441 952924189 215619500 611716801 691328449 147377663 371049530 523567905 878943838 103794883 609379774 702298673 924712116 422594177 729717142 816395069 822584788 598385831 119457895 23654179 976367068 46617786 808735121 980019758 716808604 124644797 732456500 708732360 863047065 823020697 11076583 59675104 163175509 862123190 88461040 62717053 727519023 681642179 897249431 149910373 757743291 672195641 46881297 769160366 22710196 804976514 747957156 544014281 86055505 839258468 443378447 389732123 211020619 653589109 358809627 539594407 748117207 263257580 633180065 719127241 108278936 930683953 298943364 345615615 705050944 509993054 116921036 445882329 733377831 209320737 892115441 21317248 555509702 629541855 566107743 283970874 587847274 864655119 951742406 577387567 483081574 729563861 619625326 935670232 892379715 682794705 669359122 877658619 944095923 969578474 263474165 139164755 247810000 896761862 932238437 350253947 93928881 508959794 966582113 148354716 929763638 928671905 136379621 336177779 544346385 83347085 454235627 955956954 123170727 80568248 512624140 691126865 661291160 761110782 358349267 346132070 201207725 766734471 243988621 43084584 976995098 87602233 785018670 760414502 156959260 96004198 466446413 802270163 687564253 933709423 507727827 966823490 716192562 710026149 646518951 915676286 825689544 358628492 882780639 736286267 269565300 500907820 421392337 336315218 194853428 918554066 586655914 800187013 974532854 430554453 108021740 649212385 972920287 325082722 168416393 481453191 519452888 145359485 454119435 476436518 440342584 990003995 778403559 940821079 955123690 287282073 776378880 144501978 174530576 950104101 795873878 851223994 303554973 400357040 28037458 264517928 177280505 219204494 249038896 5470706 865872046 4436264 18640678 879082380 34660942 883052805 19097804 896263471 957376657 722390724 126904215 558218365 833676413 932757062 541932637 908617172 975273042 734587072 796026333 995476425 633733979 795647938 332361233 945030736 762770895 411412415 321666182 223825068 549858701 862389923 432685905 848357546 719363581 21124453 708019681 845198448 468150795 372181802 507331972 111972149 733352953 809984710 3909237 984499809 580605609 992578274 468263253 293235070 916334483 916346657 794691310 355861698 971442374 876705787 41512103 281333620 445707513 829564819 74627944 349072437 589196599 700576109 989315813 853866193 670989236 403764010 398645373 318493299 369189875 317640522 988867874 677345249 588273599 735808600 90952842 110688762 782835632 486163790 898086943 98577907 166725575 852112615 802678255 737312932 192557629 773255279 414265240 425174929 145854708 196420536 896243745 819345636 727388333 851173583 283522685 881037974 779369285 948807977 737077599 574726866 827263578 304452446 990081856 374519133 441085972 900630250 588325002 240852808 864922971 146893319 279469989 215346631 743464848 785329048 340472455 390580764 738211605 821281007 705637944 858520049 163278666 670989236 696511939 920657557 668804552 666765769 133357865 754719955 646623688 781595338 737531897 304225488 954047521 862012619 636349576 959217744 849002489 605825234 855481555 956876619 922356653 559007458 700842612 710847970 513114974 221005557 422564765 997403910 578834374 14266470 935429914 941310596 636762054 722720876 53932956 448163402 198906406 377616311 803929591 993105681 808632166 188152914 532924696 185394442 132956054 569456493 814304198 844040067 334240367 863401307 915266094 692902257 593348225 423861283 24645472 671843695 234638523 119829943 678469083 691830287 751796263 956463407 68843577 901681056 947139862 895941476 539565924 772938794 955927208 997026502 742730141 825374725 120709387 861241133 199006378 932492949 801329965 911788344 691193244 892271339 783483854 739149587 674289029 715286050 862489302 820599110 95070918 732285647 438410159 670806800 103884312 944870692 747821503 800613746 648391774 177546315 173465889 148813071 858877495 810331241 54478568 676949301 873587819 942992304 688084117 844806842 551715270 590857974 167899654 998937064 327031013 747952757 317668224 330765507 1008657 677888816 157073489 87132290 394982896 857961671 999892708 670989236 109294868 160176976 592589486 358739979 380785384 623617963 949277546 419326275 831440481 362599513 571233709 177737327 956973028 749189551 760756001 727385558 809213636 941434731 685707304 760823510 751060142 300999636 254445801 69874445 675017135 904273045 893307820 31061509 957444492 632588643 765244884 368976351 467851889 702834551 937153129 875896241 307301461 825449277 21248800 287504513 361034243 724028841 939501068 66615642 771688575 773816376 465192341 612097116 745767966 587804955 775439562 386125929 571036157 590326232 987124702 104566357 532055177 975062848 572029237 247556704 541382205 524152051 210549991 993175020 359685865 28669461 165507006 278263817 743829316 442638363 836160971 605078724 732034894 355654824 784470569 965575842 975001465 448529416 182196644 360999472 670989236 10120475 693750348 223834111 36639808 918093144 721963725 132990468 233336047 732272025 738161431 727538746 999426835 770425639 851039269 466064212 654882667 744836947 214216916 8995349 939871583 903348792 533309486 493357633 266649277 864158669 660260371 758392733 689232066 999861561 79613328 477168289 708596582 436069543 36688271 957764436 207648359 118894207 304188142 853213032 734834779 515990104 869307244 39865282 679595515 124111634 670989236 200147479 794364716 394009998 680572816 957958543 76490491 70903516 671599209 841915802 307663474 868154737 247502907 354712576 709563692 210762747 254205049 559440680 449688686 790644997 126453990 819265014 759452117 285537838 114858206 250332331 959328801 904830863 33643383 714763679 293138791 655488451 263450570 846077504 762794554 459251736 940279701 315251958 198489676 855644332 251280943 642381654 108647011 795610247 504754149 964563798 357469212 768516561 890801006 251470283 814510355 603926509 339571457 753355614 192827536 116183569 795890665 645120201 222445340 116908233 998178949 419795289 998696481 185073110 827990172 677327022 888535480 752138021 25367787 232350592 358265171 706283876 683880464 207342991 310065463 670989236 431555225 558106744 676216344 868414031 699102715 97474205 264192453 908522074 572175287 36082913 619184514 659499899 716427318 552870189 292129216 168466093 189150344 574061153 734379834 871562834 442613426 783971832 507722452 364567484 670989236 470913248 421277782 430319975 869317939 330098040 803225025 716274518 571388715 974824238 943134179 750504138 321095643 191090296 147182695 779330372 760886391 480290552 807912799 742496981 831135665 518994652 300404718 216794445 856235986 604766318 600878671 492197577 489046740 500086627 451164125 499477687 287940230 40053738 946277240 605884526 441406126 764569933 208094223 832985018 682476513 392848934 834216665 782486637 635517488 960047966 532223556 860143068 745870725 944855542 956285936 908732795 689234930 395509122 814915807 184110175 721319027 147625901 938928492 48130607 664649190 744463734 37836759 939367669 901371274 783695340 239977094 210060233 768462225 732468534 678995762 488633952 310604356 891166542 692491031 821619058 989191459 953009288 439527088 687981609 93228699 856584403 670989236 894949804 44995032 978711485 701909463 870012145 549506471 547026398 852365945 203345245 421178105 497593148 493264331 928979063 762362741 755783339 764619708 422235618 49698610 504879083 363389199 313267152 849343092 768019854 535422343 741212591 801387443 715698830 690015798 604007889 866322319 554256597 475065981 923953958 346351694 699838842 614020261 832563543 976129891 387075523 994336124 934881352 390659118 279723045 220737815 2202397 670989236 988340166 758070035 842178610 104620849 914667753 911454220 720761010 636842494 384740938 969737695 360964671 256892857 323593848 919758686 925242776 382139270 948859491 927622704 958411177 670989236 708290354 150182275 224733778 797209533 417545414 628517264 171414460 337962859 729215419 455303373 301918110 37761524 332053364 989216411 773656243 945398108 533030443 112749909 614651293 670989236 676120981 886816096 908763141 782195810 765481117 357259032 634584447 968081964 701309987 840224004 898466109 520795176 574667055 214330846 940502830 952582006 954188491 885172926 727749304 638905932 349306772 302837545 645197358 828348615 603543167 29683440 648922993 305076929 248067496 695545005 328391264 670989236 937132317 836805898 575192882 102981644 798955361 625604207 577718506 689198857 526099235 997729928 25450376 570743499 419358396 234855454 909263400 752290555 205660479 754286062 268515111 246978797 888622327 747029796 632993359 46279540 865626013 675752521 242825112 890443869 703660537 754401391 963183743 321203922 615240059 717985536 943140425 863515958 823032780 973270569 924898350 476828834 936617278 290597816 624003783 132060023 92376598 132275345 236974803 901019377 962879578 718677564 977231156 518465165 598869708 925413022 346942282 806335852 708374199 244880312 225008169 364204158 264206168 38594761 814327017 768423644 835407035 870728708 670989236 802223755 312164892 905855068 650450956 582246403 739463165 783695863 358599234 244239690 897062838 551346176 602675574 562635524 960067510 283202268 881098305 900344856 483189310 731312588 132920472 594457825 872565356 895708646 968925063 984865066 898933034 862651784 749315916 71087810 338211795 981095849 282531620 760813680 209464237 844077585 699521693 760504695 725945292 610094936 784216294 688511526 97247163 64112005 3498327 787492738 21570284 938593325 393139125 874211358 88993191 999947035 346719626 911761344 941444615 67626617 277139420 955568502 764543271 609710352 733916175 740526864 868627466 965894982 272391395 637651168 284527760 640828076 633759761 890288799 850706029 793073077 162998761 657543954 374377318 253110965 344025771 766403007 759683647 989521515 312157501 99581261 354519540 974663724 815364354 719156501 915626716 621422234 494692501 714300593 744158346 910876503 984464506 65104436 151422375 384048594 492916480 629703937 436771840 974210728 805068118 471219790 902481943 303884265 22295039 744634283 993635501 955026643 801952884 394175692 746649202 85435950 661458248 816362908 708610766 684589958 534885300 745179627 677552568 162006160 223811500 337623988 497820476 675196093 787454497 86651038 706748609 936710368 919348724 497381938 842803358 820699271 806119077 187524087 114506441 891022815 741401522 803270944 592623455 995623581 316812855 475077070 179912186 226944682 603526454 120397460 243837324 979429328 848929287 833460862 224569852 335213934 649855246 521749286 87117262 371128492 478791947 200140761 851304493 431591367 759150189 670989236 657106521 325803018 36110995 615039006 64086340 827536673 985193935 681511284 808920962 710617099 524999451 570932792 259889062 656224916 233839490 159074628 803190124 691683896 77982623 527544049 733921143 877703207 817544977 783700215 883702443 870420148 258388116 388028505 864338359 731269456 185705877 252743032 822382139 456849354 611501072 861585109 539218729 210583988 787556878 910316226 532259379 915256858 563054615 678232012 257364367 508694557 198562152 941558105 717540411 824833772 999846192 106478370 889778785 892787251 718958044 65951553 678253493 865291260 721101215 721496259 139818655 786098530 101835230 873245019 881491192 786878073 499142630 397800056 234319624 356824621 477855375 884783826 811849583 353932081 279273976 343680402 981191871 871096256 528888034 511524678 982675508 368412555 936724970 41170603 974628628 29573000 989151266 743926617 945477864 97398087 987954910 698650756 844697911 888848193 176039102 913949489 947149560 93449743 983644223 79543741 392422830 224344146 882992909 383370336 10236362 530363485 974790575 963416013 225835776 500989979 773176485 899532133 670989236 881922415 912915022 712264947 376533072 925848574 16288938 506759455 700333280 722355463 54124973 40242544 563820361 947178967 937164673 975246163 408938587 778020602 753475038 276962478 411995857 288736726 977450383 760849012 842578362 847751637 813583236 479703836 263760163 647774706 731239935 952318562 97764421 738023298 55753423 699011096 621528928 360315534 470135517 691674726 359461436 93598138 704556208 236988969 921996743 382328787 797698614 141014661 757164862 619848919 822681132 428270675 563280452 846494018 107167799 917178091 868341727 637605557 964833696 729499727 888922723 475839152 692486295 678433629 493630092 193410275 365501889 247097674 360061833 194921239 79274707 946037894 779173321 790172743 250601526 592762174 915326924 823756862 379444957 606038603 673888886 788703865 670989236 740966418 883367136 994051310 290727786 375994510 722035409 547848308 583938509 867212401 302528356 906427498 928663418 258626486 973851467 714362262 565848415 798039764 569995986 955152680 468452241 312606184 453001643 225608987 763212629 498178356 893071798 796802885 319135171 671061245 987690610 404015620 481337456 952792595 791027649 599173217 706986560 386968815 252948334 998033236 323465757 291387939 717491264 748640637 843043576 918036243 984385344 977808917 861611537 613481086 769072044 753392746 514148370 353062555 730897390 849474758 521417123 942929777 984291166 153261432 715325626 990308760 401817050 978781235 189808463 631416996 895698624 765590666 891630137 691046831 170150565 866679415 215974331 591772796 113715502 596922220 258155899 672551421 293728684 921878089 279141930 88501197 816264698 791219533 484451059 892921152 698130838 710119734 671697203 787601313 488628105 167346104 162413135 317466104 690503888 57382290 823255970 912631247 896275093 274350909 334851868 507040586 954532557 925615850 765832140 24503199 985889263 177320174 373986953 33107888 284168416 173195487 711764540 767419492 947988079 773478335 135405201 493639062 822962053 954530979 852985811 819078502 743267315 482731944 37861849 727106377 710133827 216307107 683471282 641766862 556652999 631001578 945974097 796167269 795898325 970283100 45903108 524061010 860020625 839390604 868047094 748341848 3720437 49246919 879183876 436423419 62683337 786364390 931658824 517773512 771725714 608519079 483471002 743668682 952257953 385098541 119705095 232834344 656285016 852048294 471464082 682684271 739810097 798788206 697030845 525101418 805796426 655090425 692499486 990234453 330738848 904170570 918628795 656089711 744046580 906832926 685670526 655435904 83937146 16701486 227102414 609371727 750182506 600454154 916348376 263449056 968390092 241504904 786553168 923903593 823519817 3727264 355853512 880433201 898856097 989938433 813768131 842175740 898631384 475181412 316637648 636864724 974397448 123484771 843646090 865867970 279903857 874577986 930369782 304188034 670989236 77701725 539787861 199420403 609369183 699941962 943753511 810565695 335918885 929151933 803348596 915965107 604670842 846031766 915692838 854770777 534442692 309714264 487821959 670989236 25691325 670989236 651777730 331068997 670989236 839740880 479579318 24484571 110317050 670989236 449519388 624419077 843137954 703126103 886146459 3736016 912071123 582507070 178299516 364819910 708556468 7767427 181805694 717795828 715982952 800472485 858062258 867111037 724292432 292771939 90863770 499759006 393778805 932435062 750153596 529513389 375215018 641590454 789982320 977406119 706906566 716977623 872046987 696625055 670989236 350681681 880737451 916392405 184614651 59358958 944605048 885032072 345554988 865450258 976253785 410469120 809174725 860503210 820184753 428728689 492915874 243580706 5369539 629843628 763929657 470265822 90786685 823021416 903627083 732449186 953976227 298230730 405726806 293907691 607521733 18719340 344002201 670989236 223106481 134587723 590103151 420549995 429833767 398208556 885137970 350324485 916162865 878695555 396249042 255358305 61898524 903137388 955073611 687884126 342654091 422305790 477685502 314843130 310797037 979150118 4268350 622967679 457541490 466741666 785744163 670989236 968807252 950713308 45279877 671181105 963263712 772248587 951479796 419834654 934391265 643335349 462708942 418813567 844135072 41438431 662873906 909946136 555165875 890773054 322950639 104997025 27547398 698093181 981201095 459783673 418603352 699629357 188484858 839338799 813845800 768890929 108652690 907858524 482622158 288763142 422341603 70290352 280000245 555223103 552142678 612691947 749179927 679234548 711010218 328725542 473346569 259498913 375893939 933998011 720407461 297195912 242069206 914894570 716512277 571400044 36943072 366735397 560854152 419536254 869267283 735611571 149749723 717966242 587368054 324570372 212432661 936471014 945948314 931434030 530520491 46798149 754362949 803035807 942137979 925083428 362338904 267518656 353216151 704299308 795485063 267236143 48801196 297181388 285257622 691893840 843044842 885035805 582953781 763729272 784779313 327787862 987754549 433227482 90075832 589360918 820115312 874984785 868422538 689846547 151506857 796777647 223182089 244113817 734991752 391249455 558939608 847967014 936264192 897147323 659112512 993991235 822159481 152436833 636808742 330439742 417532918 921325660 194353173 59890969 770423050 47041933 735513329 965048322 490866380 924597083 59169734 316395445 469573783 374700048 405611888 775159418 273454770 38358352 562733293 944270624 254987705 244877007 43403633 394854439 723879853 764491093 697139699 988309826 42151911 150611914 520506391 471292706 396291116 582740814 48817583 829026562 653499983 922568826 899573772 481795303 762938518 8014986 899610481 999047794 856991842 730163120 74253774 790864728 427576221 196401551 807060368 922412959 815202014 321028047 991482838 144214137 794805357 941496114 173732092 855038054 734188841 792932603 457828768 932342999 218497767 903726023 736642747 892710518 586944365 147020823 288614142 58149192 575954332 102028017 120661196 136190765 532805587 670989236 589273331 507716685 955337103 517749627 772174325 173556123 764926331 752310582 14058363 961681202 141303814 107435558 792708711 655164765 672296022 310099477 41958172 795966569 964235820 736390459 730449992 788650882 748778667 761599593 940504936 132226885 983058477 169203115 990371888 745760153 435196386 754068726 670989236 185993244 51335074 810222360 968035391 472972037 482647615 366607257 874143271 485547228 986456048 842153940 670989236 535636149 758108355 916730457 833127180 67411184 670989236 118226499 946584548 420776784 984350920 789282724 823445729 986456544 847654758 482733785 627606126 300770407 157071660 946864850 335221641 262086570 82973047 436213505 173846718 811247361 618044570 599878039 850881218 558345623 943222645 775600068 324013242 836305722 670989236 225232263 821131691 359422215 162297499 963258818 737798596 907562476 677978306 463268100 507272550 51636016 730820850 815587770 217476014 391413862 918811678 903406665 189498245 361138706 670989236 275279973 635168009 504604901 861888720 879499885 991636366 476807545 701598402 282929592 157320260 220728685 2340046 918042792 162476314 184018113 362196066 182870612 630768815 438950883 20634431 974125026 673037624 189430460 167361983 732434422 17026437 868652908 963462789 335453708 798795714 351150251 922237121 911320089 742730803 670989236 722668171 684747122 985753449 918534425 793404535 953090538 196561036 667645823 962159103 639653370 743825755 888261398 218326129 966250957 311734097 702279779 949450999 402654084 925558851 435523723 599888462 854988735 979551935 279978887 271428048 848255142 236789881 415116498 235301746 109104837 38085899 158399499 702578729 767543910 340316453 844923668 672513066 700465340 32219840 447111426 990000744 110949872 260112091 48841482 220793970 740377617 781646422 746989863 556499311 837742882 805812038 715157905 129987475 445883897 521665831 529372156 248695039 352555636 142935175 336516583 916541984 431878574 789169507 714302971 222111201 928788946 825696696 993938836 865530388 806599574 670989236 825788702 510126919 847628423 720174687 48884839 24070978 217855345 866732852 980699398 966793210 995775350 633732911 845106147 667986082 772179735 755311929 477489768 802572298 962584311 900365094 949854247 642948165 975246750 665347875 159507337 750509257 810393993 984754653 936345103 121067415 817691121 124039076 760670349 487951966 863941743 49846322 331827463 18514022 110733125 801349633 781471474 957865186 832225619 824817475 787245749 178159207 993703529 701893803 770615005 82266366 841483327 478287185 282741652 445461331 803760559 653977621 226848980 485023736 493806229 913972083 744651788 903151375 987092952 106752245 133250102 212038992 718743558 718225908 764735066 380865088 454916898 41556357 251016194 848325542 12167972 567375107 85824711 459728245 782290194 905787869 632144689 892053395 934077845 963003010 785366186 586067655 444885925 21504619 764751768 684521350 520769122 977435253 22083416 670989236 269456042 740492965 806267727 690789301 563471817 868797040 20069450 173684259 181195767 691397273 996782769 440905765 639861524 432968788 949091242 905607725 205811980 318460918 859475405 431396533 858231746 803611875 887577948 706139321 396990519 755762343 177514065 430179763 668637260 154021772 373702691 200160865 667998578 807193712 206319901 545769790 163316886 351048879 802144295 911769389 616640243 61411818 807981606 109736766 653394760 843107735 387161785 853844161 763154906 808072934 580533 852559202 822877071 884269929 131543949 676115434 390972373 841876620 430180575 606533090 851211163 628842917 764096432 852941958 822841178 966630982 803337944 721703628 330528156 679251564 895980400 925654748 300813946 132197898 590917733 595631696 549662670 121936832 94067784 713722210 704240476 873141140 463928916 222199946 898028141 588092074 773817022 633642940 482955731 453983482 688654988 155017874 625928652 587895351 320684792 857180771 287730758 951958612 256035389 791623127 809722799 106587085 729218985 623470809 970763050 480258582 812133584 136319978 83437884 928102653 470616847 964518915 975550727 835345220 31173036 557716361 23072499 687858130 181237019 735315542 881871252 389016336 699082148 316883329 148222359 33047769 307909208 133226028 327084885 548871378 943785155 740915297 10522860 869403135 214186306 682398556 831202047 891624944 687963675 381555772 927879712 231067293 924541427 499954906 769829644 35635514 855805480 95961743 892812965 846418897 406438852 595863074 534680006 866533632 496335751 285153725 917219532 753325931 895974637 597908275 887760443 690859605 959394581 861756000 386995871 982506042 868213050 241929566 773684902 863467289 685903532 830438672 83880156 615474983 896862037 432927791 977307217 598942095 387525111 669517829 950006145 671032530 211608743 77686893 879183548 95250708 334839074 945266741 677101682 988383137 940868099 974672624 887988257 793460512 350935337 81227338 548764817 787090674 59687350 241036461 930631340 972010696 473595455 550457525 707916871 802665193 652807046 725312176 316251371 682034829 991550948 739186377 839668938 154960255 220549109 69792074 764781483 127393826 929062636 340433846 353674131 762410853 959393324 693119839 998953019 639177252 127720732 783286146 292256745 612060392 951544127 875356400 840369932 968834785 704304115 858978920 354341272 458481891 238435244 543097096 373993799 679007730 46900733 899838151 193781834 853588649 826115499 187711023 471652034 77298367 274078993 291467598 425846581 920673643 588652100 486547816 751630905 741597590 20157827 46588077 531490038 595541060 808769942 934879657 986055454 675147787 766416733 425531763 462928840 903579349 900229016 633695826 650365376 670989236 282243689 976117210 331310641 411029559 9177280 825285870 950729993 161161532 130101650 870789354 680831024 809184907 690868240 884116130 765465701 447561485 209644239 165834134 198755526 261285485 402042581 470429011 982241757 166286533 700663391 538263983 117312513 781308160 580534432 966837951 548934694 846563660 63902571 201385605 813655903 877261881 610107720 787968342 613948312 676206039 974116495 585199528 800939321 890015252 729823035 547063927 946800202 932929285 800721560 955490031 407513336 588210536 953444044 895049832 881997876 444441496 613173393 762633016 714103338 694392350 453265426 373931219 820401536 733409679 176071767 900561853 930643663 570946207 829258171 989745354 640727927 790656843 319555297 486703853 142549519 497378087 107030105 283560038 317657568 979828366 957871317 888804930 168404460 92608051 190649293 288308620 711179456 909476946 872463742 927943975 754338036 541210572 798647410 893436767 254727168 571201483 377271703 718304167 89688039 306481079 845919826 590545401 810559106 985548949 38880025 467035052 752412207 908364625 997436078 14848485 630533317 272955727 782692225 192323990 520089649 707774245 546788610 498550354 941069685 743111880 910053987 632889393 755826399 780765148 918236587 531638351 406373500 749508945 156022413 735618024 997379189 771030789 954353907 296100540 780260715 466027082 710761544 151260361 273045838 823898532 730361862 807511429 500945600 659177162 335224016 821062402 959670766 92304984 313230452 905227154 542354471 925304875 198599586 795514212 145264391 698746771 575813325 822067947 972828822 307760807 960335464 948917577 421068450 444766542 8221656 338671439 923533917 733356847 64928792 686440741 750325032 594930249 406111345 698566893 374227252 385723897 431361772 721883233 260579438 918397580 948783526 622365632 873627392 400278332 194932391 833043616 709801956 139952404 939716005 315924169 966148918 797844598 610465426 670989236 611391038 21892867 157646101 710898837 618371318 639173647 639437063 980759371 985290036 377275752 957465798 937897573 272786350 952441722 996708410 858301108 748210823 774764311 974165680 936528491 467695540 740052172 368381324 653978171 120011282 635015851 867895055 908239301 309702087 17609110 569726399 687323852 796591177 261616938 714132237 582519319 761459359 23355509 390534075 705387691 720469598 13348335 661979062 319442636 842274813 62912406 914542514 681997266 612928148 984423058 782090373 761449794 51574363 113039510 3314279 924387289 131440164 821035612 707031417 987034681 993767230 522733570 229095723 230554236 328087114 546239199 531293763 875302643 267292820 338345774 739240528 687613322 900959320 329038283 467770232 937238765 959401462 158331731 879867445 249664750 486088621 790777548 727017153 152540218 798446403 849129501 358829646 137239283 836728459 251137392 694401525 172487642 943621138 109618144 883105113 7515177 990419401 511879505 924699676 316893444 317756279 861090612 694306960 235827529 428990171 448157922 247412046 276767765 71199777 795859284 638387641 809629249 140330557 947002282 195829221 375111336 270499416 317962739 238279330 244048885 496847401 818000414 665847231 510612613 290847817 907425651 995964635 677655305 238666761 866610312 972432460 747323678 714696588 853376137 210291665 986335659 839929844 176456611 901997884 378953433 799577291 207391532 189758955 485209677 233222877 711912248 982012241 256468497 405195781 317971265 544065046 680927775 181547066 931500791 87142463 541790463 592720276 493415340 960993961 770728342 214577083 902499176 765219488 663323867 900993827 576405614 791427101 179766630 971476286 942284456 778936510 15951464 709210416 465274093 695551588 609480349 149994441 477445380 401201930 464516461 188053045 110575949 787097749 504230761 74241857 735423262 836934599 723655556 247036372 737530292 157936659 808858622 862923505 865017599 865762845 940191495 285091409 123597476 909169395 794022170 7222000 939283363 94433947 833073036 893606318 69321229 290484288 674544935 282590535 814116788 246306502 899683958 86268171 171474696 941035057 670989236 922611506 692058464 545607196 921760251 556328173 153012636 788059861 870301488 421626537 715697330 72632369 966311055 880333957 940455870 788381040 735115275 633495703 432823525 979259984 406291394 365889980 201104671 993399515 714792755 827558604 833111559 825426937 971651753 806903456 79483661 580006779 661259383 935420916 744183922 885343057 911302746 162126978 838547632 687844875 592362655 659769537 230059077 192175384 695282964 987601038 441384657 99674160 360896348 886664612 980227708 657018512 870013243 904166334 593569975 371081191 158987561 197331376 364715314 654593445 824707933 708391575 9943895 619573414 66427672 217581809 864026183 454454242 789100957 349586562 85738121 747181930 501201174 456153900 755970760 289162047 799891598 379548544 690333443 968861938 384610065 881981088 883463545 409090530 670989236 759706184 727789293 943237383 969597936 971911995 511145068 847522019 494508870 977285738 620904282 28749457 921512498 588535159 837605916 801447143 324114886 8053089 706148239 814491639 579997135 590579704 17496419 918160855 195189701 168699748 254820266 68734760 99666429 563696267 735563770 976169558 227289591 915012284 762961363 953543974 747880123 410463333 674973284 824043858 678945195 719084721 518530060 742185136 681105030 752495950 548032351 989864003 968527813 974157984 956069165 919554163 7380523 759390598 670989236 710126793 622419907 494836460 189719012 636899255 930399484 165230588 428638602 763721810 823035981 400143178 582474353 559440978 434195070 104408802 270874562 432120977 171059188 181953921 505343425 196092001 745418690 744196046 16603737 744457475 841852766 461489533 128622564 824607174 354142534 112030801 894321033 119161264 764495939 735224259 461088609 845130729 810825419 726328441 670989236 918431937 791218811 76092644 831197331 321011512 928752669 514231908 947704685 488265394 670989236 688020049 670989236 119672091 527625247 975173906 429417796 60921555 774348231 708425546 411330695 944338356 469564859 774266439 916716889 182839659 110771730 628590788 599369889 683097495 426299896 17654856 818035679 536771127 427633061 805853641 876766632 518167376 803039807 523849014 756503841 939497360 782205345 273685946 220383330 516408864 821481062 417578883 540708006 701770715 214059078 305938583 286816974 575634586 536475846 694658430 713521538 677837632 176152163 785288691 695579076 188788529 15724551 814312519 771077385 837165933 403335681 292435243 936508055 763210260 871809431 156708748 412132102 747512903 253119724 856288992 832563259 295415231 672587513 409069756 130513857 273068922 948144457 756427517 639444557 356716863 897723396 683465340 670989236 195164271 804892106 973777182 664380462 675720019 4738557 739022747 670989236 313519864 56021861 393875916 12851231 730437679 995721795 236406639 618733886 864877998 229201876 368372179 835780980 165397475 856339886 321974032 733379391 933836877 689349192 853414733 443737239 901114757 873654058 938584988 670989236 320497288 903452174 925019037 150187096 656112692 117091970 500506996 977986346 789614634 720467630 132829885 851983308 733206408 337248928 962013758 975252731 509960772 540307598 464227485 966826848 801324847 830722712 736145041 747586300 713141947 131456941 891178425 446161114 677399949 26799011 671829621 483744039 937740827 435083096 645399212 875696970 310501220 503289498 259294008 698725943 89893410 884058308 415775443 179763780 122505759 903177480 664065115 706087134 995197562 253831828 638407423 64297799 788099307 414454458 296177999 754183909 500220651 775053858 862492791 688248794 308773782 614177308 150370448 88843979 670989236 611973740 368762296 348921411 724968405 272938823 114101866 897793518 819791214 417511095 402101597 977726478 888323207 793367449 178780414 888283516 9687144 643294211 238909694 736997932 765691639 472938235 259503603 797209818 650883995 858725037 921734176 111201718 828529269 564065823 909827056 801925445 710446642 935339553 531298736 839965738 107609920 731944333 984931477 382103736 769089888 878458630 54063638 36750294 161876049 594632810 831239934 19747448 951407093 860822213 927312224 785542501 580069616 380783292 769584663 716745922 761972780 904226109 670989236 815738206 725488403 779016615 185442418 952665653 992316893 696860304 941148845 832333970 853497648 884672177 670989236 670989236 74804709 314225446 702413648 486208903 377357149 883246439 701897169 311431279 294131865 920273329 238004727 854960033 64295715 800946156 104440870 868377841 257749045 267156557 381873712 798861927 808393977 737565563 872682083 578734218 143981269 391216698 72202667 748474988 771874160 665935569 327364317 435070168 889612069 7305528 615554013 71710791 808182719 557921337 609643291 639752198 423445390 914612015 683643567 809486562 586393748 699501810 850336491 880144046 488907860 897019119 481558433 728813081 867834919 16785302 168366459 799159367 180228356 861512468 822524876 550461353 934920001 91879586 259727555 716730441 97496251 829046023 902721697 968281631 894286785 184253000 543147941 788994725 756346478 717524447 830329982 240612744 893092003 997239878 820190337 675717480 729062886 260320391 163606840 505731667 617298872 605654661 457640842 892312883 713282221 941168381 733618901 830698688 279467708 173180364 814672193 259555167 940271344 967950585 969745900 183577848 238558582 902756164 954683193 428252423 164890782 36122302 829841961 802284547 839891920 383505005 229228910 778796612 700175858 947214242 394358031 910329024 946879782 686400143 537962338 928418537 449614538 630668528 955735771 922913743 670989236 509275088 871683603 439592429 765932852 17025824 914830578 826725259 747360585 699310221 830011535 465949161 748005900 914999006 996624253 278637731 808128255 845368188 887259744 761354220 801823901 691948824 948944138 34691837 129929252 670989236 116748014 838291267 519203955 559976771 271518047 637519218 794766049 626949175 794444020 734283920 650774165 713505225 621333972 978893031 836487071 476355343 779683414 1979119 841600980 315293183 931495673 76222490 746762666 749426878 460862695 920751385 209370505 663595477 26221365 289486120 704223951 322589028 743724925 244645442 620505327 458688424 785677153 569593461 152417956 733639330 503944645 629561944 474932116 735732373 930467817 674098226 686955443 873184265 303380188 589559466 316095171 829779386 773144318 517562120 331474355 598322952 944498857 919704170 695291454 897849701 485653739 799845545 661587645 78237739 764483425 744466372 997462073 997527312 99140419 14264920 34146263 142039314 941646974 469157716 889532206 723593821 846231150 317802617 21853880 721405414 863981085 223297368 346852682 173984852 801678574 11811508 694214394 54819574 871700516 988750981 675131716 680716457 383782089 153462114 694738017 189232561 637007471 195156521 887045166 949904693 132077897 224308148 290634698 630871874 601467542 407991044 691871857 369824116 943235953 895668419 215238786 869626358 757283446 92926974 297434975 853824192 723905821 257954861 160355112 147554290 699222760 887340312 341871374 482812462 833314080 301182872 797333691 593605938 90757061 760210529 963165173 870124571 866966896 478581822 297573153 920725949 245895805 989829183 914300466 209514370 382029518 411357935 808905353 69018557 301871866 640927769 808619624 757954701 489742511 693360305 883438243 573951130 386648882 919993623 155722359 67376801 571022449 878853502 458666866 373750313 51290292 966962052 836696849 995318212 987435531 925050790 328907753 375078220 565621435 653053206 659455946 98661896 664788530 917429398 577052531 606041300 152705552 700541080 904349089 676228865 831631402 477203269 842250153 590937676 995407462 916159252 647597121 871650235 670989236 328234246 240230470 797255259 978573952 974797689 112469137 102023829 835087988 602494524 643879032 848033372 981716251 694601320 836418965 819598360 465080855 175728474 525264657 857500788 969350723 949318258 321707422 939874416 973874984 869441325 556701243 965425043 930081214 962904756 709801129 83292891 774188201 457888417 963504426 674244566 822625192 942224761 716917355 24631196 852288863 979590076 625635996 13062774 353623790 547745147 950369965 572003738 651851658 486378462 961104590 864341330 735781551 758533687 776201296 329558323 107811914 216448848 29674254 933951512 338400603 861544053 196731416 593439483 659980120 826492174 108720528 251186689 937884993 117590544 90099476 375987793 878735477 48840919 972753161 789512837 832634969 220328828 880010260 955876374 454159869 135948442 803112017 692382528 56092260 946289286 790096695 474063419 487727849 296631875 918825148 487212682 640375879 424306847 392613860 670989236 889691040 847112503 927522855 754485537 891905198 684470958 559596440 762611592 77148733 501528893 268683310 240527813 892102833 765784977 845926779 746351439 636675131 810202851 766494998 380124395 297015602 22023114 710790152 813576888 711866331 139318033 967460905 867271338 766385653 610020599 956304778 656941354 28646908 962348012 407951948 709384508 467200312 710786891 625618553 446645761 973379226 758522455 418551934 907407978 395663276 757083729 805726607 753827943 116653492 428839373 922542057 407143174 892923593 924289972 61430206 863318752 759420681 417580445 60573395 994432896 300497196 442482889 788939675 798071802 355072075 200898806 779767808 279426232 528204101 948255752 819039314 869784153 43424105 15613462 121422144 594466607 198056014 219464001 581966787 31785285 634620615 239220038 85009671 111711707 621590353 50556683 191110448 501367175 604718172 837206239 845937997 559735469 919001372 946698949 933428689 397052318 774723255 61891142 771277596 749622955 673193641 780171393 587406705 681077432 684078261 747679104 600631303 889878082 489553178 835135223 715964258 233388014 435871454 462230937 438021209 439553690 165116779 422233735 775989986 745979146 872487416 68867970 925201529 102064223 841299218 639577226 695987975 558191857 934451413 134114826 707555449 563669557 705794614 842059539 820012061 833634108 528634309 853304456 483342302 360803418 595666090 822908702 866061909 861364042 807489138 784824189 810995250 625691820 553091317 68286586 149945037 717896098 235807289 920123381 932340692 710856598 222359168 690355778 521370136 731306836 78688982 559240210 234611683 328913933 87970557 963780740 698440728 995083806 942303257 715750842 108658239 229521053 547492547 493983856 931058940 968013286 26178874 186290691 294609874 154335949 799818145 415807802 627292473 126825994 86951294 58998684 972003937 724871002 368450496 958830105 39246434 436902694 844119023 485770494 973730507 792999219 246270656 709252160 248598262 566793152 573879562 790533677 118750686 19482136 183949610 323256819 725881884 632046956 427534547 851727762 164546774 764914145 414534675 756784428 508152796 654633679 130662221 665724684 94983694 165934467 30405083 903928522 351055552 736282285 852734811 949095235 12432126 933785483 937317003 736262733 583038945 541206233 51064821 617746072 100182981 913008514 682049288 929737861 164588383 624803857 766120879 449847603 946727854 657305742 782120558 853667478 940706424 874678391 731710015 995158692 518521035 353025094 674244077 982218470 990997958 678896002 734287473 692538336 913020134 54266623 522339121 730860295 821749198 853632051 841167337 504390445 916390676 191362308 725069610 765554229 24290255 862693302 265176861 879378450 812368581 607172885 187434071 565399883 454746322 417510180 509525593 641798238 953272556 491635402 424835641 965879094 912704309 398932166 409383199 569501278 468223605 675925891 660605713 670989236 882930919 413638459 516936148 253448732 7905363 409916682 429366157 228792577 765482054 894008079 530277846 670989236 639401828 969560682 976238661 690197211 128238124 281974036 724660726 579170158 990522840 899652737 563319642 772875600 8538568 944119594 528196937 780723265 552305857 962301231 833941564 516801762 906381766 575726508 824113369 541207135 782533386 939770501 775473805 491743402 785733766 585388566 738162286 783184936 902561545 19227155 231139451 979434337 254906231 212948555 154386375 251022728 900973493 485757418 760010920 957474233 165474736 871502246 910128213 720072716 921797240 977932879 853380016 969044315 188686326 117936515 134724598 561969412 570847058 677927036 251778385 999984829 962714924 887885342 32522159 29399963 328387863 453177834 375039035 908019924 199662546 145591798 942875621 164584903 225136743 364764646 697462526 864691459 729109407 62287913 177888374 574117659 238162364 141113458 297670705 761693017 13580940 547981405 740588456 38715691 961189170 952042726 136850925 958098422 434856035 970272851 455755149 763164478 184723378 726169285 9695375 287325155 738501933 78972844 688831456 963165298 858913755 791686652 711566965 768841541 727186683 787362475 702014111 457547428 588823189 750614009 518627184 758345086 892109095 764905241 737748599 709313777 868343663 809383697 680522510 307071214 974343009 997124081 891174742 963553609 25639048 525510519 75451813 698364903 867910951 975635044 959401675 51610532 773086682 828511308 263848466 491772620 758480215 634064293 424979094 766100458 32991763 886196029 74375786 666482811 237222567 81854240 112934823 614630050 537676780 812235379 518328880 853647345 464343941 259016284 511639163 740439745 933629486 875896047 78372241 537628697 39468842 609100331 731079484 919993935 916127414 184675905 681363236 216962049 668585681 146668230 316644081 815001900 744821498 76105034 931174379 803066449 662404156 530966143 801745783 609066481 89400585 617572072 705520277 735230421 777383749 627203680 996368476 109871787 739119040 23287302 708960573 414590461 951066497 990964118 856584140 978383300 96965598 749441817 126636907 273795372 147848868 611168692 994374471 734172535 234268711 689994736 396957857 560187897 997425605 714288421 340955167 359731147 866805409 940470193 430737603 809255428 226581207 630621809 777194908 771323998 982256699 968571883 94134052 918981167 826468381 906037752 902703672 949356826 385397517 185870986 123894429 545449537 703388126 868008124 533300817 852697142 693440730 670989236 943602159 760729122 995198522 583200559 988921586 446470983 382348070 739273156 661738010 573081400 620776594 358231777 417481634 946426835 996715541 960379550 149673263 521278448 754116905 434805019 681310070 987298318 750862582 54949496 781075548 715627700 565375614 900527828 243814581 544181169 747970644 441228253 882778457 435295821 135059704 37792817 952369579 617192426 634140296 895785028 504949178 768243171 343667461 806862700 88584681 469489499 614834560 690352062 883620259 885462840 94096793 909714711 772456136 425907371 695121338 813442115 721485473 900105987 670989236 532583122 767162205 871896128 603335467 709203845 969858561 721946461 424326844 284261176 434918678 151235733 748438006 64330843 498899486 667795913 110699206 682052824 81276472 284927287 896580857 268931333 711290456 903530665 450955424 181401501 829015467 275009496 864699734 613880623 926593270 66989024 327133544 812990743 243128376 247472790 190282702 473837276 260181068 438068920 713314634 66280373 737002222 734212166 670989236 891958268 921055511 268671680 330459954 737990150 69486031 274220021 206718709 752012552 192540233 340920302 28759739 817655516 859512093 375694626 884921562 943954474 610604516 276867515 949844305 678536800 382692624 448019319 538451806 958400198 872375369 619693066 846106280 910016918 990903117 44971298 843471516 539387860 850928806 834227484 681096689 834175006 154115665 751181586 158804429 940215880 908234693 704220245 650756705 235765998 196264361 974662038 831956053 20922591 775166890 736618806 551881571 307350892 869994871 537720504 173637408 755271182 152913642 43176494 600897362 339801824 890891321 747340693 26805963 875236156 156140604 661270403 689193214 801121477 477463663 31152181 953731453 771249879 884080602 934887060 988584323 469571515 158747243 752971893 234606941 608008434 52684781 302623158 689129951 705856546 100040278 707639476 284765734 818418872 735043682 575504854 933637192 331806331 151245178 300757845 283211900 297969905 153572588 248745635 923065296 731801644 184001800 356263659 670989236 804123028 235374790 506411138 345535596 844180421 720214120 995692293 920017283 491747141 34395206 987883990 770847511 822557937 101206898 373609702 317225845 892707108 46488600 200899298 756630914 844136216 795528341 691232799 916609102 906357270 159094354 430942114 458933230 382567862 833275225 632072231 882483492 354988995 492595268 871482526 193318278 886108637 54065702 240436202 200495789 515521550 807970512 920930185 926389045 121680357 943045338 835022389 966227906 483715862 51311203 720092203 717548915 910659553 960932536 942364342 260634491 775064033 682148093 139327166 637403530 474852166 376971864 896837888 709661588 407089522 269143084 339063161 417305384 167773936 565823091 156768173 535455430 565186195 580293594 632659773 945353356 751859699 868243601 390855320 798993259 402684847 648224552 921608139 622136119 156910161 836684036 172823159 771734849 720878887 784252322 931916324 696938119 564016320 559692536 815904216 836155909 554450288 228353808 541471748 605365698 968948142 97046411 669993390 755877863 68465635 582743719 348398864 596987188 11787089 871351368 102608366 542265766 929551113 342286012 848151861 883022548 135337446 223537495 923114694 352931823 914736158 124005231 670989236 341029191 964894655 289321540 509762413 905090822 86544635 328057289 41084385 490511147 398771674 84422382 222911705 670989236 731734850 204988949 210275101 139381071 994225990 996380940 448182142 242715292 545537892 809507340 256258177 120467087 859978670 864553525 77447455 224074631 866256506 688784731 855739143 899538530 42426332 843773741 983482560 949745023 232306492 445553116 496501167 68512142 537768595 612152435 882521037 259149322 906130050 291687457 827741676 33319808 799098390 537011112 878158044 131115961 620870739 910819614 527221189 782360786 372745395 898795393 128917247 250533413 590726334 99609197 37668051 870286717 445048126 751468633 960636926 315165929 868810364 357158197 169057158 900777339 182347418 934411818 723052298 944616752 342861184 769515150 735620443 90696643 814086237 596955137 698235266 691503196 753053795 576924434 395492240 346474729 112990030 918139085 594824102 862646016 782129781 146863012 976807418 96828310 679248721 97392382 938947249 364562750 879336349 608738315 953560160 963369097 862069143 195062812 850580933 423351618 257540344 188936050 965946081 777676518 917527372 886236448 478047789 92243587 600485878 256303608 505519648 472120488 857638298 523919448 725413905 876893700 321124707 890241481 442701336 831242111 295715548 788536366 856154494 347667553 780424649 351831172 925172365 585440111 159139120 992764247 892455911 924829022 222400579 748811594 697360220 240104694 171318239 390320435 670989236 493171440 900307057 699738321 660002924 900190170 726313611 289527559 824454318 971942196 481752076 701746009 398270628 473246412 632663682 820060974 483607143 732940443 925988073 676299581 38501171 936475160 540918052 558697616 717832015 442029708 50227491 424754733 540790790 163246506 756124651 688383194 306480891 613015937 949167712 123488679 936619151 471465327 955139383 339116252 328856088 930435648 694720190 827891055 754734229 633239004 775383349 948886173 636942334 439068 317071240 770087069 815451987 931937644 119519491 204767378 932555152 742891950 710916727 967697648 558040018 250811429 812531688 712763522 417877620 555646743 393802437 786745329 661480425 978549296 232079772 612547951 116083866 831843086 644368397 837218920 606378624 558312894 896743181 601630378 510185585 672715875 696080582 838741955 425172928 665144609 762587462 677493415 395845633 802897550 824066931 574478075 156184264 753541963 711457210 498738280 339535475 429418478 826476095 246997872 733698948 995555740 551172593 809778374 367110699 677914227 266526827 957610730 798171268 970693984 841113489 158541239 8735557 914452790 167069600 772496477 976144186 194096583 908838344 777839729 699674667 799288282 198151157 493209791 592999035 880551202 749102844 981141533 159535094 277918148 885280540 796323781 913102816 116787724 745078340 671312600 747559523 741923108 380208447 802915048 836206694 819127842 870957740 534016433 427768987 298620253 83138370 776447332 645387939 174213029 741489438 189093730 670989236 401573683 466244495 16186041 873862254 779885163 305640457 289882731 910699427 186787039 220691991 680951423 269389702 744800397 50459137 401719004 906419982 679018585 315563058 301016535 412729432 490838772 402772145 610989444 993927904 801928029 902957539 695854186 193670054 498176355 577469826 659724836 748619909 685051977 208868617 904659073 690637150 137722966 737532054 981669726 886652795 18997977 870236063 793396470 397460820 616204379 581029901 975427891 512596992 283001418 903998742 530015417 959806271 815574815 795489158 847488261 717284064 543077016 907304148 90769492 169451887 848020431 882103887 994625751 948094201 252127280 799442250 577777897 993226415 893046147 967780267 677672450 860328539 670989236 833696416 667596367 812640931 179241161 1392227 983184479 577096544 427073420 991837973 670989236 877000290 670154738 241877532 846714779 82579042 989394225 217064346 339999902 835361774 986458145 569372952 878144391 906163163 845919408 937096302 248950707 863503337 383174899 53811092 874163172 967527055 956800192 376195356 723581450 984285349 438804417 952802198 954434810 805427655 437081597 949476192 982334639 706720721 630653004 578506902 888139732 278153668 808249820 800010211 680213751 955467894 533184900 774553253 598136092 764925914 989222623 839117062 645710628 62129364 884641462 55867324 852665995 507528393 379788597 801244252 847633324 956470286 210253116 852537811 672695403 178155732 671934994 353927940 17034707 974599386 877440560 812699632 778253556 533407929 487546471 717501347 282113011 831387416 925007163 688510136 75499357 556280862 985193526 228307327 851106247 80834563 974340276 870497834 699981026 241020445 208235009 609904804 589331970 138144600 613447123 250384047 894192741 108743783 926549185 431599926 553964903 204040067 737262644 783599130 231006429 423360085 678327053 645035691 996676897 884359405 51363048 840253696 19963112 738419908 709852817 672518859 250135065 975414012 701602437 634679013 879151967 202232602 349314823 383594060 32784848 653018806 759479488 716026513 959504636 661167414 983614394 801848509 987062227 204198482 545023568 323738092 10930280 30168202 221332059 963756237 829315445 418429811 813393122 748680209 477786034 280481116 776985408 747474655 146989194 828085871 66870491 208035974 946245293 594657693 380772026 249239229 431717061 854324137 670989236 446963722 180185902 622003234 806024123 515391657 789281176 222212770 22093415 831896110 461485637 760260559 351066527 339566678 510335924 676141273 670989236 772891681 702331900 764537919 201716428 940022129 95588956 988712290 616526323 526984572 797848434 764157787 776719076 923613781 38105063 817772554 632189237 716058925 298964494 711320023 30331496 294839480 829531195 548490693 393109300 50457373 11730947 794589117 486484520 188996918 476809411 790320068 979116222 322851572 997335167 970340004 395737533 469246667 139636487 211316571 530680261 729083138 561076142 947810107 258400663 711389798 193414394 676276082 952448111 970454140 777808198 177635956 951595712 661684397 208182111 695421023 603251919 863348017 756083619 956245675 179143000 505292272 910601566 704542723 728789117 985177399 266703566 52984948 43667420 395310712 707853113 947162267 632718004 182760569 371139691 538135231 11037094 263050 651333423 734617922 892319804 707039499 926375210 899532784 560207583 689003966 673052477 937404489 539654098 725185800 80510792 486141257 946137603 69993208 68939437 602010015 267322796 971541365 592030491 29912799 486443004 361154530 776644839 281347597 295463331 971477331 280825831 75144924 791171913 773718651 194596682 843957305 757578434 882073099 755446525 122455998 959159300 998721648 311377793 890342150 887467120 894561022 925082986 888233324 670989236 843512221 763851745 434358783 191697740 612357603 994799247 877108920 231346672 829515527 726679439 709438643 809073983 844819738 98540151 23153778 245132944 790713255 509586289 670989236 902815391 911976560 264764823 721939837 695026752 381265433 973896832 556849166 372594969 598709461 737570176 84931028 815769867 348529366 917883821 887253891 596753003 711626618 521816860 554573727 49409158 968183579 490433282 936592758 377356794 865385041 887166114 878078950 872297521 776744916 408071242 37318097 886550895 811285538 683677989 952883327 623405730 634169083 677713125 436120537 920467581 682198336 954583783 469629939 889381595 360026345 555013052 582018963 987507323 101111415 548796615 684652549 813904275 466630368 116997164 810858072 997401826 684829653 893816509 670989236 140288951 509836417 893006238 793503482 580046325 81654531 171393689 319355123 537523639 453740247 701525167 102523820 692574593 36558868 298285080 696710311 722794279 718319350 926196031 66119268 523190176 861532500 422526749 859142135 840990184 173050205 103549562 933432715 590365670 211758669 682693421 939543143 795880714 32848527 34487365 136256208 411569930 653453591 820833499 744141995 877417547 478891966 97154267 751524107 480566202 424961166 233028069 454017218 358673361 667438540 548126070 727082314 947097922 969551077 706642773 904652592 467395837 31321797 71517996 687657605 667615307 35381391 712198824 263901659 264430812 887070128 672788395 863769233 83183465 456179913 853455464 246056976 35001316 416839224 510696313 996126336 539649507 838563684 477819338 490939298 632755104 162409029 60160343 660058422 605889572 846706237 752446087 716692896 140896979 831511862 297898633 123822967 819847060 882078069 118282329 670989236 736289176 413933954 944768916 794261444 686103928 702794596 579707572 835889878 67049503 779755199 608481153 39876490 885490641 714189935 987852320 235319821 313888187 944617917 400494875 566202840 137390881 503167915 765606921 699055743 771229950 113897473 965307934 164179018 171675108 178492747 887527667 749578602 698412487 686137377 981403661 703676210 846649420 661792806 518454339 922154881 948793314 752204109 973426331 418822393 205889252 503637931 398521542 874996168 740967884 777502701 713433369 864644011 791361664 719649874 833820068 446193284 368811683 959977122 464061347 548470316 881140732 792263599 995915645 365731341 670989236 217466663 359122719 819241023 757801536 114417672 996280369 186867962 853768169 260250224 19595584 788281561 980747423 215416075 803556033 870567579 115903511 152870917 989483097 842389958 945254861 949571663 741700639 83249458 401588357 687815928 679962403 850302514 861369718 692059320 843610425 429537485 976697145 562660080 678260438 695611731 881499599 562793986 163800153 81687072 655546182 398356026 335307952 400663732 922524445 946193550 391322242 334758729 740131832 828777548 732584195 555445030 136329087 310010345 670989236 221183541 977056749 941888463 174248752 995267059 160466664 917853450 264323748 605616291 252782566 436018183 716043869 431796685 670989236 771844837 926780675 210443848 993601981 544139378 93727053 58308154 688097044 857074748 354741710 86079838 399360855 716816149 825032310 675305418 874766872 673389423 783119282 298009299 273117901 473341619 676724271 165848776 779702771 680657495 726217768 71650121 88511782 670989236 357354670 475592184 753734267 556617328 649877476 955012437 850386381 259412991 926408493 896437608 501074465 776051370 689210062 841164903 841444324 915305604 516882811 718347809 721891691 194369577 940835327 842594948 72999337 762869771 826491137 860606030 869947358 582956064 64189758 312815167 106151509 281983803 935265227 263939251 302315984 670989236 481621453 994305071 566747724 99861753 407733196 108371095 672227371 868315122 810569156 103373227 962510354 651138358 262046141 134552130 381420654 485304165 314273003 760744040 981510774 112592003 402799030 818127638 708852732 902850985 396814136 558659229 792261177 205253332 37333734 26428462 358821668 921263513 809506879 812481555 393925065 964743000 869185466 694888552 268677327 663007554 788791756 439728694 219938462 770676384 914103565 244285313 700810699 537985035 943440479 635780553 535273226 738816264 172157466 386416987 667439799 729126914 773130399 641926458 598140882 512717825 750727776 254229532 770118066 999466116 40129710 797459315 843138682 847988153 687643531 599812662 597259085 590406617 768392269 700383681 642302840 449649587 771190166 322956597 965868952 975532088 324968031 985657148 722728003 684166260 640110116 192615866 908888899 251245745 508991925 777616341 856995832 17648009 53237090 957440079 789869616 381916018 802716689 121307938 925061061 76947343 751628803 840039383 903089402 809737550 936753332 975597347 848094947 648195916 308063255 678250333 158906563 850712597 338987354 983630817 960701907 780266932 127467098 233611336 687436547 709560550 625034736 665958721 820721942 877446811 913686846 754306478 320374131 442648024 915892419 517828519 793005494 974563988 824514708 858512493 129193013 221866970 596271953 69722300 595340772 940814935 398763149 857408088 839532987 187715945 430230915 948700654 696298114 729956372 923166457 984641178 465695451 540478268 540843802 688786235 126108972 698623798 722182555 970746706 564628989 901829156 641547294 800242080 42657944 949680980 897009330 45761731 682303505 961229709 563279003 693528746 670989236 838125842 742025201 808945292 888675527 92637340 957902102 984141802 792733582 989055742 838488545 918133693 668625232 536686667 951562340 648536413 888889005 535191090 663620954 518071853 373222244 91671322 451219731 263212875 468671947 888293183 741677535 806281024 763682720 337046634 937852633 76582503 603239616 74798964 710652419 785575193 804184849 436603073 762947199 885370911 780735091 399283087 286971898 36047249 539992339 962218299 995910500 286338503 462572503 930550534 739698990 749988899 808713055 237094680 40108653 75599987 779948131 702510810 995043537 964553332 827874641 873567723 772210295 995579219 367002775 823287299 915507683 882323277 879656100 480989232 688839227 757067154 652899094 369270465 945507288 982950379 949160843 419541342 381001817 805591516 723379893 454869041 911212971 787645105 461601698 696628252 997527201 515851375 144809964 672658239 867551545 229161284 189788265 130953385 170867857 734633732 750857350 826302979 732812773 277695349 523378423 666927768 832043285 742095743 398288767 797999243 832163889 119441073 768519733 745357587 990108546 92273662 725646756 321548290 272276793 670989236 802126850 230609663 435148400 856906976 873214820 788770159 17157919 461686829 765897485 122029615 779990563 257716554 829586672 834340845 817266857 418624606 770446572 692764589 649772037 867514127 747607187 706203517 346473065 561094153 884826382 487459360 340200071 412687185 854720696 696660284 956099739 771022689 75153370 739299096 325019446 812886305 751994053 978897052 981734467 467665399 262050644 270753960 377805454 306269696 173686007 528891242 783015434 640632718 867146309 938047133 710006433 988780376 63430698 684361442 461797424 564073777 281856183 837799103 815112455 975041874 831367023 193602867 911508302 14515019 871521023 839364764 837794643 768264105 945111281 986381277 971298061 331194791 75881607 710366956 792169197 539291818 806367016 269853118 795842638 572282819 843555025 298143366 102575995 480542868 903989890 740918480 673601473 924983173 77722061 489396527 846783275 680472370 228211345 871022583 412395548 938481678 976516809 912287739 943439082 893419694 160322677 799456481 229400899 913897197 155607876 612756203 288109594 606244497 992370635 783260429 353110787 968477227 718686301 15156685 275841610 568638723 104907607 697499194 221243697 709995254 57866130 550892306 998132559 762859217 422333268 177665105 433062159 142897619 277106483 828596038 95187916 744751869 699974467 499989567 269047915 63687468 252623339 301825386 278402366 940715110 430268081 749207223 874868293 114702662 372828986 606869634 531623749 438945442 584786298 449328511 961022443 991273639 482173599 615237536 68268496 51623664 588303987 911497370 931987742 377436384 53942592 693970113 986020435 789931139 281984934 982047035 697856870 473017244 953785892 883059923 797698500 796130895 684154797 970267491 407003649 89411478 858449500 172902262 243985884 370480698 656285921 146185288 957690942 350434480 965561074 687328771 670989236 899108680 99324956 720754894 815704795 947967045 176871945 969234498 111870947 931121998 213192408 297937314 987137217 168444549 899631725 727284090 337350020 110396146 755330271 207104694 980572019 18086887 913970528 854778324 320850886 979869920 941210995 975710164 745301662 606766630 637432045 670989236 681354059 909293562 301278228 852679005 850609751 294135033 560796140 587112978 32195527 720639826 815453441 985466820 968412475 60721885 744754927 541604768 457902639 475215354 882177814 576700476 674885015 107469781 335937795 717146017 857590846 771827903 582533542 109486148 943182783 441989683 697074996 459548197 97694485 805866017 345158386 870909188 855276447 392533540 302466451 149923065 626519182 965588844 53858934 821325581 585276413 454288958 723638080 114116791 50547591 50705273 616255035 783696260 871663923 545952615 877538997 697262617 413175180 351083368 684049468 385917236 847009591 161727580 395336692 309898436 111467966 467830659 800536015 190266980 927118392 931497549 818881822 706611341 855707920 827553217 921872504 426260713 714696696 807795956 829630555 793532762 635559878 811688409 838208514 656471386 974455250 384358359 497748402 621766520 807797541 139396919 989902602 884560588 657127937 606182794 974701830 665991044 939626151 985789349 670989236 14639612 406510009 869547783 757495494 377481669 541108442 515187165 30338211 589438120 568024120 757837986 446621899 509851371 586872633 67114193 218262617 981104889 249060603 702614299 420466483 751627801 529540343 244395646 165604454 846366658 846056482 380591194 784091205 317822734 929129692 285334421 239576889 601069035 990809291 925359878 808303213 863488145 785634060 719212340 998340126 938741681 173079600 956130485 947252803 659548816 659127170 380482298 670989236 975352176 379156139 876347515 68737873 809958797 502587030 92387586 728073674 289848215 209419841 381959226 817099955 273183302 547538089 828658239 374200045 719114997 11448856 630198133 849104710 726943377 556236892 757823181 960420193 986845893 166417782 342750084 706114985 916223192 689373637 95550801 398873107 435922480 439546677 905875004 141643239 551486317 595134185 948171988 825775399 700205011 740126782 892686225 734492514 481827302 471672797 133472240 692071729 760412153 71850288 258867176 310017597 866383444 392667454 301854261 855677306 845388808 833473465 557958317 256277394 197723722 770966839 3210095 108776225 27678169 605782387 594487276 496921661 822862718 931460445 726061674 482199166 801172498 843909535 670989236 55905255 451895688 906704930 860796997 175736269 222330170 353479408 775338662 9108726 847873166 828959517 746393360 896263719 824110085 950502856 223763559 936054620 386284271 278417395 32616569 924013427 965449363 492776831 939716367 273047459 670989236 181431284 661846333 896695724 670989236 450431804 457858953 904940903 592596709 175920328 917123275 842886269 829860996 711658754 708641783 689034380 922573662 981063372 446156881 851519071 388803078 907318095 898220994 960406753 670989236 844581772 567094394 792103294 175823022 230650039 831580519 538816843 62013276 700131755 661637373 876442679 772356774 852023296 19323693 729798214 784670523 67375840 774222654 272888127 31658835 592937940 902646017 441914542 889449998 224185001 925178707 154532784 699770178 948446321 889468203 834153027 740716399 961622261 13263969 281451845 881804098 799405621 556245568 342885896 174029329 557089022 716056650 956875682 718996061 476053526 994592601 351096098 215164954 829700917 943366284 716340968 719868642 846621043 748815710 914851255 983192382 69428368 209082017 794007914 925175630 8940696 688107875 708463011 883973275 293403103 712729801 947271655 462208046 389443010 24331454 426624585 971612126 143660100 852526315 913983217 832363185 873381537 778886299 971725350 292404242 585219568 841785089 755175468 148943372 375513119 752172445 123317331 255000961 921205157 321736091 633581703 332618196 361390246 539139921 218453289 767948360 732512132 466979774 796485950 705832368 827127531 395012496 824933428 683872896 552367549 713322373 54771935 91597312 894842797 24236930 412527174 833548336 593171444 947063665 948605568 543554075 84596533 906437382 545072153 523150994 992517030 351324392 714674525 997275072 744950052 326256809 150816433 900597907 266007644 954218155 193310738 785531401 605862595 421390766 68865536 73747062 742553571 225152780 693814238 680845140 936678446 368359034 589107989 354614540 354925389 806272159 336397628 959301484 408177015 675313640 564767487 478002486 457030106 73619068 933237947 746164628 723452412 811596617 78218117 110131551 306006630 26649951 713268591 513671554 868453349 396269400 742936878 828435868 204227264 731684308 17617587 360641757 188822074 947042093 76247551 559139218 353190304 911891501 282390506 820842924 60714322 192566502 200273313 67173274 60846159 218219343 657898162 97687684 403081691 168233595 131915478 977015959 638196431 450872978 495122552 993845003 189884746 135440506 952275676 802203191 791544655 808918576 933966103 201004070 48659054 275145764 775962583 536067882 409003158 587116410 830285089 877343157 426679515 717958798 609700312 727032924 749982675 71804871 950932006 200475338 64270277 800214849 240310423 862199033 2778439 681473171 927267453 893953811 793773294 394086793 546962525 971186282 547842818 721346066 852194027 74642128 437518608 401851057 226024542 986303150 758328484 255042548 824687364 56059674 597955394 680092396 966817186 520183471 55904591 420922308 360651784 732214375 694347066 884859940 848560101 372606758 670139473 60168695 966853865 428127975 707161593 693907913 975922593 761413901 431736490 853033172 670184942 385375507 986553073 955049440 888710014 861220480 577074358 45820988 810203452 1697213 771307419 876397538 579421814 388503033 913477512 981825854 787033651 634215265 766438106 375654411 855067618 873879387 710582744 583479598 430803676 794037320 221240751 824666474 918849604 991050720 990321108 301210787 41197673 139328670 750057288 819200304 359439499 994719320 706815707 530757235 845661121 820578603 670989236 553769675 891643889 386039692 73373848 379572375 715577093 184557462 997555469 996494527 702834833 358626098 778795164 679297547 966289859 890079224 691462108 977589113 793061447 752999530 180775434 513825120 167041351 209392213 697203489 20749071 816802768 908717539 999571045 470445804 898521595 670989236 838081513 673622194 304417507 197336752 20633972 978532083 290147694 603961466 789095133 861480910 171673329 637098756 767387245 929000993 826699414 932777718 550110636 692017239 899404274 151573935 768281471 994278920 476102681 709834363 858366742 775895032 751960469 306402564 939478926 793863198 318496032 425498677 185227056 823890404 793863817 561971533 873001029 487629238 328612753 986900579 755553202 714250042 706421512 857504973 669713834 793705678 585045986 489346865 708458285 321797457 214505631 963310835 594775106 448841256 954529947 736851540 79959386 865042140 534099066 715254099 884477992 514192588 682402101 255836687 901630306 698184647 350141476 24369912 15699723 542268340 224667166 902811092 478391008 906152192 637151298 16532100 980188789 66191263 855860012 833422776 925360392 652787849 511250787 385552273 248623156 825753327 774732012 355319711 949315976 442445752 692583286 418127491 817758844 462192300 735738321 871365504 923101378 340456775 120604009 907325027 111289258 313034826 670989236 677821247 693022634 500903869 960864880 835317953 521303120 103021442 412009647 693393708 634022913 790926274 681978178 686804135 422812476 465393726 909026359 850281405 688501578 553873900 490508853 262084387 247642407 115762369 617895643 701296755 950057889 336033654 84725301 372859850 107062249 796430781 469222945 24330182 237010741 973953490 853148279 829349829 43041898 776284739 626209024 463739893 814857187 905008958 357828715 970356670 854709200 806076399 316705327 516357638 66083064 783234989 367208504 532456639 833904735 650384995 30678551 338048105 741430254 733681288 589858972 792406849 162351301 302155924 896618113 879340337 492382199 928526700 157734829 732592075 601120804 791748664 29444677 692892840 856802 702673895 923695785 759235147 843901433 626741036 70867896 220376506 127355814 146710381 988413064 896418042 727569328 367287082 643680104 842202697 712152068 965304696 399200587 870066102 859495393 411070430 741613447 485939722 867999091 491320058 776952497 34483784 865686351 475869367 854478468 911959079 669505504 964261787 963458115 91287469 572721814 746824378 974381471 644366331 914893078 594884962 578098450 923862098 941442534 245121492 708044315 981190835 229133973 891523295 226897128 26739795 92032791 664906933 664073421 43125722 688294405 30648842 98978379 711417968 210889110 495003603 347200322 304497335 977242215 133987507 687554321 964195809 967715108 355922637 367949566 720230219 760314254 235090713 517355674 681163497 899115960 11778430 691516983 694358453 559340817 924014848 449517249 474284127 920503765 913565751 966568080 366712572 964034078 666016809 387351796 936198166 432382682 74941498 453759294 225216402 703451098 923827738 979845141 113475589 478638513 549027740 84642240 808736999 434290840 120946213 656860532 916148729 833124819 923713732 670989236 869523268 157205830 894424250 667641349 109378701 908836478 810185645 858113549 734032303 967274918 694121045 819483555 633278002 803597510 891206328 901778278 159697622 929953987 712131611 266497595 940367884 218445344 747821226 477992656 671291716 429965925 779407683 452397902 169001857 340389640 466592900 922365509 938909448 834354744 743233807 896608474 933493050 393744654 928105890 61797659 975444066 367359544 115655088 670989236 451580106 187357815 590774738 796116529 705987512 198640225 334545645 992360137 261717887 173735117 373718641 521870307 670989236 353422285 710002173 811656170 405561981 840112215 60212769 835227413 344445668 800548792 871083386 249421414 913894762 744305896 676156862 727924525 873505799 984658586 997345906 952816425 958872053 777421000 941724416 880550682 998433768 69892648 439396855 267869001 844090043 989444430 926832413 577599485 426724890 649535343 166593904 798890807 777048298 828282424 724498959 697321348 487120480 780182199 183860269 210074311 159905234 210216436 234947159 885875270 499799525 908989961 714443785 895700295 796350754 62799154 902833864 741220410 144903717 817210206 97998477 518518991 943440755 794143735 3142296 570044988 707269253 839220628 132688364 955247016 694123552 410884799 42376107 974089174 941268076 41918752 895328897 895613330 834206248 355291549 854783660 306927524 921763852 120246491 921589313 943012961 820147078 553223374 828338045 359990969 965077928 749074513 345277212 860996780 114804020 949373069 121132082 706997253 190413952 881895631 796880487 924258157 409648627 124838623 550219613 676904974 615922011 845279762 642465094 356528697 4232960 207402206 153859370 82861718 684016660 862702107 778513861 764684364 808521832 331984284 771428896 988601291 98250126 922313983 148887764 704329204 783254999 891292275 953826760 929417111 422248859 506313852 580319616 269941733 768746694 915095818 179865142 950959567 948440674 41403004 425326872 149286788 892395968 1365505 544756617 911817074 411948896 667728685 676426693 709328226 878228493 236336959 738065427 821064458 765905332 953614599 348343921 838188347 360348237 199171170 885808968 999019984 709730352 748136576 321866229 542583399 536713387 793447629 722866468 773076635 947828932 6288176 134180058 998762618 511231793 240975578 620937976 270945309 496164940 211191962 996689915 949906630 764277383 944599888 948967451 127551841 238303136 699785500 788307368 639351130 784973317 379650442 636439618 728328159 726390295 684427755 213219772 1686925 251449520 932305497 476006078 206281246 363379304 979354513 705524424 851008776 568901311 341270124 105139607 924639635 916095178 339435588 376772503 468022122 739589404 32451977 178474179 472504595 755644174 723472606 637945641 840883041 946842118 205488041 273572254 529625196 481689853 719678261 545929747 772223453 118766895 36654571 800428749 672608131 709119834 284640551 164905753 392408859 631940369 721576143 786309427 410410596 902004649 923459646 463704292 522981451 876140705 256361187 843998672 484577189 782608436 702131562 608325016 37334215 843928111 808655118 639729631 51059488 772439826 308326064 993613042 132741801 646929306 460610316 810773615 855367822 425008846 675566178 381151226 783555628 889448764 334857915 855825569 819486828 237963046 557741175 988349327 93951241 907846350 601538242 770325814 349936535 890902571 902102935 674541724 246988005 517671235 820702426 749678144 670989236 969732594 156927503 874758115 896632297 987521249 681327050 530522853 833520815 67859423 774878458 720017279 656622602 724620863 688711627 436907024 65963504 659793130 171502552 143890594 388237698 475845004 940619688 944291474 380129121 678850475 858748467 786190355 372059906 670989236 968572712 829190694 912670887 115579961 934145894 611378868 822827854 718011061 687453003 374524824 764407272 27014060 669594267 993610013 498932465 180915555 852137684 697108820 329260337 279412592 705755877 468488992 205063237 796007027 650897626 248075805 5960829 954734231 724159007 767566191 166770008 656031958 512800657 520144493 884773135 660629386 936160529 934932303 562419921 534307233 832964412 521957518 911323321 3099141 332383443 959851968 374445675 954784288 989573393 13973456 841588655 559509349 592167196 861209340 37267420 138116965 672132589 861075654 909870446 514563368 584324378 670989236 406532936 698001055 963675438 817317384 783216291 687361046 116749607 915897461 927600442 989618951 943617613 337389753 230482112 41838853 231221391 764446649 410957774 670989236 597275383 69281963 977077573 587182954 87190795 488383086 562992890 956732864 241024621 790154931 89118104 253899603 105126624 525128752 889876770 557195806 61830217 917936383 536810143 917768704 850225772 904432203 846952312 631124882 954594774 823428447 285842165 942209262 913497713 838926772 968625098 43059911 669314319 422616475 15638385 673650842 53007113 49883070 954678945 906632368 917719883 490312403 996156300 94899382 549718818 479423534 466738320 80739063 738169280 352354779 791593882 837351695 704508684 199206873 579772988 932225345 225300034 243638353 432552361 622089773 816734368 564988551 942095425 152273650 736991805 428770572 450794337 961648341 175539099 950207559 731866371 816805822 762571416 230129966 984762414 190056280 28831652 683185430 563715163 688565326 953138396 333382163 329896992 886253097 723257736 902559918 504936759 522718562 308028028 922124849 292121038 670989236 158458698 992055127 939719504 702547181 950184518 342468549 226612886 843123399 247239721 636399837 965127753 559270417 753813350 716227059 793656601 287281593 769542913 816828443 109808719 787670654 823517684 860436920 929730967 440182933 700323632 882564015 853225170 866909544 764270765 997862515 968799938 885716966 844544265 709705301 740359492 873395055 112901390 318622861 860950379 134213961 909428221 546109698 675800092 827708788 544665558 619230980 709822972 520027253 996451796 881071750 307255367 771649937 79378654 856825565 184451865 622918771 567064611 155271623 839393007 476524408 384904241 204292892 877462493 853529448 898022168 165110287 767919345 757311578 962632481 670989236 999396647 314473984 834569936 437756273 405891971 75336597 685861909 367464622 679241033 814233318 693937976 968468153 291612824 147722373 202770412 682000411 928028144 990123612 439901988 383192645 625703601 216807687 367623086 976485323 751919200 764882482 899961239 695370844 235165026 950678895 736144824 450136418 783739306 393704415 705666435 751992685 914307475 782398945 697452962 808462602 795658843 800628205 193017630 716181159 483381641 957181109 956119764 675137349 728938101 179958271 942006181 751065416 699873 862800472 336579322 971204362 461506483 234827275 939162717 830578963 740940931 214347140 928372840 7244473 947906278 410563815 210519850 839287639 508657908 389839105 769199534 872784293 23110293 26213125 315703857 812088083 953082849 983002255 979701991 916036391 263993370 962274341 799101421 292824696 501019974 882572395 673501545 392543354 818343664 689912145 884069476 915731995 407518091 934457092 819939763 892304395 997398423 991405830 587929866 740758137 365086108 567191636 811791696 904439194 171391243 432318541 872927121 488085627 166080609 590688982 945543104 37789904 694396663 200027872 759401383 848280605 368593859 902558624 985896129 75223946 697356025 776558170 984652627 38591979 638943353 798432608 252360015 898954724 733941981 989519968 468164604 117279384 752715201 199740775 153851941 536246059 672930714 995523886 760118048 622821522 163348106 691577836 884222977 566761349 467175058 645633758 231493486 704322284 695532473 876708286 837411118 739888159 880528802 726504411 614468218 965833066 911642449 73953171 771505650 50614090 673635063 799133032 293074000 263251431 854793837 733761653 516055495 485576524 43416570 695686145 357533072 816916047 193231453 751659321 964758445 517684343 934650857 346350782 838961822 798975713 738951316 132775991 386180016 793663678 50965309 803125501 387544421 926142123 62655421 642002857 427527108 914746565 387008846 421771058 606254192 141027312 631458348 855550072 661264996 109745407 407594377 640464488 624682638 215430866 677026607 155760286 300471481 370521224 898645612 156117162 297626563 65506180 719339046 934989772 431900799 114812719 938396514 303281607 471485567 82522924 815872209 880303340 690351947 861459955 660893976 130174532 776056216 919709327 980058676 681190617 648454094 265367975 931590696 700469925 154394499 978567420 13539349 720191368 169518064 45990252 201280144 465186172 873812816 679883892 511117852 472911490 847177578 786838617 977887262 584438412 735079418 684938654 352810349 656629233 592756954 675630687 365106832 860559285 993604837 951493181 803486578 75519434 940339267 352120016 735496757 691859739 93061623 67588979 712039085 887862496 704308099 858775936 619023679 710933869 838250124 521379497 840703763 191782812 743705920 750277086 670989236 946729817 549808668 954295356 747606428 433034209 10479493 673219732 836423320 962921519 806132034 707014742 498537425 924584339 496039321 148574905 427064117 278128656 198653932 637202371 155082515 782690948 716151666 544692567 769448841 84992424 867536038 69037323 467348797 436348211 497631266 868964355 881407786 841499836 829312857 622827493 775775464 690676589 834595921 811110665 729799180 215254591 497916561 709216498 71371000 197728133 987394428 832055070 330750932 51331732 69148014 697623193 413311900 963808353 452365189 262606936 266063246 679339102 745542089 672956975 580467002 281737967 866444576 322698356 971056224 951737902 545464822 389693145 781326446 710548844 893740656 100919875 938079483 212400099 959945089 306143381 806235798 888501525 489285317 271371578 330256305 12490841 17328420 265830318 666742399 865336582 315623082 924608708 175094815 876608268 678878406 822711523 602604762 34709244 93753291 874662974 736276356 758059958 197413035 417188765 299191643 976562763 273449212 763182555 117599613 249669304 826955419 215372904 895915659 547301569 816899445 55207503 682098760 541687474 450591451 546968199 321166719 194697273 676048469 927500934 697107032 839821394 102756180 483274414 50033921 914796739 10908596 766682072 281691225 858890238 420632615 16253868 874600044 659231867 436346692 47827625 612966401 698127629 217386992 767701938 519366372 883913128 637302247 477383364 710408182 96943479 39100398 896219383 692902800 780191910 242737195 664146136 670989236 748200361 786807234 591663025 65161952 162206684 692937995 308090371 623833629 728970507 881317830 759422186 382709569 881493890 926945854 962088359 845478150 478638847 833191011 606762945 976111076 278557741 951770299 53287296 43698582 794324636 3255161 898294387 432872561 755256271 884412363 307563644 133289095 358417111 59418518 860323211 291077977 345114328 681701222 792156282 192928171 102281774 121831130 936527603 726562166 171636069 780080998 989989111 686257174 615235717 421882714 707251458 735397875 695369250 722999387 938133128 104821908 351342954 686082438 877079264 696341147 171501550 936978926 83682748 189047641 149865984 442932285 688541859 909141255 16064928 615362255 744789673 563027869 579136995 556499554 844205326 148689479 799298288 731389484 661262973 547922095 854935060 674679292 392624837 649339732 703810729 764076216 915388815 313433267 107442059 881086726 181833816 410882589 683559548 886594537 123034012 615300200 535035847 356195064 370651880 278735463 798442834 914562022 115324148 445737538 922421033 93773107 659578124 625741509 526596216 77527548 855904838 307969451 352664976 962316805 523214335 974461978 723251620 264585936 214370934 340262942 633388769 946708593 370778798 951432798 859033488 988350867 789452281 622986454 104764130 28474585 471240736 997946764 329669215 645914750 613293894 62543099 871199288 195423054 850152728 913935473 776019892 897700580 331206446 789757733 77722072 92826291 725824859 800468521 500267276 747007908 987488878 109752809 912036076 516453964 393118889 625385388 889230944 247251617 775968154 418798067 538435296 422759429 863986970 776401998 133446228 910647752 169097310 849415841 453618182 822875325 211192844 730312644 238176534 91950349 201328529 261010251 699195441 806864301 542698369 881836677 607963571 330662892 806345997 126723091 321008289 760526379 869292856 994714795 94424171 41552326 837345742 776907018 750242819 705335145 838690928 593638604 278050516 630079929 931482329 10795279 48651639 770243167 482052523 883184393 863713365 860488777 168408946 750070802 638183980 916280243 821577920 777263114 871529024 501693129 876880010 623344899 542083019 305624450 167574103 907177231 618637142 933396327 956243257 774469459 813928373 781992580 585356392 671915690 229971975 306810265 710843142 68138115 941199221 553017713 701866407 183478718 33774902 85047975 829125411 394511497 590533071 955415697 352834846 876236595 493600235 913235049 788563706 174189928 145011491 505640194 544717623 108084702 986523432 885542642 608423858 843334511 391590594 436672888 499945536 953580849 802462267 953785894 686968059 832717803 382769929 763012552 792064106 405694434 961631484 713720093 786194834 687653949 919458407 883823440 900937603 284835674 814888315 825881426 582055144 196426855 817611100 891958070 543009060 322979836 568425266 668275105 797485596 128588262 904404947 892323949 63876999 753941954 539113472 734848956 124751835 19081215 939487363 702251017 908020726 16975672 233190544 925458465 838469658 253896495 954430934 927828758 51126665 581495089 55832856 448240130 816723053 777556919 195624016 105745021 990639819 854733031 583429951 679351350 851438555 951259775 578105917 995469372 29662469 483854879 943237473 681670893 812792430 596675125 884050714 358429999 27648262 944106997 89199420 646404210 776479521 676786513 857203802 801951384 316290720 964061856 656272125 795759364 18054032 801853766 717790980 552295565 217736968 565858280 630492457 727934725 715934588 829431836 589010867 818128540 428004724 363013822 88676820 216773258 391802119 3338074 905109805 815106585 855368305 119615630 659347389 876957759 946571555 598368232 351406535 870480840 753762217 289821848 811584730 472806116 238456706 317177290 74531128 997956251 955512649 218374292 317564051 670545436 574229740 474703360 664449651 54409403 533261583 984821581 37185361 256215908 23160522 161777122 906311472 676555005 697159123 872121652 121283021 150834607 92152375 927442114 932394959 770400995 874775564 585480057 806250832 748581287 216180471 670989236 36960137 687867331 534542960 466404362 475332704 730610962 798923218 877692121 698423067 672599277 159846036 754030853 43246291 782977248 482527976 361080301 404431203 670989236 592691688 767469936 590640569 335042283 490194843 455237438 457622100 678085050 396550139 392234273 963958038 927069176 845343643 683447784 905667161 915070930 314343820 831872276 922306019 63337080 736688890 929616187 375257493 521083825 986355217 568956621 680850567 762415749 190790524 851527951 276064204 780269738 918215296 630829249 721066435 307150226 434327112 145896912 269392794 563615585 887300365 274649655 981905951 381369931 868107763 888243755 800084312 200116994 725193480 753434095 685534702 914547685 385091968 921498819 679613697 91740280 166241019 936597481 910989173 377092666 964074430 118619366 321542608 937805550 812828103 252295485 963767546 637976848 741030400 549921856 52561886 84427665 634397350 313729917 906223278 245559963 582553212 438299346 946713777 227877806 818427991 451596537 573163370 409812999 301063792 961454445 676538894 787593982 845005496 972862081 429134991 878895935 598286356 883320391 685234824 549126685 568917179 234191130 943196224 467351115 495210328 979909402 912440030 130167183 483239273 838958390 710036844 822408432 935594028 796874280 250845271 139095218 805736947 801586789 309993828 811673006 883859206 995529885 680721385 834043989 677369551 827704397 151388600 700355624 816569420 217693346 44847712 924273739 633479611 172472482 746722875 790119759 46231023 955613177 47066106 858510848 907761528 812166818 475034570 357275175 686960594 847223954 718277707 712216668 792887785 759238112 794885156 988207328 504236339 46568733 35211134 273172552 261447783 862334511 765094003 706314779 411696690 684481079 475594043 441312058 962354931 538710852 260940125 991417113 305312348 819848657 859840648 453592198 534574320 966241705 687863160 298630450 331366958 374831833 491963252 200006105 631658622 688492459 962483988 197060305 752124339 406571097 978641036 972982099 864315606 927862071 470660314 966979243 879279488 890006902 159535615 244625229 444929307 74320749 904671334 26171925 735879510 670989236 766115881 818833971 320365385 101087292 160223822 621291060 743734657 755156730 10146676 862147483 735397666 691989224 667273621 845274991 925879675 709579825 899898351 747778951 991107785 769008342 117297785 712324588 621803107 574533248 65164279 855035131 520089699 386495305 443313625 955445297 701072012 706194018 781212483 69805158 780410799 571921011 692429568 996949003 879701301 954768943 502268071 960665833 732165550 802700172 18896661 979901779 751299793 795817054 463206549 1212381 93206659 95747920 773344234 485267037 124429036 470154020 295491257 884918053 626135147 16305942 453193543 13301943 107118431 708862024 389207224 619805729 307127179 954902475 714055347 500740523 778556328 595469144 39625245 894246021 894027181 991174547 949977191 48301942 240736134 607052934 786370411 409441530 815702244 138944802 531162276 705597030 892825446 265556397 924730170 963900396 29581381 678670199 19626975 978189227 852149627 931629898 86010112 157484499 307019921 706991086 735901590 385445075 235133576 618470397 677491859 826577653 777180669 397519906 670989236 891155884 855978452 405129604 521651616 568891965 750588712 55710053 527670283 703471053 447336312 776312666 13540253 81143894 922863470 378973567 729022328 759791902 819150129 177465235 306060964 602596759 146150564 596940190 727639699 503018991 73446069 518079954 144825605 983896192 899273808 403027616 799395761 268396858 544223908 57864413 51224122 378799804 556959334 145297686 840569224 678965684 343288169 515932891 506462401 141343045 290330894 348032200 17449335 818223328 524025885 669085156 105633998 372584141 964367942 894748097 336714654 718559614 206618444 748047965 548844775 118701428 540506917 699748735 803905507 819623782 230651721 702356204 872563271 806155604 899336870 783767629 791070866 886276583 321291680 38212863 406305579 913448815 301963859 936672200 437620237 708328730 968419494 288449783 93700078 471709092 198522084 359111648 354792246 873065081 637109205 95781365 956259107 607308186 827157396 250418449 715540650 479147573 276688053 860588396 984837465 901840705 989523473 375397815 88612380 327008363 361935120 719011817 677487859 675014580 235210916 795520770 984870753 708123109 786697391 315892509 786571345 363814332 412322684 853261644 889484631 801670336 817614569 942337554 437813732 278705897 664198570 516179258 745443983 442479776 819858050 354394842 965241347 842416551 70608953 145454580 100008111 524612319 866326664 753071538 950884941 711368739 816152814 672079882 679327026 446239759 981356034 386746358 875432936 777222541 307118178 172154611 949091348 671307903 491720945 79376644 670989236 246713670 674793385 192259282 240981751 201174494 373178744 522605694 850628692 86058528 684276213 101498149 751426612 390009080 263688796 968987134 792268518 735279820 944052209 758875949 841868409 745600688 247031743 242287143 956103150 678060105 827279352 524722974 842533837 140641910 496554559 784396481 422794520 678180836 892094534 920292555 192871162 548123067 356671521 368738136 830795290 53432267 971970757 910057566 857212511 513444311 904810781 19010531 192841226 213744628 820484159 442965962 119490565 979101900 138151531 536615119 533963602 236209959 881165902 206786287 597381160 278578249 79279226 702676935 778923685 966817980 169062045 910471536 319786323 670989236 558597160 689913394 30378754 791609903 670989236 225337832 987854348 403227888 720491281 582959830 986328172 504524593 492443442 317334031 548359924 683215952 159635271 742195970 918756698 118646578 823897959 746791292 670989236 897229561 744048635 512014153 900535620 431507551 670989236 133007584 924239434 683670755 469113151 212291878 690138863 767709129 733200378 180111988 462336455 417272859 666123993 874624300 569201419 785272231 687279002 691301267 481910723 597016306 750104453 774168457 78830290 84306901 791953490 245368405 979211291 842969766 485498339 931150536 593788062 991814938 629810969 389018727 845164668 625224502 112068993 968559073 858486181 363429667 670989236 850993309 600351833 878096429 792505538 710506240 998526074 852530958 769784092 537245185 857591773 729687904 563530492 839843202 885738227 367657713 135641736 670989236 55358399 670989236 584535355 830558834 820151016 187985973 284616003 283274231 513818971 108301900 922384591 766937775 899959602 510141046 745725610 955128085 69973724 650146338 933920571 767965079 996200759 699082505 385127767 824538145 931876021 729612243 637547459 642600765 319803362 189721944 65720792 554854155 382047428 900376192 354615805 633266488 449606535 646327338 746610461 833153482 392601736 852105680 220321897 273522864 3181150 468761147 571415871 915868757 847738932 915447541 27311871 701282733 460669797 122565942 939881005 516294558 696508254 934031074 709305188 759135179 857215120 743993327 820725068 40591759 896831228 11103846 737606431 306091182 344757350 893970171 386495252 700077465 670989236 459929116 731452449 30842470 835373014 244470733 704854949 141486733 312639629 759687073 976914673 191548182 494098965 940259118 247955870 569047299 871613321 506103529 319695009 903229796 704351332 79234559 891715022 335979800 573964397 783634160 616806416 904963850 855141061 478312425 604929353 669340730 278919482 946371245 711735356 741562383 330796618 680564337 561250619 696626619 207579790 784485916 325307656 720977113 673940748 490005458 743044821 726867758 860025560 827156146 542769181 225941646 54970589 688589745 650764793 234684377 526717714 277555223 453107724 265722992 764739371 470374350 938110076 745380469 961912815 656707488 134317310 56424357 490787185 267400602 240472456 571291577 807984176 767037660 767871202 172800698 801671063 229484229 489732073 949045443 674226866 200248935 863220593 702724501 211008656 166236673 462033193 904065613 882872139 717690906 813732395 714009476 682088193 325313934 697846747 670989236 67085171 65537922 960674630 85665070 772661889 950348944 8283113 154674910 919125708 493687008 958221480 952409151 133796443 983907589 451999365 318280281 655848512 970354208 497748950 938552709 94038008 603983079 751530451 693823883 884333135 134737800 259638843 181572943 639063321 663533894 132783001 721362059 643042689 197144268 931314615 940384053 686645572 88161586 824149584 654539052 147143205 833133849 55171724 998641578 873778115 942266571 740571774 930334776 520646676 946974800 775439906 557186811 397847973 350139604 885734701 68633255 995103446 909357765 68422414 691934297 70888654 228228765 792670832 531045787 961214401 992946478 701719144 697132083 927320684 625370486 876185297 305778866 65325337 381388134 954904807 174108700 527157241 910522502 709198405 920353626 32412679 267316976 474956887 994179597 982807240 327324727 791709000 624571519 707861634 331978067 299742529 112893816 914962512 390346369 26108651 724304649 896786062 604018736 733650536 494907304 871266635 721358441 125414606 141034676 268262193 686605683 885635322 611289617 573103192 611533663 873959668 590925638 265679388 490564572 952039739 43947188 942915896 989275134 888431630 472526540 225583670 697573637 221164948 597527660 63311949 626063163 8408838 2815079 185934194 237862389 134731924 817347182 948085207 295729938 983705572 763352964 579175085 711898824 131137271 800872856 17316243 162725029 114909186 696633992 738862885 753742073 255436919 791736637 198734638 840135718 710176524 278724529 281393048 555519864 231283451 206384618 816552661 223902965 128571554 212395490 786522712 765459809 723362241 212928479 763522840 26709232 895945199 217221646 607839696 901867102 687142704 135217768 366197823 143276680 804497028 640519133 763552553 711880072 629097312 42455275 335973378 746198229 480917264 44369075 147229892 791533975 490499633 683325928 948668232 688476358 885392977 655816644 232856931 803669705 697084560 875849001 951678053 773295465 778818166 927518080 849417105 400188416 716275696 464786702 60840253 45486122 169196127 827025711 462604668 875429013 883024231 542209792 921093448 818014206 278677789 982428213 886943214 79070251 611662298 814210979 928956033 435356830 171032039 887327776 840312716 836412869 759583615 743980454 707490716 631417381 541884502 390803785 335267409 997186775 801552158 784175217 268367809 955678118 480281052 713907976 704159523 785558044 293135454 971735604 109148125 65304498 307561995 597493310 743338142 556129576 827404106 923941142 708806077 120210100 300008161 413293640 791099653 830543944 549930094 395951185 80107201 76740992 469417778 541105962 255867708 932429700 515468162 767945225 126087530 67005161 813083907 665990842 624921860 977952921 505786496 339952510 559154069 806951831 819428565 668893718 359245335 326057267 439661153 772302541 930993904 799468364 857774640 808305186 969857560 532087421 806106924 878328781 83138200 700861570 633066816 531485784 298792057 407204886 629548751 596614977 75516123 498878155 933246212 889836223 197483118 689517798 565262914 93315917 745195604 372870614 84441155 892100267 751972020 837843256 203466903 755953510 266603776 938985423 812813423 155051500 664636958 118433798 358220168 74433109 848784731 703587799 825734135 431068932 608024143 387305258 999154507 567899089 972159746 670989236 694225089 770175392 346164392 919904628 143754537 819189483 722859738 454859249 506450146 686956941 58978486 812535687 775846934 778374141 730430654 439668844 993332050 9736750 962953233 766204954 898885308 73034377 15031252 801299194 11369920 117507608 943894646 340137988 746400769 683953923 750036494 836476796 227844275 656220750 365645204 714153333 943914475 129503451 359927979 101650361 657980167 472853867 712777581 909128586 19462195 829010279 969583120 449785055 475241489 769582085 716633999 18512571 568687935 892294449 177594092 876083965 737874366 743130014 688884382 922725411 440426173 700673561 973702561 334736056 16992699 670989236 833359252 540270509 47572647 602118824 276097626 941458616 505195665 491170683 850420742 837048997 176167426 68396608 622749327 574623907 882655999 187277163 601515254 936560490 904643918 993232574 425165324 967729977 668648186 787957924 855407341 860889631 368407216 391697968 886592621 112367790 749262490 876111161 178039326 407383856 872284991 948716657 624926626 682464845 816866789 970746125 607982216 897801846 41645510 641306496 815027223 826677263 116623856 692157876 505844410 860082320 96773393 955813736 922578080 667981946 270875466 415337467 362201248 706660595 272196112 231896254 782774872 670989236 40591015 230861590 797473532 822399275 539943596 930220318 509014641 949436301 680944929 871555072 974737945 455979821 531444656 211452824 935225096 926848162 834527705 810474196 861855342 348843097 810979544 718521295 568880452 695429654 716038018 404125834 951538894 264781955 77519356 625148297 529278536 261238547 217902966 898741502 59328141 885722803 571984138 326369742 305285752 462101189 544397764 336918325 918698040 760292287 774727020 33881447 780242369 929602998 782569164 975072571 47645700 552258583 670989236 430177916 491448115 755411314 317617486 853713945 971382555 953672793 456745636 448025469 946105072 12612489 693118339 870261048 926520337 928915725 855941905 758038363 146766951 744987543 365197322 232857852 637197988 833117815 280975401 709992776 864029741 475831680 476968195 582810 726939327 434484616 558044113 958965941 962271188 651522120 54702742 582187932 798694580 798452251 767041819 509951847 902769921 734792692 368370947 248370147 339808932 533482109 698813284 334047873 84644544 287140914 812948757 853425361 816487869 212615186 807518099 986839470 892294313 720434871 731800121 670989236 995859555 269800233 943355469 874069111 423331487 672460026 814667069 897219023 929297103 760207556 597252352 786778806 81807192 836282202 870540648 254254004 122263363 841525047 973795415 138418051 951107660 809258839 840876256 964333355 640204441 670989236 473839595 705743252 553298729 773582859 695446844 808604780 734928298 141762571 948381628 630588820 64635815 744263331 971752518 487346111 544417732 406848995 377127676 62737239 248785792 345489884 623473282 923758249 471038874 787203718 992227514 770787087 898670162 947129833 463223462 146014578 300419830 134077190 830443683 236917277 753953529 933152687 3586121 755472258 71591144 947032908 630193293 379014005 716447946 871944733 472174529 719327898 907156036 566587524 98221702 659077289 848805627 175913468 826720671 852714216 128534288 868565378 269914537 317039403 959662784 721352741 808061775 789976782 886576085 107067775 515182087 638814638 300909215 271069791 375946311 802164796 55677924 506581425 685403285 12135044 700605890 214110616 208612288 977838549 49211396 16077380 415788866 405593231 983311745 494333315 911566483 414130254 726311699 416382151 978525486 323042080 769319975 785092077 1336343 242049072 937456947 926258831 708968777 855518023 811491930 954418589 173520154 537021648 419344597 499580288 687301366 991935680 895783687 704013286 923973929 472650903 931335568 758436992 832305526 422371336 968186216 966967271 323138129 751563342 918585719 15697514 775012579 775442315 414962791 980891312 451091729 748085444 613288000 202555044 48016329 978799458 630659331 249537560 681137422 114345316 116128671 779240876 829659319 335623194 760301308 994305447 403861030 407990495 995788023 709745950 310309560 696034571 393977440 157111800 126044455 960067182 237454176 992393045 787671921 818565433 764856661 882941446 879704997 832571127 90472977 317460695 572115052 989124504 221314039 892038307 983608137 249704477 963029058 890666553 566934645 84165830 71671981 491921217 994085164 582504042 766107138 771227285 614255204 889410174 850154537 596837582 302878692 818788306 847698567 474647802 427531845 954181715 532687138 222563361 862741747 19586938 706809931 842522021 439777048 369452586 680652725 670989236 400858849 768982521 670989236 983114206 891913148 224568008 135446875 500910567 864141135 184272535 949695772 375058556 711233319 935879822 344637780 832209709 863047621 198661844 919518814 907746195 244998319 256048157 826597030 517780600 666310341 799869600 908227965 679828119 542264453 762271916 292900649 648993337 923426792 575851860 835302876 672966879 534647376 912907924 763579046 197505987 963158395 252254274 512229576 746531436 549968480 855401898 284465826 932364510 730201022 523459842 815769225 231066403 952810807 917876808 974091939 848868145 117102513 673741644 401986285 740609802 643034930 536525542 734973148 684154487 787981878 959026734 784061854 984221420 541159205 936633356 969333150 408864259 558036287 69452882 898696423 185419972 718482306 151704851 206423971 935936589 983279884 557238584 679133190 900220750 403053763 282703074 746621991 191429471 192954364 112617957 770452761 747831910 813368982 457315466 943675769 544034323 802794418 95004004 768385290 253247277 52563035 670951956 415554750 590866908 917149041 353546012 585960879 670989236 269478873 108754448 201012634 133435579 947523928 41456248 358463885 952619152 375609541 296671576 995680525 675248320 761454347 945019607 748789523 189705468 715437190 223223394 646723405 549041356 689851131 541922358 49911024 551833474 235944217 512968531 766997839 256154907 335569248 904799770 796696308 518452832 705670881 597398998 714799082 862961986 715968201 940737744 623631720 191967384 550412036 860082058 783727918 898076069 954190645 767082336 919283802 267790455 622417241 765486918 34520513 976263231 316281655 683183058 733451981 61808172 470754740 903392526 621987627 699827557 916344079 823828111 750540827 762739447 994176856 467454236 691630538 828775248 933447476 94700787 561509495 872725670 721928655 287142086 623720033 778177029 913957568 730766230 782808702 82506712 595203704 681947330 381691338 693315652 320639321 288638349 760698770 247077203 525520346 847129289 480853350 320480208 527569966 750235744 764174314 802235136 135074134 513276970 450089275 791258414 647558197 905660812 759886990 852484683 79014134 797990412 983147275 726331642 205839143 674586236 276827416 711652136 26248827 232812355 515501418 777425653 994425409 889557028 670989236 338723547 485980829 63553731 259846862 741154273 52300420 988754518 685569225 354022071 953981580 946732816 371451550 126929504 972169988 195754949 812790414 80475593 544985333 397398537 921157611 742985356 870224407 248691676 715305853 575798430 671044895 892302290 121511851 57671044 546003302 765035859 764721529 660912742 775006734 344485384 614308112 453218706 529700077 204149768 670989236 615869070 62359325 197324814 827845439 980967501 139052362 308875410 713129495 491357581 934177297 599472943 806033119 941035022 983982723 827876910 528696155 793734218 388045255 718799692 91619178 54597810 380888423 910539895 969198531 871457974 66238568 719289970 237877050 852271859 149261837 887048302 678943419 584902458 877925806 715977064 528901855 327162335 170059646 950896252 884517150 988794613 953234720 850314257 761381093 499800602 873645512 339554638 849439315 193879070 733336944 948016062 687224701 987147590 791539513 761579011 95517133 676229703 958392966 649149350 717173770 690141162 965486570 755906376 876152165 497974241 933200816 166275835 569618814 149960696 681378135 506577152 378415500 190465855 588992920 922081911 496067515 954914550 6865785 696263499 765420862 962945651 473454516 79531024 560337056 678917274 813103802 625320620 381967113 430952558 428730039 785315934 164224829 142550932 77612285 308920626 4068056 94706963 749463635 938472490 725417636 929926181 81936059 633994354 799168338 482132868 352249607 709877411 860352100 817125066 733587758 191163599 771323074 2438274 908604920 367681231 621754301 520614942 982926389 211962680 65686841 507585955 545763978 959453936 230358787 415131742 430740672 789797935 409629651 69572784 192888772 460522888 733305873 986533981 196026276 499467243 439088833 747467259 836304970 661536544 837125183 868131064 749308901 232625940 651975126 801487778 907555984 672501846 7505188 100040438 901443897 450246167 560499629 931622262 118433216 945001910 881197459 156869804 881126662 797304496 436223675 258647973 525631173 931453027 356186221 787925435 690780882 627391644 567401403 646921643 567912834 881938366 685061200 877475236 689389359 807889093 95563758 886218675 795546527 757467271 445040481 790351887 874917236 8685283 906987217 935219801 622797560 686232311 569928983 913745660 698735535 388770288 781085710 130645610 853904328 963696269 479416999 893153563 794298499 843516300 777633954 677493150 693180754 816055593 268052338 634066373 27238078 670604951 494255227 533759446 794369434 584516581 876911784 880741526 848725747 111204677 805437617 382888547 988793691 663098334 930824786 800547497 110652335 711028415 256795216 802604380 828707728 224976655 958438884 575666950 949187236 785618196 863966519 858121761 346520179 726961251 918928788 388515287 968300992 935312639 766821035 199053879 911671802 536987578 928071914 483464300 739368329 920326282 54521824 487411587 882521580 895144826 907216495 956275812 670989236 916557106 280803079 843812496 626216221 158169437 262658659 570879926 602551725 3017575 554019271 822718535 904831970 898000664 249978469 827478542 826472821 634467861 435072817 300173190 682681927 890861086 845427478 510126517 728211911 829418936 762390720 325421027 984659273 278137488 969365008 476549194 908889195 196859674 63319893 749299020 727464791 997611205 338529584 244855012 501132424 895188289 294599938 760721055 836253658 932114052 436859527 739422883 806143354 243618235 525927297 245452144 858200149 960477932 550998837 965260802 958418132 855070730 322795737 780869567 754330686 427455046 849587057 536909436 68339925 654897340 204522822 890213229 337907948 543573043 548632432 595984172 703623709 227186040 53111417 57795032 510771808 868577213 464341380 979759993 561203538 345856590 153473215 912887206 166249663 986093927 489298775 47244918 419280986 401340966 702679714 689445596 578898880 388284192 988636367 295678863 87780301 775536547 703846565 770926487 33602816 692574703 995532148 675551077 77234981 339832299 950735423 128257984 200846300 253612292 864311610 748290474 276583722 944475949 89651981 902319592 737848339 498657530 928521107 876767408 45764878 67198072 494257925 280191114 570988692 904104640 789199499 755460127 857676601 314205728 900023987 353193186 494295308 979843202 950557715 450019302 974692840 999254450 560671372 674272943 389826761 811416391 950757848 935338483 550548743 391353696 624961296 285624343 8567628 783072132 429539941 213602562 708580670 364703000 502722144 40306090 51070511 761794721 39057654 823563471 367909683 352806964 518477482 662587625 473516114 491791380 766675771 34074762 652517758 927492394 861166737 591210351 876730590 570018049 585270847 453739472 251809113 160712759 400388564 985974903 383224828 670989236 28214459 19026915 623340728 836143038 112561240 131532542 391413895 501619409 978068945 126114669 651059179 955647210 972391405 981047599 679239922 716791127 968898592 423118073 854432824 525329791 67505302 916824602 211645369 930254039 570008722 84258679 101300422 880629309 857582555 30576659 960530386 803329656 171697402 648651282 453129158 909899828 223325099 313075488 704777371 263711018 750075614 22496775 178718823 725155050 158442543 932308201 128455424 312713168 269247489 913419505 758454386 695419688 485002594 419953071 902258866 630964298 719092028 910165068 920514949 758023189 382002335 935503534 71944067 670989236 75946660 125316414 785696620 901440582 322887667 458312281 579855181 670989236 793745301 795727515 455591466 727899398 477540323 756446213 120502818 525788408 996591996 95805637 446306860 956514699 200690572 660565060 883456564 538199399 915484094 949799415 814140590 672266307 793430653 786034118 944905528 842470269 718637574 685141697 456499165 684114405 353286841 721083845 970842815 315182775 957448742 835978680 85092278 371881165 826945010 449400003 622762897 222178065 385107304 119014345 970819731 213895290 687549046 767173184 237635729 781454451 669710036 721072777 440893140 791898749 81727605 805281842 911903866 231181030 666673628 209000651 779911521 979281209 938433495 933157754 661771208 27987497 275042616 980329342 337241745 834599755 974697679 989553273 764020900 747427613 400776875 781371683 9094805 480686666 44339397 285290487 216824372 821815217 834206260 671618314 798209294 964901327 398546544 935603170 699495103 827954274 840896819 201761704 215198554 473123629 477683447 947683481 853784755 766475614 791245004 808075707 218428965 487197530 412517939 994171722 337661608 752874192 56253002 811963879 887661522 727246431 992586407 640373710 838451859 670989236 951358283 828483394 585944115 18240003 657093581 760997141 471521705 987873257 709528359 332605282 774622419 527482727 175167836 816816042 625809282 433098758 965779928 780642476 430597351 142579229 933195635 865882095 281348966 627528002 701885235 213473229 397117487 564194903 742394650 397737604 725625728 955185334 654191383 670989236 957402354 163391446 631096719 989376599 619900548 949071154 877284897 835870678 544493544 191507109 674899056 926960527 640192461 366528619 759606642 463632854 400618693 977583102 957064842 960985469 812401344 723228491 99854672 958255880 659556321 480383205 847974487 702653593 147671337 259988283 640177681 419679825 586908883 844587166 670989236 762567292 992127891 670989236 866338781 691330429 772783856 977274504 852161480 793117832 255732957 979731144 696845839 269468660 399077107 92412997 818232857 799664637 961473732 56340412 805686931 51624644 708869264 837075976 908267684 77637774 481341112 888103332 763831884 482865047 762539455 979000839 689798508 666657622 700212486 847533132 974713113 792015096 563487458 759527551 856983252 561539797 536511318 511354564 699375647 853483451 826421682 956046866 701551779 849946274 727391493 401752920 332698644 283746929 118237914 694716002 883820051 709240735 698854545 779812034 696386063 148521281 677097838 328434773 376633605 567986399 835596366 864285230 890990127 197020876 200517762 783648156 196813978 145509776 46763292 713178632 679141984 329640254 396867743 679828380 813422780 739299453 705522182 47167309 903412911 294032652 893675764 157371685 491206451 669028942 157856535 549708731 962934646 222528120 355950328 934447954 542723822 207958874 171227597 775332113 855361997 691977562 45653541 321810083 438828342 177132427 909340438 67828773 837162912 820988536 146586676 429332863 670989236 597896212 39104924 534867872 998034566 670989236 12836818 881484159 310422884 938929013 132196853 722068184 136116446 981140871 972902246 316535381 888648760 32201791 309957599 895036591 773654196 199850732 452559902 670989236 818946192 692551774 731111146 608306527 697632575 594915836 35626420 830319955 99922662 988431437 295936153 798132654 116371318 836218551 882778799 733197200 809686779 4641613 801168701 964161091 53380822 685301227 679996985 138095233 162929536 152087914 842571112 727792209 292043223 935412609 423572929 163965503 367663462 577230130 107496999 77266191 142251440 311185677 214278997 157170104 670882390 765201232 417037621 2169228 706039227 962985807 145747829 155193288 258595496 821344672 431534006 990938616 146394703 154441005 639115849 738796710 843575862 698201299 743645010 893688900 958363495 898223831 991694556 679325944 769560340 479073836 493914525 984786459 788392841 685116500 70322720 672379718 712585031 328086986 413901101 893987914 670989236 342989413 351321366 536364063 710227149 624570135 806780063 285758061 760029930 774474553 222229132 953258124 745244979 711358529 273314465 660375406 251425256 261038750 450303661 373105764 784652311 862425737 784320679 628558338 241067591 980457400 480895586 83432791 596774270 215395188 952681941 898691362 371233507 186210442 738394527 78474580 872914946 413996221 845751786 775215438 475253673 673501363 666139349 753477522 523721722 815643305 142326378 599778893 738075762 3424104 782329990 12021354 697511810 801787366 361325385 795765010 871394077 494152745 499959421 924823527 321730944 352811870 715300224 76518483 27520015 777914187 997231920 147449361 436292884 19660275 937368416 359848479 141429201 971899148 336649682 911780482 264391971 693686542 59837815 948595494 673575649 887850588 317854555 198745806 211293897 167190866 813222640 809377815 991402702 262229705 493877699 726778421 810156756 97584898 816379631 534535124 560165567 470399625 507680715 768456682 299305210 726294440 339562543 205828088 100907944 166926250 627654358 740953441 241215632 581175964 739409295 791047395 59056174 375822438 407735648 796036003 50166452 331561878 987849648 858148834 936506041 146492542 718963807 930987173 912238067 677443916 469129776 870872222 658538592 376469666 160728628 698880216 533598375 614703275 987139058 269909893 124064515 750465657 262390857 165237088 844191574 39087737 872649504 756268949 653839688 861345454 860758739 875543427 452084116 87443365 308684373 862414110 861673966 746352181 325388900 957530692 160570883 110520141 281508866 718264800 980710604 545934330 697538746 240722495 682919106 845039965 493849014 685765480 499889461 228848054 390090003 859229274 876431585 812395327 286013991 242699523 808001615 930661947 525969102 711525025 904762030 737088445 42682066 967459099 563377201 892930571 800565111 761361838 496624845 592188863 581018533 961717429 465766733 602398595 77031634 92681720 73953430 692781673 298709586 220914335 369342510 99712874 377763688 17328623 992818395 131082018 21270275 999674192 694440314 591940752 687099340 834746681 784600161 736242084 875435603 521079351 797076120 278125157 706276244 361187203 917574655 810604003 728232681 806670337 831785014 36495251 138009770 886078057 921982437 507955911 552494703 63659026 571450638 132718037 677804129 701461554 500452820 3856205 934157326 49125113 60849652 465520272 115683885 919525052 331666653 753737749 264334506 678220088 57832184 909023222 98043525 267438213 104584138 601057029 917691483 548948781 707366818 716863079 524289288 131396768 66373933 146328104 97004645 670989236 748803491 886857840 394541574 818938621 810368768 735045739 240974470 108538376 55356907 804859270 460680851 20314002 647807929 860352788 316220454 177483199 170179204 670989236 161547494 360173653 903507135 790238943 655689317 789209901 657689265 763840671 105774632 895200405 264835195 88733248 691370224 866631989 786416869 235127845 525753416 714782183 855360894 993795353 118216874 872929154 714488248 814546492 65321580 213623675 893575180 677252587 993878103 733466955 783901074 724679806 998103464 890960123 416647666 705828392 316704517 481487022 972574972 247803335 774095543 684986923 594845044 938533373 907787416 571263853 523187242 23653827 817138478 576163219 796580191 878838850 676879693 116838086 134590594 668336195 871611654 958513502 70578780 186197407 140732100 998969295 81868766 428307302 968483538 437559202 943280474 438451562 639871642 213848482 55291637 30301324 375276426 649757986 63327911 903829727 670989236 635962517 685564996 986139014 512542497 600941064 130129350 728737785 281902551 754366274 325402266 731476403 281706201 309838524 804689998 341744333 694962953 687079904 979410789 559010710 674014661 976422463 462016165 470058733 827411698 670989236 820622983 733028101 762297141 868799141 788949899 975849152 836957032 35703837 677838900 647943798 891448433 883463380 947950997 670989236 973581754 975743157 968379939 789081033 702588582 815763808 739555096 799812708 806237603 576455331 988289037 59695073 23373131 243837187 80969810 279082634 970057127 691071055 508743515 827883236 909046975 670989236 899182156 807405973 376876407 657123624 681113312 685926571 386838638 774929634 556294893 238761007 122019459 997473684 924716820 791973243 647895042 587665304 762251825 767317260 86696664 729140745 61265717 742253757 115129741 255241318 941676441 18975629 996385069 465388037 710313812 942484078 929969994 951482671 773873723 718990447 223118798 848534483 765631435 149270569 387672626 876611240 693890266 453733951 840137418 831382039 607579776 355400906 322590302 746153486 249714127 378155137 303231939 63757112 9595563 964378273 969502764 938270904 724457550 83644971 847260050 937210667 516714318 870138677 399813093 214779419 977595651 341993674 348413872 935400291 392312329 521863260 121728176 670989236 765537393 670989236 638133524 580277423 785669913 203574408 446646483 925694679 556417143 448229704 188334942 755202001 823816260 689193821 241565679 127865590 233375273 664665909 809025320 18511895 431817151 873902311 46238245 365669556 69365605 182692966 85715314 719540825 196159969 608869500 387977869 414017297 744224596 634518366 730220234 77906122 907128412 178755413 182673502 654118242 157415799 941650292 316717969 694615452 112505863 655955581 778659541 614336061 544933661 937601523 477872312 979387683 733300976 799078566 463119924 93233790 801563175 834744136 909125196 842644149 150801487 877150789 957367367 18023367 153004684 491876019 818971108 737231233 112078961 807955944 548461804 747316360 421226605 198530820 392744554 895650997 186872530 755492363 913925858 675854358 864360688 317348396 890434359 658823325 701664777 941127545 638429420 365862021 224728624 210071142 707256008 32145931 726689562 923291640 303800863 547129231 814392233 840184333 889131109 670989236 735861334 538662731 258893007 948221989 597988212 84782655 623997904 681127861 903676298 763007949 262150030 941449894 919898775 908078811 571240269 678445974 944380435 927985763 125506164 160356217 526393487 406864047 738128924 482396950 445990285 208329834 438179205 756615883 449215989 634583900 953476389 307208584 739562350 745742632 871525472 776766265 785545539 150517886 742171937 37547466 954131579 842396767 680300469 635566076 724280904 460219793 198032956 244183350 927823553 670989236 676951800 290075382 969770915 436314669 238811857 494127907 976524799 514688031 767903837 988969451 504572260 740563178 676111003 14949946 775152481 761341371 392782517 973560108 550909678 973875701 596482576 770960141 945342927 670989236 449114394 312261428 555954806 650071105 265548373 334916219 121385027 682143962 955702363 866643239 449064912 708417411 733328619 951829809 521715469 800217609 96158453 749925322 170675140 292007789 284212931 786665406 223813004 779177184 892370881 467790321 694899519 676324902 531491043 426938169 811577180 622628192 49261045 884329236 918836593 859799381 557181932 937911001 995967704 120051202 890673345 731095794 286637096 256405744 105294002 292448695 655345484 977094131 629069603 799229077 690712072 36814998 850352668 772953996 227268542 972400727 711810258 516443494 181111846 10839440 670989236 594569930 329538139 983540561 724547330 417306510 505557412 56248700 349841456 354679965 812881466 626745926 586556873 770920297 826367444 158782352 682599394 803188482 699041554 441808952 993688577 907059122 560788902 246240341 463786782 207459715 536208056 754290546 396808625 815742253 437767859 771103119 722784467 926569580 880448135 255096874 906557557 824283746 709723392 84502285 779591572 808364633 664112622 438608051 935258135 739764087 910020237 626375851 650916105 319593813 735362610 135591493 355195918 890030555 889187320 492839999 628291900 362793746 922709231 285966547 852868247 584913357 740333207 850497850 727011356 693685785 476116399 887314426 720220738 209860690 997835713 663041579 840058366 912347968 738314455 659596469 999686706 890761294 348561834 161166973 307165553 121783627 117379952 35622260 992027897 368461679 734370140 424219058 721048790 79028344 846020267 375801166 744008717 483892910 238173007 675308021 973703068 14225884 621859176 999154462 716953774 618512714 890886671 733422985 363603919 489589380 850714074 907900800 967080636 138397148 260520519 898082565 685334120 244945439 602872817 891786877 155671053 950547887 894052116 930655998 430190127 544051621 963026649 766185681 761332694 685934104 815598139 670708895 612933339 138460849 993533545 117271360 722339656 857798626 241796474 836692403 319344383 696653105 835393307 366740882 871983621 616600125 340716885 838013350 939304078 718208721 553678624 782763316 5348534 491204164 335115299 597208735 971470785 1019450 913999369 195023470 351130729 774028227 910760551 903632175 55487179 601998530 720602068 516187735 513881620 441127512 425441115 833114407 679930615 11484822 573014102 747322031 176844242 269140883 975683565 583917516 267945322 294090183 717260559 786782632 815174557 950888984 722001496 594474847 439573277 188080450 688524218 394125657 125556331 240878875 704313585 710313971 155016981 363538498 649649036 94124336 634257819 576813521 771513111 84799028 956869909 415198357 218275585 981698810 807630107 828327320 859068074 732850150 58183646 621291985 867704753 615780846 425524606 924391303 732835096 261412472 395058647 674194509 676699195 862598218 312596331 748801306 713298528 953899209 200862418 281202513 965938664 336435988 701059600 764491325 818067270 663135364 971203214 964833271 64321352 634048106 173747748 957075216 88786980 335869060 581622781 133496141 576506309 924251050 753251380 456201635 786594248 14364608 991239917 980921004 383370583 556902271 95486056 852070878 727019828 437055905 808328128 923518689 431070080 615847137 936928132 515543787 521701182 705832997 904614077 676020573 562128130 102523951 651770446 889618362 684452854 569602869 901726979 865056744 465926510 701093108 344451892 743264634 773723302 652538514 866898454 887664830 740566022 11558608 772238325 12716301 876322316 906271732 621716472 705574816 322820058 50152595 133620954 658493457 581187160 551552740 13532716 605716691 308570557 853698300 423084785 742821703 325937126 844799474 670989236 775792834 466241597 590846747 945924435 895698791 88608605 293219077 677046005 561875558 668042749 537752454 525812314 633990670 845952091 417977070 277447789 181183410 562672529 717142055 577438497 980885486 778665585 852975253 48746900 521173420 896545723 35550259 410009992 237024134 3948286 891823950 687372444 865554461 699518444 162125978 33936295 809801589 421518748 127678157 756346466 13385117 978232216 946384039 891414963 473561343 678186108 50024031 377021593 685403027 808058976 357789036 973783701 792177532 678922639 125794054 765664413 167710548 807881783 312976687 33565316 230835791 940062386 18317479 194177562 885920954 220020745 970792283 912203775 452906389 536342256 139366137 684214978 880554231 721765683 86468610 999696460 551360175 315692473 733955464 973334365 329729185 884786768 835883372 532893010 209679483 738198086 790219664 739201893 818832447 244287346 299979399 866367999 41108255 301727310 119189031 356011845 907462281 670989236 335754143 251529146 259187972 404810574 998333885 841613156 27132931 761945663 133255018 67298247 745820211 354685235 966379450 3362244 945840428 322229801 461040315 406113164 412802711 914387829 791568930 937889891 40499621 853451840 481032254 483921734 72471468 132437361 270745719 561843040 813166526 851820204 943914732 47783886 789461361 239966416 478787594 446783529 268311710 782615032 124274197 644747804 904468719 940040986 329393586 585992449 745864392 554166162 799414627 694460376 989812296 718400377 265875798 881167695 915747463 892383539 928257367 82238530 308101559 744786482 657664708 779956969 982438411 113654220 507276200 804364424 209147798 193854341 805398985 317789582 962304266 58231453 983539238 878572121 853890865 681968235 869617438 397118728 227936185 655630113 672342451 80700305 267139699 843983882 524337992 750126508 224192923 236508609 428513393 921303573 19748369 201379146 122950970 925178989 36059968 132293109 806791272 791315674 264111306 540798614 673087139 898820231 455905528 997321034 743236627 215400362 22033269 301140115 97459336 15528252 106421249 383367756 776104629 436874480 958361553 403973110 14726553 502760433 856332034 994624268 869713638 922243669 702395794 826287935 491057763 245267934 844036292 650071320 946837741 525407864 398003716 411968053 40385186 989217601 521477882 679656211 214524941 609215654 772396344 352761420 497947539 802388468 969541824 596778023 91262830 756918006 563071021 763997525 634975937 233879044 526015072 858479556 906051037 593818273 801196209 416532979 615537642 825130900 953869930 800644498 743675107 745559647 354155328 801383031 849181321 598892140 656859546 801678457 887957152 347773860 399652513 670989236 293813904 817746459 21096791 320373491 441783208 711124507 550678265 707667200 704992554 537137160 258990675 670989236 601121419 253561819 786984863 833428892 942204797 427759273 983769454 380683816 913078515 767065767 964644013 723065192 948206243 814978479 900884255 394446752 683491720 984667145 331016944 987623187 118970263 797669218 670989236 868633964 488968373 69027522 901476200 311960905 443652921 697151649 926147253 523825251 802820232 707163617 792990030 602020725 59821084 682779889 744438823 489703260 103214046 952972405 293783962 547628270 366102347 860255408 706375727 955344377 852347762 31002709 795583056 876543121 901870795 50659748 315970319 88407572 938260237 969565884 820764724 496750205 371406075 685940254 567795306 152950185 356795110 442840742 798859578 917949899 982433177 561849227 251911282 381505216 495108484 201621637 359425669 444263002 705837721 155817142 696443341 781500251 747213585 254636919 642806259 851803736 407498199 328355086 407454632 794928958 342583610 834220216 944324389 957816037 706645003 584079428 307526365 871689634 488877738 572124009 664259247 956526141 213178415 723727693 436391824 853493696 867192849 313342964 855498576 612446045 979814456 875350138 214300897 405130750 730399815 953916132 727053100 787895913 909279144 805090041 725278003 380832661 408797468 385295779 21362352 210204740 449045187 813281648 182720121 175483075 678076829 811761257 541833807 800586744 875696635 161414027 705001517 441210324 336661624 904985045 326065048 957212425 706983402 458212989 63328169 350931974 799604358 642116031 724227023 944378805 780080045 697194674 671125370 636235997 394546804 689545715 866006254 836352660 750357316 484055191 391820517 819471093 396100185 95425169 625017005 307268557 117443912 464239691 852870619 78818051 211898907 726834225 896737527 851338165 309883069 939139229 359397226 878722550 912280840 767075150 455146213 645642624 556777355 716200788 722398299 900630128 10156326 863848471 368787979 644240282 937397660 107832866 793027746 441207322 854102023 751057742 859486793 670989236 359096276 40526989 561822141 593322630 890612141 400841975 663071152 832749900 263140612 882964617 724914358 527603078 306462799 444106004 923751979 738347296 929653963 428553769 105948645 184983349 861514393 260620209 379782379 631160973 988145789 771736043 609610860 626527129 477521300 309382408 855542143 679595956 874206570 979794223 899346800 521760035 137523268 11339141 187198158 971346688 867440892 976169438 612634503 158581012 330401540 57435442 234667496 884662224 15207182 816210875 909062422 960924800 748210802 191443301 811696497 821646712 576789032 817127347 357593084 764574498 796029245 41009315 825052372 858850780 548817681 973494439 950828338 841293612 461973960 552707238 525730769 676769640 686495596 717538977 357659896 736003757 54920003 206019141 942723036 86220430 169897700 234269240 280740930 361247372 207831142 342833193 352314572 746537481 737953223 736895358 697201946 16969485 372197158 851796795 45046805 727869087 272301438 510123581 963075306 751536774 443161275 827152066 390642723 443622121 266325999 613044454 738851167 935212658 945294030 248194921 346547164 681711111 778604428 553999790 821170903 112942939 133095844 946813599 259807119 725557286 922261157 194108082 116289999 733120033 15922706 527986398 909434337 865581677 984364356 281355560 274139822 953137998 594575059 828663279 262166670 19181253 877944671 126694036 474060714 989158064 876892155 846945164 119518174 813807590 342724012 611270840 440310295 218226690 747881802 285751899 626708435 903802466 411510391 882117680 476979663 59100464 619141686 838079389 154449407 552896839 930873796 764877889 273733504 534186500 762863077 365094939 166882811 987994561 969717036 587323747 452313865 915720950 381721675 240120643 41105740 976286238 824354888 359895765 954952958 974949380 153882295 605730504 728727584 746290333 484335901 881550422 863568929 919944137 418874993 776091565 744083652 687364620 899750296 653704407 815923993 437463806 978629406 377335181 475102518 122075232 772812500 243199678 885394652 834815702 464704119 103786583 165445854 676758 670989236 220611519 467737671 670989236 957581568 671020294 305415453 62408758 952356543 718228087 678265574 830779783 843378605 712431786 504689317 280518672 819958573 387275602 969833715 427999396 245697319 484092616 668455714 247560860 790615380 365326236 682011711 981763599 761399699 617559651 56120771 995002368 848900506 972931995 52004532 706204868 918166884 275927466 289793024 961824737 783829143 388339782 718708186 742233770 974450940 691929108 994383097 265707328 688492859 688025162 314181320 588892334 832834959 798421603 985080859 670989236 837315067 731199754 726730446 167992250 421789896 969716763 776025254 195222276 647908369 620701047 139692895 762897812 895559065 712996964 3454035 747243642 899983091 807912204 250899405 258478371 702160734 748458078 754277051 384638291 877940739 693093595 939942797 46153280 816235739 759822192 614787529 823229322 880415416 898487534 678017434 476023683 740195651 82735099 238591186 3841995 704814480 670989236 578921137 98964015 459883688 787648934 835334394 725365727 890468071 718171664 957335042 833275077 532074161 971816017 466109164 762306589 723565096 946209793 77490030 838919372 133267017 461066796 65557188 728015799 362036277 821255408 809876006 929422977 670989236 828571930 849340425 508793870 957047647 169704326 681862210 975923090 434216555 869340848 670989236 762231099 964975739 728169757 645521401 820736013 769746352 972930887 26666830 77092309 185917556 587479002 731727406 903658405 589708500 373943419 688379888 854485140 723916891 354328987 170272798 288975246 267390238 296297945 739109622 400862221 827135955 805067636 88239952 769169387 647597779 990349959 972552409 67014362 946986830 779769232 549729429 186393181 629526541 614204380 672892958 645241513 56574182 921192939 686502692 442866413 969413783 920825425 903411258 37098808 945644847 987044544 802097176 364006536 562540882 95523172 706186373 956955381 989835294 788957025 847925553 992652737 45394392 691802613 370489272 915872661 153894236 898380809 779636724 924478282 135983167 270406698 22158084 228055209 968487996 78102915 282791105 170359524 432983184 209166764 514201123 743806339 997794649 857982838 944348862 750647840 624379836 86367050 418285389 915813971 235307105 517275629 123359978 453048343 143624497 60742093 978109451 824558546 339975999 353386093 828418683 923946337 80541246 613194535 710933811 784747246 677194393 956092956 136990037 852259265 873276364 771863844 111461977 960382668 532165926 749276190 808309503 91837861 931596417 944696544 469253129 197772644 395936785 189782838 785445450 941719362 614890661 101684397 395712187 612155887 767017272 542041072 961633309 769121578 720554228 516056547 933160075 648715808 896534073 436194642 239422735 53180785 900917839 966790345 80544368 958424947 474819195 946814847 996758614 117857885 417038449 653524464 356808248 196176930 280051985 16956678 991537807 740786173 693393579 65878279 904480383 207450680 670989236 24806628 239068557 665143961 614832796 608922704 787890693 871431478 773333881 580313944 804285996 296966368 807118552 831236087 903465219 659484584 465470329 194030276 941512522 686378425 744979001 147711875 974836779 935295228 29782490 782310054 307426913 267287609 975567947 762398692 132364409 295678037 688948484 907893769 585522259 44766044 87691480 762985288 798350000 812191316 708335297 463806069 561873570 869293641 802836794 208254073 852566745 385326645 311588637 670989236 285296845 861129495 90669942 870618016 700520215 931616405 895582635 846880729 624019509 749165158 982211726 12987915 447247883 658675610 973192815 796953369 303642991 42474967 700904220 139518126 972514897 4213324 925466662 743361886 152584076 891922128 702216161 747216297 415393659 623152464 353100194 704747797 64871886 367475382 789655465 935240430 261644344 884981844 135176954 699173055 40201468 18040710 468142986 885044864 456334817 816707966 288282220 726104648 572888201 761731302 935436007 846869120 338341940 739580795 782596281 588706875 670989236 683418020 943829950 350129151 348028256 302426872 934980886 932476935 74301490 930935139 509438521 634384482 876523394 544300648 431395952 246697565 984303543 630028566 46294248 174813450 456521936 560099930 433920981 853932631 790026929 22332208 914392776 738529232 774619845 499603599 775552301 363022904 796597050 883560613 795983021 479407534 951640014 468228158 166952245 808460745 240476528 935612407 761961753 517828833 947825359 467374120 670989236 370445774 135136564 900711882 967092534 13749997 503062297 888854928 499213210 587415374 101524026 227317071 606904755 237726438 778143098 304389124 499458333 633488857 79861167 640609898 947415259 348042308 522477930 976877158 778711435 521696366 545572638 865380444 852203950 441746978 712244889 677400783 64168277 385169300 803354116 724751757 379430718 852027685 165523834 757251958 951131089 83213483 857919688 678425110 992591930 697786826 505583651 816293949 736636865 749368113 920076783 828956631 201240113 313913468 918141016 268537960 843328261 834939888 971047911 53251496 1026068 683134201 788443233 959095943 704107119 307111860 467516971 813462339 859121847 383421299 860953141 294857333 41535170 669652314 434083705 924808320 974470634 77824746 908092730 209040790 76910406 720216217 930813483 715772128 512525262 298193469 873362438 32545493 717151529 242118570 770882062 835746964 646708579 701287878 363380362 384854683 873641626 478782058 617288546 996504177 912133023 249742909 356584890 810909494 748124433 542369109 898268837 849364031 941492738 744240099 832755090 763459865 128796050 785954454 78724148 87200357 359382216 670989236 987670381 816368009 281243983 849495157 724939302 652365308 577476174 162019022 705792510 682099989 785810610 286661932 287418697 76404452 670989236 954805383 905615786 780093966 588910876 192395865 636461926 64155878 760868127 895891188 957735230 836901751 440152236 746975768 925055410 555460939 57025173 819304028 189779534 475333392 322150331 153030040 822152546 697950003 395505527 545035534 974069526 470585489 555614555 987911311 778245715 693359096 873941123 65073043 927734842 18727173 846798273 809077363 432094645 884647077 774833976 325409705 33924479 150777846 871958507 10997814 929957837 99671751 485330687 315186772 319285099 855613732 425452662 775661092 315675732 456228239 432238143 875744632 313097886 600133982 955834460 782141687 198285491 124399927 957493853 541423908 914451017 3488292 986786993 983547198 367742607 191860531 907675290 971605842 986255650 621692156 911169971 515486517 699607558 826635241 805145594 926166241 728530186 933191351 226902320 296091154 958936804 151846934 73256169 945431699 730301128 852655855 356073683 392037889 798453788 132083597 611049666 887689747 71900697 363085767 382909065 187777374 862289547 296067182 580433161 212590575 203289542 817614630 850018532 815816013 331290805 818031331 705320871 738703722 682396377 954216999 670989236 70662731 467817666 772344573 724457592 613886335 473140463 627465755 486690394 255113957 366664446 362595600 887048863 556494697 204583403 953363831 980033246 386006179 432669693 691202856 338987005 916956541 733105287 688816603 835442876 895510099 543189127 171708073 802199163 569070565 122156283 766835274 925289039 994180879 749122743 529917512 593575115 448023908 290863932 355123195 777657812 719520744 566412283 670989236 419108425 588976022 295414938 973035519 848393219 637043105 91961181 551556683 771277236 999116628 618253861 80016779 999271883 710146573 451211521 706820331 656929653 965677739 316660142 363349303 408549499 672312212 982045972 646360178 458750128 214891532 969091072 418334441 760063918 950956543 893956688 727981051 403420646 150673541 996580086 504661192 851179403 657933372 482136472 888779576 974152009 497749789 867035293 990107803 900578620 119816377 959823023 717895786 852201625 797741475 882439241 965370150 110635955 306815810 34940057 173685921 673803625 394587342 922612117 895758337 964328173 844581702 976453076 715090854 607102320 82695769 772837336 221338417 664311 410367756 708465030 892605983 185166259 485380469 793980059 641557502 122611045 785587820 451768877 36957470 638544740 854777610 670989236 497624099 725011667 17202263 670989236 623698088 485375219 929349581 963633776 602214499 622998597 670848408 502882579 740600047 717741388 655024652 891073003 875411075 736400947 507809732 37894863 644644823 501664197 883216817 187157933 81950349 195197708 343201703 556782113 308708004 923644691 971281707 954145903 968207144 976214287 105871949 827354711 435088119 732557184 373113946 440634773 991045607 833144741 742305421 755215113 58749612 191696735 889058116 993479043 630530532 580474676 979912207 63203635 141046078 853351540 846417097 698706071 56412826 168989144 355097277 742555073 977183791 192480462 645266287 801105136 728510100 461159565 135209909 682543378 793850267 50653055 11342528 461296566 213473961 938157276 719373077 92728048 654160625 358918244 888137653 708791058 773412669 361667377 634523575 362004715 161205875 764112089 128897970 724865244 179591273 755006955 417768367 315944693 752863064 326134132 322617183 774656763 770230525 403986670 974491543 264516456 531378737 530751645 84345645 880359392 512219590 434725911 937683435 778078434 877822801 371188758 569674041 578928111 508123007 486303009 780840556 557197928 987798585 80419256 225162985 601931587 365180789 268109150 698607595 768147661 112209534 458615710 929425388 73172657 710669459 38900249 785396931 247844358 192514785 465930936 924578966 183128603 41558034 857950251 878615810 783993069 758873957 45979186 700977461 701790270 513958401 100463860 670989236 321749796 821569606 599693809 239719520 906345318 646955234 692860229 866751152 456450986 881157342 697382482 163103547 209042491 167613495 960399401 584801286 877334818 430186830 675350953 273474965 501690301 360840458 691162519 739986392 24222614 464901887 170054729 68003036 391937613 654121865 77506574 694056657 476499514 824541790 615850063 553628717 959012570 650664879 521609514 178762436 822474765 358776189 70543163 22757994 418824917 541099077 749465195 741137100 98075291 598054130 434241013 87165312 940295733 333139257 977222665 159489893 687597127 896913743 732448790 774359529 195813388 764020306 670989236 42834503 841657511 706296033 899764652 659513621 562091616 158501925 884063063 182911339 847934628 802515013 603689752 258454814 704230091 353867602 819609293 817292855 135187743 587246492 972658299 105180134 773716616 392954515 226121220 446807873 862273588 591206789 691733136 705704700 858282322 983647136 888967603 574798903 108236322 171112069 373289391 794727282 128312229 675465958 96140592 330224434 311888523 427002792 607790814 652353642 594154783 549843497 627073747 79040784 336490265 507182901 359543438 322969209 653407941 934117540 625888640 42186826 499587231 869236943 729877584 879635590 192122401 627466804 868261058 985431789 290179490 638923264 392348114 730442545 602690672 836623842 48995005 551705497 692959336 114982669 982495096 935685381 391781979 393547288 271879355 991087369 391907857 806847172 514498543 719192476 75403723 792104724 868356015 684287208 109412983 735214072 591448506 845656103 318181610 459856278 414034404 630258643 297882915 907540315 452514214 187622327 670989236 862762204 143714339 5924015 569176927 972750044 839563215 186258764 939154192 121670003 786179647 425437513 844646039 333561625 737093958 684923520 794778292 246804505 183126215 180855266 787053007 917605308 38623525 657719850 516066216 953949241 474734550 783205075 911306174 285246011 782050584 1136249 75094816 286654562 551153910 781597825 861839541 454959420 943800418 205886449 670989236 855277682 823507214 295262935 794116799 384594798 556950635 230932854 815015671 312607681 922048637 751905322 859466305 728948788 923066008 978812631 380243187 960847209 343435756 188739707 780291972 486357345 922273133 289426396 771577232 930588732 809760307 231001830 752518529 628258316 245753753 837893130 97775834 333526461 274800413 797076021 124526967 915883027 129875656 745867486 680436063 272600905 590427881 400631078 9573297 619424383 612761354 752482262 928528427 195017233 670958942 432719061 285354458 48418338 260357542 632229181 549438774 149194198 51633395 125728275 850187014 462812090 285645111 884852999 636127787 995186312 842712784 730239298 892842676 196720825 457650772 425069645 826752256 249325497 906147759 833754580 563636129 104229251 177255343 840399753 926915331 855326232 673702598 726489800 720682504 745452629 335564284 477735316 184107196 368996188 282178063 314322899 647326257 678572073 603116562 519493592 841594650 878771470 909058912 85135821 827688734 535722618 935880211 343653738 786563937 830038264 892556896 777608525 838339737 289304995 713055164 684327445 256768339 160179939 227339727 909690609 816676167 898002665 554552457 952617441 961720715 680367525 782196500 782909999 629064134 837140220 503934351 957947626 682539806 700881526 841290219 595925809 755004191 211464150 527489420 318131464 846440237 517902631 649273373 124167923 738224725 870189853 986792388 435676722 116097577 971365483 644769102 812805570 792280928 890953593 497631014 542658046 807973385 303870233 405475125 975752209 910333441 771023185 12667829 427948231 749510821 681393078 867463078 56667229 262813190 707919402 162122170 735355101 134649525 749775169 138772520 983751975 547322614 132780477 733080674 744076596 755498473 285809336 89761396 342835975 805227723 690197200 158411128 299041981 735874338 213469149 828238193 29782310 404677160 545533513 777865038 522085152 933436919 834209533 217258276 670989236 819332674 591611858 859836293 815488472 996133993 788557450 521324102 682326269 726613901 998497088 59778444 570562727 893306588 95946752 949195859 215274294 671110072 721250443 271804259 546461680 866524542 151935194 713300838 258478378 526543836 283634142 983926523 243762094 974668617 972268414 322493125 324216764 773521387 454183952 132086141 401013170 562189125 984849739 373250347 897512603 789977738 264218371 882397810 420417981 713588738 724304135 77048975 499932985 800942733 168870186 477428241 283750925 846203018 827233660 185273437 990964979 417134941 697718719 317202707 17536957 610650169 692864304 925703824 734783722 144179633 853596390 90473968 365653641 178073790 774603310 835685239 764937159 753265289 730709176 560262981 365914133 786357731 947869606 181708229 309993696 459921540 160587582 261495053 670989236 767030055 840147712 675068648 97969935 972110958 397810378 618612269 307362307 286162923 338141890 794191365 881973467 47332782 453929206 963869985 951595366 724270657 947524873 342944852 385895514 732656599 674274167 782690341 805975062 176220583 856123603 670989236 415812648 634191641 858922856 852903251 330043240 817486269 348521115 809917223 123506398 817555384 759283996 371012883 323170154 578894503 904405269 473901636 280376056 474910516 714166579 719391148 875111404 250203422 970170307 5750130 472861723 506213298 655631497 782208426 28012026 757056109 593876012 498082225 891369439 694428531 683435939 38198078 147038975 601504919 989861411 762715483 369959360 692151551 667073677 949839192 340949913 240660024 594627898 55329591 377094513 709430686 775402281 922610896 682968044 718363939 598168238 846329417 775855811 342960961 72038523 652352258 282826770 96676327 925306302 388403751 565979682 578910360 790008284 712240590 402822239 888545190 832970069 149941637 892849583 621341501 556262883 668369152 783484728 188539668 14361826 752885218 52001907 493571452 882425092 897373811 481178860 270201804 878514928 850904612 65504726 837004212 19447533 895760108 392254076 184002942 896545408 967276156 952277473 846164476 836734672 842333979 932152737 701948839 470453296 841081640 761930879 663852307 726143167 203176670 11905598 953035692 667953762 395767906 982618882 150812231 788760195 720181035 637281996 18049145 833380734 670383786 688701081 753963072 942071346 328553426 699215155 499546858 28864423 942409272 907806679 731641717 314039689 413807520 143898513 321673342 76392284 200201870 212797717 103914479 586548703 913824717 554651424 868969436 850098044 163313952 888643602 681396445 179685275 846789679 400172982 229438911 389816808 516236295 443702761 703701218 976257044 707924002 48335306 64100505 234967166 157347088 676334050 470353496 693431200 981970022 350944846 138571232 849218384 535793004 913415721 159187575 888877542 32679155 544984516 325912469 267281520 430600248 90417863 182747032 449351128 503784361 488737461 204673920 220463233 174900075 1890739 861224566 998496494 223452068 776165996 768008450 927729063 860486907 747583209 122374256 5129114 558058447 673805578 749320236 709840291 923554224 991454631 786328085 485969249 336891817 746884597 444365999 410529227 554850426 997380213 620639975 939093708 393196012 671025761 421564690 434899684 717938199 664297583 710183001 372999208 5777272 700367305 492451379 881018207 692146061 133685406 361604791 546415303 243965226 357481020 778857215 894229052 250596077 746749046 904020964 836255927 696732796 162878760 280615578 854395075 358156063 772506808 529144309 218661511 383019037 159228129 346981237 3731037 426167493 555765856 859803891 996437746 462443587 885238922 785175061 899197326 4054538 983590998 818522770 12641812 756045217 57091667 719092549 814706085 23782031 616726288 454916231 843032756 275054476 503987416 273004152 926344778 416540234 387668951 800839428 934001573 799985984 250230197 778271613 306098471 911410546 516655570 752199281 958826661 734135739 950543399 564453345 928528470 593867593 943200920 720891223 553396177 741254547 961767878 600040266 537685604 765083634 913776719 778901918 895942870 313959767 130001939 865656285 795437464 506961177 915403679 872363419 863078833 747670322 133924060 508388248 914739585 278181776 899404128 635914368 705047427 558849751 744379394 787523773 916646902 496714486 763454177 926650503 633060328 596853363 939371782 786226342 173689883 589984989 824863988 325371386 360921706 78350878 394731263 349734007 965941320 184596482 670989236 404486649 690884094 604469678 765162773 424938943 740837826 499450121 294717232 901328609 500195272 2788118 821389490 964657155 975909308 506719552 928123485 709449982 695337483 889828265 907872911 862438965 814495582 869306099 983254659 494522551 494131494 295076487 877724163 510108820 315550111 733884390 237155999 380826837 785210787 849850211 542283326 276781117 801946630 466607315 670989236 900767872 676002327 419831213 914082330 700384757 218261718 864627201 446416802 106260457 339350434 568296996 488917549 526389896 210938223 807592715 303912405 170835844 321477974 976581881 984432159 66512043 256530908 643895392 828870811 388239050 366947372 262410743 118645501 129959947 719919173 670989236 177930136 813754888 230677101 758798434 381107878 427547298 40920660 726245061 97366643 101849934 825022706 580441101 896088423 947231662 658309427 380579682 909272370 226015741 646999825 536734192 426263226 40284542 830222124 426072600 874473037 940801286 481378890 602754974 728804861 556961346 773671009 343966349 808254489 592097901 709406550 778009940 857743875 498202153 518065043 761273820 868390225 618041619 950229455 874771518 215784322 507901057 108121412 757652518 981914429 678380099 550330791 782528814 741282529 808469531 224724728 732918437 452421300 833339610 879408081 307862046 689440259 598792149 645118417 189196893 752603920 822185710 269819815 705705466 557673779 736084975 904821139 316055428 217376852 812728686 831250139 961612341 701060268 117011079 150461524 251555584 3558313 845321640 351532932 717360255 130954024 515507313 766196874 106443375 870694022 642303114 179852256 791547439 788239639 543716695 747459049 707444172 97556183 393993080 992687599 900423363 517745768 617258580 650765688 822930023 318216015 862238830 871257309 20505020 32532011 967228122 927627414 325563475 194911681 368044955 841819620 7461484 83934368 216617836 864492563 499879953 588586879 378556698 548254690 75186558 839428479 977909879 17547284 853137684 734571952 616035853 507873114 161205420 173289650 29126305 929805883 570512639 964151446 859599703 684598049 903957380 134784100 821681662 98509876 161431066 37263092 147298445 358516891 482889073 513395512 839008321 131094020 687094576 554025951 743717433 792833790 975097936 697907549 772579817 496897694 839794745 795066724 881368991 680248274 510357004 597817054 787923851 768178596 100992531 640978546 718247666 630753812 479757849 676322607 260915084 304798951 679566629 837369062 25362618 178497575 418168596 303238129 975243513 961801213 845744539 784327677 677553054 679663939 745101736 710191298 982672980 768751314 745021002 262976617 540491329 727567456 793780488 997783934 904458080 933928659 144691893 83081254 528188887 986151715 803535486 757847921 243695183 344632592 143713354 340226540 113067319 916640739 804121357 943924298 32447705 670989236 968612036 488092935 933261010 970382279 760736497 720306249 743138200 351971741 355452050 102828918 524877030 854403614 301714386 752753283 907104528 803861654 126277866 484919222 838714542 687085657 969698182 770375200 803396750 784769250 44760189 623303023 726333114 951295858 896171908 101502864 109370503 36038696 998987592 30298375 992004994 777844956 563366233 321724715 780469996 62187486 969179148 865509614 809457088 728739278 712008499 637621370 871161973 908842775 141920771 869532902 448893716 434163681 686608508 797970045 947942017 111142198 522886860 883477600 923888503 421731000 422871543 837251947 204247144 963890580 438278231 706152454 972335673 840724907 417055628 267688253 183861633 509473067 944979364 436445180 679618042 938711759 871746183 587865850 670707766 879064705 232209753 27309441 630704624 966359430 672970 790153369 103282996 592963505 256304102 242782728 670989236 736178582 692821041 306131357 505484863 470529990 845724592 990313399 834040158 725928435 253387999 33825077 945270872 864666627 459925239 820999987 682262102 944290194 105439032 639452131 709217965 984896883 117845139 885575508 743681467 440140873 205131694 569063832 935490421 837382903 568054658 766222970 780820054 427679581 892172588 22311717 588218922 414828384 593863117 926851773 455199167 760522956 766332189 3066063 784410994 860019579 790865921 984740037 805072079 397130381 410897448 106356949 817398985 687271665 374644446 170493535 427125497 754780841 210713446 224125471 54664100 756120166 563883502 168758508 703787417 806434688 993686217 719654161 821935806 74836923 57094697 971495078 267234816 464992454 910824517 379455640 857359691 865898767 940492202 670989236 807856199 288545891 885840226 982785363 895175061 450613263 228319466 293685281 154487744 568477698 856898299 22606527 403067054 368165256 773928825 149218509 802890703 84549640 137631481 606526380 677623711 463814205 752010816 315695888 292036305 201216577 492687073 821221951 594788938 982892525 587642424 250995289 412005754 726721998 309146109 928680493 859935653 840853367 756584698 265525471 50248755 776975864 151369186 45667986 731763805 534415619 821253231 613752909 369742344 432839849 762025276 113834192 832020643 636877366 887553440 605461877 774202540 150269864 34336553 691552277 605725418 24228113 698754400 225820475 30141149 887477489 840970076 830798199 700763638 548759334 911257865 988931714 143394513 125478061 165952119 130066684 14895680 766560200 991346053 43643676 803620935 378719738 807304597 331750942 434492125 708194864 522476234 200321547 976784846 531720729 98625095 298407745 161586112 529445264 551624614 475670704 865683920 713525530 822443581 877621753 261459099 559907296 732754018 43812914 828864416 808138906 972092656 194974075 807598609 797217752 102929594 577893882 44552873 984304159 470352189 823287805 207976540 466468625 638736269 886828285 271094708 110798987 9544090 305873698 190110629 25802381 653143131 783766425 752596651 924189333 950300700 745562439 814260889 532270919 110079306 680401729 917025494 541231288 787196571 992107042 895112843 682080911 759543138 388032032 73192384 805872047 908924460 49658269 484356035 15681204 105612390 694566330 827245259 714938850 8607730 41371852 150470133 543494119 338457101 329413060 757876197 378957146 937627009 691754731 918213608 313165584 630711751 851070822 352692562 182871073 277004360 669861586 802138155 580676931 305164480 994246767 681581004 679464439 614109453 879251394 123119181 871314292 666186632 908212378 758286407 707915148 979216802 852188121 963904310 670989236 919072191 46554648 254360224 746471249 339559419 741569245 945600557 232828754 476665262 558569200 670989236 314532281 375586320 356326574 247305885 670989236 680479172 158541755 978040753 978954462 236265794 851260889 153462242 545978943 417671795 272510493 648850585 870726190 677482582 747325321 279410466 258117155 134563197 904173102 327410973 591590350 344902760 185723993 207235132 797644227 608071043 857974298 521087279 868706304 61045804 331474535 356038328 940251229 240495512 894110930 726402364 104493544 641461790 866925295 678383340 114990639 955975646 946933906 207723644 475257524 386962575 888579239 967838472 158994886 949837349 485557784 784100102 721665060 928088 853744366 780576005 430953207 701295485 612763343 991827917 979765759 670989236 135485291 50817088 346662293 676029950 642508744 992389338 923658387 536688859 689344953 670989236 888847342 579750050 859920232 695339988 244199700 922730504 145328315 266262456 824266502 767922481 719523494 823759795 133220133 851586934 594443490 130366802 816472417 546077372 88601108 225339548 834689557 37527993 300475499 511086711 492227751 228154981 798944009 856466421 961650804 238020571 247086789 686688579 507615714 225775029 920369937 216684843 743348137 826557852 41343614 563205173 618916220 147695161 698573948 464807993 712678595 932247060 129008739 938228275 738809129 223784785 617045334 214404597 202599498 918580802 95172121 297230088 141572884 290523286 794714418 721028815 623483924 960102123 503267166 933956580 986951580 417940333 677811535 670989236 136454254 899363692 205264828 733933224 859115244 279818847 50104896 417367492 870868450 804981082 491522485 741914439 898522517 257742375 988397821 956851998 341305384 895452747 253915764 337171271 753416307 527876660 760318270 184782241 162854657 829168821 634409015 892733310 922201134 678479129 734622687 885493675 353075620 544445735 543472822 675032128 647042815 476651186 820364657 858120726 485914265 804480169 602006774 728355858 582273119 998546545 203928851 931665818 588101012 173322367 379505016 853277508 792079478 696626854 917270447 933153684 448691890 803571114 874201158 77091836 850532435 902157052 682590131 522969430 717477155 243637889 412182641 287251527 109721437 769424778 954607574 999856913 702295485 241512290 742817982 941334338 527572319 874274810 106976521 961078957 760464978 150920449 355488614 831196374 35733266 946341783 908249386 731180513 552555209 947408388 805852973 365788395 972297853 478564845 866611562 537918130 613585182 358328375 881791408 276349796 240675689 783976682 189758549 441845152 896713542 890583712 722250379 971574974 699758674 418990179 244773962 763984679 821360866 108286965 833853116 571728042 431533001 882557417 311797881 97101290 69195809 389705584 806563161 714051539 267932017 318087656 136495736 716689130 756906627 764344464 635397069 343090512 960120265 421026661 716304091 457495838 880393949 780477318 592181033 181736144 849514202 825993194 426852153 94345452 276079373 969674918 668838944 767354513 972199076 984021321 957018606 115361402 752092266 851966228 861352916 508498156 292091850 762186751 746353964 972830331 880214288 306449037 866911671 83074293 627524055 887548514 3970037 763091395 670989236 731183631 706460395 566431925 334259107 995410686 680194944 704757002 578851338 737091790 966349317 967364947 682907685 75091897 796535433 156340280 876670608 920454351 536924277 827125859 451466360 539369528 609703064 789156721 781349912 872447701 4785543 5338310 180199890 718591740 203351697 434692308 546544107 970728587 140238536 303271570 868711297 827946827 37547612 670989236 318516960 534563924 60508252 298759085 529266977 741153827 959970949 781138656 586423885 255191538 757134202 715831271 458273551 434604523 314553942 649097289 742473752 795902024 303268365 561180089 935817513 62034911 322275020 810815166 837043531 888529825 562732121 135191550 826534472 798440043 737932292 347225967 9964776 717542929 607444735 602640567 727772320 276687128 957072874 591699923 87362057 872167754 86774805 505543507 842950002 629426128 316024416 862981574 132220282 732486911 916086287 788386825 815287638 617508499 912390227 581449383 22113127 660240503 966739525 520724757 670989236 213400300 705148322 458941247 806325113 706156664 759716970 957318527 849238731 750377427 715289117 379413464 732105463 995791380 731234903 175638084 729028253 704351199 426787456 423668210 457984858 696411487 806120643 226553556 950251584 740431815 845974118 666460788 927582400 358022969 20858765 118012540 272684489 709015571 596054002 255831244 974074694 458884367 392200793 944348504 157057790 670989236 643085311 456661262 723270464 373631043 802343473 359982226 840558797 545033939 994042823 3820784 751733075 642341 835079914 303827332 810530765 72602307 978386253 321435126 517001190 916069903 500109794 871007749 771105940 789512219 111028718 995868363 741720377 972967657 911559642 316023833 194188816 993786991 836156050 261314153 756848530 978998492 597526868 37922047 200414546 770582530 360534480 854212851 645082969 388429789 76066464 112327426 905257037 855412794 181301810 982656695 633405642 463908713 799207565 610505556 949162876 67764857 892590215 54477868 277278343 811595531 858010715 986312273 175109598 136488397 335657717 750628055 9135132 794273239 39706079 478424567 402138103 221753354 933109912 703123947 8044502 107888520 678552597 684209923 122946880 925921971 174853241 283431442 984376162 165861838 872703114 670989236 438864813 757509975 510636964 993415563 810597644 500596865 726248788 832119809 334477322 306200680 783679447 407854844 637081643 689058366 926994007 668848517 826858977 814699966 73650324 995896645 715797754 672408573 201373544 175613390 465579399 509753618 433030926 165359247 874666183 982543310 266323502 249294600 490236070 398836650 946506514 22594166 686800025 699418152 835285506 965248035 981650827 103578212 877094146 365041193 117894967 424286290 957145989 661537198 672996649 916387690 483919774 518512255 995796315 120902318 797275226 218157264 526672948 334430146 757346399 699546070 453882048 840287970 887751316 960687990 932992007 486763235 665651831 738107571 340514859 669857235 185413381 995755350 980483324 244970588 647306762 701233159 676864720 510691524 992242067 933943367 223335944 670989236 935643206 847600915 988064701 340565479 368400793 339317012 843188368 358890598 470744542 891850336 785695266 151538438 221279241 920217439 658699937 981684066 128824770 154838058 555980601 66745642 210130259 873299582 988208280 387561070 776500775 242847461 990169228 869619858 332361180 341138276 938786261 747784721 770494196 426423042 897300775 5750775 937851080 379413621 833975274 785925506 427010584 19799037 757551836 45204999 731750798 595340464 176031628 586873991 335531998 826353561 850861021 784060064 594998046 872368360 871380577 893711641 57187284 998168191 866434726 729456617 553075608 600770657 445539410 82786135 855056806 476924247 48039410 680344607 712721822 967351571 941088245 922237163 801501302 217118570 684877454 913760061 327522086 702212469 719919277 480976168 806663456 854143541 839033734 753095155 167211493 904018642 719164792 931014569 424994608 938582723 974244273 839278476 848921044 940598079 957758655 913275008 606436922 761208813 471799092 713614317 409781521 337696021 278061062 292652836 414820702 193245068 189639735 606829648 793383480 200725041 713865571 890974879 783375553 243465983 595633904 942060620 45223924 855730595 872314606 961540692 576368572 670989236 141960185 371571514 58308426 973676321 117343829 474631755 636641071 935510708 42069945 163336855 850643798 711637598 432310316 778324356 485210562 859081224 288283356 941026247 21574336 911058970 273869973 816993843 128055937 175313888 692424311 707213314 750940120 231001437 848593676 36021922 297042102 798993238 648841679 610419273 418247867 161828711 955250338 113578251 39638092 361355224 153714837 609140721 828894293 426675489 515259853 824115430 480459014 177443486 822976959 930785794 860367589 470284633 966129879 727015236 997126922 896101324 864166261 757930490 560328037 174979465 897273736 232358589 266394853 873196145 835081012 163499411 414346828 294231976 178312364 718482886 907197269 103400970 768774540 796155305 371031937 277932742 896974529 62765947 436983136 932672455 986019100 267091869 70833188 16064756 851902421 703976114 790266235 822123916 700091556 850914824 105392210 383539825 987495087 517449530 92821985 277869990 276548578 873608481 294168326 156278741 224503244 986288154 301738959 952688053 961553348 836218238 600564883 900981125 396563102 953523919 947614215 875666674 528219203 688807889 310635668 765300275 736013392 676992427 965457804 370405672 758727561 680955034 507535222 89807045 984450430 935079333 515322879 445655447 430472851 984287544 917239746 763831110 230887068 771179635 412752371 519441157 870863331 472298636 572006453 12950493 846414605 986718677 890274091 856506489 25720735 55272475 459538475 484830083 801379489 844088282 982472691 764998916 383524513 761216643 37773910 483521709 583298881 468171818 765771319 184614271 961990959 688162208 319511092 678025593 514533529 711648877 568601995 817066189 152265168 316799008 78793383 407528431 931952619 890893422 56391130 257669319 898045110 148610224 410843037 312401444 706979516 162381360 677954194 823563933 713625457 307357903 202502781 813625493 287780853 723244741 789428143 819760173 243909411 712348996 756687961 811263570 740823051 634625569 815527832 701735138 655083411 664121616 815738940 500649429 723862897 804230322 941135552 153844019 307119793 502938914 304864622 281190836 776045481 930245826 857257128 776698817 89205710 776001234 638328027 884725433 912774829 677761532 638716499 965215511 964301895 813061651 98471412 73866231 283742833 521235522 999935883 890637550 864430272 831885533 754050430 422236846 223330296 85295368 907833221 538684715 946326184 381376012 920910811 985305498 903898789 373008833 913112644 410068558 182240247 733083695 273847575 516144046 423934668 937277643 794665350 800373141 876504529 762511790 927848540 533280686 762853761 718288606 736604438 108540784 824765520 89328578 13977154 310961400 852887690 556140285 708259714 486143339 706753339 824707324 782962866 628488498 565392259 932659998 712706760 734238653 758660375 711898047 661733769 718156302 264163954 689415399 752194991 242086750 77807804 177535304 903880229 907117362 784167357 693500503 605815718 944454369 165051772 98729258 660524912 761008083 731549774 914032473 781752516 570378572 918247372 158769290 699690495 410556853 647334589 287870110 222349887 856768075 14838903 443651740 523060662 721573911 823541445 977441233 220883477 427722271 790267553 472074763 920402185 817519231 256156237 403461757 959871249 653327403 231327540 537957325 249081624 400018823 910446137 671039997 913452471 187313935 384643469 303683122 670989236 372046028 878917451 722991436 526579708 597888012 645649326 853631524 730175064 942343096 769372519 254902714 976174018 748866358 981057966 909075778 725730731 891183664 325290082 720324241 735279677 918085966 300438421 407403819 379923128 931370721 39217803 888470565 915572528 814846600 657444840 679256450 551461036 700694933 794052463 907603522 831441509 533789305 112862189 808613655 781973184 638413859 688345632 79663788 469465030 976696823 535047267 686984808 670304766 646715434 842446041 122468016 7627697 42711720 256384366 443532087 890982911 123229626 700184693 860557552 809683987 908210215 257840011 440261181 926918326 706451476 843739444 834090912 197291845 344308508 731664759 114980025 629227119 679335871 704144138 768683343 765549639 189555062 343440482 590646690 381455355 526696777 769568081 157683921 16476492 895798936 898807433 846214781 619586053 782564758 317208775 985779713 974786994 911955346 260925905 379795840 577883757 607112685 644986555 746795681 82135275 601768455 853380064 974375794 104988182 335825551 684682361 650190734 423660559 960562368 863254587 92572029 559686703 279740249 947886837 935458032 961474106 85271589 811544270 774957106 982799708 372600349 39603659 780313396 589837826 935951400 900868520 783724712 36006089 424683900 644623875 295981480 418553501 710978300 898963019 809314735 863220335 313521116 914944533 435575260 915272366 845501386 653782137 687239022 670989236 432967103 956078862 577168230 700207797 670989236 816473119 978200351 670989236 671859896 825315341 495802854 937046423 687478760 96089950 334972864 767204708 79167526 726271098 54703916 821335428 725236708 608799065 446854664 930430565 740293647 388498251 671337183 456688362 581150107 973223373 610473358 967235228 539358480 577688274 78684378 168650832 761611638 487127781 843832270 488439861 748447626 244053173 669667839 694927746 808637410 797832414 818304785 950379866 715370700 327642396 37321406 682701611 931322483 696810058 943473650 675257918 628282102 815199544 947409994 338096363 859675390 909733704 15209749 670989236 931116170 698908239 96767608 155780952 19712408 211229333 19103552 990462135 628781551 715111101 230427579 166060501 37464514 285926633 959966228 686306052 440121720 787455920 873329775 974133004 745979903 915963088 60552171 36442237 715874036 267272411 775522596 251022036 651490102 316004941 127587465 390490759 112976153 281673292 397436525 847849260 667760319 62386278 472546838 789164267 11246074 710055863 949348476 566576210 875245009 283000631 802955467 947237098 353401284 903582267 399343851 529391642 354393529 323090152 922687449 937556225 932661975 769750997 885365465 271406115 599791515 197553852 724362722 257702378 14048764 107284222 274628432 821781623 360107299 803868259 39203811 275246026 279313886 980334899 500117066 279659976 887764511 661139837 875696031 79518083 541504680 859251726 812527140 958728344 951512350 223869856 733678186 836570789 865382810 854010653 39959626 988266799 526773469 808813611 842739215 48978082 731905027 585248024 951740934 816240269 170646421 713207125 892677742 221950093 706744301 915816739 649923670 873686351 405976117 144654294 921982901 830933041 845921115 685025133 456157249 617348855 937519355 68997345 307616996 587092762 815414937 75656737 6022610 61712373 439135893 795490309 436201344 742368695 505223052 241171085 755605402 273943560 670989236 434265898 206771378 961005792 731083769 899308812 944918054 837335290 769264974 670989236 618594711 550748880 186905183 65247244 757574165 860535545 199745312 451971518 14997863 367277848 795164538 850405065 759017163 845342488 596271274 917523186 884888314 119594608 559303563 853834017 448800359 560969143 511438815 188790445 886410210 201412678 372788270 196250605 562331547 5564744 909114181 132849367 794193471 457464835 536103127 219880549 865573030 922634340 257678890 615023975 430518183 844358843 705981567 258254381 727866384 626090873 745389524 151770802 862535903 93677052 28534701 856815215 82617949 902870553 841748388 514917096 672868567 721019870 655442748 925471383 375071383 912181492 552373725 509997722 865921129 825569609 816565962 625734241 688621899 134516935 827061475 58524775 913317192 663715303 737256700 875474571 274945396 357465165 787068565 332113352 449221506 831524702 259205723 500201632 684674983 109083737 28410976 862732773 720267121 181272938 353540494 392846726 809533585 254514191 88909082 181776211 465401778 594836710 131671746 885056455 552866368 912325846 700910036 625169453 327066390 693080645 741241357 819910347 356422176 815799587 410390523 172420645 292705714 117657956 442189422 161526216 791137568 38989802 534348732 674914872 275820018 273917603 999523972 312765090 817025543 878509341 241508236 923381921 894195455 974521159 774254215 993757878 897903724 248044586 324671054 645767857 836023755 961602914 6159745 370973132 722193497 993475045 627997544 701876224 656092883 23379329 837538379 706535311 907213688 300919465 484942892 648736945 749842977 840449561 901159152 145012335 849567605 688943002 834213120 599845213 529967268 48280967 924630301 787481754 643904935 875171381 950619016 954063517 437041849 579733624 767425672 634172611 278658266 970150988 31698952 672583592 642619676 774193354 749722153 189734938 992185525 840524242 374475506 85621360 995122095 429533996 940618356 109751147 893562668 864842913 167371757 810119818 757731444 239796412 186870492 33494088 981270900 914779556 932044040 75812823 691030042 354028055 762377160 730195443 316457111 100483643 969600287 943772669 911693525 811874254 982818771 880143791 307368279 724962100 772695495 742606353 261521647 759379474 991386502 909186406 22704366 685613378 301035999 977728023 678072219 903445174 881407658 775178451 970452909 381015873 683171604 745580173 658008390 616427056 895361060 990337466 954876205 816108401 153535958 240696062 987695705 132024384 579260176 886961833 991556547 183711614 402387318 781169036 767583900 2750288 173371951 670989236 364640605 978021598 883101285 994528120 77816683 723956573 61171065 931743716 4576402 848638944 638345196 925200485 650967376 833240712 824500208 725075956 896309154 806088972 671201126 714533641 746972972 872340917 665512249 339897867 852097897 647182048 796570603 507255659 591185018 324970301 942916963 304300918 330424226 494372768 831648520 875619494 637156112 432979409 710055577 903148155 895548983 841819504 160631139 747674493 311666079 540606177 696582695 410213622 51880770 491225634 536241959 562147469 840020843 531992836 884015434 116570807 701443114 405079951 896179885 864066261 614172876 717778134 766684379 863585212 954234273 784156354 792735072 635879974 162692864 907039329 246915364 389177057 459558925 586666843 937767665 213140225 994658886 710319203 884265562 58454985 161920346 769018314 598376402 625785318 599367849 599050334 817178952 837147017 677234422 965368889 273584489 420889118 972607763 240047871 935685905 537241770 772099213 256072497 33509353 846304814 975609119 957531090 395336182 809964495 198383725 887796496 75799161 819625807 984369232 40764902 680779662 822684876 193850262 895605913 176642193 977143943 999361665 669836813 314561845 37890893 127603551 938337073 947224511 966821797 916624091 762074301 183241101 943057855 77940209 695971878 838567006 632307223 484867383 495278271 851576054 296167777 670989236 521235131 431500748 374555945 313959756 476462681 947633333 968947754 348147401 349318482 340006903 58221763 463614429 575163017 121846412 66852492 458905507 521407432 58519609 451259825 106265290 994250048 969688376 2415974 179559333 964394487 260325327 722989578 711467850 432461066 940671669 245137161 482671673 378529666 975763564 152865410 389302417 664442191 696456672 211774010 729146772 682004909 385481111 220978764 241993203 289650321 712640432 746876080 766463373 392975760 886287096 230070767 721427063 206870053 811608943 593947429 760497363 726176826 712051244 663375674 901509895 837887958 747911657 925617990 264641039 548254117 920656702 725001116 691322863 342512931 767490672 286013683 707081862 115935175 122199044 217216805 970197448 759684931 597740633 451491691 498651353 712817369 757034134 912881484 776821786 306351865 128167539 838128912 183492814 197168497 713704910 211085823 809341949 840135038 785597016 839649401 154631743 155052740 905955473 591918305 757599363 785376471 720320286 901531423 480862763 202815390 49471498 356336507 401182931 512118671 830145987 733062969 351879254 775751070 846303068 673497649 343501819 80455525 319709166 827101899 903990585 655956565 840476464 365245951 220025269 307437935 962665715 670989236 251627590 192179693 186189186 912054327 149949053 118338118 833373695 236502619 690694144 872336057 944092455 248738405 922819206 326176614 509601903 822787908 690480872 110499832 248325609 763640743 160483380 333711139 304408057 458956374 39416662 675182219 497777391 832515482 774916093 990376833 92578212 603050052 997412884 672008010 809595321 869517791 115168948 246725020 737706313 779534940 237535692 815022615 289053619 232959763 837141757 138531245 958084351 735939904 931219128 680736134 874431778 941301586 465116338 219227533 718215836 522727535 92327473 949328036 530809312 223727334 850788208 838865044 484356614 923610208 556491562 228791220 866419405 967839493 61589841 580789610 849280496 806038381 865874215 759907466 230548348 400999538 626783388 807330671 178518704 93920453 534612129 289953560 670989236 912157687 191774981 809648438 843922716 557223005 142333530 581598351 778555184 307165178 66378173 635989832 826740189 115611880 809144274 599850211 676565902 512827797 848291932 844322008 997543509 640112628 717393607 503410577 756719533 8040957 139819670 917227051 697731779 270554385 424668593 175900018 738407521 864928715 950419455 713104765 881658181 688182139 713785573 706758412 876669589 589430916 703098345 967160847 842833685 470992664 585415053 909958914 781334311 685716058 723784025 508784497 148769093 816937611 770231825 811478140 129457127 908907943 865468466 108656460 695889889 368327853 864598547 825598161 724081234 385638544 301092983 687834204 728984278 974375070 714919456 692868787 446264224 858108621 337904794 990356961 700859754 700808159 784724409 969802858 418249506 222696616 783251796 979378337 753900182 708315955 431201425 103218854 797557848 54639263 858440971 123189814 671560684 952905532 857356142 836148807 686066098 289528414 698872028 533160464 969461425 407456408 749070254 639494851 287711701 465570355 795517362 44462096 939104884 522797858 10601864 859965728 61156202 929469728 740039158 730349496 215145267 956907861 310722763 798865319 487906913 845429760 970877365 897826011 684706290 868990227 683582839 546294696 728563194 909089026 78994527 142230491 799678082 88977381 275180295 107918272 573884606 962318114 968818577 519015043 639317802 784777234 721349809 99981678 782213920 905204835 956073735 882237911 913526202 929106841 716748074 992170544 752456558 691203708 376130602 454797345 625396067 885876225 670814395 552910466 576354183 935812099 974574492 80529121 871272942 968300957 936183463 884774648 623407260 681289150 870655069 679025046 323788306 821763262 163098767 563070457 799220309 623686944 858320093 726523708 925988524 706878701 232121335 217848524 966549803 171411200 253334425 309036680 539234227 444068911 737090531 585967986 748755410 889190084 965493620 15629928 494488299 459174893 728640119 405612861 453862672 594401101 392306464 548400200 466813733 344825022 681117077 430888441 696436924 881999158 926518981 970152182 203045265 417359177 993268371 838177062 855026240 94002909 945007782 184883512 202001322 775737717 888319358 952264100 613017497 645791923 171653329 670989236 285667936 540636514 566998485 657754995 731564962 758358888 435964993 971218231 988973103 430353402 910312503 467099288 937233093 107540434 855910975 769095701 885070121 170895085 982670775 265263971 817063350 890485455 759522547 687028132 584325675 304119351 411218455 926358709 923449073 600267048 926430741 453114161 77448233 858184377 73377551 532124455 9755198 963257031 736431222 535726681 892317525 971394358 500880340 443212642 919809736 313086795 727535919 858744694 914570171 977002651 548464037 134256429 890979709 247066339 736593190 326495676 669496568 242973473 734485068 823106565 887032954 833680145 932484318 307177391 749775079 748336279 430094392 719786781 429120530 892012614 373608954 996388804 226917658 948107272 809457287 466733060 440474982 481707107 990519985 886585851 600931723 191282336 953833685 64478214 817890195 381052720 731191212 777934753 475248498 84309126 852635340 399345784 417277808 757455842 750620391 670989236 602432262 767070733 703024471 986565121 244976554 772944323 87809273 760063181 205312904 548173378 82739617 670989236 739109093 735076080 894428616 590550791 308347956 879318757 187769953 140991615 711899781 796703709 882896178 978542945 957162595 928369083 926764029 208053489 352337056 947329590 959694824 164327995 820367183 78848104 882920934 497224227 910941143 854413551 913146750 853808182 758690595 951823765 631370538 465357647 65056941 958401059 544647925 757890159 878307292 702678791 946821516 11340664 773976436 723442240 866775121 648147339 728757155 787181548 404644623 45564983 796305109 8599786 319187009 846295205 568355147 390287485 560351590 20316733 535755072 701397251 692677052 550727559 394745755 860337691 556182878 944462840 31596777 246424394 700830128 882432853 749629101 702603294 955509662 468924023 784399875 718801545 98652971 779080360 70674853 293037814 999533411 531027459 908492504 670989236 394961764 113894628 690480752 644804673 801944101 22015206 536072058 357582405 257532777 82524463 738553859 55611256 679347763 470653874 562855835 639076334 414634323 98035964 225331923 789744319 992256305 891145353 546066503 135348295 858985999 541542217 670989236 904841644 819690581 226876326 832591766 508805471 867832871 815439867 282636028 963360928 463756341 202270216 670989236 64677001 210171515 364023738 617042935 847712151 186327023 683912768 880268532 820947697 879022960 740418751 502375716 387284707 520373987 829308119 890428520 624715721 703435457 659655428 320532034 492664179 123648385 8581069 266298881 812451730 540929429 528429593 557566329 665386947 984806802 867096824 783252272 947542333 890714306 898540089 950425325 921131862 842271009 84724464 165551578 972023541 476368741 170010114 990770591 735351813 906363724 307496767 604550225 896762463 942692677 343443489 154230094 596257195 956969953 959104753 344355388 993057483 982193577 6146719 832604243 23039630 261454146 837635870 384827334 735243937 140959718 760842830 768287733 915464025 38729112 226059271 621533556 671590061 755938360 707820989 731731713 621467662 704720462 908226921 759199458 221658407 939849163 983841165 597528423 334735652 226051081 918771220 465325092 434104538 305095539 620950050 962557843 767139001 140368034 73504101 944010307 913003110 914940311 952564361 932716401 752235528 774815698 704825230 73256603 249325868 686514307 817919919 654803537 47340447 73844322 872127818 732573299 660309366 888350391 667080461 962448731 758769179 842212604 324189129 988351330 978574293 770161987 638601685 861666302 87302012 743620947 478366448 808455897 547141201 584413911 973118851 683596615 927117837 292470162 957911619 262867365 565716583 216334083 993392101 91544835 25891152 885548031 195774441 523234413 744031864 462011351 571714083 938312142 320951596 213671171 868093842 960957261 930770474 364624892 670989236 943258803 846670310 958100217 842161351 343400191 748905272 147380550 915143968 717259068 910719706 750605274 789810505 187110989 186358119 874950049 765178541 550249395 73058730 670989236 476909366 221912904 293483976 185061653 622458416 372654885 917326209 515428760 292337953 905788358 559052498 601935506 913815511 713905053 877260155 495280001 567043920 45558300 529436831 946119396 748647226 935235970 395477029 657700554 887269329 870729866 913391636 964443276 676710587 592210767 814831417 447951286 476442279 681043761 359015237 853168720 317530082 992623704 663239429 983920061 193035466 710957416 853445938 216513525 469008470 199178367 996841576 313498020 969623483 498715115 710163788 146843999 993606371 724268487 564137905 142217082 540876968 885886659 994332272 170524857 685811686 653641987 760663553 769097361 677192283 962993924 155067234 990044200 153262071 945990123 177094216 902968073 920059897 744055785 572806606 989348985 651197622 65349234 183804621 153602727 852958454 831975555 669928401 402365877 125023047 887703875 676724707 747746191 404000707 604852939 714311776 906889279 613898023 46617982 926447154 683646747 931047756 606621199 863787877 173696674 476129502 587661021 764782754 732191222 716058472 888481625 679382773 278805008 497146205 731940597 782959787 833987321 821672917 803937834 604819585 975721198 194983120 925828893 578261290 981884972 285182645 989967389 853704702 876955193 882860354 623273278 387385122 961220818 824782932 765582647 460487414 803428914 339466726 899539531 794452642 206538276 448006590 403649037 348479484 768660070 369550783 984638718 320578066 396410649 633670839 826191347 326332025 659621318 642723098 815683819 525158023 132023489 137930133 841458930 862081489 2715183 9604748 704726573 388874342 842705300 63596504 733203087 67070021 339253030 649151087 307361506 893639595 810036876 606014169 430229781 529584179 329781318 778694535 840370255 280676610 845170627 46644157 969754196 804779369 247992085 861277600 119901568 890190916 697295177 577680015 397220436 418728073 981836054 543008813 439943913 828932925 765067315 591457683 809311783 402701390 698889693 865815610 197370321 932526675 886841173 912976390 945823132 154383154 387350654 294833518 905914574 32355043 732296633 178813192 182765056 95678119 825752772 815240649 698088884 844382527 228272669 302637056 894823857 954984234 234136615 817580259 997277430 81776846 973302311 170040382 543622413 821893285 624382186 11071579 400604881 767630772 495634546 863536998 791445647 961684552 983161552 784060961 361273779 807056364 760714512 935180103 794649259 672494577 968593162 369445333 871205772 922413177 648805621 861526369 670989236 59999633 695178685 823078787 716733072 277057341 888745715 926697221 652193869 763716319 231369714 890884334 171947707 209108891 377393689 677005011 36626141 247732891 573887241 760723581 203487997 893627022 36016152 263124643 5969168 913906791 474457338 668941287 591657680 401387128 536094325 10724349 744010929 488652099 493218170 976875956 328528606 593835286 715561976 758003495 929718994 792349904 804093049 262329372 608538165 194536357 670235334 992653320 955121901 788222358 469366383 883443437 569998673 790587228 583586567 836014495 800625355 692336337 607698627 224238397 623778195 126917801 856587808 454463467 399968691 946117033 358304447 429992658 304140284 815265759 937969388 678163104 338775543 739088180 174782506 918954048 607097597 849412169 210511077 414542885 865149050 362275807 873571514 263881105 434717000 691564918 644458627 956264893 191226402 89887975 386223695 323984822 464914156 531696346 692706065 974758438 588245637 800990830 540745962 756935552 339847404 949941270 738982800 762563287 860954367 949275678 881197964 943891766 663598774 790571051 695578905 991339642 819661689 476431680 426335438 314574603 814464292 209633587 342928338 120808875 146641964 199127400 227739460 873341262 143989949 840450074 975574208 917973759 752939925 863558423 871680070 355495925 809935244 517079682 906690196 414527575 598158901 29314507 684894501 367786633 646281035 998921289 295175275 655373823 716984497 995991263 266087696 367520097 476383452 482747639 412046699 548510359 828365364 213404210 862129359 99154398 609228187 452443693 486348035 713368849 653054866 612080261 417403054 370727958 705146032 983257618 88610812 371465980 737474387 273124987 812706735 566776234 228928872 843284721 494161641 997263526 476460961 534141420 813576201 40778287 450741620 747278497 263465691 711443671 482167836 688228726 324313010 643808389 829040217 694331012 893683834 434244724 910052633 401391837 382683850 764236232 181218751 210125465 573604368 686818603 164028055 221241350 270276409 670989236 815564786 679089801 568433708 707057104 638915883 754583459 179833586 994194295 494867135 373760998 416528697 919654026 602403857 93677790 795492490 308281076 223082358 100888007 724011749 986333276 732660891 830566160 761358063 865296080 972279834 30693165 882976105 880486694 907705339 822792014 876861985 837780805 331793949 388933383 387300716 143803250 832228995 265770719 447322236 744941951 238514745 63086111 101821472 686559265 634455349 851239492 745043269 770538584 949430642 393620589 292202879 671956213 405150312 137837436 424376519 82684551 768717076 417557563 977988694 961157910 438344453 959794878 758337651 561221883 695820667 158246041 268996115 442338765 14940852 417897282 860685851 935089599 548456018 874365130 735602264 821549838 402479783 840319537 247547533 308577585 829090441 396621221 844650919 955481702 635151244 543779612 767498674 888797090 773078948 133139024 955785358 778930689 825158839 802541793 392382975 841416756 223498736 358434536 416324717 688911602 805385780 946103309 951533533 958768157 139271357 971674092 410310163 893628523 266584522 168876120 716438278 41239401 711937073 602469165 942432996 592261689 433702822 545358644 887292498 932933643 960054475 741431185 518459629 645184281 828566112 360593903 789710684 396732616 960333626 717352647 993707647 118854292 460495443 867446739 880367634 958434988 937677282 117822505 26400182 618466306 914848398 437126821 555556861 900597604 718394454 501757759 553306556 790319025 907992617 898742281 672433881 764442325 819861272 916505949 967918235 362308725 42098981 394942600 788571469 687749989 863368518 951996439 733545148 988733368 473790079 863672221 734611773 838321697 812230980 836213768 395384888 966983028 234975980 318830775 220593622 819255621 563740327 15931809 431399793 651475445 201167362 756541754 753723375 843191844 85355601 763851152 353062576 666432158 295812127 7551607 993445963 652963281 840133784 525095543 941411577 760504793 817562779 705036484 793867394 899953099 941779956 991861261 741889940 843348243 194522481 588924774 43147502 715606604 819301457 844448149 698809702 748232040 175836859 700833025 511057416 110787174 290556143 229252298 670989236 563224963 76909695 370038364 202348009 881704903 978218447 184548529 778162857 96912850 801364896 235987155 945412703 901452467 961850527 920712338 261748100 968282481 228907018 220752337 593878085 635053214 853284554 953877163 279723081 805790483 566081080 715827699 426657792 703504462 685756160 202061141 869637115 307544366 340279265 598701132 969079392 509876845 303967154 428961284 839465718 509917891 182364827 701379884 282387385 898093586 211695406 249359410 923641595 64736004 104689989 659860337 531505471 309146633 348751886 583145994 761050837 208543462 904671696 402334666 801164695 240108372 352851427 894506584 180308025 262440192 982756656 670989236 245011663 988482209 528951555 443433659 785172635 805112302 935423553 771503647 64160008 503504642 735034936 253494782 934038229 945718572 96306380 90732110 584024958 173575400 255501387 198981250 993039906 878024537 879679960 57479979 984115958 784673018 414092126 887344118 835999287 6464172 354072440 75237070 712828688 742207792 995237127 424629833 317244656 703021879 418594088 987544694 153983546 579909359 705113336 680473637 901547617 321402231 19370640 854504976 59615654 256338166 960296931 199946393 850550035 745000786 188432843 385772753 673618807 556385939 180809900 814759903 279209632 601668023 398681333 718400089 957914921 852428874 61596920 974263593 807594589 546301616 427970769 889279774 263245971 902731791 706041335 905710669 471660961 372628728 892750531 468649108 362672346 936950344 661809234 835626131 828279900 531977874 521952518 637268337 848026629 833890911 754091049 896308966 879017518 264975301 873766861 747068983 101696394 998907729 426206058 112493737 763728288 839435552 613631498 635485557 897885271 900235797 837344926 954808714 850909127 764396453 563131287 656079258 745969396 781504097 952365828 551077731 628862153 658179406 881010771 616682875 758525656 411400516 866120906 428710532 922915847 249672691 66224418 678753496 989183894 931574547 703175081 938609684 953031369 729473076 110946345 142541084 838533195 944563778 124383742 27083527 462951460 828909917 199983514 756402783 760886670 855944648 966100813 344626560 468181346 926557014 980296815 874442894 813129359 407761479 972499456 930794163 756298586 118845553 663060205 189290941 474156245 316185236 836213190 803625824 726773103 827673970 892430687 73490163 402320630 67939890 999838854 838532634 391061704 103061729 294795520 65380937 227378075 237037580 530803069 376629717 806410836 670361022 345316394 32262026 428540552 268599635 461138453 846426302 934598030 946076732 407256218 273649651 596562439 164873438 937720697 936378934 579313808 475423690 728785433 334025314 222459271 912576124 876644523 235636080 838189232 803958590 456323032 479373294 746759280 560738371 925812885 287402926 141576302 25460840 272183035 538623883 452534251 938850144 800263128 877064475 924325429 474465016 750249249 221473869 79421070 523404026 36646329 11666774 739783906 532848714 835955363 528371987 160102349 909070234 224526005 991388243 913182203 940932297 205777899 952659616 655367505 98683228 886232068 729152782 728297215 550766104 419127618 690837622 442173674 962818875 392782056 839092640 120074852 798680706 565908249 836834222 793217255 989971598 685092069 871939953 80496887 305216391 345815806 516496838 932404051 579897587 882036352 513088423 764131377 516264668 956752187 670989236 400894860 944535217 45997467 256206935 683931924 933219386 661064411 527721170 538553523 461071501 199911092 765315914 313878021 316931813 553542445 229757856 601451419 820763470 396038301 249754817 182375811 461306206 69535334 728523319 163679185 119294383 568129437 586366453 612020417 358802171 9808807 719602560 936567838 780486675 711914855 705281638 573719026 55505015 898558825 694289159 368530103 886136572 398696499 443570111 871879510 156284093 910146745 661630871 961607927 372533558 103960551 977950659 630287029 670989236 959404891 590583926 800238870 899248661 115452515 818086524 251770526 647387421 160777390 91355203 802580197 137396764 332383720 928678681 820186484 887780052 607298038 601621441 670989236 830578472 750869998 915234882 813404312 177080149 566941541 532897918 502535086 584055119 980281055 561039294 526087399 514089679 169892661 181630247 878015498 385902170 224496676 48936682 408270042 858483167 227640371 405766521 718509043 773122405 466715579 918147460 203193480 602936569 721099978 877251778 980103377 869852638 389293960 263510342 955984450 650372345 688560161 574599517 689752060 890709351 827878975 831175291 968841889 577170228 352975625 745687765 599543286 921839313 107332241 371012805 867802048 924241477 50535074 813707866 821897822 294641267 13594622 873669906 997291169 581753256 98630576 891741630 128865426 412982517 88760069 722518848 623830339 158682425 955373084 784050335 703110514 153279626 152339194 729602020 623703582 773712870 538532213 918098318 949205451 593820783 842697338 997925459 667421776 140728837 769531932 249959224 826906903 685990730 50733665 325339374 153659285 224259123 535621080 236438365 106941667 653451050 871288043 1928290 272957557 802744050 743094605 718755517 947315738 609993572 737479482 155365317 806213945 582251572 12583707 401937757 883301718 466953575 754217268 404847221 670989236 147205767 993173278 509239847 189714512 225891077 267433977 854818914 756946153 990884743 832397704 26732425 769715123 36954401 569469767 477918570 918762010 76239718 628196567 199131981 887780826 835099394 583350351 892629326 735301486 611976940 42364272 175509909 241134765 200825872 968626378 759539679 226984094 689349359 776482476 804481398 634692358 790938325 421497332 675117610 970614370 45676928 928057809 975636348 898338605 983507140 581434278 124346070 836398077 982224237 727511813 735198550 81598358 524665235 748054612 679851416 949668236 412357031 996577463 87110425 825621909 765833165 84195243 901268096 857332363 128664553 859282248 814826686 242245359 520416804 898871668 824782434 813423765 500101184 327374698 400243660 753618883 55177705 667555015 971088453 913902802 658574262 437498559 863666207 418028715 115346920 702449495 481522573 916122523 459476118 857458980 219167043 187942694 278594743 890757350 195970151 741515040 740719061 983897779 789857590 905295586 841945991 764188862 73273158 865605038 674098059 880917975 620343121 836273977 473247402 347412630 27111643 952426626 570102319 378366198 976012693 939047117 640267718 935154223 947976050 251840319 823869980 238230466 796163906 27570818 426913460 440721255 951541608 801865186 370813597 702501946 717273780 983287479 100451397 352576418 955563475 161168445 977667571 114262360 449694861 771886176 676711344 964857362 975299310 598120713 828478682 657659495 818699928 992483871 873003594 52862219 207014627 792216436 232741035 682950153 404952811 941648721 835915533 590810289 296180814 496427874 836519812 633084824 692541552 295011368 504760708 107305188 571420826 193292757 438821506 915860057 428842559 229873949 286800451 34306865 110662065 733490947 497754865 566462077 880370365 200538316 928824576 947036493 142624304 674578184 787793349 727088662 806176376 130441476 983897792 868395139 314100232 463377328 953056575 445808248 906672251 975991804 472463398 943208863 723549383 931467651 237234971 123901623 688206849 640578910 311968854 784309481 986250222 699942557 195714677 968599628 940781176 935976792 443363111 256131308 521515648 815313951 909866354 548971476 203687273 240692998 955369330 874248840 950237335 827469979 827166429 218080956 282942057 961191845 813920185 741036641 290180511 986066712 419649195 409973715 670989236 808390112 436033089 22197548 943309777 341477178 574899033 759101171 851557196 408668417 885058892 270588949 250274341 75392306 77429844 838039058 863324542 793863434 4135968 902114999 32009032 454350790 996693352 679025664 870360409 792399174 861918117 994957881 846696135 886690625 301130009 827226733 351568139 177302893 715828274 806979486 119598383 205023701 782746450 156335598 98328904 268964976 228148966 544374556 511566275 126908559 831908032 627018710 679021480 798688562 977445420 631161731 784952568 259034159 816451219 20459510 948554193 730842896 977947777 41032347 278373031 370189054 884214013 633905577 598167094 576154873 765673130 834775843 330347588 73692336 963294851 156852293 861104689 701868305 878519143 206015016 837518166 702621718 428977822 925424660 890822641 451848882 888979754 445230869 684978304 869252490 141751315 202195402 717834725 648520092 794906338 613649857 829075037 208269577 201441329 928822374 899603767 670989236 773000318 479024211 232614067 768529486 260303141 982887855 431348824 819964665 587489298 733561518 541989531 766441143 594001949 894692451 978355084 121655367 736047453 305958117 102258202 950633956 184215905 408914839 809324267 595686755 780861656 874494770 950452816 670989236 39107696 911427010 30164227 718440782 87744801 284321018 748288153 319026664 891947313 828651535 148017361 222613364 999004200 855224940 987927349 662325101 442980218 760964483 127506794 178702127 712253307 94776957 413413797 745457381 455892042 301045836 727003595 983944535 265451424 480774292 18221450 34691332 111086720 909186529 355438647 733249644 348950446 969329411 556966342 383973620 701158904 802606218 617638384 633313238 265371450 882026978 995386095 387400608 342130788 803203950 515331327 937743026 770028871 491371686 399724522 742956360 903494985 629395314 922081059 828606135 245429767 649752449 998627324 336099966 314349086 497050702 11873228 159718019 246122263 356066788 740554171 798695773 84852083 273637952 134626485 506000013 687349568 670989236 958117769 208698426 695363542 213790735 512227923 930280734 312059467 316028971 684990688 410602041 865245700 64663084 525023133 542012766 251196041 868309913 104956548 915905694 136266229 563928644 285833990 796636675 887571383 54766215 285871091 817925286 967687975 808648778 413289493 560751794 334268569 910027769 674382990 957225013 719356877 622510017 116928196 771603222 470765201 46633535 951558833 746001617 323637663 494283364 428978180 539070254 829347140 795253087 549608389 779343974 428949755 366009890 906695383 645718918 869785861 483438478 583454680 932361982 777047695 208358278 307559808 971855254 574718170 468066566 541397997 580890984 194660680 196372830 799050565 425998915 699370112 632264533 276446641 997004398 16798501 711563036 806399299 449726945 300835573 353125043 729520633 456002565 709246959 349515236 960502782 139154544 941571604 599628998 837124300 803824418 231344437 674682186 663594301 932402259 243154478 743102147 581862339 32734624 141746794 296057323 242720060 963587390 739315775 505958776 189763980 689837013 10274645 859451710 880621800 590485145 805190764 762691228 970195123 818171161 944713950 919956455 175534367 482300637 541909603 772505404 724360857 891965831 437567344 108505538 565678760 555340805 139955839 651537975 853448200 436395404 323225584 174788200 368284923 322738618 519379270 781841081 322419848 238428030 22581434 705378136 358228124 941319226 938940642 570118255 708644668 614359821 54725257 181149503 807375594 581154784 716234297 615097710 621980292 897666719 436423774 724918401 931882451 912738689 320169869 216021561 501305870 752895833 319994387 222181002 769223852 689844162 659745414 356383939 518762136 922832093 522083291 895022227 346622809 641281321 984900379 818537686 972408641 127791355 709363552 301064421 755130343 774297167 134956421 756639072 435553161 692626827 842859426 85664492 348726302 142667624 265532661 239735958 817679692 953842787 108211258 596324704 416813083 354680551 989889905 934786881 746630001 836034219 489591391 984839140 102599995 854165862 888742241 710988962 811653302 710129620 604132601 355219910 872760705 725930577 279449775 761875998 966324685 881549691 177245396 988962407 199562394 651281080 512631156 979874657 326714945 640173778 880847476 889283224 39678846 623299161 776070251 35338130 844774310 640909124 699735251 988362261 719370570 792004205 691759429 119196108 814640593 848778793 896763640 801803164 907878442 210354444 158605806 760235019 857569714 753758448 671233283 185371880 877238129 189306000 202401918 810142520 459907790 792815702 394814084 921868628 824753004 999510852 902970796 687260258 504092309 751543608 957413163 913604699 250746266 869606719 683557854 916795188 750238645 514617021 994770320 281614709 701917520 843564451 695468529 803182388 300812770 829665469 633794394 845574043 185576890 792236273 157652276 122631968 710225302 408661459 115799248 701766197 818492520 691215245 938132518 229013500 932088216 725374272 574803721 50688184 676287672 999711610 670989236 396304966 755578586 756214798 450650384 188880166 844733835 783225824 382646669 811381146 986813568 764008537 841644856 704547817 242186003 105254212 776464669 330134588 780244091 641155467 178468604 172334805 816932884 765519821 382658703 147086207 767179613 979402951 644963142 516474650 987979670 670989236 530315909 687177951 941978616 612382194 528518634 760749048 705002636 490758058 785653279 78267342 797780028 943262159 893172721 847290317 70653836 891070091 116500153 729681754 960889783 899803904 371464933 70356529 576670826 460856479 729251155 663167958 816392578 223845670 589389532 670989236 38962371 659946377 864822749 911005042 986814970 670989236 572784676 62754244 802708469 998384871 678375850 493314152 839667609 890348437 746053039 331833705 149075703 695089674 419471460 769363859 515224998 333747537 51957106 306640805 995002630 880294443 394878259 138422731 548841686 709580132 144154183 669912805 70333750 312873244 663898588 823815273 928872540 106719431 695542942 818089495 770489993 241524459 67677838 118950140 467535636 864071130 222507030 879778506 745804168 713980461 7731536 596056991 483410322 670989236 799624297 811122601 545361925 670989236 996312072 875443401 855829345 854193664 944447588 185706547 197981657 744056796 86746715 890831980 966623102 704355542 348109176 718314733 236545987 282845712 92972557 35289878 762586108 861638982 778569776 710932777 322347683 56827177 736858416 829835028 353408052 592336982 713157389 108584619 703356660 238211114 575460212 25946542 199921768 618168527 722324604 995052618 962659682 61915870 627586924 942364861 780824721 897103282 814355425 783466885 700580617 812134034 815379347 178852620 274452122 67663666 217182393 837542693 511785837 940893209 123253126 541620192 247377034 840421155 898201808 261473364 735368224 857112449 867255087 781689436 265415052 754433533 817835639 816722745 966536353 48751929 113730841 250824417 519753011 921930653 531892613 798125953 221672154 348716160 932260480 153141872 53275857 36034976 780048360 799329360 839089875 895108351 681001613 971975513 902150157 304522851 324915295 655690073 767866841 870808555 740024000 481878339 851870880 970371618 688542715 621063260 682315328 260757898 557356082 78060057 795872199 468526517 871220781 580510252 314015782 832078697 340313601 51048388 4303611 933178141 658984099 803706216 943727712 903050680 693662045 156164897 868628489 709146838 670989236 780566134 862503973 14074516 734995246 734408386 745035046 338418606 560142242 644698784 148028409 832007139 431136563 795978524 410310071 950950025 662736644 917530594 685739811 960134087 689849318 593496813 976131433 43062645 250248458 568738145 992018804 967189003 290363908 133915141 433429484 765942536 774091147 979039684 777612711 925841246 805056087 508021069 645855887 474345157 432589263 980553529 755827911 990589874 911969436 605551860 322898880 364343643 908416496 538890703 199920240 541375083 991167044 912064891 892570894 360984170 202245629 311031437 166638878 753808427 758459056 814556459 427660704 749512541 898019968 799275394 516599385 627887968 281058233 683459038 763976958 311788247 480706396 798723779 282264268 470225858 666984553 413658084 993053685 895377217 32303352 494656089 845941818 688026519 62571842 602318760 684279564 352168059 153896377 718854099 683293381 670989236 65510305 795561408 863820369 655639896 947948980 569430265 428235249 613554517 9756761 809873832 568060535 31931356 933513060 599799041 491721967 847252269 819284702 756652290 611419314 524940120 990477231 320529461 577952430 704801625 872816644 124321080 675081626 480303069 753517012 679210969 726412902 151487877 998785136 670989236 684808684 525803725 400540681 796254022 506444301 833820433 842631047 954806055 889370099 694110338 458901888 960761686 513028921 407978913 599087152 676009407 360687306 388128199 559249490 960768789 401414031 740750294 944730548 351601390 877897080 612791900 206689517 208322322 753855580 686950205 285353194 970956078 118716664 950666314 950987373 536557413 768334562 855163866 822159678 994159562 239306244 782944379 530784231 670989236 668564083 750443380 847392856 211799843 579663916 667352503 883320864 871733692 907908952 730819533 930013599 865569744 781950960 933284107 970595862 16810344 765982577 648231839 118288749 936981408 809947672 855312094 540790839 959251694 25468661 468826364 491138589 190035152 524708202 239314841 422969724 809824858 535773599 987904786 651896255 796557077 157555303 666682841 20807105 278145310 661572594 856077239 394663105 135603331 390689242 427744092 273538465 912968012 222910096 395737503 36936165 121105868 941435049 530151335 766310827 392170967 574547860 261837241 239937922 670989236 774951789 388910010 114572361 929492928 737762637 297681954 581435608 822790645 372316151 935208717 109288562 171622427 184687538 670989236 384126019 590203488 766639436 670989236 312230552 253362472 263288824 670989236 670989236 369957766 194861191 739652276 970049063 938753455 958600734 648896866 737187596 903289312 261890482 903410296 40742361 166223847 967965303 738301011 193587819 947495807 774711669 787911379 580997838 340991841 685420126 887442455 904707508 557630997 517381885 718410326 550443064 996031857 941553862 804623072 568408582 766209177 770065049 345049179 418946594 807366988 485882496 879326310 853608168 330362829 716392874 897619618 362082698 669179961 501719325 797094764 694344477 289256708 734559472 351432422 890744709 177754747 341242832 387198281 733357640 658400667 722084039 607861295 727915946 702353461 125077091 177518592 509877487 854661643 297084263 434794455 125930460 998409349 670989236 480205657 912882794 342459869 322444796 899897295 884253954 236077961 534252619 968786131 217593207 923786762 872274266 935198 248135622 916981302 157383407 107019224 974972481 40992520 99493301 960709468 949824665 705005550 6580602 876714456 9894376 997594776 960768743 444695756 216342400 829821462 979320897 75516350 798010446 647624226 100396828 27105726 929393834 205956351 795517384 345970375 894870391 759137433 731150336 169211847 930737761 135493115 325957649 595854357 982960538 534043375 241381270 712265741 890001087 448675425 667803984 105623267 808151240 268007390 522897324 10055758 863768679 790650956 408135336 96581661 550096929 789458061 710210826 378260122 725702013 343917038 789148420 838749837 868109825 926915262 846139490 513241769 377330189 750133989 330893275 675584514 37302458 674441843 752329248 316460087 998510384 631457837 905304896 135080667 754748222 932169873 803169996 805809974 964864672 736827685 121739538 881114524 964711925 298738235 41315308 863551464 68895983 951598931 53471429 906783645 64164526 517228671 455988581 665713196 935218890 814523171 929497311 883271466 473069273 818443025 375602133 706559834 852307615 856541940 344577217 576382986 543690360 963738874 549061653 731820980 904764166 430516621 19019632 747675836 398432905 947732920 943055697 153651684 917267835 841691957 975131002 861105836 723354437 841980256 359685423 961471817 57220566 734274780 566277366 938384762 754531445 860457778 113195434 922728974 753541022 632200475 706154644 273386707 946483691 235280687 68411853 760013791 810667131 960603480 801757005 537992721 841895766 820735752 330945417 795557658 771285245 806115683 488090627 791000402 590874914 818345935 252999026 774440921 450644142 404916101 945843740 799054781 493383949 212021498 229465027 271504981 442992386 825789001 92542031 235137703 871052593 943911591 812159190 960420446 854452614 31038727 603958559 63601995 844337037 74570954 718974776 18055132 209128343 522674780 240640906 350417535 847198409 288937757 146651186 647525174 769432734 971201625 917627794 7400081 891869208 712958319 454320120 958998233 695844480 882527157 693001913 546782817 856553976 316782748 523397747 325377405 913808664 850437863 155604688 356202254 604754718 455838753 189956284 626734463 547938944 716023991 221931316 214417508 583335637 205580677 88004743 811947991 904275453 775698916 802096147 698572627 144084350 741760529 863508755 172454013 502801731 775625676 285129719 978820746 164746900 448603043 669890538 36632743 106857225 666441986 873243087 946764239 382679302 737906743 783636404 296355271 861063680 875034161 863480753 655663338 638567151 917559048 711246519 367561626 205559177 851203925 780418731 154235558 820439795 960323142 565427079 497436877 250768925 474277432 256695382 364116785 865710242 383895060 531232600 957798597 842703298 452457065 750303496 695705392 724768553 521073875 38451213 848055062 767130238 206722398 520891960 438839941 791657230 487236237 830413430 672940557 898813207 960763462 448745634 819877314 311342021 362002910 403332316 776127510 670989236 159672774 921314606 849313640 758801549 527145517 718436093 650988187 626042959 566981214 384466586 531729818 924055333 943166104 795033970 852468823 918067218 800561804 229661268 856229899 997975401 710518970 659334100 708301027 908250907 686686369 965656180 679361467 164252767 998294125 566863377 749049796 699954278 156715869 159929677 189813390 824352334 690302759 391458987 265382249 578602346 197920670 548867949 200494506 452153211 465260638 592575101 718814671 720904083 316706658 707268823 670918295 774102929 652874359 744171902 717090303 158333528 142066411 753624489 751674957 889752856 958774886 866709189 677838089 572287714 670989236 942090433 410089340 244235524 687011799 948530844 371908587 44182622 331525096 832824310 712680173 851679584 41082210 696753392 96180863 431059541 99255797 908998906 898903474 112830937 748430128 479788891 200481839 712788850 896951915 844388710 831317072 901004823 325822488 670989236 708513017 794666132 915722622 539633901 823210083 587733812 687263795 99263383 313997857 386814515 519867629 562298006 994824444 252984943 719090677 318641667 840088702 968033903 67394923 685331702 655174667 966938458 814945353 997716447 933615451 157676268 832787013 860678157 399444730 206198309 17180027 237804438 202181786 21135309 789076945 429777435 782836182 935397846 709549785 817520088 98349307 499927371 953599373 702667357 740337686 792891004 957776486 710858049 53621191 616459964 623546026 459601806 909314423 961771384 779864065 676673447 104970945 962129541 860814807 612874169 526952159 670989236 773086769 904772427 672003072 163994845 198191582 921067346 296369203 571645081 670989236 730407918 622712074 964561749 972552871 199803520 440654198 448138375 91783257 395784788 145734668 846470296 252826612 670989236 118926091 235581160 205310234 896468999 413943946 330154065 76823799 514351504 302275565 944937802 101913705 596231081 613572264 404941154 600279921 911966756 53575805 387331205 743828462 982610567 680263676 604379146 307676622 962739348 961083916 828970131 82562089 286229979 686046295 663341513 871221573 716032680 863742338 693700025 850309959 971199704 152155273 686352347 975159961 861343201 759822702 991738330 630274851 77912499 716480508 839757835 43539933 491510650 712551091 987072404 604136889 761767912 676140357 670989236 159440862 595375839 456449888 727270271 26237364 862113669 767376966 928264992 521108643 69619302 138468010 903879445 701527052 834083089 643094303 958496689 657389251 353458862 888822289 803075634 704434858 994087255 440132213 725507842 715695176 340579306 589078479 983610052 429396678 732453872 670989236 922672465 956646613 990074129 63389117 617600969 714997247 144891435 694459412 206074568 806391410 667604538 851301830 654423070 442607792 970627174 580828834 689222370 686525750 367093863 841665362 790897209 830514371 992578513 775045562 412137616 376153297 484569260 869125571 909255825 628233468 659434144 351455563 777439416 102578613 166216077 931000881 679479911 799291736 534328926 897069200 954837116 254712469 759574830 681451430 860331823 608881622 175524046 917498130 871067645 710355899 772367401 738796217 260915279 565763518 383281490 534625495 838019431 807917198 151240645 857411813 361331998 723185267 329195053 945640188 484673623 748782362 923564860 47233590 749418923 699056209 400625283 788746633 828936307 284995228 817503732 984473090 997433027 974483102 201759416 694483362 909457261 888389907 920477445 171945507 934490650 667034233 863810644 453674099 750049408 614149974 461037777 712750123 768916697 641674573 570719582 839942525 314764976 561779255 470876023 136155571 767741199 104786681 591555378 807848733 728133566 413640253 925980089 998494850 813693917 228888357 743869241 633089564 806917131 215444220 731944965 913672284 838785694 899442055 985107165 489028243 957262909 888448037 947845718 858180822 291779872 28035588 618143403 940106335 58946134 465780044 268889200 811485880 578425893 311138182 892065053 176620197 670989236 303299173 658051034 8027168 577858214 160778948 291993037 624670726 188021266 210779279 847067047 950864953 529258497 969009189 725996872 237657968 854961437 447000964 859121098 446609281 350431977 332794089 874650318 18126363 996312925 683416409 851556067 890436391 873427858 743488121 886444895 323644398 805714170 740590380 857407363 124607229 287969037 593166918 976280248 639365131 721412867 529509783 223635939 524875602 902037107 785078908 822304741 109504179 922390435 927015270 469662143 295306914 888811863 955289686 72369314 410017758 769416970 551090367 798769385 461489683 908666472 663161451 707986993 87941661 864091673 836248955 853162159 520091130 51966555 47038609 721059364 874417244 904220538 531226638 859884008 973083518 670989236 474513088 791250073 660921776 799064344 148776995 752067438 15529044 531434145 934906464 168398228 644547059 444838878 921760794 709033418 885717589 278895279 871722270 321624277 212785271 770708580 814415431 325903756 465541507 883325519 59561582 444950692 403788239 370672624 560758732 989753749 425130077 866911327 695284592 462214600 399642075 89000493 844979951 769325918 670989236 131156491 208394365 683049101 832450702 853276786 833276314 895678878 581842453 877946178 584845502 974204179 628454617 918724061 500184238 671865766 515292125 743564547 809992555 91392309 603808024 86438032 68571292 909643389 902311309 594092572 272245158 292882395 91811460 995255053 803784127 141903013 146995531 172646005 179311228 730698579 727642361 521057766 432640722 670989236 181848623 963375649 993571631 783405814 307949277 146212546 130480071 885882984 760956326 284325673 39107998 392753136 851102822 910536016 539763250 314513723 303993560 376613249 941410321 690589299 34794135 173604862 828434549 797864836 991846688 182436398 612009765 922263455 352590222 894400946 470102068 50527768 675722908 839723932 368315719 341867927 5170076 156425828 722131494 625688554 634849602 967008604 567857568 555888439 692323532 799037060 451989141 44505832 570214966 873515893 312252036 765543924 592986188 974568706 951803403 32826485 756901924 528841381 500786183 37813349 231108328 739863540 532674458 612085134 333398082 196745219 758181931 485727697 483521921 732697323 800194837 35989908 719179070 253543118 388782809 801993018 418683389 898452371 754210459 670989236 81259161 538096155 340074938 243421736 886494802 164763146 523566072 684782182 303942872 652916835 15548358 416057687 948831796 343006189 142362163 720582550 917461216 118135876 919104431 36906342 864433104 433219411 103526715 701565145 483214533 268139989 191681081 780481758 688750443 157771643 500962554 990801074 254184797 783479565 908042826 879867567 673325097 806570094 820146882 936944377 705956938 901760164 286939815 817023381 897511226 677877809 769027182 327639983 708786335 760473685 478592582 56508466 756118691 730312401 613543701 683499313 212748319 552495865 818254559 828277979 609115102 28844395 25389505 759339672 981125619 670989236 826674533 473621941 485673515 865022547 266061327 342366825 897038966 897340723 255122302 762580384 465942885 299289700 932684954 246000373 805520074 157720243 723797631 730631580 499442721 806236796 205921018 31723459 989499014 687561477 456905540 888599801 882790645 996480032 825298020 930861137 627688577 102707932 110637298 530645291 174290553 222530510 314058777 725481085 796011742 492020664 486588500 670989236 892294302 813931773 736737645 613995719 883824901 966792939 750743811 441236487 411817951 746992866 298634146 67153770 339746259 426033797 851816133 43294656 17536911 560870734 760424070 181493176 502241075 904844110 929374632 769972662 526124817 232565196 852250754 824748070 624169874 727629314 928973832 791398943 899614022 963114228 647681016 220763361 782372007 959320869 608883440 705993220 725538156 906299870 959488513 795608345 964556721 692892663 171359938 352232414 940976304 594060454 805289159 773062156 558912476 936924066 238405190 784842662 951537444 670989236 951530711 301925979 670989236 750521212 778159398 883389112 960424209 708987059 817513164 324607127 359467058 109319831 554375768 699255760 940242506 788024445 897122434 988306550 93273323 459693791 429027160 527089675 890718760 778690291 76479311 845277526 692064705 816986714 448973176 286839900 291939205 829679696 882492847 670989236 539106437 753959861 172755883 642748573 869706367 572422796 253398565 50551688 829107480 808086306 876399732 691036996 878397304 361226337 63194907 414627528 53944889 357188883 807284474 147683281 607830280 670989236 543746222 390674731 389231345 546990924 189031538 491664606 756288000 426842139 563995155 515568256 604113466 819515557 766746713 680402612 670989236 797743602 821127245 503563956 803134088 680368203 820863928 614180476 938184447 138010915 923134621 533715377 699942177 77799691 843259867 892196064 316621573 161432634 366892949 890559962 358918721 921604654 715699531 851813841 817340440 494448483 626213058 825702192 783499703 762286324 197095399 318398389 957090381 737584019 724775168 219513565 39090503 828979177 938700750 670989236 646994217 696772021 918928738 307722771 96510332 836729265 740417656 797064658 375887119 541200431 303283699 487261196 670989236 969221424 863509225 809900609 699286634 98596307 952768223 926998898 752502571 734774987 579384279 205528875 887697574 980335353 998795555 49337477 31156842 408524155 905891819 328244264 671644200 492816872 734642223 845310419 989330884 3908948 550075397 792974939 72111791 749181163 736412099 884758111 750772550 920297812 85727781 339322925 882824645 434427716 3403948 317250827 803731955 459043554 787638057 978510832 419697086 666027024 987946160 670989236 234321193 7794525 897426367 990110683 648617527 725165220 320434782 658761099 336303769 953242538 773003908 586438496 227159292 543701003 780948032 257076161 603639916 730324239 383474307 896239707 9568203 637069101 753861978 797822719 976349321 909848559 958494321 681311261 109149973 718760042 559806347 336133425 269448620 466981647 597275048 847925468 738940715 377420577 806350809 300287046 792174488 247165694 933815059 218568338 999492827 604415757 730499255 985417252 651424034 784351730 86116018 574951798 141052292 993428225 868747236 853293568 967089058 500437959 427464716 326255306 944182146 443126632 266970740 383908945 457555889 65772430 232714589 167077260 248475857 792095053 587625275 816081880 36340236 91041603 384370750 223488812 857698683 993986533 501452621 739048359 305260433 791559013 189689649 908982070 630241598 921970534 939019173 773107890 626828438 847460981 779635301 902799474 834847756 437079377 834890494 916296943 902463979 709113199 839809123 888531505 156685436 597904586 832003145 721360523 61614853 630252661 207239421 183389237 887785633 339044584 639164353 213261309 716861160 753389975 360800413 159406831 296938031 955798619 428235898 749051803 351329352 962727803 709528644 436052213 229793911 358297776 678443434 662779158 316873750 451265101 780468939 760652875 853220244 199212780 759929701 987007172 932117724 692755405 934566523 522295738 790597012 860826845 232079481 863185216 365138221 919320203 315851652 196043058 546261497 866759592 232037979 738933272 21329483 303577330 142389758 818840430 992803127 871328902 964387238 850328267 440149809 867842745 560138461 15046073 747897922 608505419 279119745 919477429 667165854 726089847 886140811 967025644 670989236 207224714 522180316 790009161 427874019 159958955 729007513 490201474 691900806 686113542 130460428 844791049 874070123 761646575 513873231 91434008 859587016 844590112 936377776 195012699 955011822 157243985 572878404 612607421 212089264 333595027 670989236 398684040 108962154 267272970 858668589 112138840 772980795 403249928 759305151 553089791 845668299 487221504 606116911 794589280 742522413 210147267 900244668 542674011 340684701 116889076 754007935 279729832 800712046 630402355 243811595 994453898 679424123 728334093 731385866 682388830 358274510 721495286 504959459 724359255 584288026 994321871 400607375 544412751 603376117 63356358 466801910 934154718 799659348 784647929 379027277 898229730 596706279 681004827 540601246 218828072 336139178 802550227 80226971 717959704 688319439 897006764 160070336 407546200 937461796 244027475 768246518 294318075 854750616 747568097 737534126 889927208 852734864 670383525 224594076 773903787 834203928 19495268 669679026 797386533 155274896 572656001 424293733 304342369 286751673 329417821 812614851 966042020 625963570 672085403 59667145 886278009 977239002 656892831 895743004 678990233 856149414 943305296 934877720 786151969 474200563 803073000 807803909 388214901 494193912 888453730 992694039 431012626 836857295 695462258 615686849 867829161 889425569 663713043 802786939 718986253 222097534 87795951 410311064 920303416 784782338 526856423 385260963 182262289 983056544 350106589 809398986 773188822 539478960 146113807 365691419 736155833 108936239 774909590 180732938 971050981 352952233 161041476 560005376 684060699 687176379 225695588 163108612 458486133 885867638 735876659 764748794 417890164 617757601 86873686 561963360 865442382 838021352 855673301 599769225 202623193 738284478 641936816 799250810 203510153 814952579 95251033 250849384 889710078 175507969 333732713 516441197 619302455 921959850 475168360 484358959 673577141 923120678 511142378 679302705 815330128 578811030 19140317 859116872 238856744 700645177 715017636 607784000 440287752 180597092 424154940 642423993 398798243 843598593 580880441 151106906 991508168 369921550 805157118 40324126 809155936 515590823 180298360 880292327 737004153 597793180 351845966 192442888 90966174 208355961 728205471 526321749 552152026 463500126 858383086 420689499 366298247 963982069 292320163 607835010 970791231 159322233 268944733 51268204 330790728 957797024 226322741 793496230 115784502 906995826 187968919 159641975 360321109 996365431 955745654 841917532 601609935 754706740 957593661 804513407 985208317 886776342 285393040 938679034 571073258 474731700 793938443 874130418 917814147 782392642 450936281 514451000 135487926 317585911 652545487 357083168 104862592 648179851 935595626 862855415 453144432 717904438 329329577 83211452 750972334 830230778 884288580 841647290 104942927 588053506 778286671 505242941 776097951 365621559 93589576 348079426 998991753 814377917 612885430 529586374 87409875 492027706 334196490 963174677 615215095 399980112 546863985 991554671 672863206 869993553 773926142 481953471 467721978 517469070 816446422 539636914 894338545 206871829 996070947 634757313 357605145 158101144 387475026 323105901 306095880 417071198 818991577 878036615 759815819 251565035 556552807 130161567 938991648 551851149 229086971 237549992 176654029 944258552 719188826 932835111 774310640 803692340 277214578 517868423 850984585 158007777 652148095 640022158 678313492 810834338 913170155 924917627 848209338 458785254 188996699 893472098 129222439 558249308 437764194 961334729 99055305 234836453 226043796 395049373 697773122 543435552 236638448 806527680 688320480 487355420 789458316 471938909 528419020 870992790 848454262 558184595 712948760 282335816 862521794 393059371 618371691 994225727 466057863 576626267 597494738 889100957 76897795 356975563 112283289 559781171 794380405 300493794 218161853 195374147 272991615 372725313 559116702 991161789 968071243 670989236 881941012 313998752 670989236 785770405 183401262 303823859 624546626 786203822 715568553 804388689 796040881 670989236 964948772 647830467 449815832 877405839 229215971 933993688 573830258 555747708 513727772 968493078 791938821 283035545 847094700 859087765 646760853 965885490 557580614 728843104 198910682 373190299 827480131 811136127 79400491 818761196 946944981 45546673 188023817 704850437 324652887 871591787 605889948 822765782 307017219 71546020 251517995 972222164 389566866 944894058 970183880 871321195 863359361 879952726 674644797 203036150 883861265 492419481 670989236 196004102 496383023 922826831 679849495 817050630 708231501 568101569 869036097 994934201 505427065 64141824 125318362 447768617 423875985 848846293 919605369 973687469 762689547 931901500 869757484 852645143 833094457 999258069 330667604 765295918 764570826 994350910 355241177 902655941 678131609 498838641 345625006 674198675 774491524 177815183 949024451 311814823 526863337 828113313 909203041 699724754 113667631 476333145 754622700 218099418 758222860 450630150 771866641 118348750 308657893 6750176 40236892 119714680 57677576 804828508 384595882 100404432 737189497 293022443 120707979 879422600 226085723 737865826 5657639 859593570 582722701 961274888 537471275 13683178 234739716 916120169 387653356 135155562 930552033 853991255 399123956 698224832 512255936 219763944 819520239 108009279 7320115 52324018 749852657 186163118 597306016 545462648 761320146 288690410 946532544 806632805 956664746 853472372 759352404 479028266 284743213 932492637 253672778 972598460 805131036 25204352 665503998 375708323 591653513 990043745 265721893 592002372 997986587 141594133 410637573 54688130 879498578 496933183 692355973 385530879 176234239 124086880 919319277 564934240 781868784 634834965 10488027 379737277 900439219 513092772 810287584 236156006 819535552 801016559 462702273 326529736 123844351 682712591 403868161 226615597 765942093 239312724 514822475 860995973 204112224 659789168 520348057 861677463 817609501 674579085 697145837 579163608 541655887 702688546 215776595 924120077 880173448 562250581 345500409 50431778 826778241 444265436 159119411 932936298 221976903 391222369 147607245 949550094 152331142 993159755 812891625 482705307 94321884 338196923 309849042 133118030 54967790 435685892 677897899 908371690 86398877 924530922 430608368 709694774 689466936 719929905 768677741 201911739 576492819 546618445 855554638 978898256 137865073 956172178 837374819 183346758 416746045 701052568 322987007 855604150 494760020 255089004 987456160 130384233 795748298 47177088 129389169 174374630 678767113 112772277 696677169 960074187 378257469 909556020 824877538 858170179 126151119 740395543 613539280 941368170 903913731 269199058 413198075 425494450 490708024 333497892 999038748 738945140 443668902 345211167 766428393 756752622 482944921 992723422 703696603 271121153 716072354 855255311 696597244 3131380 404508758 691605654 666702416 17663559 327901262 899391230 256904268 58474318 983896122 678738432 977806956 676061393 713679327 39004280 436068602 509054112 903021583 719793992 912560167 884228772 803373072 980016145 768893000 632263614 798120605 503521357 778380742 811277423 669134459 104821927 567809339 883463452 936387013 980640629 786355910 286542168 292160408 171773991 765425031 859827125 916256531 492122783 593784840 894947819 747893451 749722066 782165821 286643098 918608755 562771765 994815697 7350132 968328479 635477398 850281404 844660563 780729466 478577797 680220337 442859154 670989236 39511393 798265431 323443989 810218045 5820782 287947138 597380736 407833808 641605930 848376577 961831237 401428360 986634778 889929819 945878227 692264255 823173858 898240336 883864633 795195218 966811998 930393274 587441168 334690897 481367526 556522579 484162994 670989236 689998560 64998887 219130882 222551687 706345317 726210956 32062882 982993259 95571267 107856308 893498722 404752561 138004500 102196529 341654298 16436500 100149912 838364390 259142172 435427161 937677197 191113031 162079318 863635239 873030356 744386425 243922200 671746174 86193524 954015731 584466002 889931679 521146363 212747941 875920891 266223087 625112731 29704866 258796779 802795821 703412027 670989236 245236480 519289196 872610357 94213936 533636820 808584249 700406985 813714425 14099293 237436768 843820668 997885848 806606046 538101511 745540034 903873853 988785886 985298322 121135306 876460059 490354749 842691825 205518819 615435914 783813107 281249394 127338014 770349721 692710820 993502590 337537148 862260077 419601562 492285322 577868834 650517941 975356010 732272013 686788512 461739769 723849710 967802920 348937463 665567051 943001230 66405020 690425635 909352760 743215184 988433530 297028489 60848875 693139130 693205652 762455615 158428299 978291978 239492832 804715293 681233016 926985858 825777100 888467416 504773269 983983336 727097393 868813189 89529977 586832587 649994966 510166687 551605384 653531803 914705865 625865339 947413529 670989236 963282229 393076188 709440657 972406949 845579889 957873289 909921785 333264545 818986699 374819363 959291637 976437222 617185196 740608738 417202537 30718060 876927329 701017894 809102103 327713130 170244346 471094274 984846412 747127961 909072750 744536439 38692428 749576574 420556385 957881961 380089396 627949928 932359177 212746343 844798201 505635050 864451495 670989236 165384799 240357632 670989236 902658498 405129973 153920075 628559687 228968253 403862124 375334616 261820322 92906988 988733291 91135253 891830865 938508322 562347779 177861710 996035384 76827771 965046962 896589304 384326146 754413289 561940778 153103462 674165981 279453103 119075741 728155854 258783794 649123682 329217680 242994114 239816663 604033764 237371844 800615160 973914520 940775862 263663858 658275304 671554539 670989236 585550571 846793249 670989236 931037963 809707928 21525070 758365890 940982041 204624105 725340920 724422882 698348537 980792872 582042428 936986732 987562929 975304484 555612560 758177382 903601156 182847719 805879190 944189993 979962117 536422403 799458527 620615797 644163886 233612817 917315995 2453365 830748219 525930952 666053664 176197525 224954598 285569138 213325949 424759835 718341040 298870934 934369548 878464921 578103379 578971101 265147892 674711327 368473938 925670507 563355016 626388912 916075714 564557448 798553891 54329965 187083587 247439021 696970886 862227176 880493648 386633729 876256229 703199481 695532514 106039123 273149870 808200965 699775575 705677251 802978604 707076537 273239339 946602324 859959510 970675963 362946220 347329431 186149095 992419438 14670669 405806237 333198280 752559323 157352927 418582187 267242830 461038181 695401794 654768697 777946590 749863365 451702923 487783238 623556505 357078689 790948255 834936062 390963956 668346494 728954586 476660095 352881992 441965356 895156165 488835361 883084942 771947642 786541255 842813320 4010798 330292584 954489942 701731761 554165188 854830501 796710422 71085870 823712651 940373650 665447937 311512689 764649203 848181177 779003368 888776903 984192185 466948317 792445842 755238924 936971523 196131660 704529877 720990730 92538 975289459 280327996 475165933 443458258 979012513 764995370 828267449 723035791 813469216 287320083 915619326 27292844 721385572 708660835 305949748 703952468 855822599 455607375 750612085 183956520 103847015 790611952 169920995 106602597 68482228 256651822 599478717 79698783 796556710 919703351 410817144 848964131 600279812 836749042 362677663 233136253 918347930 55667557 966575670 685662639 7041578 173198902 740068298 549644216 617719488 408721271 498945600 650013331 101589003 856186252 828900704 902488353 926820092 817841320 940954347 898061586 425811887 958429542 641915884 287458039 728701306 702960951 334658548 90133511 711494626 686544401 377850049 352291879 320301133 878220001 981190173 754900778 834639461 730571147 150170450 704048844 755770226 888966659 713713314 564699877 624256017 839139223 675886659 845275966 687563086 735430428 903793186 405337652 456170995 733841017 687239270 449645287 881488176 673433643 925512343 485241164 512326972 357170186 194897258 580758784 604508644 808057735 224441742 266917144 67203218 852991201 505482436 685863478 361685056 864165926 848514859 152886766 894958930 760178069 852708363 494980743 795003906 783082226 913240963 25771719 656237609 972369102 172649429 559074229 955805836 935785004 492974218 687031716 240649569 125469680 727874603 491659031 711501907 644708302 903968294 338831251 150132380 747686932 836256051 919050860 395630906 735058087 738619592 771073439 129403083 901852814 449815497 623054414 50320952 736917170 829726363 830465606 239029023 68366811 437377029 680836427 681373950 8565934 138881803 741571277 832021671 413407368 672817519 804538214 703168671 304858280 416509828 449662790 69697566 318303212 529122313 336540342 390080401 997580032 647690120 987951227 130899100 799701211 595420943 175822686 776839686 746558921 794113169 349655110 670893319 537702968 367261736 950821857 28197614 5877835 222547193 944761282 54196677 580460275 705582299 835317505 949493453 265922408 154856723 478386937 735841799 703488142 213699829 887981566 819847787 843631369 312130880 528279381 289407045 674123997 883158721 192013019 468576691 767511673 573223834 670989236 402499085 718201565 947899574 575888660 982399333 185841365 572102392 136563361 794736958 441569254 227603238 550854295 675332967 527643756 691616555 937024704 375995461 507843278 713471872 899710899 699116711 698799541 305113196 943241859 706054428 865132287 781561704 856164600 431133682 316654068 670989236 600655042 827583775 907684519 938890274 727951951 129409993 966065451 317104819 97019732 374439639 998336194 960439365 85345227 870114861 527709246 317812270 286436439 821675109 595556300 430057362 528463960 887753729 870160907 383142401 684368050 996871420 240237786 420294243 322881395 851161769 372036589 769708677 897864719 68780894 771821148 646343391 94180092 187278789 741184429 620114532 875417223 240414463 9787609 540884853 882629540 126258992 287697112 337130213 964602792 699255762 691513591 781402227 728293740 341913678 465842806 933995356 237631296 619341507 192246179 321976752 737316142 916919667 869189710 815997745 123898151 905462515 354326596 748854554 326245483 814090675 707510875 13912975 112435997 817968984 407360082 980397449 571648213 517519165 8040913 890760520 909715144 593312884 780753886 451400494 65538581 314905890 869064546 451457421 543117854 778292205 219163956 896922378 362153469 133670043 10688962 993076542 834404950 685925770 766776134 711740862 414884097 716414965 757882885 967277136 923099661 808365732 888030097 183863714 537643820 688939157 801570961 294062836 677978678 702405299 997370526 727209397 862054588 406766176 733787280 848885999 694117210 933619911 230116078 873682412 865049472 649228414 535404166 104201019 850799047 825110623 664802688 725673194 349102313 672570554 698429072 244131143 699400863 109078488 730182966 91925155 697526291 685030257 24603296 803407967 203997917 670989236 736513730 314493201 122032884 344620514 924913481 3193728 449910907 288742348 777812530 242328484 32717096 46007986 448251835 53645549 368923587 629705074 329829031 828057228 498247119 890173195 347138064 235005531 846256976 821806638 245169192 200594918 802705457 150237250 87695078 215570309 385960073 662654517 611180524 720094284 896653646 255171477 523393440 741291461 864055137 61529199 708246264 672962013 891062499 923779995 434289615 854025639 390090368 705437948 81927490 967936245 673225153 846055939 850818958 794653620 207216067 543378310 639033269 775262910 100803887 117287862 622621020 55582567 521639545 673470971 834535359 675557252 677310852 755706320 652387152 916524760 919214860 190542716 262673639 199393118 581140492 113562020 315644216 682969175 969140562 39733426 827482579 78353776 629661173 433379061 895073722 858438091 192114160 363323510 13914765 111053085 347606959 353897885 192625720 415420287 724738652 351727035 876231594 739511407 913833644 796607878 973691105 109177264 134953823 807617953 13247818 845998008 726989485 805456246 941835496 709074989 685718297 636484109 724904955 767921423 106603181 931984123 849563242 187466548 752556614 646392481 268118282 835310928 671510619 864863313 61917204 652970480 65002792 925870346 707674544 841784507 892979850 755987874 793186577 33608544 799817492 163287421 495420745 918603535 32461531 292218981 949436440 470268105 508726431 302728482 499607174 34553399 825421706 814495193 674769528 690036869 972387562 542325839 889408858 987953790 881559748 893003779 126340270 365890021 857969881 686466402 396541701 836812975 734541899 966594184 809559212 551502008 689562908 310523254 960443333 542237258 328687340 389082075 673663478 750959175 821225658 290112718 849233680 974782794 989261946 494174561 296999090 388730710 108668439 655903301 942500417 716527713 308823490 841029637 105170613 758950030 846169347 574799795 846147217 554090948 486596289 303811239 825896916 902198367 126923573 782320631 738692294 184960380 742088104 700467363 379107437 2050167 457543316 607555648 946279913 727342042 774115030 719837263 595787378 713477670 34434938 420001048 888096391 916996794 789243061 602363945 891864229 527266620 964427361 357066323 751160851 765563869 187333221 106710390 198021330 437110975 83253663 35806309 723169463 678524527 501837292 867437837 666950634 984619210 469147413 497579379 282357545 347207223 833577831 968688710 24798954 945318807 600602308 408952958 676406752 43405494 936066620 283041360 857965735 892339277 640217752 762267153 794332156 928325463 933945243 903455024 56702813 32507236 971848877 976147427 963091975 53618978 56438321 955532426 752330565 885738782 587589288 804357177 925126284 460660710 949091067 987561696 57877484 288140943 966767603 774900916 229362137 881559035 621172118 27165823 896198148 450826352 31544323 689616010 277279510 270936513 900670848 411549713 49689382 410295588 816408965 258822213 327967462 731103154 764674300 632022977 5105326 269003980 675614945 560949533 101064233 518720064 877954238 663346131 690610593 640273826 981156072 404324183 106729327 694583451 826016325 138237022 323145482 830296299 614076521 789293518 847827053 694167034 430722853 898538701 933128536 858706027 783663531 759945981 704156295 614838754 388696531 621831401 370775541 155307390 131321405 797145458 717931961 830686535 716977146 505618860 434994521 81182915 838667651 304182432 733057072 269647278 106870702 834888970 409693684 348368156 952109109 917372888 763266507 742072920 988569542 855464900 811154829 972595784 716112855 956736922 716096110 404352626 218512526 925317564 208769165 405617647 224987745 68876987 354549426 864809266 188607986 374580458 997936807 816828763 227531233 382640031 961875765 797865352 784436400 564468023 199083328 12963866 759543239 999370723 266985415 518199238 464439360 927900606 564849512 199704077 296896812 24248161 455719819 359855774 742298649 406522483 863767801 881078268 987434329 824411454 660146243 825900108 694792809 213797252 50992327 831011793 933504233 147135677 848589011 962138154 133459106 973063668 117357420 897522170 531664253 258042621 72821564 138253515 463653662 905826236 141857213 810860761 743988275 76876519 450664428 354539753 901611336 728788471 70457818 673593777 184503275 344645730 794600909 862220234 530120840 481994669 735787892 945790056 109092293 778246373 485027297 773872447 845397679 872631262 984131188 830027496 476555522 732969231 858878149 981274427 513345638 812877739 987367861 1575265 531022259 209167416 9497113 660504657 753368411 245158694 983111353 747573433 763761099 944856433 693402679 265486077 786283529 329657969 438453822 473374530 69756549 714468291 778334657 728648639 100822553 280261528 876035772 809182997 587408695 213538812 916710128 48377644 804437283 306074376 65615024 337181081 393418399 715376692 551396206 507372735 745188724 592351812 274588886 798430559 885264752 441283885 789453905 708002549 488844020 883899106 284123642 245414620 220621399 523855220 709580427 77284845 277877985 872049103 680293239 889713733 638605554 830994048 739338637 419706871 907205573 670479481 521217300 821817874 885502618 708282673 226129940 938542244 420452344 667852152 700921918 204600042 869658322 106655985 701445639 396984748 291314947 646391958 498881901 389171253 713191559 430239974 191453578 75605797 613340466 804869715 109047510 200638085 478061148 17937003 967012909 313512218 644181750 872423171 985041722 31541840 823333234 985045957 638013024 926273035 666131793 412429552 259882501 787428544 901564777 950130711 518903370 749773078 777804401 148391385 519643311 755284810 801320107 821548613 788728819 649378440 259361425 298830625 916771106 256906888 819877425 420200283 761879848 83707249 593712861 88238098 670989236 459298006 515876087 716433833 116385879 200762044 131371007 845439555 769589650 737803892 817764879 884789432 750334285 782179657 502303986 701718058 406590900 31076315 80801398 884115452 983738032 572523892 670989236 924674909 929494032 691201960 671679176 973779353 346304235 995442246 780237156 68449885 426584989 893486076 332410975 500170596 760886580 442156214 954523042 854565185 277296373 518950572 185863704 724849284 589443415 881923038 647521552 170792236 447085074 933661890 42958301 760111931 278797019 799864274 817628876 773712285 817529625 733309133 809906612 899826734 445991883 878455309 822238135 43194523 818712522 67464866 894965268 920387435 539760122 701485444 884142430 957858059 717241147 933571695 324243530 894847712 819679916 524338824 974128065 737346300 721415452 826752918 957830198 639577111 7307722 737178006 696202651 527715641 723583913 743045850 650367027 842205284 246687624 32702889 799275552 803260603 491346877 667965534 255939558 225265960 907750252 686782194 730637596 981860831 876783525 867911319 945472157 348077549 912647866 693309429 959991975 795188235 961034686 950719185 36975793 138611447 671628387 109261128 845365089 967535843 491057201 16018060 43682644 793650978 758536692 346053731 879933500 985724160 525562374 562863157 997837281 913668292 670989236 261795929 370248670 433244718 390140243 313238858 738491000 767054909 765820151 97538485 650955011 407576176 987793603 449231892 789409000 538835536 955458423 795424159 670989236 957291612 628750367 7779930 784537623 447482653 876595244 727658653 969791262 550686964 322290256 580072093 871332276 818825439 495708657 855611111 4431037 131874260 495269646 931612292 842543862 794079495 205648907 921758521 105640766 820321547 650323773 434766949 140482634 507991584 567465574 497430455 958424930 519654526 787912193 814038909 303733486 686820775 847905308 863710326 731416011 266189198 243541190 998069623 875353185 672409036 853926582 950435440 99951718 670989236 898033527 476530655 104588963 131867169 956245997 479235795 296605387 924758868 537055230 805643590 683474700 868551038 944795551 829769585 880505405 930055113 881613962 693331736 961834093 693389997 848376024 675198184 867455245 887036442 926624105 482764017 142451553 27351881 945801627 918324545 974613277 316005646 902773997 303456482 410200333 988625085 722246588 729161574 789495376 998502096 926817494 400596986 702532058 64321357 877023994 235303768 658292844 707009865 997207294 156199451 254862054 917851048 789852965 799397027 28644370 175629424 943740485 329367494 694052634 603046664 850663376 877436210 188112576 599090531 994691731 902698463 158762455 579031135 556868090 603110672 350547132 843757424 561155437 670989236 334565724 389365900 956597283 450910698 512241073 189022069 787582454 90934009 821443659 510154971 549186385 36331035 560413819 923838495 197924115 149693204 84989834 290922160 43751406 834854929 962455143 755304903 943197375 695100502 91141960 412560612 839537210 637522684 348576869 127670172 888428483 216836498 437195675 245131781 122598439 983155706 753647110 152000855 959252383 333389836 473248843 208766091 670989236 129476263 58647638 866127464 396668796 234029408 911355797 751762315 498518358 754576967 287436320 549220011 151242774 241942802 746978150 977323947 433984965 947388526 297315778 867483353 502674065 428292424 301696382 979103333 720685545 442343019 946017891 705501833 986996032 785281844 592106822 927512372 550237172 851230357 470582059 917705077 736108591 39637576 458504602 711308693 942179566 421722191 929862249 247025924 711518854 426769883 420351938 383664431 966814275 49452291 836077828 254100385 467667915 693122114 956058493 91287223 623466124 206942800 681828190 532708435 474657794 685777924 630048018 924466746 858182970 116912305 709193522 797869259 812379037 410098002 84657553 286191221 239475653 994711637 477394498 625742007 982619585 213576160 236758172 742371274 734182209 695198251 702268486 713112169 99755521 277703684 421225100 859893945 835891254 919657587 941507329 978105956 269291650 412466657 872877689 237258556 729062775 987133406 321858559 359353037 10782031 774340077 968442921 860300901 511135895 957430331 679111666 773064562 809033644 958963019 986874182 535443356 714397590 984517324 665121662 667442387 662015432 626324631 203255544 322124146 150818804 805617994 187204352 692641670 529494757 609588492 642724098 211184384 411660164 227147334 981377755 736456805 710735587 844000239 961714084 755585969 268409076 731506464 965959263 890571352 108214659 819423399 930507547 856906457 693000028 697279204 726080489 981959018 313593938 743929602 656670020 918073814 602567662 398186551 902320690 960730950 395940224 943919732 75108599 492378615 101871645 969991237 917441982 532676388 183509836 88460594 118353996 329894818 606873429 413496765 270857732 849275088 274879690 59373190 577725889 482923774 673294896 479017175 855121254 897206920 751711783 837336555 824180751 425877694 975236897 382952954 147053695 865717976 543796615 860013247 767652848 694271279 789617649 698255579 944691889 349066577 369709163 273472257 908452864 797784742 468846050 946043639 422132585 159955751 861231400 123918391 471946904 6313470 604968130 895177439 897706190 283419225 970182079 783976049 801802034 61409922 711033897 762051671 180989367 218693543 919923949 104968627 611938035 670989236 997662714 853848380 670989236 630715991 832155262 280625905 276764369 796525683 467149903 289510573 717182838 395803546 763660292 100925133 771605695 271858010 436945249 339333371 860381202 869808278 120110046 979185044 790779344 881360836 444106628 900183245 777897118 754762725 258319864 299035672 807604919 883280798 478523547 7506991 285355580 670989236 543424714 142194157 663981726 319406141 370607774 827504740 753381531 926881976 737162755 653353543 771710114 422647765 650459830 289118934 795803219 710712208 741298450 651277536 908702685 691733309 43724477 609758270 349502438 150637754 216735412 626738082 726017495 254843565 44067385 839558717 933416093 956013457 997304160 80966458 359246105 982509116 898682120 176810506 374762356 703688672 344055163 848188537 898511780 626750594 976228128 471485253 978147142 723591623 525020205 670989236 602815620 849225231 946282798 703832578 170000891 512656595 154413046 860858609 838114679 670989236 59621509 892187237 940851979 414527841 966575769 794361110 980636618 962593697 764467707 287066613 573755747 210826799 62800691 832172592 168112127 807343939 124414026 634589786 208411905 947298880 250576978 443477923 908634443 30337615 717048793 619187450 711203556 377642991 532508492 352826815 941448536 920989043 426073189 903002108 67776008 822660652 910302292 877377111 664688542 73738617 843067987 292445656 798491854 925311260 842229159 883869849 545454031 308866548 563873302 280515541 965175932 87736603 885964427 351845285 350195276 809984296 826054508 345736028 618388100 771202177 264593935 752981771 210166938 766710796 248309797 895142480 18948611 917170774 363136923 964400633 259775098 338950463 768130551 229691361 519637458 922695510 152302731 798600689 722631516 997482866 831504142 617149992 743800553 680647349 763264206 435710261 558010021 873460408 45645747 149428009 236176447 612229611 833311240 670989236 907349498 884742489 863687612 989553279 792123888 594000243 488406104 797844616 710759304 703845379 901950670 821316912 413469473 162245912 909816405 889576231 603567376 692155886 40922939 732419074 678463206 474683275 131149449 761419108 776882037 651586569 759713948 320295685 858796277 445628049 409596175 925693666 759926572 696254026 777654432 256040195 137255770 394264741 260076199 418904651 919454574 711678746 768340493 654828744 641752168 170539447 570383626 603523427 662163024 385785337 8727487 400982975 155836880 840018564 188537870 332672913 729542421 56655646 369568119 853577266 430145413 972443775 301163183 744495182 581396330 814795639 768253986 724025876 770010527 608810160 47821500 707879957 265029613 733526576 753854094 45842684 805121996 923131974 176419509 670187595 8954785 613479036 701169943 928943758 801265337 773322628 805286725 284532088 194299174 480416042 517742295 844042843 926413755 676780014 294436006 753881581 89227796 734381144 959525693 421712712 951008439 670989236 229842668 722028178 552109194 705424462 746620617 128875124 299430895 938377563 86411939 855730696 258732746 760822819 764836030 340887343 259905176 826584805 943523037 702766721 824855611 989407186 171935979 862282406 951415072 845722311 891583635 632482902 999398518 625833535 800368952 310275619 743142981 87482967 554844647 697543659 873433946 919199689 334089356 992626327 760201273 260370853 910799596 616196829 684129125 752991592 701959073 566633017 904374664 976544204 698579952 767042449 924698316 886205498 842247638 220490138 985585361 923168663 824479673 880261039 854548337 987433886 418525895 790030151 975291154 120968806 846040246 564382808 848148415 213255215 803218961 670989236 625901105 912642054 298223737 881478435 211201600 844349492 483731748 689234050 742248024 626440622 316139094 695856766 718001489 726306168 596701172 282076843 772957596 815281503 348219051 145731377 972934502 161953189 269822 19306351 262610123 79336766 853819302 228189675 380569180 688163292 827092703 453175307 978311998 501044506 263772048 772965779 760022618 217155229 885656556 83398976 710937474 907143322 891716259 9100245 946454804 498477148 151686022 274352230 949018010 711678594 204988007 265596054 364838261 305290345 622217812 999747029 240527697 700990890 335169533 482626257 478823416 915402644 99915862 786040944 966757649 849518291 710030369 824973378 858992160 938934390 925623352 569500323 891641038 946726706 325422483 505110514 824300273 128104588 362666826 682464548 745760293 74503299 692891679 314301529 305826752 62347902 315104269 943733885 75727731 975003993 375053837 765520698 271412411 949547186 292459125 448094354 632589485 876288387 779732817 225350717 90036811 641534717 890997594 786341933 686450005 456959243 867174767 944945979 322646671 901564280 650411148 954149022 403776279 420014865 41304060 967798354 983755653 883225941 748972436 310895168 498782386 909422336 926038326 660214744 491952134 410626767 695529724 114243824 239070352 69859274 102239499 497279144 411584353 732716778 27507623 766860402 501847968 961537862 158858612 949822514 960359694 102395180 293880083 620621911 745753895 279563232 881360616 958678688 165357758 918529105 805349758 291651796 516172904 993573811 861460428 982214303 789424419 439244364 824979591 154988398 706005444 754424035 774021543 231303344 228179809 841563101 505651370 763804163 298895391 709759418 872247688 474398995 807949401 855342652 764477846 143245593 382742502 165420748 905200135 627509794 867600086 32063874 344065831 450639401 697071141 997723186 95238551 624079613 534052404 670989236 857948510 701788666 675893161 206745482 976303511 153418085 289311843 954048811 138614766 495184564 116694409 716564829 977476578 453613786 320678048 705882511 91517314 239771017 813748113 944022615 364055899 724142932 928211610 353613937 834911436 870227713 906979479 717252947 87043331 779233847 949359129 966291024 947992339 188042961 96123267 443884507 258891500 751619464 740881698 285288261 384283484 723798343 213856215 687634671 949363131 751166532 808078300 145668279 452208831 493114195 744798676 778215382 746884871 147878 993288137 820499767 678137125 588685154 492108710 904397890 738054921 670989236 300098587 367834066 831552700 61973311 816119963 495809556 465912716 591741113 712204297 212227006 281841523 938659910 698605163 493453218 569911957 88492312 547632321 992403158 667215506 587153260 536789988 725572283 474048036 758871651 948921111 895762910 205983977 339672942 865108473 898207515 785372392 483080795 919407252 998252597 670989236 686554488 417892223 85806826 336416976 877147509 756508188 212332054 228139935 813112840 489037723 755509607 645791331 813563263 309403681 994419467 783488039 273359785 899411290 892836353 434237624 777592656 565000559 457619301 710409706 770563466 795725790 772861759 735962389 848948098 542110891 320379381 681079167 935456882 876599324 283569335 736777694 844748162 897652940 839173852 175218972 487873835 822849158 954285723 977832606 937011252 677266903 892615732 390395723 883832753 183126726 968671468 284564381 659216653 802442856 729986662 896416107 747161045 956820521 948026813 676887299 635484821 796428243 498247837 747983520 854358752 236246670 291265521 308481646 207453135 779456218 863260388 748612957 957636776 661944452 3483782 980678614 947774620 211912966 647449519 875018442 973910130 284091765 239133061 887747132 371154118 590017564 791331629 990064482 171172747 569242558 693844315 926637017 696939246 870183622 778061727 945778412 531371057 554690374 937983069 283776780 608864058 618006519 352630183 298369087 670989236 88855184 20306423 438634544 968090885 508955834 840472191 892349325 745515609 479980595 844063304 988935617 988403990 956950868 41016990 624013655 803328393 747470854 472158188 503686855 728075470 783888461 395761996 969882360 428476844 719428645 114620400 624641427 391743531 253950210 847785320 790588615 991433958 578380401 861184289 356258249 247724698 957697472 870544568 390464029 451955508 734013035 330061658 843094678 670989236 882767307 464625501 766175672 75435358 731517065 338838986 915234956 223045156 763958435 776809304 715686933 979797018 701197370 67505582 780560401 854024010 837664329 955963726 74759989 549191051 413024899 611383472 630705764 134702785 119398924 767357489 269451425 704086723 867069113 778734356 82579811 612195291 980452855 946256647 788490195 769718408 584058653 691631335 716914434 982365964 728304410 513958446 600169250 960106832 640761892 682975077 851474841 547591727 408289608 832792429 960319646 670778809 564218225 78926552 18227278 910565195 540131810 869623119 518005967 28813619 797713705 987016960 718583716 663318024 571584668 210860868 670989236 539972992 554119251 844274064 379971517 691261025 130648913 89671749 855335876 72764744 559751322 686732594 552654700 54018420 1017105 815079877 657654953 386931363 131695496 493294746 780747528 723818198 870206461 683225229 763483976 874779152 407432071 522538329 159341610 407170111 860694758 684572553 798797387 765869109 312525264 716067788 685231823 445863777 848656212 888098457 493825863 897189580 909750393 508850471 575399753 95648489 146321688 83247367 745300978 103268532 561242796 568667082 624340499 833212873 854273495 844688534 996927750 82112299 280822629 922858633 100634148 920101228 676020169 723699240 709209135 736474277 746262402 51223884 769040636 964489890 802302631 742328295 719386113 292776007 459266649 107670050 954716116 868624696 975594159 812176499 469578131 887766576 351231433 134565141 770185918 944112656 900715402 974989432 670989236 84474783 929122707 721799000 256391234 644513395 88674942 298896982 346671030 601959738 956983782 951240265 675189317 132803464 96792249 959670114 574547147 749942099 698276637 336934145 896920646 957004759 388783518 790588805 725847236 71281982 732768988 67345295 507760442 882583280 117120631 770578459 604881400 675548859 666685892 526340066 642825997 242782229 226431772 967626096 845752258 851427426 695729470 865258148 765562190 463917012 408543057 902471156 545152399 729399219 973173087 586525598 721418319 322811299 753398076 829883344 758673750 698737563 209233174 925994655 807159796 743827718 247839840 616971577 944956356 812479536 920156865 599739624 833980098 145437956 675277812 165316402 825823722 927370377 539521765 679737244 540537093 119482472 732988993 613111747 964010237 239440311 840219208 863610264 252084059 151240950 964843471 748522940 424151239 109733593 805608452 457463070 820545301 728604793 551538469 563056296 760135419 692518026 798422976 344643019 739968426 781726430 81858788 754283717 492791170 981358520 912922586 988159901 826554429 698487881 87203330 116628358 96293480 176798829 127421333 879342778 169813303 342066712 99554535 763694857 892689240 164378123 191758128 862692107 926722331 939991872 675288254 807898756 884438942 59294003 35591774 968589753 140233236 956682482 63361503 885010966 651612237 885055444 551172759 391020592 548805275 760377509 931674533 983270538 144140871 649443788 601013468 411099512 663512573 814789628 107083854 305523475 468566138 716034920 705865478 254416436 584842248 317954015 697384889 432188170 683277051 652974991 25692164 917641035 495792341 656773343 54247035 849604431 830092373 31842567 980336884 732958397 372663131 709481358 667663739 294991817 631588892 146925098 755287766 788007133 473494358 365279064 770424067 744339757 613492316 84854466 900882200 476697356 738731440 628835619 739943609 965626050 791216292 806699236 417149154 669344813 210074317 13629498 769217556 146941526 283530677 253441326 69041244 11052578 90868151 944185149 185037902 99028216 398625200 774313830 728993252 796329953 847647980 822185606 323527629 978143495 261926997 893287960 473261730 303907535 331202296 46988552 224789562 318785691 828261002 69481384 24229199 471438713 132899636 799248354 83046681 701912594 684550645 170793661 892697437 456352479 150490018 122167034 881806114 556437903 62901774 675502272 909617473 346908518 727159128 465802171 272477734 475834152 964752814 180062824 957716946 253839040 130711837 767730953 676791243 702591426 831826277 824233361 463342739 851971256 827117032 927050032 112714156 635282317 432430526 156696278 733959232 293580084 731715977 994285781 571228463 836767702 749940407 937243144 464530836 179579104 719924317 989184673 946809954 528787420 723427560 107752468 333020270 670989236 834756019 961323760 648308935 864374154 302514469 738811036 894381861 892758857 461444606 169207024 224521240 51995068 608226718 120074195 106371271 145772492 448579441 8090064 81373172 778365818 792937725 837325984 566928388 392475619 534983544 910140400 781183331 989001161 987188732 123247564 909852228 899868016 551958122 178280367 772667691 960940603 859793582 670989236 201649907 473108988 27773991 980966442 632238755 677523612 428921324 361218486 329431652 893431891 227928316 178180107 432662979 920363593 283806019 906618753 526361817 896180997 291933447 306808154 821633118 836766266 828429005 947864753 686432068 915019726 110168477 561585710 522148218 142609140 383372422 324363724 643642606 688001593 108580399 694744608 831524004 579668072 300964159 178938270 912458054 873745348 505050464 791383388 722516212 321343644 830782570 829054618 541782341 465629295 3325598 143515829 665319149 802117634 826814653 559175194 642398145 872811758 321695213 987278255 842789782 459090909 96354219 998749825 673067760 767425003 195309539 112065496 743829967 658550132 396892974 918989865 719452054 660486325 920617768 648647958 701623520 803517882 971835362 824750883 828950954 680509260 872887983 618178381 892154864 224820270 42799517 503549480 87925300 575712837 684675024 749796347 602610610 543437264 438477562 56006662 935767297 853184621 982433385 925227783 704553755 855493791 894210583 688387497 725751697 228283479 927743095 929011205 558351915 579623802 619747820 752054273 803355409 22112823 196710244 871871209 941953774 539760651 203813215 321486377 800892475 543929906 868509519 692049724 826792600 513821505 849364036 304664052 290430505 488517753 131712227 950657176 746898400 709899379 882344644 347877321 732350389 654760549 408628658 927986458 434555339 169433240 332266652 187689419 892524013 998695297 670778570 670989236 947664411 678211021 716048137 836578306 928678985 891971292 890198733 771447190 838338772 815105211 98026802 721918310 308754865 907442253 695103377 219156333 602969325 742229160 703876155 372669321 904405279 800954692 621869740 720974277 890383096 907399537 924739242 888233289 188525689 272541428 86328008 728670863 403652702 26216606 468800927 440052634 671939888 391299040 985321324 846528555 920736888 670883933 956540250 684145251 923636151 236100323 332995989 247712366 88477564 265492439 764818828 113665378 512150780 882778787 929187529 267539277 730357118 792207342 957422463 884012530 945720972 904627146 915806396 916846530 311819618 951456733 213902138 139097521 740693678 676508061 670989236 128870228 609601427 204654405 566448735 142277055 670989236 847491414 185797742 127540322 245631656 695552240 679394051 458429035 717908353 868412047 649018321 963086215 692193211 520520056 517884152 415996006 377017227 191834570 1687014 901978968 670989236 717015771 198185931 205715014 719078010 760071797 101830590 862278840 302751099 680500531 209377665 670989236 872750215 233455775 713072506 41305251 743838644 594150285 119564795 677811636 604450125 636862761 972491314 81955975 237919124 76315968 918316921 335030797 777274823 321736086 670989236 244457445 129061424 361604588 972146842 791348000 572741567 905620849 143040745 813720857 683590387 286243293 78665851 701088997 405986607 237866034 12592284 700795806 433014079 715828716 572298629 994172725 588354635 398282944 99232696 582871288 555684558 238775510 976405983 64150366 874255143 845115479 66027582 648427431 152072457 859633132 544611285 457069409 155210391 453453451 819619033 181132571 767560416 771303366 988212303 310317867 361733527 940673576 675546474 691362744 616048440 319457472 995895192 302209120 734503488 845931226 258603912 852538168 814113132 871024224 817670533 983685681 752705796 228838979 330436711 551858211 451036599 245603299 199416615 87904048 765684066 919815967 134150468 986140095 275534413 750924715 484832090 191205700 995285304 710750503 60183192 662115468 731943379 151755885 862554283 889359666 667680675 152786221 972764471 596145935 877412311 359015735 957721372 398819154 928826254 56323722 416400318 678061029 319490625 684522662 38845481 331844847 705973113 582920081 655288670 461349355 588245896 714675330 233665213 890972452 796089409 163124630 753722892 994159074 954964382 698994316 340446548 741254694 233175541 496944531 725126210 776549364 893316027 602853557 836647897 739224613 714105021 811113747 780511452 222725525 826210816 289987727 62618963 750050089 593981525 555063586 765810695 904883749 895008740 375408435 347634765 797298027 846155660 774918999 741809896 641247661 572442488 967979472 709019583 232304136 44787632 632836992 290355922 318793358 466309588 354055189 881525935 858682763 822057203 637651 854490896 511247734 764795980 835313072 497542258 755965532 826655835 122312950 503577987 941659802 71013006 147395064 111689458 592661151 837744413 210353437 941725626 873537437 983609669 925722020 963374925 213663157 257699946 608459245 474112627 951287852 186981163 270455747 895199004 541554231 47089445 430524520 649472526 251397596 283066211 726337088 942538174 907500346 900962522 341475715 62349019 687580337 680504761 968435314 978604662 277782051 949129469 736439515 233315939 794159124 209996405 708996573 920644242 471373882 439798195 151642299 728450764 232828223 283986712 489161199 391041270 740374790 227828954 880850906 726871421 478104588 775822189 874928385 741244857 458757465 72007519 391475592 890885441 691797251 438777695 982369379 207045378 289250191 758258592 276764358 786678151 805985436 750875295 113046459 931665593 617640342 770841959 483390729 874012476 590145968 375280236 351532521 272478762 834313625 833141644 807529071 522144563 756826491 992857184 599622829 208286569 976793512 535581838 710700163 878691023 220191432 696382242 346017931 297837714 956205674 925972483 389687571 176203160 618562291 685395682 891653251 740349874 661140805 788792838 330420136 264346711 844319399 861416419 687082831 772905116 420344868 736524307 632635234 764243543 374189209 482714333 145104409 840065030 480908952 78568238 120608693 44002742 780692855 421655521 489152813 197510198 709421476 690727342 813893188 774364650 468482080 935537839 821790922 657308931 798494086 649189181 598733367 896594346 595879147 884985790 983122192 829039758 833333150 225068360 328221783 195170338 444315412 908677444 938888749 956474366 887396593 819328289 659454957 570328871 156849490 998681985 845908115 670146660 347663710 573184516 861717448 964958978 11179579 263676993 791519177 365666040 928136487 748808837 406820437 110137418 167898911 782227989 473347845 815511844 174992626 297067932 907762375 852471999 926565659 764140678 175789561 917183676 369315407 380340629 754811383 978413214 743898683 954155636 983455920 471458611 800546309 493508115 443497016 331659245 811235576 533269345 934946833 255220090 177856367 982287406 741076179 514509577 530709326 933351621 329686670 942203257 680459586 833422675 255991849 893917793 971512911 591999762 321110583 844391791 917111752 905440547 84505583 989567352 87117959 911480487 855989115 710449369 200063376 344220495 629372460 909543202 402863273 571413147 4372579 805688702 484154230 170051746 938501754 746674453 223409032 828683259 327677493 437133491 911666032 959283427 385323170 184758434 992430235 685525055 585042596 956858662 360825223 670989236 981042508 844603581 853515558 796826302 586970340 695089977 890206101 514128935 944868737 528080057 886977415 11241533 951634247 706218166 817207085 727987134 538619544 309442027 860567580 861179060 756960345 751317359 148029923 754757007 2228725 689619647 875860463 736846372 962403849 367439351 22037628 916964381 696298475 933613875 846322084 227676551 313234539 719437071 683580577 330222014 469887910 835698441 824178964 253566634 157588764 767870052 234649729 495071478 439118803 794153749 828896181 361891911 406764053 836807042 681464206 434134945 582188867 724459781 125707020 681123745 922533473 147606176 747367189 707506106 841606234 789964298 502099680 664288196 408116955 137598279 658655836 492917090 949900679 35308104 588597688 924482259 552522758 430403743 929578156 831634288 438705553 874471368 764297452 949570495 573060530 664682302 418019745 967360488 869498110 718363275 270009421 338631583 535817383 865373864 190561192 928707125 687598089 652545798 429955120 900022620 954176096 227649543 795297506 72132264 995696910 286660804 539344806 932878087 2771855 213884374 26718208 150965598 619881471 304286720 880314789 591700769 240945775 412015981 852092552 732536615 988700035 945034560 785514292 806677608 793012844 502499057 354262320 792816266 110942868 537144184 468002718 723415940 717672088 545738657 44426199 858431568 402835744 179441388 713025200 41336489 920110110 147546199 793577848 866926120 220821944 904025335 718349958 257228237 986093759 442847531 672707195 910448903 221069579 808916783 678167951 572721063 267292816 961863599 405440366 7887079 558663075 125463465 487800300 210167447 184204665 948088895 769964169 675302803 813666462 994359781 814194002 928473092 181192635 966483277 885175712 71923265 777891645 819842242 942558520 80367078 923052720 715043364 841776467 281076280 391601236 972470123 188044197 439201123 255272874 715164859 638907115 426975347 431833122 607856290 921550033 848960559 272583127 958208491 870107018 119778843 466691281 728928693 921856077 871579419 815284921 743687990 839841684 462008658 855693658 818416715 807581384 670989236 179500605 466555112 27020202 920584988 267577506 173534204 8007082 964918247 670989236 690179299 816333833 995458329 145677127 653956313 831801020 911657121 768121467 974273111 3152696 98330596 570901491 582187886 927954535 603668806 489425575 190669300 803765981 879020023 396715107 96324409 384184765 580102070 326441206 908006790 683096292 472771067 29303381 416954723 149954441 176978189 357080410 165297121 898245429 962257633 693581122 681968019 167206214 833198121 120187124 204106646 837306746 285860616 183986223 505283289 30595718 763902692 578521878 897798980 722081733 508334711 905038599 916575655 279261260 370058584 671125085 55394106 92150665 348803302 523796326 55446120 618746286 648038718 353600575 756708044 926287503 518815166 738478323 863297346 581487955 815432571 809947435 957215777 781769560 826230888 962682830 864339917 540774100 528942464 290107876 72926941 437431205 723459051 115136962 724002008 809785414 829310403 714648535 133633351 475563211 822213840 48067172 253737055 231436289 167374051 888670196 511849105 254335268 153238047 708128503 466288821 339845595 223628331 762073097 954343865 442229673 988834044 794015741 958000047 792838100 496307 783484515 458380896 998785490 458825141 808505091 932553114 236165784 674948970 916425869 919128027 793217550 813641053 963145195 627894606 633133931 867425996 503821206 587633109 601516706 453543633 827855375 102597428 121837947 394076804 813810075 27673718 146558932 885958130 986744093 352836681 912942265 701829295 880609614 802714203 604513171 171306994 574181454 681476980 838842395 806129368 954609111 678802529 644494438 730655454 593578159 407986058 803697375 732988721 33030808 115806488 851976286 699519340 262035820 898032775 862931801 323866027 772229925 174358579 881070922 573292124 812760249 779859793 789490478 876803479 303917015 233694579 795453324 364753264 198011474 499188605 638140247 730945065 847238461 270495125 819011539 424438907 595629820 959597597 9837076 780097387 266457113 694509153 771117388 88076392 714675839 909627740 384669838 894756723 650549685 429232539 796086469 279609140 141238016 802010175 310059771 125138637 807315722 296648912 471327931 669766886 614257879 981542315 799249595 735290042 956091320 965195788 316498502 250642298 920621402 139833260 201712826 44213908 342151868 815074864 190259941 670989236 883901829 426546725 180724220 982466908 547438437 764146629 75782985 694346033 686189880 712420018 511923655 348640845 142882090 964074769 393155305 493432562 351750636 67553701 973769310 880784464 254570694 911435177 75129334 162769466 940093975 698122762 86464033 670195825 13378877 278725301 882207959 683478097 174247471 643458027 519330110 993902927 77584614 22447519 447905563 110836429 687342230 37873993 522370035 760752778 856934968 97948691 467245145 461800403 352089584 103982868 202730522 117364401 742948291 129754621 158553618 930307573 487877133 769918310 735111989 258151247 11137039 245883325 738483463 802103028 627318744 670989236 401349712 901038860 598580886 974928993 449083470 690070152 954028959 897646219 265784840 846000418 40290893 162211078 915299540 790133277 969515517 146984521 787977132 415813860 738082200 750686161 358448689 570836263 306765145 948557549 299276379 589768170 675708663 420263755 770701679 731464855 704220157 537650289 764605768 465167761 835330086 187627316 277485026 147571449 780692960 512960862 989709261 999714751 237944216 685540929 579039498 683721675 429304413 160007265 754823010 292154438 33454518 595897556 773342548 214889862 871523269 106870813 74843119 475424443 602159481 613764659 373130653 794801494 512644881 808987178 919342688 403293590 980530673 955271672 759221921 670989236 846684993 356392534 686211977 328840680 861056383 861939548 661039922 792070226 405833514 201416906 708118535 764033036 290965860 934309033 398006716 454126428 116114195 443120796 614559182 815021114 50044966 814278285 33586276 966707549 28225616 620489760 351033415 459173419 402066560 941864377 561022387 327843807 690817089 463765079 472524514 948547937 298833787 875320953 689965387 711996305 443939818 787692689 482178534 929989577 965962534 22234411 849721813 143669550 619065757 186984733 898838258 746795856 871521852 450492164 765317044 977710931 647960128 856543543 569938446 501890925 896635577 812464664 460583866 726079876 165563248 133096537 965147242 740600576 524826658 728597796 823273845 43604941 6667834 659522941 898254429 559275888 731296525 540727595 690868516 347774499 815763023 258158741 215380359 775328752 948014823 350484006 815732411 58469847 704709273 497692096 646357137 956503915 949475922 764757781 978079048 670989236 822784668 19359019 201723065 403146068 707102697 323323 315711182 760913703 694184151 297754227 778851823 91851492 574852530 217222734 634230687 757256604 452026270 662310328 778933945 535495499 571816709 670989236 840287594 292522427 935039512 620263985 709937134 355227754 132406810 806367546 669340900 386691443 765573084 706057206 559780378 670989236 351035449 425899236 786472436 718027507 583325324 684761307 319057590 208585138 987132802 813131767 923733295 420324898 722335440 337602277 305821145 58247366 453280737 654491244 231061340 762557441 824778480 908687825 227602425 78558341 670989236 175226589 134956000 868464194 906808955 711987736 765527253 630816121 942747683 137203877 467698089 970466766 414904459 466925894 778420725 995007688 64147478 694075273 847562999 751086843 319307190 571033375 702357051 260025205 647387407 406998580 995536114 991596407 825926981 194988514 20892579 700554964 522886840 898912656 773311113 188202286 856456540 598363014 112849135 883057394 619873701 387344972 215551673 770930841 78145597 86108734 797990694 185476995 447620215 39989545 758232102 518336580 58153202 757793204 223440294 134850406 790916909 831739114 670650527 340068097 953240425 910414576 586791219 924886317 829199134 733073286 788738228 808521848 713949159 227621873 763987493 935149357 910290453 68525832 242890259 5106266 69491129 74546612 707991456 328800313 480439554 698005196 994132881 899187828 908407575 54765832 3575435 971984854 921364118 263843413 727490181 238623196 699323354 241015705 817090315 982601390 605512478 225254726 74688498 791566592 931752794 535663078 670989236 895911462 257187300 742988828 52291436 512914196 313215469 849340801 49358879 937820794 831664772 768532279 982905381 768773520 799423696 537413832 859403500 751096247 910952039 714827763 208777924 867476805 879766146 915507114 991342821 76426887 952403318 124015927 672770253 21243732 670989236 44737191 758613834 630530528 140162461 912329547 220111807 142279214 928919283 122329717 172820199 182865011 561462925 399532531 826177594 796432971 326850050 881356319 779905996 882352050 358992018 53022193 687020099 59552390 16942666 490159753 747897759 737885518 114798371 1406155 979970301 512918382 782173961 756494286 40644618 69749178 980136316 940902617 815556109 670989236 639398379 840384691 406820052 492222855 954828340 852423521 230780461 165108975 346911167 935828059 928569543 128227220 218813734 274559562 625571142 209688162 193110177 925544449 945506951 384184250 105190508 376647700 822606161 911985015 400318178 138555006 862747449 137428590 960837674 723332234 318652436 292955796 266215634 963090660 705330043 407953533 496345807 521354341 818533743 781712730 859310399 133592540 794406152 760156587 670989236 613285968 488068865 813981030 973529197 974716617 941269133 937642931 648979831 930845166 911851574 901441674 937737978 718948343 753114757 492041608 868490254 678172548 443218174 597459522 990401895 670989236 851568126 55954286 642761056 821588972 199530253 657705429 670989236 108687887 723010935 169396897 328419094 793692770 799252638 800868029 585058804 831444279 868934200 237861946 233675334 722723459 998257840 670596184 267925076 987713195 670989236 705013937 756426121 671222958 412006709 849990063 771863560 97279270 94572927 809018153 413861699 50242957 801074105 965498814 163183781 857255392 4232950 56185901 935513616 778694537 26893013 778229993 153304465 108521886 406717971 661145267 585991821 723133835 726360246 72346086 703502471 860407858 877317378 981691455 858427304 356541984 718726619 138842369 990428503 545251130 111398266 789082191 274918563 379492481 920559396 390461845 841759406 234217876 963603052 716952028 824574275 736439650 838840473 973870343 760359714 560867373 760187139 140012470 292121726 865296089 967983278 800624784 77778776 955607685 657438318 207820631 353907468 695099773 291339077 872558025 685192248 157798747 233826622 996571720 822488168 260831022 808601544 810748833 916801466 471381491 792558855 912686842 851162584 180634284 62658484 678859511 212966570 682700096 991951716 815845570 292771567 714632432 452441553 411325753 48830672 478356872 742587516 765635208 823632411 670989236 615124475 807091568 919216775 808093954 821904058 556060101 792194066 22185638 295348041 662681474 138887287 954160339 906051680 715221176 815542224 623676806 452641804 83654815 798890187 989693628 205923995 629221025 323162836 440807014 893120858 867200814 234294823 875244954 506667053 582575430 16490764 357191242 635697771 358661177 885675847 37501627 822847581 896878119 699667589 936619990 811624480 911569749 958101887 763594613 330421184 946275219 810951558 998171084 945738675 731667968 817388363 717107473 147256915 751449611 734579617 781986011 707002552 223531714 192754741 693892704 203781338 537823320 243726844 997458382 692839071 954532595 48234948 703204819 661748706 625487440 208302949 551077848 47960913 84702503 688935665 806191062 68996358 834126423 637237100 357930321 986587975 487383232 661316804 917437249 269975371 858330036 485574420 862792303 280138232 79503744 539186870 432362926 998648042 950593821 681398374 963655774 637854860 88056167 698280808 829122998 866294396 813403609 29100506 392088123 388142716 760992962 688016919 162612524 991408832 765363592 733961100 823743598 376961312 28352391 34084922 687168119 139132353 671839644 749827709 873297540 777477489 196051188 933610855 264320769 976627748 490402241 518873303 342850403 832269714 441998196 622131850 896475138 706691767 170921273 440455925 795432582 861100239 965062618 827789788 153619482 437573672 986819928 202502498 907118602 733890454 691664151 878344073 115425625 482757467 528766269 714339477 782013371 78379241 968111761 692964856 415795471 963592554 667300216 683545113 815354864 778375826 713757400 854980822 551338779 759285271 661083918 705725826 923951428 453241632 923134377 441283503 670989236 723687506 410114421 670989236 704649167 820290436 37179164 901908222 843689273 56398894 139186604 348100707 254873865 313547098 274126081 695364190 926716996 776908232 699698801 119309158 993087098 849424654 821924285 96981001 889525486 827010486 905963924 241810234 730135719 971514181 737128724 918938525 564839433 862761551 264851655 938990897 624720893 761482016 670989236 841780208 813663224 416826805 902897077 797177782 887308114 235177296 926891752 910404902 919128681 959621647 779349772 695528554 501952718 450475934 700614856 328246916 235449126 513233812 673230669 857372084 983360821 504220263 785134614 911399842 639737537 793632703 976776698 40928078 194269135 285365904 723353593 465839524 183058029 185297307 118677648 924750226 762476400 84143802 443286733 723452693 472246477 167063214 676284607 586535616 864527305 670989236 263498406 832550685 387936622 743680363 903971411 173328361 485617163 988197308 888446917 755289118 750728035 671375007 697745548 445513979 676412624 915875225 879275619 824607512 868823524 442699955 159982976 734530483 386462234 780821304 226952928 759243476 751248587 782507499 154357091 452523838 855197189 989438527 27229333 779959479 595107869 635247162 670989236 62163403 444569921 683521505 691474444 652634241 235235386 500180758 816860628 185865036 319225425 854288850 891561246 207752041 788917518 196374445 573051236 634225595 886613032 767576702 187403196 948734517 593168441 843479049 221484201 845262099 323787831 445487669 620987492 970916633 224995307 680505144 652113036 836311317 36574585 968598166 805767083 768969946 371080712 40393604 828783029 359093516 954826440 693651987 703706082 790452113 764099335 944523837 825322347 641364788 2094041 878097309 498076638 801796256 712695527 735671190 25074496 891578115 476851957 671166206 856523923 840921845 895024786 938663526 959275950 712204612 740284323 275340306 949592846 221144703 224530646 5441904 750341381 780792053 981612719 268704682 800543384 939724176 946194457 246791824 245171667 968095759 841156182 920249299 745314531 789334399 614198311 924939780 867382747 773474049 805480536 512605152 773731339 6841819 967792626 574101987 891403443 181148238 509123429 837022618 75748097 862267074 694170511 77693837 731092787 789814055 693945390 967923833 564257187 935387220 900316516 314815738 540311580 92178941 411547926 857396093 846628614 108180011 826382365 105111740 948451592 118451863 499664807 784349562 835809061 806672852 296812645 270864314 848634327 592255266 906199719 513497761 783652428 323812339 308079051 236868834 965733816 339753759 695253975 185466239 414108477 914525942 991307264 56967157 852930519 827379386 704356678 436451885 422338714 793273986 38066929 899454329 747773289 481398315 268517752 952094274 270916930 215506533 553132009 628990949 682414290 363229570 397959319 721467587 297355613 957016138 772892271 950877712 45811597 13673529 841831138 307877413 735577114 851817634 864322329 293527118 371141815 350480203 169422386 163935916 465416032 704581279 312686037 825790744 955537078 646222877 25486434 680755670 252168649 858323181 328020604 447761493 788207484 961788985 446805703 914409459 571917617 293072599 913396911 740935112 960450627 699267561 444180069 763951518 473388790 872872277 365143191 32109844 870815395 511501297 670989236 89863803 388039567 846458807 802805792 900603925 95437685 753812111 471856046 821324750 759186994 777329264 745467662 7412818 1202877 195975311 671651220 327448848 825681731 536868951 316344582 736184525 838157305 152863906 139162528 388553426 366000004 221989675 476673984 783166722 426345904 883727059 608766740 640811147 240882022 956086145 866637445 789051130 469719054 547091857 297072601 234871124 399997700 193638696 16790412 309822783 551252715 954471274 770742833 624299223 537172258 707426000 676728616 156825429 765885569 334138183 715021323 113571154 562312008 149907866 31736759 299719202 491883141 840332237 771530552 919200513 831208445 337017742 521999462 683555268 673941406 572499234 977078967 729871359 742708912 432892983 416334365 984472958 222912322 914114082 201100043 889490188 934384255 19692454 785175663 257963051 709512442 628137798 343890728 880080921 824421537 287347505 295515236 837442451 49459143 902008571 203327732 205056393 796924228 137951416 670989236 709620563 372624171 578807915 982232827 123239334 817741142 894212959 484230419 467843532 146466007 46726480 276438945 851046096 521961000 307129059 999488998 745312400 879863759 467972870 742322852 847666588 377205868 977718508 316319003 419389951 469683434 899753192 952203867 773986779 962195670 846069608 977567454 896501404 760529933 799112307 858610031 378255298 832424013 758090816 255930042 981295515 961714260 903079086 285552393 928843690 177883236 822855951 99070100 821322856 183508493 708145546 547582163 521807961 98239609 766931328 70505247 791853642 592032575 262387452 890868659 12879027 808994999 687568594 90337181 754158227 738856504 719818443 445043609 626493122 178969326 737983065 234392836 456331687 60933824 854233680 844225500 982795406 27254284 473877207 568172777 691238462 492964720 798511956 173710831 751157517 903268298 554993822 802334978 904233382 698600484 420724476 644675140 243125883 321318663 825319643 823015315 780479323 761561810 732743670 746564121 312528626 681586983 742042505 816811282 814210690 551906839 670989236 440203955 797554253 277581920 145885385 901887393 828220782 88402255 903011990 941416564 931504698 122850144 985146328 854969445 950464941 149502492 822264013 857859756 444432964 872227544 896259534 885227008 744199486 477365656 915162530 249697379 900072873 912797754 426062848 27709429 689391064 808708882 137819091 280339220 603194428 840427804 778049917 999359854 711992182 526259075 442045982 722577140 646147934 917364868 843521835 914501193 222649564 440565719 641816092 65897734 853884809 931347390 670802020 65461397 306034719 52224751 386152509 337992160 980572287 389266227 451926619 260549056 626447883 356615906 933654153 901689976 772407067 818436190 710419055 870928359 892699442 420954935 992066530 241276344 867782661 808190521 994596039 326825917 987908189 301671320 716661357 368595759 115890628 669450990 283899688 784838285 364418831 267323474 868179017 758265106 738237236 769994592 908998514 960070473 897428464 907618544 849309807 926929590 221298144 153493377 970003370 156271255 836505580 898596941 717107759 55816782 887487116 698209845 695049319 184536320 398991445 91958367 951883258 500226542 81568910 866030491 670989236 337065832 689806045 444452613 235190830 873205891 788500634 359392508 477903945 430500415 729086140 360093148 985445705 877531232 871046176 172206315 821009541 35830484 864217315 709134957 422053455 844706188 248842119 695763235 694719574 514436375 214712174 670989236 851417894 853856543 907804857 746063827 861914060 931687385 201547666 951136864 412262612 715714179 824864742 454155690 905151180 71971641 355892864 484866975 332445494 678059203 750100830 123645329 879759911 930688070 168268289 294833193 503725070 935851178 925335035 735790585 596200611 806504163 535548084 805837856 668388907 766904213 17946408 746744136 592948569 904837684 484812127 828879004 872454069 872254498 379435475 539470595 768706138 780440283 771156233 749070296 314622791 281701541 622119923 533317903 744896695 36201921 670989236 816740723 195817127 569144733 637456128 833314847 832156243 491209411 904144776 911635959 817499286 625219660 916288568 674505344 175188706 364443056 920732213 615228652 616259966 623749077 74831258 136314779 859334726 788246931 793520022 710732942 462821150 789406263 820582018 411647401 960888487 963118045 279045967 129037699 261185373 104835810 36487679 809612095 678805710 416500449 706735355 214729034 243800211 976586281 681538745 622876916 455108000 88500995 987345185 74141741 386042691 988310742 572769626 502608575 159134566 155665109 424512963 669253533 958108869 896385329 733185172 591173533 19491817 875579686 682753912 781862831 686446632 747081547 274702199 335879254 749956577 772842015 663097717 912638209 65975863 956254809 810782956 361600186 808167477 531811963 703380834 3202219 747197225 560602202 985578110 766538012 124899212 840844759 984043854 687166632 496663156 924399722 90170127 336353278 639084268 559986694 842626392 980626782 970313347 160731202 456715855 999381367 270999904 239501804 858431118 355875422 465010794 863806413 735152458 230556450 176096802 135558703 947366688 397498819 165799073 809818257 575798643 806943300 901698008 130034710 813864836 924951489 874805986 963813094 960653700 348043169 458200196 999505410 896752569 843126154 467394030 208699001 469812126 871412961 178532221 703366035 601184514 677173688 247053447 822761564 203319405 736270457 33763203 670989236 953034059 558171168 108335990 8201653 350626305 797492765 802860917 75458138 566358535 54910904 959056429 388341141 824825460 581125317 441516049 35916722 725110854 463114235 165993936 50076569 972470090 130250988 628558657 119780270 326530187 960791626 110128241 797442068 116116759 481069837 923516332 634721114 764038141 684283382 773694716 72152895 686687585 115957617 899192503 746902847 606268034 359589263 774268207 814114596 796162630 867716595 272380628 353533669 628777954 286838677 952320606 35676179 761044701 826624559 354659827 744277298 551873381 258390022 767258870 24689263 174819430 635223736 899463406 896725419 789950716 709504482 632587711 988440142 674772422 719265653 365258563 434836310 313955632 808921978 995893892 957287396 176137992 909191581 292363383 450673626 59096732 702160726 941926621 670989236 380694260 889287696 703738813 393779489 129332338 557078168 258739890 681380363 989758839 99263296 338580366 667505271 612514682 908570681 847408132 498569960 659644117 433298528 167906010 853476117 214436106 833060232 914932339 752879161 20241535 511819699 946755074 937435831 751849387 863404917 425378951 505966692 903555964 765637898 785833225 996277027 410851114 7033873 951315711 477120864 119817970 3210365 159277664 949259301 775850936 376331536 444023678 370158440 86190052 240508765 304947972 186935140 906526611 76825367 877261094 208031004 898050849 658644847 751439403 999821397 250823560 326951732 35024699 359791724 902677479 842406095 399768695 396803331 436440185 826600825 888925314 720830367 687579343 783370205 232570344 900885188 907891218 756883900 175545784 499177476 535649295 245420778 538556328 135554570 442154419 206564559 693448194 246130268 772470186 433323212 593386885 945347262 910549206 18474086 8153042 129285137 905408638 393747353 263314066 76213231 564878966 486092456 715901223 587908632 862832094 388430431 822473190 521442582 981942946 971973282 667827604 680430880 980332619 996611877 302806298 117012966 735523723 39561342 478603163 569085091 944193078 404152340 953165642 146720113 765715102 697193674 696971145 739316976 473219592 294447357 974146398 366622328 379685481 534629156 681092579 887384512 973641021 262508641 686894449 743833024 310395607 609434760 902770077 723873561 727659294 727291551 317671163 211840247 733070433 811734247 810882117 818323508 460243969 944155523 871917893 670989236 726109582 57650394 290992679 527740816 566215491 908704784 973352883 978387950 277086785 690702212 742355850 544923232 119918965 231708842 915995924 622167036 715244738 866807458 153082335 841028659 572955297 700725141 357772659 946939388 860823981 452923553 513008587 368564215 922559715 791499432 948562432 468493266 675874181 107810204 104352612 681638435 696954367 980049085 776184934 155650600 530463588 659976331 767928431 518889662 349903863 761137024 873305633 962365940 887780485 228990489 500889906 689859904 285618586 616453496 669644600 767736868 782247251 364814249 829564415 960424358 715168006 692610405 816028501 498307106 775593637 847171808 911527856 480673477 633188069 869797655 278621914 601287947 757696953 582914397 280359428 899058372 893461789 28409200 478344117 962984604 150334616 249138521 656770881 102010416 204425281 777422887 42375122 565685881 701945293 945067848 952208573 897652714 126554595 713492758 74296837 800681803 672391719 399636239 992855076 207645107 4730103 924575468 383711019 767218148 762546037 728715318 751636713 447903470 970500773 991910615 739697408 82916090 393629311 598224574 337247228 988453841 109786755 716742445 983589545 546490184 634125878 493909667 454335108 428717932 74825940 232029360 332899793 519024260 835158522 945487588 846157591 654208467 112188717 131086304 10957023 966630849 699087654 720336483 390792586 877549301 50267764 429709579 758935791 66963626 933455842 282222719 18319288 804257110 29597452 770475918 601204240 604912643 853725193 628277379 525851952 393446534 72973955 351226860 855798402 953030117 298256481 696935864 248761990 954227908 115914903 9953595 560972438 697796300 513047775 793764675 874211582 893705865 675874590 978246151 417364915 984176207 708006745 370576171 700822625 741308111 935355627 143792336 181435881 202197088 901526334 731910095 919525566 430299781 25690370 746358010 367961568 685714677 737581758 422133625 490657068 271297997 909880679 415241024 747429630 45803803 433590626 591706076 883890760 673108937 817225122 839826992 770837961 81928742 992452196 412414052 670989236 798794780 704449507 840413340 777554975 863555159 946366703 687732641 870416543 833931794 75506090 883632096 793595906 816886664 827012266 138126965 58601156 157167934 746568565 896068288 769978854 740000575 722781844 541209409 909405809 800178830 93678792 621269451 611152033 490576444 216714984 8747899 113983761 813795679 795180461 670989236 50807962 977065901 997865555 742794980 870301923 653943998 883116583 87413643 334319569 672999817 333268553 850915892 71927941 112823757 102942256 247449376 809138940 923282845 162962404 755528661 670989236 504111937 145021694 890332221 90068683 591990889 969026452 210461189 960415147 886487423 868654670 442161472 884188844 999461624 443280834 695690198 931436490 670989236 501133886 782711547 654458490 710071474 283604139 943344870 271887428 871472334 448119314 968572807 612432081 604715234 721558857 571093241 233444078 708761929 670989236 993235827 872320943 69371383 961977675 945424068 975209198 852103173 343260228 914259807 840349529 260351964 559209555 757346704 134955085 238626502 694789944 832500425 754939161 994630658 518309765 288220277 828447173 826236836 417931644 662797071 751697477 939061363 271697134 393404444 318251222 157501668 534016407 510588443 988567325 968048070 386506531 410542211 274695129 581292762 112219217 321501269 871871460 606629467 588190969 873090168 608602000 801070455 901066005 796542272 779540175 351854632 987371266 142355337 958897507 532505841 408026915 486334285 873694397 536476985 408172739 831118363 364158427 923053084 975336146 634708447 776522576 898316422 277766036 108333593 188212563 518110891 474264961 27103506 302853608 128243817 556721156 692204492 100130791 385249834 356112280 889010483 728127981 582409553 502366543 766466780 594742929 162889867 176813327 105969531 486955180 939784006 701882100 469189177 209054485 886138563 855657479 696832643 714218069 708741278 927879785 236960734 850426367 23188999 493780729 987679031 72056440 237977864 201045668 626627295 315586584 894265490 907474010 962418841 653715463 881496447 930840143 196537509 705688908 768066106 423108102 784094942 732288796 677159283 1484636 255705954 793656962 185218745 391196239 36051204 448756665 456040107 650599217 889617910 315561275 620621309 80998427 811940327 792333222 837747288 863144447 687881882 132439998 661307343 992445479 931652912 988213030 502268636 947204724 749052254 681462277 512966887 699743939 607874481 850362432 240980509 395608588 14236607 728203872 797437342 736950426 685182517 846033654 566576699 246978642 696222019 902455632 787762798 447366236 208043826 553161643 931555541 415946436 693811995 24180251 750343060 709089012 178632309 557946453 54257144 184973060 987984412 525074339 824616594 691950360 638662812 467701003 100746612 672862144 997480402 16344044 759007108 757359337 626118682 852676719 809357938 294773405 80211857 344200676 987814246 209237173 899037891 441195817 557108902 407681206 900573568 309980817 117530179 683080045 879682331 819353292 689223811 878120187 665404372 550490801 557697960 833812214 541347360 710489228 962905349 876386494 713967185 464384501 372639425 337875925 147050139 535180174 553608918 920814470 178060662 469195127 872721054 297576780 887898063 680148531 721465987 58402386 161313807 858464996 895672254 182983330 396372378 503072694 822037505 790922445 280285181 679398591 782128160 946324218 217411162 994779498 329051340 670989236 299976950 165101007 585985785 351616811 117566954 674396768 978641804 695730743 779053430 930696907 946713681 937246359 824760527 693375159 671449197 992873205 830710904 985770098 903777441 202924886 936068730 212593987 128723375 676973210 667211257 901690896 6703579 780402503 447180517 290763319 782459032 22555813 40865683 569785212 851434344 461471702 440925926 469627309 579261814 506388159 418818450 2885377 912615047 192580914 81054018 911839569 895865796 944459237 652970444 670989236 208844305 617251093 477721707 81601783 303819039 906822754 662810317 853299015 346778957 412752197 53736074 599658136 251953692 338972333 926460954 132176580 709479422 703962085 834098034 79220712 806332174 924554755 394363699 18462853 6173895 143926428 712420581 208553157 76965790 532485170 304791107 443609622 742924822 269690890 783655607 675150373 820819575 922095608 566696066 746176592 629176570 455570115 500511477 259222322 880570382 175748181 399007793 715585434 766931617 788673986 939225564 893319370 805635516 150091495 178621773 734717195 830491159 731360525 824692066 179551969 699065864 425303570 259458986 728655225 885885909 298616861 836304703 108353402 809202105 256834800 481624784 948440763 56007936 990587593 125793911 158520258 827385660 571992908 836671067 671221846 170515125 312706914 580679203 778139152 119663679 466770263 96995056 827332442 529875017 253956614 913641813 96847726 997521700 408606106 875643597 913408890 426791090 132748407 594424054 742292944 985888982 836018397 685975380 703254818 156559922 154585943 638223350 70846580 221860102 603488255 944546144 715892300 867689611 848901752 835871254 694001635 833438266 3009419 166888449 468586617 114517614 979303018 514631259 124949125 506395534 866833824 199248385 774357879 21368048 800262215 651274609 138836569 727529137 1825100 878515448 817306820 149200168 759486633 863831387 687640411 957987031 716544900 763086093 449921092 975727425 604638397 673095127 385000034 910673444 676597338 978612497 256390914 941560313 749414229 301500805 224077485 542177291 700744111 139306949 88847112 683859616 423713119 142000453 200525089 417186871 670989236 775578004 111874411 617336453 861269716 794868354 971552533 996109200 862081990 588363108 515999945 562742248 971223264 998690428 972073851 17401991 816251049 471672474 781346404 478319178 911267287 312710246 217773562 409434095 209339630 708189789 604349562 340366129 321462927 189268967 750557381 324514582 130441569 962484302 470337065 453539010 268612188 965893942 874052846 837411166 670989236 363418404 448158860 731687685 538518727 305298872 125416693 834773203 772388149 702078695 680411942 796889385 519736350 899400069 986762643 938169458 699130175 444783999 371622881 289003147 616194090 929008450 919660070 913499159 896199326 966233196 500945092 283550226 820845606 166806070 181755718 486498169 773762078 757050944 966556126 726446151 751031223 257633368 541440388 78205346 438847515 182379017 874818368 868733721 920670572 921300575 339473159 218548510 917426933 243049163 550225677 906221471 224337319 6697540 772463221 798282010 937466517 416856430 686137231 276298790 102299972 357202652 705139482 938371555 372465761 743061535 756727701 870503165 912807899 825701374 683275251 111000378 128525812 3555871 691402447 748141752 853634586 680194517 69765646 769441284 687357212 991690229 714303138 251053138 635379800 622139904 725726121 613260448 292621920 131133960 612316185 483671901 339862680 698192036 132377798 453666818 873250497 50422066 819252982 828115969 392667771 737157995 418406141 433657494 757068085 677174269 944815873 394616016 983490328 927831129 863259575 836657257 713816680 368093833 727179042 44728067 111384641 880578696 340058805 273362880 541175119 663826976 449403403 16851247 851166334 85516109 927258031 515802293 274842994 354178321 104946767 728520916 382378570 497497964 805372160 273955245 670989236 92967204 851806314 223831496 625665246 170088448 609355853 71276985 122176742 988103008 416769499 914019623 339849538 417995871 32944669 940747555 525746154 456377056 56987653 653615609 167907245 732989197 709409824 848138490 739213127 943648952 486914985 86229548 548426319 986389992 998740586 261330176 586749076 960176348 654141277 610815678 232188696 903378122 606913269 1065586 5632451 738779124 956191547 196934558 162900046 950584727 21495049 858905193 175764905 634546830 921897064 580709247 470380108 784671045 974813513 626796097 869402735 505145303 183290719 125507616 152437849 291911571 524516668 781959771 255306151 753147955 149958300 680018019 841692312 124874560 413448049 955713099 867652192 847174232 263227573 245647613 988900437 640051616 117423119 520707656 935614368 751839008 847205856 612602906 889115929 132633160 911086332 720522820 904535879 988816769 681472195 124653828 986148759 362268116 259092420 818950133 816218939 963553654 838812255 722425194 30267881 531278914 909210412 878343054 142984538 879109855 899529507 729466977 711452253 312750760 912021284 187509006 856830383 765062809 193452668 764362923 191348485 443832433 276694528 339563843 994765960 155242155 909912044 708944080 808695843 296362873 24248395 940880291 121013243 775249258 309295705 783109074 992662199 277552292 834097566 328429801 815988072 126286091 279597327 829537610 77721303 889887156 216357122 735730946 951610623 781654869 743001943 646429978 712858662 231908979 286931050 383783857 890298455 766352589 864775050 680267704 978639323 794701010 765219789 663904134 937269734 659769447 540792206 187672288 670989236 402634251 698985030 140321430 770642587 748838203 966337955 357801090 824727223 524692101 932039159 224325019 869857206 678037491 76520306 646859976 3466273 883468703 697923037 185281801 698316754 993620916 386067682 161975274 797510895 247486945 787196484 267196732 410411296 670989236 842897849 296912654 438709060 454886770 117943838 778600515 968070562 892174784 322193025 433137071 498648432 506435209 674713172 758493344 966067335 810564885 279080339 586753851 172414165 7402325 571428835 418253352 13083133 764411645 129329713 813351577 484058248 796411840 133819595 352810100 477676540 294608044 215160235 487939744 622242761 283872172 676864562 58884227 178815745 679102552 93999952 119350967 812996272 773034473 215572888 770777595 234404853 945530995 97246530 186926905 803405119 565987559 830207442 25273661 881035869 878422286 342224372 906023525 752761151 780085771 400052457 823416122 561762514 29433767 605095171 439585961 131143107 455792715 840963662 506167095 929592199 530577483 781773945 206293398 798926175 834694032 491513619 651681107 655626060 705159080 184062864 814798264 885903790 923329374 550698259 898824513 324724111 605298310 835827287 264051437 515977246 989754749 291894038 19109385 737715579 93363303 751044545 723914784 831641144 925271374 174078857 352994398 780098142 880944386 775016696 67668526 689256793 679798644 911068130 696822640 824002809 77325011 312369891 406685728 288844921 814976425 259449756 333526254 324890669 130028779 940106781 693840805 560815654 394260389 873883696 831674701 350132904 687974540 637981306 953546530 743542539 913831168 71532243 891232268 869613913 562543255 861177398 716216907 413077378 675402940 16517568 801606597 999560852 996692834 565349482 947492499 826744947 67012258 575898762 17496982 59928155 628509877 118951740 962719839 804078807 459384376 331315843 840557830 855427175 777834372 612559283 818624303 564839507 744995166 765468207 872908913 166377286 710424639 774643295 935465787 29779199 922011053 967673016 219435015 702360584 177373376 788454715 365685787 932032968 732047055 964112721 802170059 958554418 941470733 466306896 568411245 749722937 670989236 909350154 595110135 736225781 710434239 866431619 773875450 896116918 928634165 55783813 440107068 251063925 829502078 807731883 363279045 221948063 818068001 795566876 196249914 519876315 726129833 483552526 688938022 784823226 164035933 794559429 962158319 31585956 665307783 620577953 614002849 905337257 327477211 266906879 378799519 683023739 798997444 165433185 277972987 956683220 776957370 427181235 973963452 402619212 474494126 926339956 250714550 859474862 681708516 963687220 177329879 980470405 289707294 961120662 881407124 927180918 257832852 211226945 760909190 924017019 739027368 823230246 815318829 741695078 267578029 283597248 970341157 974279862 521978766 731809955 52992921 99972926 979826459 875087566 785072802 517119137 118584415 177862898 456053783 999159977 899085689 794905393 753055569 35466939 405200936 793523907 739257429 65461004 938801988 420881197 563282168 552093421 880463773 305327765 399820776 905604892 916386587 692255598 847438278 893880036 835356529 753851337 329195576 984815792 153458930 718240572 887236578 860725187 523444886 706373780 791042087 969010114 670989236 804517673 865983785 943922321 430411426 748102375 355137202 371517597 255899722 79844512 254132475 309744390 721274928 749528329 821442385 174495787 494695984 56316546 293766190 904330904 123292355 736162930 177431943 244750233 221295208 547258630 973807413 858500183 700075675 886510984 771993435 373824327 706908133 872971599 510689658 775855205 626940090 606691023 688720155 794756774 801298523 149011183 828206305 742693694 988648778 169900829 859398998 813282932 687872944 958440570 870381130 842090695 221453256 864251305 681417019 449240968 597445905 953754905 819353951 686452201 800667496 271206648 919695045 62522858 285385723 255172807 213655582 835096320 646353159 715266487 878164228 506613013 951655242 436858689 543062723 122711737 618747612 910268432 928888260 95594517 941103001 149959396 934714029 887609354 414104692 690344927 743187005 976081098 402622405 379307599 637608073 591817855 962048553 967499721 243922175 41433323 428513311 936211436 787076091 944251147 805131943 7786700 125102749 917902005 696336190 631100063 724091494 254638460 798073217 783318980 927617742 941548314 734989842 762411185 539713116 70812094 870117566 280416122 476241884 826181714 670989236 451363902 747662369 96299241 903641881 593156799 838610883 802439652 526053813 202314373 635888458 762003373 683046603 643298009 792591643 808595742 44331623 140980688 758137981 858821921 826921253 825748007 81580621 744628838 401684878 619163451 610125917 911655933 974329029 881264817 792028265 886161462 270678949 131792262 746735438 673693152 225263550 603564012 293218890 656526029 734885357 580114353 720994123 460790613 923587152 87545850 688156304 875647346 806052630 783892463 664970839 585613235 583094409 127420451 613335310 186184006 864445982 925610597 447602763 751855274 388390688 604333152 718115702 661905372 938643216 792488420 458471134 992322152 818798492 846401327 911607531 743619723 682843819 453340462 481943789 689221749 968411592 917386079 320049164 890505616 826415125 660518380 583920998 59213071 48922370 517558458 582099670 78536825 865205316 177983744 832738821 532844526 720327611 416845469 282476367 303981167 980087974 946074959 379085139 397052699 43032391 263655352 508741295 856428625 13923739 313553378 751720402 779509503 924626763 98598023 909288313 861988821 962384296 697395188 106089072 308867842 287251300 881803689 981195512 172988726 223349577 804374134 372816532 489520169 123610903 248014925 598552074 567002691 349682740 40836140 995411850 207727281 478388603 562116306 897145711 847575867 960029748 670989236 31805856 781883848 536575476 981936845 195811689 889421603 85281504 963960082 360063351 888012514 762123521 686709549 347178119 332403997 990252402 848226485 491032765 886085272 491565533 935288953 942899418 535239906 110152501 677905670 946336700 72073778 925774660 631577288 279851511 211691121 795127372 778838047 670989236 418054736 616751384 912854918 911653969 449511723 40554805 861684827 324954156 46611902 720224129 28441007 2568205 683091257 697620811 733518377 858086219 865936453 579668607 138030901 707132027 789405204 856203835 796651807 746324874 230018346 830143467 170467096 771870585 772949354 415125569 957192088 670936911 858853058 349090587 404056752 174542407 781630652 11856482 403022548 235977236 128387582 44330768 129928627 181653526 444979913 397976207 555308130 852877143 796637094 712472057 670989236 303409078 439937928 700679077 873757455 138298157 6883640 877397341 861479441 48353009 549606581 964284898 427863311 788739414 829001863 905589273 3939183 323275724 739238182 260199199 909605193 548473964 184678455 447819269 583694965 55734889 994510711 822218137 92166929 711934413 842415438 839172347 177969330 959718537 723042624 419585484 685841694 128353182 344568712 413279582 449790938 333721028 619318999 745400160 846907181 193850041 204443597 670989236 867765757 25379914 199045210 688748324 742668023 48510516 725534035 593906711 362313116 45717463 214184959 776564760 944595894 653702216 936989168 521942146 613720782 782459945 885320864 907189081 472220006 245500548 740201134 26230888 28801118 664638509 813549533 170986829 718266431 294265011 144407076 773801057 727407469 739298507 461611242 788116677 637199696 924362138 373525351 230292778 398747806 675848043 178592243 692317474 225208397 899022696 954103470 699631725 941882589 795526926 871402038 689773803 297390812 939264505 957885394 39439445 479296932 668526335 420428669 87618441 422797796 994555128 403123386 558793887 248483306 599529156 384163617 864193273 696833952 540616210 866196255 175798962 141798561 696627128 821974890 647415043 340390396 792981483 313415770 646860215 733375787 918667823 762287775 986116163 820735441 896727696 824663573 339503564 638442441 103979686 315449518 275936304 549198549 113330668 883774602 969766822 517661291 927073319 597956404 843393618 670989236 994005959 837466404 863723980 935628861 563588702 691714376 485484773 766231443 968030866 121386507 805209608 902532718 211643945 974992187 259538931 39509758 426414973 83041907 854170398 457295945 136209018 898608794 918562425 837469893 322496848 706473954 738499689 652162717 3617794 946251666 26191535 335810776 670989236 547861891 781145579 759662937 702334540 959123130 901075736 933321369 477108173 745797067 225087205 918061385 563799395 768985217 703522744 695875030 911806113 134325437 552953437 846115974 51362633 929299531 380087839 851556247 985373229 891336817 738554222 763778277 645022906 578336598 736503562 936112835 316012794 86575355 676555603 603509237 920047479 679073377 736214781 847904658 408216632 794960603 670989236 975974514 953643060 946669619 461893953 329998051 682621581 358867698 483436680 880441661 211120463 880525908 669299906 11327784 128767546 820414887 563412430 11619159 987245848 677190271 947529976 970710867 526877470 286053272 110732206 767448329 126236086 630336232 81690821 815331048 972373226 694024308 785525303 934861035 491573599 773741738 69184075 40219039 208531195 307511759 641780189 681077448 476340271 757414564 795895311 246652854 340097232 700247553 131670287 56180364 812449509 950065750 369318083 794723643 705413340 497916154 266518515 754301914 836946454 84780801 513097251 561473815 207481956 656630713 311248573 105296554 290413763 976733724 263319470 670989236 395514898 130403818 782638270 914637652 958134357 968989087 362392202 874669157 813255007 349551144 774461218 83296880 678841540 932842900 283531136 600934754 463355609 913841307 805000288 910384784 6391145 869292511 881462759 227638090 422239875 486560850 870092801 129907545 575141603 281312486 938366223 712688193 509532117 279866547 743418018 139341755 146347536 776661176 928160585 549294868 491500319 995736147 562155106 754747213 656445446 973347864 648238212 971467478 851041213 730563362 945957931 812768129 93237366 391374609 917560059 393692193 606368792 691091903 438172912 134811352 670989236 153466263 956504361 352479020 993453179 653356174 708999391 421058775 456904710 946185737 509660782 539912949 817405099 853277886 371108340 153346978 400001091 713466704 584538714 728152525 670989236 979320386 670989236 880519968 997237017 281213820 954254546 478959481 745811532 153575378 563005857 802935857 438760849 927481274 344722171 730859007 704522019 724455312 126811192 744567568 315213746 481052617 62535460 507494392 848841087 660856372 760926599 743981485 405096507 766731259 188492195 974134426 748932264 703630146 947032281 989993893 177010492 976881453 114478490 926930310 696741083 97782420 879024416 450072245 998566679 100718329 876762982 356639702 769006378 662851473 298977678 764579861 793247245 469087455 11089762 670205548 544694023 804028405 816386373 502759164 404540019 922964949 816092497 760986152 763062671 986855370 201900731 926959644 118706841 210635770 2126352 828648865 108410029 337554127 156416572 795598358 524374382 209268545 20213544 89340155 992581511 199753378 385574624 884942820 933542482 254952577 882004097 473435830 941632347 413648143 900286943 805226382 163000553 602223583 652613170 890481990 732910086 63008570 698042467 408480966 750878093 804873655 237370550 885755462 171638271 724828563 748224376 929769787 783367697 891459683 343196007 238107336 736647747 884437723 652892214 856487436 508761757 538969037 409661495 632010285 614955963 216874260 402180488 121020484 922263080 771086745 934341534 61050192 110038061 161744399 405648428 138132491 844648833 704167013 863829441 557979818 776276532 898813693 858114339 578603235 443274484 929330209 854803138 866757368 849693282 959658869 346505114 884354655 943500514 716613315 860467293 400099550 742370815 851399767 90275886 795242601 582097821 46454066 446589589 997116160 720106879 112003292 511097395 904313270 214660738 385818007 224643760 293875434 169943186 980643949 348211832 783325085 465426098 949882996 536134966 368353221 705279226 911421388 959459461 279305306 724894092 813661971 357735470 492996755 902750877 425146046 206614615 954926864 848551376 176773519 732224504 215007757 670989236 120307689 182276108 910664598 502720774 792323463 929164495 809546900 168905863 738163122 929413810 691365206 846336203 885098247 29472817 563890744 79221113 759735700 200258139 350640494 106469781 814906390 677436224 9175853 477993372 886176158 680908161 443234455 935182656 863976082 897268328 894884826 319825775 47844385 758181482 918257493 162454785 686582160 485142508 964951775 791785779 973942011 409588203 963114575 564107179 735058954 517382299 779736484 271221391 563617804 752029573 938581803 859828103 144978409 509482545 891603368 879993963 392718365 673775051 850210799 868558136 212825473 955630654 245912643 904654759 65104321 816707061 305566973 622433585 582926288 220982401 427600133 383969081 514702600 944015275 820490692 716709972 986987032 385298293 222579558 341351743 55664080 481979851 508812042 670989236 749593405 151007148 760383822 383047331 168624564 345536387 643387166 135879161 728490490 718252904 68180325 10225090 596264246 878314368 151540370 535763398 289816999 705136438 979020048 956523880 772062359 2521727 892977947 941963695 986781914 650863422 634241941 975577105 892874370 891615232 687828106 700242212 517999344 927145413 819253461 3227325 647652545 246843415 443641212 250572720 718602885 996116579 950089854 687414049 768385856 533681216 570656975 494402916 899912968 853877813 782773634 593625081 190427974 753673800 96592000 636928856 670989236 136539091 83379281 961501063 509213494 901622357 327386647 73948803 375228317 133704682 896046917 479854845 888532752 813485729 710223553 915398102 234205063 335738713 792077138 407744969 702726180 665168084 289875034 917431445 736303519 469710260 693620807 28230163 166382464 845055492 835731109 333402333 275660532 859999352 684065353 864149583 867055049 992703392 850734624 847190269 868759556 341192791 930557530 165393332 995411699 834783959 611160257 203701110 721549055 288037571 937422958 626044217 901507575 932806348 734914361 154293203 899857812 159403207 409950985 780068206 787410402 162278674 750701684 855703912 259418953 586249066 875298605 479112009 318761469 380014748 898752191 54034183 944538766 607337548 694910961 190281803 351776786 900174778 599561115 401035101 16960552 793793828 442618201 801357038 437650069 97912969 561175530 807212204 921491005 410113758 682936892 276886250 42159197 779757278 812273304 90571702 927080505 965696344 241846535 882158468 305716331 401967878 877914724 533628092 657258289 887082165 435009765 979386712 435160171 856702774 136898900 821498763 989439004 670989236 532644216 862454882 886979187 963172518 307951435 257457982 784027919 562321994 400966457 87297572 744994018 811166637 206055039 773544975 520718144 456862115 722031692 632011819 253741229 910970231 388024138 661755756 829688127 192902060 581789602 586756513 970167483 698604352 558646639 831245587 803794678 158337529 678663530 372332441 153362793 367833536 50056844 154489431 724684550 225671879 714992628 165300329 234281016 526265050 523762626 744966565 212078501 929109536 433443327 491080255 256423610 852280490 120469044 584402450 748616089 409595382 956436339 286484258 870210255 796991144 196076773 994260025 858706301 959499857 761229360 825779495 288599001 835600476 920304314 965227497 775877119 750322000 457017305 954709814 5378385 420475420 781515048 788638635 835202648 245773687 652017011 378291317 304966413 864685802 644904441 443808988 946217748 927146020 268899726 216030666 713445007 148672370 468230888 15041183 458869391 784550303 670989236 529121678 585150762 503936599 457468300 372217833 768874518 794235577 964887818 40379382 899429622 94739041 713825032 338428277 702306323 764976241 780940330 918323363 959374743 979857056 573452420 855835094 713014064 786951708 334777699 749327678 835999267 57562597 833983378 842059832 584107308 789274667 213252133 320773474 606092839 226452623 817833837 640337668 153709259 602663817 241938741 696186710 716774189 535029519 250476176 226866800 899362574 563755186 472669938 851984190 630007439 548925050 430841369 849360808 574658480 583800628 9075003 347245736 293925257 883604548 905478184 720604207 805872677 557590774 514721493 793986914 303796657 785754906 689685228 282121830 960971173 979297520 835614014 905263113 982167156 735331452 801067669 804074822 743304398 148983221 808377823 311704152 739777256 813412999 685288201 691022779 739274895 375623599 473127520 577470819 747276495 349413673 537354073 901751011 595633784 512442878 583990003 760883506 240548116 848778579 895999328 706494768 801321729 904166651 452205175 981355965 811221898 298371857 700781992 757734305 43539928 293172869 764990068 828912881 787863608 443211907 731259069 486665405 64610013 813195004 936005802 373404162 140971732 804911121 960107939 820725607 101881372 694687971 925601260 690034435 779384377 850749361 82934119 9816899 825297631 815198657 780425859 320559703 97824978 433958402 406221365 659521270 519395112 582248069 249190804 224483236 417451858 155984314 695500248 395882099 121290672 888843398 81795354 506451637 151654155 35855314 435494861 814436339 848103857 549979777 900559436 78776726 821352255 883786952 961021609 172157290 90154962 978636002 732867656 51835740 854031758 656862829 853694187 279721851 837093254 242994592 880299766 610191590 229248883 277874264 191659583 502456428 692506185 835178739 591299807 678497505 602954564 932820612 686836332 706900922 20918167 873265370 706109408 44412653 768227546 252464863 878189624 253044658 890746135 881881998 296800123 513546447 506538637 934802246 526688578 375774366 785223873 828149436 546952350 320698460 21747887 644377864 725027267 853126219 796834609 338014902 821912574 613603149 670989236 379394325 593121967 82051914 830872494 354923767 156364896 93226970 935627263 754002508 880557192 178363053 325529500 512983811 142872070 699996349 131492262 71165235 545908505 465408087 702323177 366912086 852990532 882373050 65393509 550376087 661573242 896977920 396949311 129810234 789120535 537031825 696652733 168827500 687033292 866306113 747814954 692025665 63992631 864676730 833774801 751851507 899665292 602297120 941439814 566069284 779109176 870397848 874688256 989016788 165150879 253015808 496440701 595772106 12745750 703612371 142630206 501600654 36621680 69425463 312076477 901248267 812961880 460535614 591927297 266844954 940647942 537247046 661548008 107146158 225806468 91534636 761231237 384521047 835307539 836128683 875200248 1450934 657177165 780932698 401475663 952225359 715016282 903102731 392374066 893819230 970657323 542417068 863473937 920841738 931052890 227760355 985004278 798302008 687572103 663517499 819285331 545800450 488307051 433224806 110680304 749974054 563589498 248470330 924059992 803409260 30804566 333293442 373810330 909768630 757921594 336946931 729107699 706021801 53050240 482060704 35632499 964614824 775785564 172577869 918726288 735754779 986966698 607430607 361013649 81995322 472786133 827869447 65119090 966535447 900787783 829382645 923681512 727870227 931246330 897630962 411592461 822203607 113637723 776523623 332729010 734301586 282357665 690724800 881361624 837280659 436940760 459577881 15619787 15909691 265590359 879215326 867753262 644205609 384154586 932046648 148248117 443031360 152580141 184007047 793559490 11823060 804246600 830205605 843555619 929542440 531204144 383001794 808111609 907708764 987317183 711632343 209838631 701741110 716052648 285263890 766791879 311924252 415390703 670989236 646071654 629296251 903690053 990373145 195092709 645553492 386188381 444581550 248421750 673126402 738085206 941996270 729335130 699679174 792659299 838309373 551671679 33650607 697660892 748222054 299322934 992351070 303013723 296401192 902559383 941908391 244023624 971598381 125395996 858727047 581243391 572968249 958876212 827256751 181992625 879757243 199321969 720787891 938032230 887802889 15225963 473480525 181595256 586831081 956269349 95355208 980258742 335639788 888769603 989519539 708399404 849432357 771134301 322682317 530763634 340444250 85558993 787474056 691175833 976074692 438449342 779978015 722993526 796536496 979021992 640837083 134535793 30051405 943382733 709573110 950177123 613691622 22523933 988440002 491489068 765221821 452127588 864164272 755086897 433147379 374436315 856524851 704564660 362862092 741717207 934349657 385829932 995765348 831043187 900059355 818135959 944001025 924493066 146096891 468909477 814036358 95130234 913104238 884926896 768662370 964664487 113418777 739466434 931321140 893599015 516357530 920696776 801510824 13979373 358204594 932846820 879602667 670989236 925099187 736987248 729440639 854256625 121786759 939592723 878048693 460704492 952839309 688005829 117622748 670989236 465330296 962095500 725271148 565445705 364507975 972474562 887447446 737825084 329417086 847406914 761702039 977383389 779266267 937424231 738400694 842067013 858819343 192596483 159873711 488649304 567733975 777316893 878319908 150468789 889706571 376297639 51104449 595185537 302104771 786451787 721933259 591904672 763181254 634946094 829382660 194570396 623338723 891115049 103677960 556881621 754207256 231922314 488599932 375710266 769844178 737348818 34427096 521863470 588898609 974960598 670989236 819659203 806708960 551818350 817609926 30027286 13682084 983375349 951217926 758818624 862339293 14963195 877995462 478333590 608862708 811570897 888998105 681350644 37270670 89646968 790017899 842368630 590488501 622935154 584156106 788102394 748304327 244693238 851432596 237082472 935302827 986522842 747800953 644014597 585834097 305911290 480269667 385399526 676859709 669998760 976561321 443595016 37088135 378025570 513712005 964659488 263747317 901010765 926609311 327277776 890168385 260069599 849517587 248129914 784828182 771232174 921997770 738936181 750878314 773428301 509760125 911031443 631500492 871698580 301832175 219707122 567225084 598429156 891082101 450079 670989236 703025695 571069650 820719781 738188915 256598955 941611257 272950566 36299659 627441309 301780877 885894432 470540929 580256966 220006498 877896551 515332085 878800307 118045482 717576939 926152197 988263682 310623651 866323882 569627189 530749689 340337876 591574907 798182808 298672889 336542587 314024793 109707642 447345789 345700817 831610549 733530736 868383338 687355103 310515275 534458692 539556089 818132475 971110199 699004166 962588730 552417372 947246852 745245267 606700605 212757632 374081854 7229217 91188696 193496000 312275526 226216088 735904482 24851220 590539557 840492754 425299743 477156330 881801965 321424112 340848424 793532971 806619405 514394153 670989236 815253472 201670751 699453343 611377246 725907195 921219474 557749046 982515665 347461765 677643347 879821705 592672184 929238738 712498605 803132001 858488532 570865153 338473699 412029819 481827049 526697445 238942570 622938261 975551565 764252422 708734353 457511000 756103082 601642451 445344095 542251515 861657086 441855284 499320439 928367729 922519270 670526094 681076305 751226949 9409014 711948890 924945821 315436620 756769297 860254165 689209014 221248900 921040285 808830875 815207046 471465971 919713822 831075891 853320067 127345326 762916128 416805872 24369298 891418862 715162217 31514098 782412781 639330370 479347728 478887731 489261411 941570001 986109828 978573848 178281094 486375088 956019994 699433592 797443859 418098317 919479531 392931896 914907440 590299656 158205041 720452504 945606378 689134760 983652497 302379166 67046415 694119272 55139230 149983438 647782073 963063128 579180219 920357910 214505159 670989236 877541677 793091927 589542055 761013582 863968770 376107022 844162263 69868403 195207759 507652340 470091221 782694884 528003565 839028098 40489092 602226291 749616956 864286127 724422056 245088741 888105705 203363426 574196386 439319906 960231656 250583717 94157487 89957197 538677626 513559781 820436706 962823978 928568347 987135840 190776873 835801231 931475844 20276560 410012005 239210484 453569899 989180706 291267376 945821196 841768843 400488779 735461527 637786405 695219405 665977442 982058770 81218072 103440185 934790235 842624829 970951007 273330234 67203781 992462493 253445609 968974937 524685235 697091493 961882189 339615428 886199740 853431311 397511410 21444597 799871707 962287441 60242516 767210565 201639983 322006988 817747216 772607595 699683622 21449484 638109565 725592882 270688606 43891817 301459224 934791329 417248756 735339816 993392360 959193637 406132894 902971264 813273598 907998501 533448889 726749762 581777671 123482954 877760519 916544418 606805116 298577677 739156927 273295531 698514233 12527892 731250866 655147901 975240442 468798645 712571572 894445576 204907863 500766031 684738829 881099962 203947835 761241547 958504609 95368477 940148117 775716656 614180781 979663312 245030040 29536986 485428579 871767899 226236126 841594624 176190742 888233804 474385799 515689230 747354556 846655117 193451098 15236385 814162997 202183018 989286291 297767521 601178903 897625917 827845922 459220996 246176881 588654907 282425030 263856022 910985362 981632613 398763104 296486199 412879559 958452119 949471623 74011972 125050378 833259693 191420246 951906974 805970466 826972396 561983318 174717988 882235721 967807557 429772598 417479511 706883265 509675066 236825684 806231902 775357800 635451852 432054267 74702775 726476570 819415578 979255266 987786504 615892022 823719754 833011571 675817644 270203694 383215089 93360737 907926092 881297210 446553080 113508560 348448912 427196504 967105650 931133998 528147123 996983545 380389026 863251228 762674823 265920828 711861847 713486590 526691201 697205655 194840989 935748494 741398134 441465225 457326238 268053366 786104780 130797509 823293767 466393300 129911685 972269336 77509234 759672318 182443149 915322287 916266711 868538124 769476647 754612417 377646979 22716723 422568807 670989236 16168437 555287723 849402286 359805074 843727172 816906229 171376149 905332027 693904771 697848686 91474073 802607195 954383096 638978871 551435555 773732204 890514605 715819829 541861471 751059252 884117398 985564469 341401891 595772950 808858616 845907725 820805853 950719067 777702784 88277385 734767647 392012777 706099586 850611901 495968999 711042628 370067057 636317059 703254245 670930778 91255802 801170376 442037902 682925847 423342792 272048105 583383819 644357664 472167987 381656803 665075922 794992236 695133912 723894521 628997630 383324528 488627910 672094142 674026069 5886468 779641050 656955668 857022395 758262259 288760914 828294242 584231468 502985445 408691186 122899605 284243331 908177321 705585872 383564077 796302978 546700731 510008270 202422599 814359356 846426271 718180930 975716929 385466447 808087028 983543696 579925316 614840022 759969385 392934638 555033820 797200579 42140468 693178839 17683828 280056483 201248233 908524925 728768801 481897164 373613889 833736934 803288340 40203711 131888999 187154000 569524542 832668017 884435265 771596755 895809995 180032167 646820063 596978553 923823111 886328927 506157598 941832259 926012878 517096642 658805296 815663572 359150275 607960440 679089685 325252431 946925802 119355684 822509285 606267839 109027162 838701530 693587626 239161689 980650850 767485856 603616245 502380056 449854046 668065191 374327113 897831036 850961932 829289406 743193361 836883439 917314565 432977796 702966870 687929218 91011111 265048490 600969556 488519470 566786238 11624746 792128583 767317815 922446563 292839032 616016741 398506390 83085922 788939246 2148355 540703079 578341065 884025253 397055532 672945526 161286438 705466029 714360868 119388084 569451251 937336159 493333261 163757093 199781378 714059400 981838228 898590965 570359162 621710555 347019408 396622002 172933477 123552528 924717394 250131 336116390 832266375 852490182 298284873 954069225 797253646 971179596 598253384 235162061 963283622 332395912 847470231 953408993 757664708 613911002 204479919 200503087 995263275 843262613 764130738 574203331 948760861 556380414 737110703 633655386 865252689 598178737 463003328 585868795 558798090 970037822 925275686 656324738 778824861 494651459 928715063 659918845 945918044 806479934 947493426 496588341 904512084 735965919 525644729 902431267 723839842 580505060 319572171 677392086 61794981 832313901 943755796 676207549 304422230 413215955 946426627 856012195 808585353 692511816 784062010 820031074 958021370 849978351 986460553 815596410 930458655 333772046 745269594 370197358 625480577 555442115 697949763 676443639 152232745 20201514 768817699 909943154 899782289 912659640 702805316 786245899 709869262 453445928 235403404 856045642 803979311 180590796 417466518 458356441 711746778 935835814 89587055 758513148 425154962 357122596 111803766 312292029 785249638 924409059 869335207 862415149 265877897 441965536 284236213 360916625 870533065 345245756 174583000 472697704 612121362 728015421 918976710 301978606 230642224 836843293 20344370 429292964 956035213 918689919 917638046 374363656 324780174 917178538 512534898 871466914 838379430 745826039 851188996 692544680 939640734 19926311 670989236 795777996 47337374 769097314 43355702 923720148 718977792 871311829 985274686 978597364 336239025 453749976 348093300 828011170 765836568 713187254 575566616 169910461 860788491 57781019 682402721 689307085 384169501 225555091 897837750 185633843 140625900 573849677 973979621 400757939 328866381 928173805 493153818 796168168 988556489 467429054 537209748 935174404 45292229 778008565 178075397 814690562 461141878 969123715 820643974 826580438 18950017 990590685 842895237 307516589 3263025 321828063 627221750 975857229 711294891 511717938 47807230 502457313 688400853 999765846 115017966 842784104 769500827 699635117 314083775 762680080 14756732 714646689 325077042 643765023 685479442 203972731 21422061 951824857 958045638 228155714 931222515 234436312 605706042 670989236 216289642 891717770 585074610 154925631 397856507 830071897 720458426 333504249 360955422 330038105 699067953 768780720 486055888 429695284 914776145 928866356 179171608 398093714 683193384 812865267 237914554 846942207 297165433 622872371 923833377 37933348 616713812 752009964 847442043 742385761 648984240 900847536 165995101 545962284 527206402 433899212 20579402 737423235 644936016 429074047 843862469 969773473 429458076 705364454 432606270 952156417 856194973 537954120 467992123 139951347 788264555 70894184 424359135 747406525 892197574 69161976 185908360 556844878 695007182 8638545 955993087 898153451 560936479 380772413 851350507 701471622 746503102 939102963 15480305 813420210 536884775 716757924 730485536 133103745 693153406 132333885 754709362 997274398 212939982 545866970 122393831 307390000 904168890 648801817 762898959 821280091 689299633 579183449 838594787 669552571 175788514 707509454 19307199 4566505 443043038 347323195 55191686 748147057 172465192 530304989 779569377 452225435 962449052 881700974 353339334 129505813 985946169 857371652 742351087 892917948 553136649 861813313 828104979 879937467 921048946 804352845 249407790 555305214 73833148 612809908 598910575 490468859 533719416 705685659 796190939 993704942 911485548 440920947 670017449 663458372 939005815 534342519 245255885 828047473 958967778 427153726 752080670 397624609 903208912 671707243 402520861 718764488 453626513 347093279 517097278 996304108 201054367 73550493 980068989 349101082 85504060 562827676 736925749 983894857 652470686 311166097 729872948 331476615 42368942 700715024 831799354 330124933 544846513 478567149 723401968 944692121 798709208 344106199 769814212 889693737 406084564 734589662 553171264 900501851 873211773 332052804 382802086 741957440 572981463 94104196 750816544 532922343 289421787 5724891 752772881 965571995 786263807 844322666 728482810 709103761 683117384 711159979 758742419 778862530 73399246 788774241 856448693 51215718 698447755 564237097 798220226 197191892 625442235 716848227 688539461 901503479 864725108 94938784 797258242 548608938 672580961 807502486 606175274 58879529 761258122 938908722 528907339 986242777 958936997 686955708 746901481 958389278 840591361 932244847 798380185 392624952 355291306 571203898 448027917 840258733 404047305 185471083 943865665 769195722 669308584 390653664 61351192 106304707 686705321 816591313 58518742 983701096 973543535 919812294 795970858 775470510 930951858 670989236 964889130 754260015 992192103 14700264 771362662 200021819 470489705 423609917 875272088 678928245 760082181 658700633 988454181 784695046 670989236 602874920 258888078 205788676 988519227 891627183 267155589 535585690 302167436 92904661 415954737 831356305 842850349 553292670 172957233 873636243 786395996 884901117 58531035 697946017 763004334 62297767 858423293 928999567 670989236 798991871 700391054 346197126 999218480 858462611 359054634 471537955 730299386 990792478 202357914 418846167 301761066 44246308 945925774 752611858 903176277 874257745 916133433 206799277 477179513 909016837 139507418 141251683 841241979 14378852 813205665 932537057 490498031 6131814 557740704 872861839 575628440 186577991 989391924 775671563 615451819 773649046 280717316 941853618 690237899 130074097 394840673 786269972 798579476 698778330 551618791 615884199 781076352 730677746 761642758 824799831 738526927 774263744 749826224 374992127 302429616 612324084 457126347 864210519 719851550 851042898 687241041 972106402 670989236 331449354 342807289 318802116 969227292 366011275 879922029 203816938 723571993 140665669 22153997 83676217 876206575 155222250 616773936 857626799 767394856 443464096 142257470 437722432 171293484 782467550 457058940 741649545 460323415 58559 412391673 761946863 716828308 590305062 486966627 951357266 545244239 38731853 846124872 771240641 122606370 201701627 917358853 555890550 722521427 881731363 242955784 358323110 847920779 19232796 707070413 70842443 704870674 599687897 734148840 985473511 38136609 815501533 326459009 949386482 89637050 44035660 856096842 618911796 494104294 809910373 570566321 118302397 554368981 708557000 200549171 548250670 376953091 742850068 387867155 559834592 670989236 770958212 64354480 610201186 862695677 359533471 739102975 962901910 388021391 508212637 711520149 124068066 719702750 76198671 839892912 770345354 690392557 531390830 129893541 688663329 933598544 247734802 18322773 954120982 242408334 926155860 619069755 834493618 670719203 877283480 736411503 856469059 869472182 289024896 670989236 478855566 320184933 431731417 66494552 135737245 39247198 585145699 670989236 905409227 361139934 589774179 820182650 180318059 796989251 831208881 615059358 346438208 516218148 906740395 96303065 453830168 601916553 20451485 684904095 732085250 400247874 582245651 766175584 981065810 913815908 720691155 386299243 917417962 348204318 761723375 751737324 635530413 791396192 463877279 812858529 907912965 944770925 774958386 767592730 981179881 527898372 533730106 958571598 373386932 330229572 23130352 677258063 657833648 503287378 544801532 91405570 59196623 695316185 206078796 321623603 900862746 829704419 680841017 55268831 822860682 7674599 735420283 757896418 224175546 441841059 880323253 986957017 923145185 350079672 574668827 318332952 998922049 611004379 42849407 768596038 982207434 51662053 695237215 976526395 763980625 383850797 766510605 90187273 882805733 845812042 322564231 103497566 444528403 423549111 47869504 881822751 834753514 941280364 73406477 892695864 804401953 472052504 667984191 709177114 780288796 967395361 734477472 775270747 369824099 980269160 29870721 887594265 118612733 106441876 165726986 587756381 807023399 357556647 86966761 581890352 617784599 922099162 852996810 657674918 327318319 719852766 765697118 226878986 721409675 67733461 382871982 779782915 641294745 377671068 718387195 415098264 43182423 586782946 91008122 909987111 613271818 547324286 262995383 923213549 302167689 343034896 223008628 219169682 806774530 478094171 153506590 944213170 375918416 278328632 788658805 826085177 266264960 995752365 802245221 318588285 636527981 492249020 430934529 792527122 775463470 415020343 887431844 659279057 934620336 135912065 989565632 112012055 240964496 968843985 94978355 984446573 782020182 851987731 147501235 141258496 274425620 670989236 474681753 772321425 509791931 86455466 575615144 670989236 85712301 821934402 566935696 970153575 868225333 696872150 205003544 740919573 842872445 351138825 752521801 231323357 86798968 841313924 975117155 579730886 849571832 80275090 727543807 362062384 866709039 599275878 696547543 796720459 321410372 78549223 353720000 943077543 810424224 112827312 464012997 780733142 792725091 973227858 581340484 557607711 675326094 705002633 591335623 624457611 365604871 888382304 555806172 818441365 793539513 4893888 642831363 158118839 919816826 76247345 735675373 90063586 531438389 25248396 226560812 684048997 821921819 562221615 781585842 704738799 303450332 964508374 797796501 644568740 986681760 269624820 911483683 98828597 331882359 980590552 324704965 948863069 815046618 748186576 614117890 369920587 832194027 245140044 576767981 447085799 907823565 688193294 53095661 57982299 929608974 947457933 905756495 961433268 500755671 862964170 613298886 670989236 698256191 21263182 317849330 171038089 670578685 855783622 465564273 470056176 409599557 75408500 222028649 910737683 314828482 524565604 113630388 911493803 805134618 933374362 793513451 925121652 920771330 685174555 858132285 429671523 29787365 350934691 396951912 732873607 770326186 193415302 235271839 80567646 843529857 739624155 515431528 839803056 392437031 610008378 169116745 85968431 198831884 27539787 888002253 426071325 397347896 80794505 689835840 781274388 988016903 448802777 811924492 614348923 441480878 274357384 743549946 613634872 6795324 232786440 764995963 163881577 330360374 859616059 778311810 196342847 926197696 637209843 996250430 630595467 895320614 670989236 406118766 603147366 597020095 584305316 851534052 963902041 869405023 925766807 809142887 850339711 881522400 276478220 429868950 167173404 848455798 793980105 749653397 193128015 861383151 486973881 979210508 469677679 960069316 723720631 558784042 41608687 410494462 627173929 368859966 931212061 822993142 926879667 926564226 914042874 787990757 191695220 816649354 450983187 740155952 847396727 803928137 399371615 806283765 849046228 208442579 902835822 800052594 835414888 827970324 372017081 682706133 343048670 437299618 750115194 727716818 780616574 666487464 984836361 976374702 426423997 649345312 547833641 443924931 29585438 984325459 313420251 224228893 848193849 345381215 118270832 564722212 764364936 926201275 972973685 894391743 341750822 793947819 901230323 15320484 366464951 585505704 141258760 763845020 738901527 788349975 980394770 933690478 700882423 695634003 98996369 998630610 167618176 99214656 753979990 140163502 387648620 851186945 416734394 285467498 115234296 687233425 790579286 910188297 728359200 887889347 697515279 650119288 432031310 344085789 932170669 132636200 19708235 289990188 774288907 822149506 856857889 672923324 708249026 232698559 751500109 794633157 670989236 909561433 962632756 694343316 11467847 989573461 293920211 378112793 821177447 916400840 806502068 670989236 271931300 774789715 598548134 867007612 584867109 592875440 692881939 825402611 213683613 189158746 911001963 397559982 303077919 75930332 161611083 381278620 771284263 698506721 812301767 879825891 494437362 758155422 823871374 973556451 682344914 157352961 453949434 857894576 807349206 873892747 288221874 863806588 260544689 830859345 907611713 842594769 208739586 439475502 954337231 606251836 426050504 158879974 451476239 361899409 498446567 77787605 959890493 566720202 703800299 677131324 893519051 886961825 176563140 755333087 778418378 602108892 566988938 734732442 188799382 611322033 650464661 908033906 125579553 761353876 869641712 839433191 706364172 138450756 23409424 270956925 786706204 921540086 486555845 645335317 611556810 278625661 705528724 261805709 692648096 768211491 977014195 474670544 948360472 923685657 787523827 552284397 290918138 940586437 746726048 646530437 21985143 200030923 43912421 632354496 247241785 390344184 856130197 684133889 367305559 923705945 832873729 349061737 534903982 649147308 857519565 783746602 169392055 366041314 185141384 974746772 913362681 194426900 735169364 218427597 313735437 892868394 509406052 652610513 847389813 127728418 766075183 470002819 755663400 976532475 244715689 977479493 644028012 509847661 980696198 915519936 670989236 801940544 308987535 153994771 975040052 941203767 656856373 291657759 539882982 285438336 890357095 525907637 713399591 936802787 878943917 473900367 880511824 984610773 804063150 878514381 463658506 43799591 880779033 436858113 806085537 391449109 782906474 459586334 927317612 8160755 216328332 329883663 102572596 662885055 73741233 754124361 500451818 378565996 11640592 865450449 908003437 467945679 252689702 168278285 731125334 852247739 895443627 128744970 671159942 346580224 677145186 327229076 257892791 745867793 705870224 191800573 370309649 631423575 696007754 87319943 149535359 990665526 598049588 417306542 920952912 669116426 90861384 906589417 65791249 564171882 909233762 135543177 809629530 238898047 129425804 625113057 964715340 491404767 731152418 849211783 497770095 13325935 969391322 906339218 281505140 936632726 193179362 75438185 497595121 442002376 456033311 682378572 186755718 265781895 139455839 764046464 721745371 438274685 883829726 91188256 144509490 665690416 572210151 903080043 280763237 930048571 340715512 670989236 465863336 772184385 592954782 712730231 757616895 332546048 417513832 206675491 271603286 894968279 869006492 996573644 146711757 117149868 563650457 405347714 937385363 250758088 163502894 117986456 392960634 184678902 177484781 679379257 203810551 501084814 683535959 757525153 670989236 853081779 954110445 336239897 876331196 767489519 249263982 970100548 90938611 810759190 454533332 785154386 241950850 974149383 366082720 751182184 50849472 930268704 240769094 631530372 780212308 861876528 822699176 806156218 450776372 431593364 756230441 669319227 703694606 333772341 748776726 801931071 759885430 278960294 56712550 875339586 380165401 634973892 703436145 170400196 902391237 640057970 917920692 631838338 109214425 670989236 820842141 951989349 659480107 992208891 37918927 43156674 209866888 965200779 660665691 844795849 812970875 809569718 460046771 790350429 676458124 640587618 227445584 867905264 939808568 74808242 389686956 479976250 840836120 817768907 519959173 352277763 811915507 874447670 177822714 635459298 498756528 959734994 738338983 21200300 923685679 569536366 487182947 984737981 354960829 427816314 543629365 946257482 801026897 82882636 836155920 979840338 392573034 964611294 28695477 222473635 865709779 958764704 994276684 64631378 680189489 269169126 792038584 792565972 925028644 801508198 723184397 230534209 95685525 624754531 782083207 600658619 678146544 709491669 919224818 538179709 955757166 599285044 698272784 911011420 424256187 791452123 736152256 370648401 656205614 302114103 830535152 316691097 832048098 487682005 532730687 742774547 321264967 623915760 478484093 739265451 698076696 699227072 525040828 670989236 958726193 445756807 496722670 799029918 944010731 646566321 66053539 778242574 829620870 884790133 542143507 331343114 414619345 928828362 93180551 874871521 855609466 587023668 719740917 807252449 730061234 240008420 247951511 127625349 24772856 268542392 925034219 997652807 722093709 912814369 152804729 431179118 495915191 233351163 809998110 808221092 792562123 993901426 528468827 86240009 484779699 905486853 959944795 691148436 741559455 227760099 964719360 682121933 864856317 554381356 700488364 411201193 600875687 106594329 816839130 702876006 14610309 811624085 876443985 779130225 425226651 885667500 725838293 652751016 808627453 857734345 903896843 670989236 29525939 831292686 828160136 328638595 827583262 694819289 314123243 869933078 583750767 821281035 983880732 551722489 221544401 253627313 833046702 754258343 32147002 46047481 892276014 193814661 712357069 45786420 276928291 123763536 994156435 238710365 48063049 987333967 968342303 906701884 148636487 809165966 708897513 739556405 886165229 274690371 30427054 719909686 878406790 534149012 741705257 712828855 703735421 351501977 890344226 242393138 914860641 122763321 428338799 109178925 462180392 971240246 415517697 762353726 267158252 894017788 706766733 850246358 730833454 670989236 734171909 261357862 346740674 468625875 621823499 867664771 71020930 189348871 700507299 917208232 272268416 771680563 979883106 671211087 745996563 691884112 676379177 467016171 723947831 770049386 13634662 771305200 695357864 568352584 485895681 884046130 700771840 410427079 381537170 128494991 261909174 127914804 770922704 929595667 998612883 680393076 511473005 920267901 612338559 608447801 774676873 731604926 948266833 334207953 690363156 884906066 824501434 383330412 252454887 366790156 245279711 615838387 543588840 925398501 403294388 102425865 394611711 568285911 747563825 822820707 311835241 542597896 698739661 378375054 76298685 738255059 993982633 707321432 999470036 891930793 435531656 905443077 707339039 95925767 670989236 853458473 943864971 886566659 976566632 827937523 538025696 757685340 924200754 826088882 830135231 943499935 201616454 923207464 791197179 573006740 477497678 674472599 808491385 137041034 754970984 717712610 967493410 869861385 319133756 574751346 264055029 238405628 163808549 680400218 279062062 658094514 844096192 329285963 270647102 766595277 202018856 982920738 62623924 971447176 952798749 945297472 714170753 314749668 248239212 529862623 394329699 344628119 33938396 983985052 185381589 666776649 288059925 203970808 723104537 359286318 788025918 552789374 845082629 594370281 871312174 74242599 55365622 215077953 959329689 694685400 751185312 801805779 149707040 946333367 853939172 748798348 805310840 803081967 915290568 841775632 719400268 407350712 743559346 76754620 820936501 824324868 558077571 64599429 711652187 972204941 970419930 606746121 799002344 101457919 878137956 640477517 627353240 727212180 926806972 855911989 542358476 507635791 586725306 775067324 672771140 623716181 374128851 935605848 143546192 785305487 316117657 546133152 755550961 468619442 800423415 433198909 951856586 804996628 197223133 228323112 727671843 689284979 786916062 131359395 997219704 927461668 367488124 161958126 98115158 426493230 289701189 862118355 701910709 643188025 144631757 694541500 548664669 456543824 235429995 739635910 987756962 522958935 883164528 176140706 767810862 848773003 755394146 587124028 328405005 538464561 880390405 432209212 156774090 863557048 508430487 638283347 389415716 730659704 204449096 308203212 670859908 24133350 125843187 501010490 955383555 476679749 44267596 956628142 359381559 242295242 126238581 24414554 397498973 49644035 554889608 690851404 951659965 989040826 147167511 312324631 147032988 764176140 237334244 985153312 323231817 243578974 673461866 702027128 298623992 774523717 714306730 682772378 834623104 870871946 718673075 880532378 829325900 690961032 438572097 288718309 968305636 712346219 646389813 832227526 696951152 757670070 843634508 858416752 803368574 166755689 793368124 570605239 862997792 122112230 769781781 220385320 273345624 75752509 303565174 274733928 246226777 730247715 240321425 722743661 824262814 682497682 763722416 824655209 694065536 934494241 25252730 108042362 923717194 909356937 545374922 837977063 924477880 22583543 136172739 789540289 905151487 671415495 864495780 722852644 735529066 956273674 340490417 290909461 913615441 617101028 224615370 166058536 939628043 591483907 774485902 44720909 562569691 151705113 929572251 737577109 769562906 691462234 807516957 756973624 973106301 658074268 883505323 873660265 308268778 908736336 813153280 999481736 978545363 669004564 671010516 86023933 738606270 985584314 938033457 240517925 558829990 952860410 179940202 777103123 68422128 675891810 500222994 962037678 865354890 396156436 808960671 442778145 955377813 515893534 316270412 587188335 332495378 181452138 813318144 918396095 742235970 900589766 606988752 772916296 559126839 801121784 904699996 798303805 659792393 827310911 913403160 588473698 993982495 439789720 196631295 217887771 678056129 762014647 374739793 702526474 781526052 662906315 671190236 853673163 799916579 912227428 428738480 886964476 724348481 883986733 600062857 726731995 883218857 719208596 730942742 146832111 887473226 665939878 939848305 982035539 225965520 631467684 245890924 976728020 724232004 455890597 379572965 980490684 541243821 936368790 388578810 684762118 825843696 435854765 556871288 86267201 922441449 794536007 21641006 412260706 842354094 857115326 899639647 921223385 934712645 873188217 729996131 2444901 455450107 760061628 963387815 429585082 444641246 714018952 723927099 701613053 414202010 919245282 362176547 673108173 256404002 772864347 950031098 852274025 860062876 694283809 27847557 532193141 604723681 597989587 567987050 532291577 822474348 232025305 614054581 20714345 664008063 394087255 360088150 810144876 465992291 826446781 930231 532391325 927060149 859622621 572621650 362607875 926417164 994195148 812896777 670989236 201674728 121354565 636260656 114823369 721126090 964666734 690798325 578415569 973910956 777663966 704177270 903686687 394084377 306776616 337010077 733859395 109715158 973520378 114504795 26915068 692942181 338899807 806356451 384497315 989446189 828080721 532405557 944190201 45812286 927855215 149966338 725345049 493273746 858936847 937004800 383548710 735643135 734903149 449539806 20708147 957821704 188518993 230843509 333633073 999054875 729451036 441084958 983714667 861326831 656872304 813771722 528765476 647306742 854251216 52188656 498492210 704438226 332270084 760760610 350731458 854484612 464529785 825257265 832758463 417228525 796719907 98537886 901557628 911215679 687984344 110645007 14111443 529655196 990318579 670989236 890737361 637014498 307629122 340043488 653425535 287022858 724371656 275465589 757394101 963987352 537541311 670989236 364276439 354969952 558144822 148570078 761294476 532874610 642426587 160264132 940131896 791353200 710426428 770212814 934348538 740887274 290945982 811273894 527326628 787028282 670989236 747554516 987174708 997724176 696508730 775141783 899509761 989392902 804289685 732727678 775509904 674845373 909317599 989713337 171421474 440767708 767454888 151567035 841171563 416028734 296822728 664883452 467676955 952965499 558398479 730588918 972261343 823098240 310080585 727533574 122845668 559146413 86768884 279089890 416973356 703713144 670989236 127117764 834639458 32066974 943262329 962719847 670989236 876382990 674902385 174044269 93226219 704617422 132097678 15770078 602899402 448141608 646841304 962276539 984818303 229851812 66285373 672760837 600376417 160690415 910354809 891453249 815689280 935951561 670989236 874149700 303532381 509079440 171813482 534045878 799736822 73069037 57162523 664425232 328044578 950911238 270650242 402208912 155439006 81819563 704129659 954600166 191065580 80880353 361125778 694139152 986481213 32363573 683799460 946620992 919164242 790143718 831557971 624391870 695497353 844289479 720431433 561126113 653089423 625405052 733769254 723171411 881716056 523056488 825024771 504108067 632912592 123016407 682538789 980612543 862563779 962115316 16178820 552214208 314114886 813873798 701773381 907275761 437883939 990990586 661504343 594705857 690348359 712933891 825985813 192290060 536411903 941311077 6185410 937735201 898573932 964957456 517690855 817966953 737448352 59815667 375769197 924199955 160454284 957652609 562404522 134638550 846625193 185359537 930262685 892675980 63376804 468111137 670989236 59162503 590868616 250271568 882229109 793813643 953838012 529923491 922215107 765362597 921123482 489486166 270902855 685333551 977534762 610469630 283824630 558462419 253032956 45470688 900614217 160561907 800193197 393003646 96334453 314388368 252051475 341543948 792834239 723058781 334484640 918142742 905740553 738311078 314495383 71147249 734928050 676574599 40127851 106525185 617245048 32288230 770453816 886179483 770142062 903679006 926921881 91318846 846289513 522165051 640524065 19033401 400816106 539439434 952062438 928628954 683470317 907696261 858945644 842296648 474690530 911912633 177484182 306269648 760817731 988550040 263436637 859742213 49628172 488984494 864274831 839335420 972808452 816147858 693661548 187441741 899556002 767931994 127931572 817942701 25703044 772507881 882183873 911176540 849211208 794762169 690309034 54366046 801061958 941147161 625492135 9137857 497390138 271726860 649303290 334166384 168389273 669781085 867348648 991010476 805911850 242404329 243836927 762600456 7062153 680656588 900259116 483647626 434672043 191544836 875520570 163892988 948070222 286631031 788879821 816431842 701705970 523824831 105450666 863252461 4681967 793687197 673695880 589776934 271050488 4877369 776750905 635375497 266906583 8246080 519660084 552773522 988079465 450926474 752967308 323992426 731855946 962393932 953598583 403915746 689030322 838377122 442557968 299334135 943923280 812257013 7894287 528349064 46124313 425148761 482363667 139285935 803984935 915827430 5892881 865296927 88858781 614589237 122667217 113740498 679283369 940220686 859101169 878394573 960927581 941839090 518169724 425368326 421637618 823883955 923709707 704064639 390571569 123933313 124432736 336007588 790645229 660249310 797751145 795035642 661782039 421142768 927455268 896439338 770232988 880443557 448701021 964915053 792663463 795145341 211316164 192944341 608697030 569093106 495911745 599025917 814149179 65173428 920932304 486942274 436250259 359281740 750036843 736251721 469351885 359752885 908747216 814437062 612120163 972239655 869091377 181249499 872078707 991963064 15585038 676566387 267945304 598113828 604534717 896709297 209525329 503546768 24023232 730797441 250201331 960575471 517453150 408021851 959808486 95845331 820003313 985867569 923505387 618976039 882317833 251142244 201299616 918067240 751881817 842441838 776807852 873668621 726466022 898214522 686239193 485375705 984684817 883697917 515151957 846530170 923458547 995211933 845868410 954584317 452370785 195005403 59224236 378801406 814113197 845716304 396936935 773092996 161493954 883171356 585613731 10648852 814762253 990812048 319332570 274398132 595063423 277506585 776690562 286746754 953185316 704646677 535126300 198992985 929774038 754994396 184231429 272141938 932126291 937887008 691853644 599058090 791564175 954576202 442989655 787617177 799978244 69598195 817405813 68032847 951200877 807065652 80778315 485099464 266687512 838987342 518573074 766064802 96151871 124864817 781570327 54569804 857532843 871943524 748967963 889213985 687592993 869805901 731988381 630385782 655704800 189915008 721274123 941499316 200187647 871585254 199996176 883317798 806339850 951567759 174064791 636979183 280019573 16905106 679919641 127080307 707839386 934581267 516107172 931678534 745721968 150755824 219629455 551348170 833151412 279612245 875599152 789446857 728326296 660376782 176583055 579495410 765378679 931391417 175394257 847772045 795700984 940165929 921796350 992508547 774753192 148908304 790398971 560698359 404619392 716756710 534798648 289578682 294803008 868139058 553848421 110430709 116216473 785519067 62382648 670989236 819772317 820494191 96575294 35270989 735303701 674600682 769317123 978336648 679381870 605181032 823435821 212639773 118531851 836643890 792889637 961537326 595615630 900691453 867506093 697202823 328138811 425437991 871683451 873365229 253480584 468820348 869068990 498869844 106754161 657234561 670989236 621436414 508082889 31432934 498427291 361389199 755138293 959961555 354566939 354311059 724148074 820477597 468155006 567687105 751447976 888153795 285464469 267261992 834366437 429773890 830322127 729532965 88165937 935584514 363034609 978358490 34136447 1405222 68401395 155654745 823098643 123594959 837257228 940121678 936786574 629193646 927248737 223434051 667982196 117569047 964557119 813060982 824773325 923340331 955738626 65638698 499730561 560619026 247916286 889416267 704764314 480839177 670989236 949149214 788175976 840404331 956797996 416747069 920924737 365352740 466810099 889822354 367660315 248374606 725738386 490095177 74910690 947470851 532988475 264320974 740725878 91685145 989823515 566025709 515000988 230320280 896886812 323408842 36121084 817398293 613448471 228456784 920385718 834924452 515778268 84113971 203665020 694075753 838327246 440166600 785103237 333634896 25768322 983288918 986639710 434624341 137376648 158302712 907956090 914207407 64086727 105183254 853352902 798153233 785420925 165550225 905424965 540855156 981716590 173693831 160522646 941111738 763783836 437145382 911677164 559582685 193076005 573712622 615530705 192107785 247453683 155191366 585367994 846942961 176931723 554207799 789304255 425842290 889744389 760202551 140473803 109904992 998609889 6795897 758785859 305889342 105851511 101113511 59494551 670989236 946231741 987763667 236824014 994480073 126965754 677877569 139419952 313087704 239248596 894498632 684699931 241973366 957736327 739832396 197861944 482845404 592215686 796962012 881683027 912268943 962807084 765732687 250206228 306877860 763464627 948822183 217963469 568611754 300746397 714608262 273036455 72535126 953485403 301062090 188189473 876027833 11653643 915232156 748958971 967608528 913590802 966638984 696086319 177573766 47880894 778335514 316494915 133037915 117018985 866785624 872692379 603448148 225549404 266717280 829196566 542676875 484983411 702369661 808184409 272870037 162222450 207833304 5302555 797007800 835640072 52221594 831692531 815079097 894041286 651526203 439241954 688953086 175971522 506154271 731728624 297201487 791015732 433721771 884063994 37796604 337129727 966098897 701260673 774632255 192689170 670989236 259716424 376342096 208206952 779766219 802445806 974015804 255001663 887973580 980576327 764758646 82834269 364360134 476273930 504144153 949191910 833907092 372225564 580245849 512321995 795579864 65528604 913194348 895187717 975119155 438192381 822378369 954610527 952878831 494354211 981438675 604083065 806079312 986925688 53570707 930863580 240203190 932419891 327066817 922829085 550643203 719884773 188184090 676395658 942773635 389961796 991479220 575709954 989836793 502895982 205356911 745928648 141046302 672224253 801412575 75992532 768347723 977515732 700777534 373094215 674511335 470134739 184680912 37780544 343131441 960370945 968196600 930120983 781347155 935656524 737957820 821470467 684829217 753495260 942024555 706028043 514287971 714130586 878168109 834459669 395726190 894922874 607591483 569934047 560936372 741026806 474913471 896908104 954854308 944844516 38559760 235773927 669835888 402758613 261832824 284772843 915722818 990909165 552717617 250497617 777363673 194133673 38608820 431267720 338176410 347880310 533424482 846140799 167370531 272462644 752397601 976056904 366641878 959632893 695156545 675464809 45735024 960306640 810187229 935775218 865411478 950140164 965134651 808160285 815615078 961370878 200139223 57266681 129158077 995294967 413270079 969930582 670989236 452548616 696412523 928844809 12738213 778146198 841828018 660658462 141970069 993923507 791025659 467946351 394828258 762275540 267133045 297739529 12340587 969545817 714279742 192872082 976658342 731021470 728613463 164167400 697126747 665724714 763344183 550472868 395118638 532845872 590676412 662772375 702380689 590576861 325911770 23153437 749207632 254618432 922622561 630187800 403606760 952719915 993061494 730074292 727112999 564247969 894458686 117274939 361806904 373798298 149572384 467342610 853709848 864764928 401405809 777191163 950748497 372172518 845981106 875530424 686277645 369100773 824208171 443049623 775141860 914511623 16601727 130188603 858841706 903042562 400367565 654589975 612615613 882483854 718405723 687505212 566748998 324062038 304660968 832544699 126908115 900705901 442792253 614987911 822141040 938653055 194178932 568319211 955166751 255108374 954911726 812239151 719028361 627450848 974257325 911596362 836748199 749047950 683849587 794803891 808129700 903841584 469306358 639167316 287019011 303939243 863817953 271314930 88847832 941482894 448612214 925457727 258126367 970800649 77831694 111347044 299156423 969222627 848651235 803213301 492880073 884397163 819871332 913579062 836574260 829138484 594365608 890302878 306985225 872738946 701790822 964250360 183408367 439400370 839586096 35309329 552276387 558898863 351460524 367144743 702752540 950133715 624791691 793677382 805649733 843840845 2022097 497695028 805156352 708818735 930772719 943406249 827407898 71798058 545658204 770586539 936955063 660718258 796377995 962225127 724306699 95466581 766784637 695539465 262665924 896442156 986494591 664353547 836682316 56130106 343317157 740271734 834427949 707295191 420831146 435529864 865036557 996019971 712962847 545602493 296995511 48518344 882140061 841683196 831746332 236840277 882755767 705584785 957090149 878140561 830590866 708345748 834614333 107376519 375732889 872792468 736689104 715468915 909103233 608813051 640771871 913502029 439402164 885077265 598053667 261483361 653853850 235371011 558407916 932625709 643294171 799894262 666994701 449227605 339599390 428932195 562003670 207875864 802873843 675948025 753897420 913023133 509508355 950383990 729216903 236051353 894647242 790600063 282385115 670989236 34572254 653787871 624666270 967034795 19110269 698706209 264860479 723739427 532433761 669510135 243065878 834111287 960934715 259015770 309327966 795537099 70476094 677825103 697639613 374850346 439939046 994070390 249134955 811530356 506854314 878254980 185936179 18619899 71891450 47830850 849074919 865766481 730841669 381261797 694451711 265332603 833825294 997084034 839314517 838880993 835897890 658253769 687935086 18972075 655374859 938934194 888202551 927293146 670989236 164660876 10733204 471285988 753765992 24067986 19293525 267654647 78500867 897967101 491016180 402002310 698207051 411923460 740648935 305431201 577625989 333574794 907723390 248541977 653314797 977902660 992171550 725466777 828282539 743125516 837960695 296195575 981251235 709499896 143495065 909042847 164205547 422082447 670989236 101631904 958733404 486987799 879195592 919050722 499173310 880476832 932046916 719017476 982837156 879539518 450199614 254581965 878428843 970562672 965592473 965480711 836650724 32261234 747338072 593011269 925515328 841565581 194986305 623571876 944102101 484838240 570674040 340970321 900881459 845036938 164448434 340353249 193344030 22790820 430977373 670989236 93914920 311738240 10483312 129088240 783660037 946202247 900091582 864550340 989843758 637373400 762117117 932356347 995979533 951993483 448800534 564234425 861350814 309716857 754322872 955149425 166757843 3561795 193841323 995911652 357904259 574984814 598246025 942482521 940982106 709706995 48910846 833109593 910519610 816717073 370415843 592893020 369846442 953696637 875912022 854282109 756073165 146157122 136082346 944946206 674884224 269851794 685520066 495403227 940198241 111333412 432289889 632565728 894819002 758852313 952206314 682980919 137484887 114528514 401999286 134300056 791782136 764805305 794545572 372960623 765993980 710024667 326569140 899070156 250475650 916912396 750991962 790135757 482515947 491532768 978722491 805890380 534921277 525083434 829996108 844424318 441470367 800865544 795703509 199074235 718618895 915836571 814816564 863552853 970723162 324877985 250048797 958141484 28547716 228918392 532675018 656975700 549759325 9984153 812277850 692820810 722610391 847826921 455126127 356575541 588231380 70381274 75016312 792326672 278182914 866000085 741965526 207698711 948131407 263245088 673755209 468571572 404488549 188098077 674829092 839343804 815921094 670989236 700750930 259479998 950667219 76729023 544205538 260349742 294225850 789172757 225296722 696570850 325286641 462024612 853940888 119499152 534749337 724700796 861817517 702707542 781908046 511247941 70113615 398668436 509853301 951260764 332142345 820177934 212537966 753141698 135423225 149619804 70715326 957417075 555948435 980294163 885763352 859547404 470401635 818912457 687722417 685916150 710019808 677978531 76068757 963425257 135719665 767054102 852220577 250045340 269054807 362262895 263143334 974115085 566038370 117674926 403619043 212496679 699536734 378372615 827250566 590442622 554446791 827926973 953235128 348812720 971484019 789532268 657234719 649802075 904113477 4739226 886883783 995872502 515417214 522622917 319187765 442717002 529657695 981423690 346114115 670989236 676458883 572239702 428682496 477737125 287026396 731819802 274124652 667996174 374075064 25992864 428324881 47463469 25124993 714949900 749582213 858776303 671099659 983358379 652644909 238963027 718922979 998726242 436120108 166792339 618334678 935428040 445508795 852504455 318613608 908401933 799101522 434136320 594213104 913769409 140011119 317357511 33458900 742508289 515922862 907616461 571661887 111536769 903069708 888472256 171345168 998957668 645771423 679159596 529700096 218058764 891942271 817177033 653268105 127436747 747231904 288310101 729787538 181252873 777544714 912517783 996761089 856145917 19153852 5970581 742029429 760303090 955886854 761894078 373214177 62612938 715023777 858422996 879262913 910450784 141961678 833602469 667863492 212110302 939522867 744371205 618254123 779964603 881399426 320983952 92671414 269278921 507876480 325334628 659125206 750878884 360116491 73319920 617499789 936483201 840518951 831491319 596743112 159383867 984699353 867099413 666504826 70251345 934575138 939257181 300336722 701514258 747543051 737457880 717856750 530585399 502152804 998717179 891904538 477276257 886751253 762872067 970550941 930137388 654457492 643697019 342116283 864619609 140014476 516614109 216573864 660156098 947204477 944583775 976369308 311213553 424891587 645611343 796459257 200619620 545011213 36187168 745895478 668736680 152105714 548392846 770406289 880260807 672648482 975308538 493580987 902149348 353281554 42249775 733396208 138653169 904348026 885388800 927968947 943316675 388679205 335014481 695047356 382155699 196538646 286057489 538737575 859354888 618206235 484346082 292443928 146379096 814597377 344936469 539075714 919551976 968628275 998180107 991770942 455595210 224536399 876444052 754118277 676154119 91267011 156124136 357818070 994728672 318521281 181571610 644419942 280226437 158022323 746976122 934781001 357676962 864575014 767340144 883985090 891628771 842353792 378763993 587752316 704257463 826353064 494372697 676809005 435089598 738740588 429976265 213082324 615901414 766767416 758930090 769912628 878288388 954993687 889578652 693529023 74869981 695916070 824128344 474473574 144206295 844770302 550345197 589792204 702090181 363134933 131334242 377976230 160528037 543719332 114126195 165105678 355965082 956222893 809653437 874088704 897483834 863102517 797774788 534884818 550653736 713755403 697070289 958473407 88256087 193429036 588059330 166046538 267958828 771158413 491427500 439853677 621725126 450463943 399179236 395076915 834713889 733391501 626587828 695750446 988387125 279265201 831440663 932479359 475884854 494896593 801192439 482603271 695317976 298253941 877581756 949925783 19636461 438666528 920341777 827231745 946541633 982705353 739519423 392076927 583503868 987721064 520930812 979837218 221124096 684328122 151946559 391503518 679180325 292709730 866375502 336493267 52366300 764394416 721337013 867588715 869382470 709271598 538099637 934521510 44374154 928702516 544629858 946939381 910312328 20281340 469270903 205688430 504698555 162547351 304277272 401637933 205147880 525270722 281566772 604444699 696738976 922019667 954209381 672787220 872897337 298788742 34921622 812374494 485722054 470042464 443016644 502240359 660605909 498520059 698484525 725023661 45922150 969019636 425334988 943475904 2578346 862407786 718836556 915103189 151431365 951498251 28860531 422296234 985769919 561913579 813654805 121824568 708977815 503249556 477162301 46019094 912313834 668741114 118990207 990506365 970696374 772065786 973587458 670989236 810144408 670989236 156333123 741812838 407234708 227686722 500378798 674948517 720461018 258998965 109889575 308550364 975417638 947764328 991903880 597954352 677280003 297271604 749912029 575333829 59218364 844207159 521196823 696071396 767032829 319386969 255494049 86887152 392925492 75614095 673521670 53977848 793943623 431149738 740611578 179124613 446900295 492266271 757075147 995159990 89020830 313119062 742931011 852938070 772339746 243827782 192988042 150967196 908426285 29198011 770770762 589720035 827109580 333346492 869689764 720157803 724544561 765548351 166883989 873525226 177673313 837513959 106525286 839037282 287387536 933333166 989012393 532808983 823177230 17426547 22266068 895470396 697786935 839368269 882605143 660918079 872256498 855152296 908956794 533648600 134986369 997665673 640660809 898058268 790712554 7365053 457206334 426156017 602422313 731828790 63415269 636006518 889090028 578236476 197964103 752784531 572905905 635601568 80809044 522617842 456391245 190308216 997533990 595718246 975327810 129925874 824896517 778818585 977915763 147463230 375258062 877975841 250113467 875327341 813890406 1761161 421948271 474037215 177489085 437272404 774487080 888859545 682895075 905213949 107081677 168759325 899617843 291124797 732779058 216562814 727800049 939016964 755263769 918732165 790672951 298584991 677315634 398881452 860545804 125931715 964469389 151014423 478821892 166739473 867902440 814542602 662452505 851300960 343059480 889434864 481305228 135811593 63683100 155938095 144129037 249129626 942482339 141475889 755824011 751532287 784042018 881674259 765440987 427471115 353327694 828162025 836445399 682546720 666033586 890297724 835654907 782600409 755766806 39361001 16477363 686387414 660837275 687194969 903696308 542194857 35928125 998180777 682221526 939147224 756810187 486740735 792908299 790662819 819222690 935804822 835159460 777533528 329715925 345706775 757569330 244573700 498989185 315690070 391472855 645330183 781029682 946126019 529070253 680850485 670989236 93229055 126640727 697027462 377875162 836483816 476893875 189689405 709912147 969657697 572343933 617995031 372288650 614719297 207337150 119342532 247426510 891816548 58441545 757098645 36610143 572821561 301426611 510262919 764448620 762728647 458108776 928836453 885004459 943571091 787176540 974523638 877146056 708686468 325159177 715985301 580939633 406980423 817494375 430380830 692140687 752098287 862180140 997194129 583626956 616004851 94786709 670989236 160570832 227678725 668460740 501438515 317353953 519649873 842022574 937964719 5699655 679062730 648149278 722812980 425517592 251186976 817961937 748618262 497671717 647882564 592434981 753352302 922231515 729289272 982829782 929070648 964789860 389929965 863638788 34968891 780231293 693023304 234344582 996439527 626890674 984033407 560744481 945023441 673457160 925332212 561949866 962055918 347384171 821499071 416815119 661776026 817103383 580121691 60492157 989688219 711579240 522735077 180270707 761786842 480976730 677140537 590932542 723295344 777825266 732158953 534690671 693580528 223611052 468529095 489520972 243234866 117174204 983392542 808394174 102590573 396643267 233454271 505265187 708457790 698603522 555468207 600731146 692465571 766982139 858748806 800365684 14375879 4109121 537393518 712411875 787732918 958702719 27932167 605832204 163108051 806609262 48323965 807789670 783686970 767325917 638009465 406496749 788816218 366240206 328809314 766784528 25869834 921740226 669560020 992614332 636740185 957658656 661781815 353488843 41369171 737853185 782327966 93925805 152957908 913514472 10754168 777786360 293022610 258657020 11777162 280537526 761379448 842106389 139815301 756797498 355141705 26631030 152340149 743720745 875053933 428918398 6360259 596681323 70919560 729557347 962448320 859689608 501405351 185874112 782508775 723467051 296071978 33091816 200778740 388662965 906356738 107581700 716965919 924767732 354197940 918130564 181029297 670989236 783627221 891795397 376804632 783882757 838957242 142160408 244283314 672012950 884841450 78667013 815881439 980938186 825988749 812702903 700983049 911430647 191743854 435307883 892312115 226474625 975632327 501203661 725889429 819558573 199764234 975991981 997708089 455924424 583122284 961009205 887649162 863671490 817531885 853431966 81979325 911410853 729052536 889253785 895767384 959807912 337243073 94001239 842947971 964078034 440880353 447747299 598539399 819203136 343704276 418993856 617213988 817085872 27946575 580537607 96336784 307756747 756636265 357883906 811000603 20065467 810754588 860923061 430146653 538786584 695819231 428951571 185986403 715732661 634482559 965487693 723761311 700477310 712854907 511235600 653828670 632236821 799737913 703662051 589401217 2221895 858400125 192533396 749886131 820405448 122807047 294397322 29663050 433522009 573495000 140620950 783466337 113861086 975765726 739883688 895607206 55396288 13312316 805502651 305328546 768631825 996466180 904012049 462278314 867270354 250997714 847633631 805215916 405307578 658338002 426309041 334451610 807519242 488219051 142816870 927537846 913298012 281002449 692678023 774449871 393127517 932702562 87695729 176511080 986961832 913919009 587617543 893477152 745239077 895746877 16424070 929021794 97131604 233618907 285759173 844909335 288056540 499326905 420538854 975344037 800032098 169639885 791087393 987193586 841989691 259919677 65148667 971584576 856404777 908231149 318552981 876954740 507319266 189925847 678757787 854660229 288432950 564160575 761001979 578633191 653919901 763917658 666730824 731481746 915616007 844959978 649206529 951471155 901347598 711400503 179704669 131516630 972572122 397416127 789442481 902320899 396482499 521772333 489781580 874680104 431709005 106654393 797595750 58053659 896358225 824114643 421364764 821450375 474748016 84906563 763776740 387119404 904343802 677545730 316755977 246725812 980631238 865491203 394266702 234494090 835277710 701068734 822474539 672824994 785169987 999927862 962898550 840604947 561650336 672004864 356070205 958419188 713808878 739332335 390418446 430018863 127963185 928451994 979244189 767344383 946885290 137363100 401954986 755470759 508296429 970083754 180614633 863232923 503481104 946847874 404912406 264328185 688341246 772959719 805639626 721980817 608213360 547317080 671223016 122260902 565108619 745445726 862764569 983778321 374879582 684368572 202725638 676625164 110630838 734454347 939970401 860786743 808030805 823283733 670989236 515641460 495039668 893685429 981348774 864016601 106187182 678078596 25869464 897805885 640048744 990380339 428244039 80380717 641623926 890043795 725614816 385973983 631174564 761650429 872658091 815921 134134806 42401213 160596071 686587645 848991295 675185870 671918140 735317495 911634244 454550080 934705070 714711632 358867611 5634412 837156234 919493859 616381695 899815958 283425087 708780863 870837567 929107003 598147047 734675450 892883063 751729126 94712574 170949458 415525182 845291062 952560256 674968522 789459737 938743838 344486950 115401705 698411513 730804804 801825845 261128758 834863504 975693426 366562664 343429772 566292539 177963281 273917029 101161052 375917080 894661392 889146270 823811160 350847794 217136934 689700390 218936386 758227987 517145737 918692250 278591050 692587066 415812332 863227420 738998128 733644923 739160511 559085648 219989482 729819822 637280450 747898188 267258028 26024030 597571912 482776970 277802468 985220038 610788740 2791777 707711384 964169130 735969098 448009881 78126570 850655868 808289958 98336787 174338230 607089001 327133271 301294147 30784799 166425376 515535002 261112137 981171757 898663267 530886037 129367843 909711946 679847742 767312758 914483163 250414644 757962616 836211445 816035169 984223471 670989236 226374475 256075990 999843135 440305884 937602103 804243914 926627812 301716739 682415124 694878310 320290041 562872228 13379318 804815207 591285623 958417356 670989236 692242581 300879369 258057563 561878460 444507414 300482270 915982443 250186419 869540853 582313527 161250577 32002186 225000714 899158974 884984389 562250119 559633455 158106148 84651717 831770135 739098212 670989236 658812200 975789841 750721518 460668826 643207500 915024075 373199257 778440385 794303083 544423792 357499450 195155877 937215584 981803154 867926350 851516433 910657382 393861709 670989236 965356060 979320066 771451172 742450948 999881328 762776504 720803270 827282978 862823106 50008910 849776765 991313008 771142404 740932005 838330777 807744329 215043046 804504203 244377732 762466453 816170279 1027883 785253915 890518391 211457962 914671455 834465963 909378492 718979388 494319195 511175200 665244701 559614885 43930593 772415363 804848989 915080407 733910228 229710847 814451745 776387565 48786907 775659240 962351416 828221142 711420680 690721371 430004731 363909968 783756573 819517704 514895320 799137987 895165691 289893449 704743477 823956618 499391074 230241518 639415390 707606407 687542319 11439291 684953499 990513435 819432001 756650209 207257860 147474845 238303652 945390854 874812621 961907826 893236884 917734485 979373961 373181048 354926850 803481971 845165369 819457793 228706440 679353986 958931389 538776771 688991360 109008652 711656115 892281706 674068339 794416037 202328619 704773701 888001589 253296823 285158776 698426966 832958617 878692472 345231142 333365681 610636681 743292793 339839671 517942420 910493289 291938985 974678680 939856190 775839569 846241844 98227590 347421734 294237814 122557835 122580460 759173598 812717514 23254151 988429955 108954797 453247076 414823516 689325894 720598996 670989236 443156596 808301052 784303576 12809538 149472642 786225830 231807325 303368336 909097950 708657421 149917421 246486081 773420961 986536040 631029229 78001811 619875976 227652552 709731018 979531046 819639131 171046608 885003843 285723245 417316839 679499259 539129017 746844844 238553884 730404161 909013829 75917367 812372236 857080378 359972216 96916470 874265628 940992385 763759832 296947079 670989236 903884733 41358234 491410777 364135754 257898831 773150827 515039041 408542276 512800917 437489041 883005129 508949256 329257129 152399479 732362133 152368571 355338559 722080639 467478810 209759862 623904351 429710330 256810520 966153359 926224260 273306260 766361107 219662289 923799180 654994910 550537610 671762637 479279776 961174316 165771534 367811298 683172227 670989236 920994997 810771284 863792803 780844660 494579886 965759141 988674754 777451329 810566729 670378488 103638976 10445780 468543587 67677901 538530871 219576891 250835339 143059945 890878558 821639556 86415577 116246626 896461021 847294044 758396066 88657977 290058950 784657802 946182646 670989236 373336875 989970161 265972501 945418618 960708380 10013693 934701154 832074982 985247258 26227827 92891014 914674108 163739905 963274179 500630893 539040539 677835388 364616416 124873872 111173889 757539198 355665631 526169229 905464766 90089644 472034411 728446700 57333896 567818896 553467281 485886878 793351034 8106525 539481823 764611379 673419102 547010928 962284597 780824621 871881392 925728348 982793619 49912269 693694675 172595738 620281807 976470161 995288033 917372691 877407311 502374099 947657164 305892186 982536892 891792721 209235701 711339460 638547930 11908351 844851029 864419897 717046741 801989654 288021009 980082863 836653024 526324616 124407352 583966109 980469960 120361326 737156143 543922035 529931561 11517085 243481147 986512570 901923329 765271144 755435685 242043705 7370265 774550846 951597746 166610581 179963305 991051054 446910617 38547961 429082137 756671199 697113485 670989236 526366697 832058568 867363619 670989236 759269047 725709033 862302242 952789950 336766473 617229328 914920982 879832115 431044282 882381384 998492950 865537912 826980950 810834879 147261774 554780794 195164058 129884251 461999669 910671249 919125216 165149790 458291857 624081302 835704995 879520520 872741346 967555561 895581284 997652436 452648243 908524218 713299931 700549364 596984262 452837193 386675528 304376981 513144134 949544903 785259319 987952093 591524685 509265784 15090771 882032703 521690727 65139440 942664739 811113980 853487921 745568797 921881758 530110018 80909205 796422624 759935495 992364462 934578597 47705756 504214101 486491553 375023125 605405501 300782255 759935165 839969245 746184046 933398018 167452197 447398151 701196975 701136468 730953028 381153550 14938637 67561146 515324946 145394717 724901000 808091715 173716669 703432577 666951485 208055539 811267674 762233889 950329602 873743677 809620324 463328187 256342290 689134420 213034898 93783459 862907010 659910065 781226293 561237975 185215467 930097515 276892512 995174777 531304316 889785722 292745561 532244822 774379992 846366675 865770325 210725685 895018051 12641082 899120648 776171968 653875727 431777114 198281964 450695729 853753022 125677212 386861441 157071549 775813206 563433544 916546306 869816479 319246623 754195738 670989236 790529661 367578340 821641049 920054576 918835258 819947726 847665293 760421965 146412139 977202435 825176461 385503577 677066550 166443490 315907845 313732564 896193076 596822538 238576153 790191441 883744120 943520598 881965878 556991461 402341370 758366247 839084223 812714421 913608125 44412094 419374714 350760759 517845502 385430704 990039391 883516162 283557470 895035064 893060045 847530773 100350446 759876118 147829717 851621101 891506310 885785567 839120481 852701538 914560101 320280613 685745179 766682759 871711622 927153981 771425342 22686047 16368244 977593192 984017523 861419922 448646725 788145819 283906280 366244780 814797511 390741413 749307047 988667904 369366997 506455088 940965561 673176608 706237045 643651914 147454665 801822102 55715058 912830662 682528824 793059467 851205932 982430314 279402183 325395319 561105534 911332172 810343738 927384906 985334546 832790252 430303043 765240850 491261728 763316553 839414963 544424841 969224983 773758185 679456102 566851475 728073178 662724781 610652514 379091264 732129963 883211517 159366337 402807197 376172804 845405593 711056705 945337600 377498041 888528483 830996579 969115382 231068856 95391317 710006389 812592193 382015877 814826848 984624410 278887306 867593895 237134313 654302722 971774942 234548572 467166157 261638260 917102945 748612854 716753614 870772527 755258387 861016168 298224294 496238226 886000154 834712570 925712497 291465959 788821765 446398510 740812908 50832642 853799685 198379334 219711599 605519667 451386518 791006053 363408606 132827129 3721543 416342415 952854491 953624315 648751857 624304328 726048875 851721662 940480902 670989236 545642594 973317696 329425294 692517525 802221084 337797066 694462121 911946547 277524171 672967734 237898548 847157730 548419307 772655665 132582106 891775307 269744263 93091374 212086287 20899029 935961263 772693976 954245312 877590502 935188908 815261498 722195764 914896871 338420146 793083720 936444703 818361265 837972650 200372539 279312075 329117974 821467562 621982779 297696158 198112673 792075524 312330590 648175713 674118273 323966424 558289327 857005265 464945695 962239179 968447183 988660557 296046906 423512312 925966612 398413034 627696782 773069616 95693464 711836428 696896021 907213892 583617766 357009541 550076812 994516785 459758617 318114642 342694361 750403387 677586132 896252255 315995206 805372368 672237419 265839868 92756223 243707518 951216506 938383921 769269834 833542135 286671344 893601992 289118146 93582983 829012476 241055597 606599563 757431558 287487936 959486848 986080801 118316699 325046043 66550184 827358672 300103688 809723599 223501688 77592485 881526358 942834262 57689009 747031161 667454819 778939164 915223306 89876491 22798109 311162132 40432676 976717287 790096426 443349902 612815866 782177749 549413893 780552130 685230170 785672567 892621735 977398992 536967988 999819498 923247134 714991486 232643073 886011616 65892319 308833700 448742443 405771890 343309693 27596370 72259004 189227449 570473848 444526926 510076030 395414027 929759405 504510897 972784178 570671818 866777015 516040948 398441157 802577834 701117811 99696221 682885966 197654584 720755040 35869194 540144984 924401345 44898963 595150803 822077884 140037008 81904347 383622934 989603197 808342381 755525658 631318873 916130119 170709917 596203920 275783379 635820318 701456306 675249760 208124912 671942500 762104142 322266602 650333096 196047999 959332438 909282159 386360724 807087337 134270317 559170964 531424394 862348952 602999480 49913399 969537332 992376613 550786461 166872107 261175478 476661838 680582722 541166421 714290356 796949040 743507605 811125619 805802907 875758581 801820089 682395079 581274066 77867380 409691224 771662578 400672830 873044225 142186504 806519635 410573388 51488111 936623084 385499360 217146868 687340544 897179171 749221636 775785039 187477586 816063482 319874877 578864310 799455326 774252595 796106469 627806770 113517347 670989236 673294389 352835308 688014189 507474115 958070462 226892481 770737662 937187835 458249063 952039894 944938175 275705287 177666107 954153515 740229520 798035313 914599114 893598065 40940473 561924779 709017665 899323446 351942113 670989236 554155443 176917158 126275955 461228051 50261771 955079227 92014173 356534773 125018141 850458922 140023480 842075890 420141103 505720543 403632510 194711650 860791734 191329144 2283179 92239088 100425378 189343869 712649762 683007014 781644537 670028486 223390207 847633003 919947488 811802269 76277509 892924383 307619743 945141930 58623763 940667258 334246653 109966754 243599080 542716698 689849933 938691105 524415137 582821818 427962838 501209280 973401090 885680742 440774492 965219879 907243632 825486551 630916746 192891006 764151617 823387937 851375106 891409171 566179535 808470319 85283781 7844908 962951008 896150435 385902543 631114347 953955312 25461222 777697763 829233229 797853770 847735101 354427295 713338627 223640351 972298637 804468917 341125930 770108068 808997573 841277792 301159182 15930756 944530208 347904080 297862867 970539119 3018185 884365730 697492119 323609296 954336986 914253108 845673572 349991156 733003690 976832786 230733802 782351242 548003157 168992549 767734941 999659956 702738215 939367370 981801217 484063138 285973690 670989236 995638415 438994235 766917897 882564478 243235592 190130818 809393102 177838942 42430328 412876214 704348186 844306609 558338296 164117781 842035364 25913236 709249747 123544078 553276724 371670283 28277560 258868589 897141248 494159293 900257610 170746305 532990294 958549892 773274640 699067944 791674546 954518435 741426279 370979968 789282540 891989408 455575928 141413246 855391812 355657986 682838608 902833788 214137 263848966 801983026 629156451 674555430 497116789 434994509 843795017 179950060 801697055 988412896 915803100 246934274 894217779 300022491 774762932 854869319 121493942 957858166 338011413 612925664 848077502 624304170 647188275 735064253 725210781 128568152 461322641 731593760 964628369 776668492 735537842 549435311 879985594 756506955 922849292 690145839 914419239 795369758 967613045 123644171 670989236 160382303 694474785 33054936 41558425 859309144 690353891 664002890 328402459 422261564 182024473 573401431 28600733 658339811 128028334 924918389 868008598 652900963 284781792 813537665 327835394 903532009 718032209 268719125 221911957 791182662 891367734 727044257 966452281 458459933 662316625 474324673 927195543 96937746 510011384 581014687 695775029 625291620 481470109 57067857 886955590 501653487 204371704 705841210 758681254 635570165 782606043 772079628 344179834 254376068 411068344 95133278 759631037 801592888 393361324 678950125 368205201 401175481 249522531 108414871 980059153 325527999 704279371 104433829 674252705 827428787 758328467 653683753 684813026 597129371 837748778 805290182 786737695 97335099 864722919 668267151 934662658 536777671 739414120 340215047 713712715 985051195 581430626 763778989 420882182 748854040 868399782 166764039 888546432 961061854 937965981 309063012 811782362 913186895 149591612 403426917 492538052 790993233 950244838 693873990 287778301 740260621 153265203 868501120 940189298 156386558 290945804 456606906 641126348 56199633 640019017 946775265 750751500 913870629 852015140 298362129 873137499 486988889 475231709 779839728 802663171 297368286 990836665 984199510 97054523 700807847 100059524 408855771 790779372 808375545 745358572 557141061 318670478 738834922 411075579 514805404 611919189 480232160 33636818 539501038 36309317 995331278 798951386 929702313 918705122 236498519 631431449 252464409 941465641 902687166 774853111 765061854 995843111 927788069 820109544 608124751 111076747 85011580 789202423 408793651 227519879 517353597 351627554 869099794 902291568 986660032 186628085 905141152 836782903 339733605 677057741 601939424 438184229 509601298 730246796 999320600 443431340 187929563 757931892 20619495 992095222 729049241 929823807 256170076 806505564 256178314 443164788 841479256 838291764 736540416 881376582 929222692 696372467 817309990 943249563 241036491 532996063 670989236 235948348 655425471 61931768 986076710 769003538 878257271 540376426 481111624 756531066 965543973 43766196 932542902 719409844 668512009 59639111 939112821 237836682 745532466 895070709 441618199 904556589 214395611 796613476 774389405 728465387 191686730 700207177 687764888 858231632 948614229 384166788 965882097 799127253 671615038 916268009 899520688 871678395 356004235 573123128 422033516 210670170 383839103 357593118 122911714 791904510 421682929 60464919 491825643 939523677 248776620 70297036 307006843 213862911 813493706 523388834 808029529 621604664 675831701 360903549 864048511 25772005 908209980 189184692 929473607 715316965 322195617 990325757 865927039 161808482 547522680 897996089 590196437 971296974 593241259 848878562 981771871 354850600 182324638 154011791 707173836 670989236 503730524 152547842 550883487 691457128 683035524 110164442 958742262 332841244 369434319 571646770 889141782 128217608 858996447 923750543 891115248 55974203 673236782 918024101 932692933 399606055 859677963 770731471 998735894 905043046 809731053 726485311 828277073 999019352 94488697 307127162 834814961 509970649 725508821 796231975 709330897 774098840 541192843 33164522 546919112 833289046 89824808 647599194 519516865 710892344 726265373 886574574 737074628 390209084 623381688 268671225 224612838 528747113 734157019 106692226 298234442 841156842 174405472 672048209 642260887 492932569 860783927 344075783 962434747 778683483 835289194 198822281 201423544 735679476 821022847 689139075 753537032 444198464 207601825 135143464 349777299 268762573 294381588 441627232 34143504 941867061 710137826 897771320 931734730 676691967 66965775 752567578 692431035 324644925 153549600 863916987 448984331 513832766 411118113 831619001 370392949 212377683 550523865 686789693 448255127 136439221 477809772 571669655 681134248 776076984 797860689 321185180 719227358 725194356 389487289 45999144 860778805 734828494 116091025 888478102 483885229 188976945 964132428 63710571 944530548 592106822 154112824 304479505 920592055 377168195 846614213 480195530 585669717 817684683 791666956 553492431 846330021 842570660 231608042 515377365 599631087 562552858 914751488 75424767 710414003 424599959 742311305 344646475 270057531 850378967 84483850 729583283 249514965 941801045 896832209 820662113 795299704 791389060 365957977 526356449 545980962 900602917 932195357 668995051 958581280 283726271 177830959 80965673 838249240 942010890 373206390 395525451 626663812 309049883 450068471 301005008 159914191 925796878 427114491 466495421 569695544 754842061 616615959 623222446 96455425 777405357 786956650 372259559 716205287 781897063 870899918 336607358 763669269 716423720 3227679 604019087 48304210 182046200 422794599 939158378 490787967 80520438 894963115 608961322 790942421 600334948 31374641 180104246 749217480 367214539 662131290 948118453 131493635 942355772 358023113 772432456 440527745 676546651 825530526 58493423 549728584 437024435 39807317 508011095 935152629 816202372 257846923 388929107 827693385 826761687 735923882 754046083 754569504 989736177 986333571 467996348 208670910 699093027 897875330 405659805 961255057 444637840 569923042 916689662 638910228 864469405 770327467 78735171 993168757 250135228 900933406 812220563 226781076 761922062 647107525 778072995 946031117 841919740 17454907 184944085 750506980 899105275 953291766 757971027 153619379 74550292 833139341 47584929 649889877 811755310 976043471 507538771 798785585 887900518 996670229 493916905 949260518 836293588 52435623 936411991 41514545 698879725 738515756 661182492 670989236 783055267 302790425 708544001 997363948 104702946 819507535 607257935 790894386 915390635 231478956 350435203 801629664 892079081 992073731 330433330 415277190 407455614 972131194 374296716 205541344 968669362 713114579 252911624 363165117 932131733 696834564 673601461 76342025 764031418 861119954 197334650 306054499 962498622 905407502 300974927 312661613 776209773 942313837 100522084 765635126 673922599 397112710 174774606 966530226 82259792 326764779 719065245 735816734 462360958 56821130 316949517 765465711 680409846 468544044 266052972 600863505 159926583 73887578 996378406 351272441 543327651 982915327 444833402 176594756 161626217 716728323 610088696 721107859 929413980 985079565 785089560 122813858 821821591 872740969 65429319 486858093 724319934 792179184 678694638 973657906 78971118 692935803 300579975 224385240 642351364 166482827 577109716 785545752 932950707 712182428 502572408 314424777 677343656 960573061 513311907 975815339 802660400 968395279 526411559 850112222 753038298 727440987 965781542 491809626 347841190 415142759 158345278 314642563 401685327 839923342 764724636 439416721 676947952 644979039 175304953 61077635 258406560 135927104 2397141 878799625 288354447 785486952 947914578 530726811 579433711 987137149 820863425 724725701 697971371 964169792 967943623 711820100 52903394 959489820 716233563 174917428 529019190 817463119 774026740 603914047 27638376 231665410 576037545 115009131 947096307 714957935 930298617 740689366 898680155 704777617 366826741 924139871 978794234 509151552 973236034 695388444 804643937 160560707 834288721 989235285 404609354 3738108 800347742 306950193 799581517 563012733 801517731 840953444 245853130 741931370 641559021 367373339 812719789 661511374 857814987 847089065 961134112 124830064 595289615 629741914 66980314 873553702 851355431 807992627 158577593 869524315 765514897 778931813 383158306 968702942 856760471 495786139 622338626 16828406 107380065 247686519 835848030 835465852 20773769 321534980 808600619 147462034 82293656 421742321 976014043 315079881 274332809 102677930 786698581 732255617 91677684 812476660 4255699 876828342 793679065 442079710 109773878 968665844 401832390 961997551 935296183 658333178 759660204 145845041 801262352 640975235 644160659 781572623 759224953 628571878 921755344 692864630 989319783 920894790 768337260 405491173 398417345 846485974 157019495 858317746 958227857 709186006 816041102 414556344 160481534 780974823 682896364 361968566 96872522 5846889 592812663 237013373 503276385 337915853 499153755 455948201 478846608 879507995 876692070 233655016 162543318 632446515 673634774 708953292 874020413 506338643 83684412 926600858 91539048 798062262 468289380 878064975 252847149 535994498 431287808 785320886 774360188 520500282 747042041 870576167 62449356 705182505 241892168 499843723 512251673 982504975 873740462 973543706 171370623 840476773 286492243 13780402 432715893 602808617 911266525 838189661 846219363 912296539 142549717 879364361 426138891 933756779 532097872 419579476 602280685 117968715 131072594 734684745 987993807 855435237 855559048 768270980 910084105 89993521 152935617 295882669 834841245 796060836 89979232 670989236 744916849 900699080 562410381 730547392 684407424 378640230 841357839 666496823 944798100 630985724 688232028 97379399 919069516 314979661 789069401 714830389 906565581 882938207 87531551 863679437 66450139 487755300 616198120 981393499 671332349 712342479 209062885 244961736 761569981 849976845 692209053 25255407 488406944 697071411 133603327 501842721 860553675 712595503 841105681 955176756 709130576 269478555 728739081 670989236 256150334 175230410 894867794 754477735 683144926 247709017 48640501 359578736 691877011 647002963 31968183 858057383 239701917 822438514 221434143 40061470 454293767 558020597 223548130 534613516 42525199 658920227 843160394 390181106 386773780 297223342 892386394 818378879 550058427 334583223 380750449 457235094 192704005 125834152 114965126 503106042 496924299 615308345 665312122 738507590 991212050 304929034 528469286 957872910 840452774 763722771 700909000 759678158 358855497 962718224 901711708 43922708 668894382 246603363 382947752 94283227 860306353 720093534 257932294 497568606 272624772 396109555 460462864 369681369 930724743 735195361 908096255 851949503 629889386 556512843 473145435 574391691 761278096 679458336 471854656 693767404 494751016 562221878 298885478 320031278 111088222 817858042 641423965 773754150 758583428 524233543 799417776 987167870 920642114 696145414 809142629 132400601 17025306 698491918 718706165 991422326 701364886 630814691 916560597 340500291 935998866 352015969 944527668 165019216 913135978 766065143 356484249 218012453 857533917 985169383 518082340 846396385 992277976 579342050 226870675 301838050 86675432 551918136 533680740 766238881 466425981 449027151 139962543 979989685 510224425 778241201 674694662 40959991 547935375 109863762 947160987 745515329 849336184 47238920 598796052 603163876 461549649 353758632 630915151 980373353 670989236 663858020 842239581 934939320 623008233 255345917 248738220 9355337 227952375 477927257 587077357 933011931 352591614 907879545 670989236 750729391 114472326 871892526 78985751 871585210 498787170 271293114 610801111 183868084 138282027 506164172 293144570 538662749 962734929 689057547 812272361 866145530 677111119 671992632 149620978 670989236 304067007 78148848 663304701 453842211 677502673 898242019 166297220 303650908 777955728 610999202 449529668 901644859 357107296 884082828 785812315 689641022 726113370 597820424 277877608 382918998 865818786 913508932 542753759 849364270 815960470 270043371 819513754 931334144 720792222 805581673 308941712 995341972 997032738 375751569 803671187 591477419 541455877 986432690 917071244 890341238 848473722 619332396 940462810 802588997 888749807 880015168 491810543 392687088 824271795 180789057 501688929 610208532 358366759 320054273 31388353 600907304 775878833 927171139 276440289 155070006 143350778 842520103 912939985 579890157 824544904 242196203 910362706 520833548 418359061 243336349 448952017 862871441 568965123 286452022 921472579 204292214 924290822 800197489 277124603 946862362 944858105 877416045 612469422 970618854 582580170 22074303 794978096 838459874 814028423 728295979 376642609 892246586 773316137 515113035 321301492 626652229 886249368 809788891 692736455 525971207 357616020 670989236 938820452 991460679 772060425 674716389 820877473 751630581 58862795 36841493 650487175 580731291 936575402 765073325 229230472 875713121 688666065 421830738 363206696 994522428 719835805 632791089 463008009 41660729 816936135 893990907 829970735 684695596 581520827 863921582 946213281 584555216 205094828 800649566 708796995 299111749 284883377 289367768 670989236 367877188 764239244 873211426 570151741 16304316 927272270 228967177 842840218 786747498 678260084 970446601 801727480 610497328 670989236 713167803 98864591 728777522 706250400 829710720 14063732 522930637 695489840 582009906 613935650 510931485 765805655 213995777 366687823 52119448 854877716 567623119 844582940 673173857 187985617 331887168 762846692 735571881 953428009 908538553 75212530 231418133 218210231 542042363 782314961 822521236 995695326 858734712 215383898 952009253 166101540 195329265 63371825 914310449 895101644 897349630 834572975 210353121 871786750 950259763 908862347 913826483 778923126 589208793 499170915 401232367 332211356 530707985 767021955 491834441 354911274 823277437 560209591 542559705 393966781 555698288 477261921 951025483 958012993 569032241 708938794 847210454 370572868 601081581 532923643 841239061 570350632 12685122 195286 126109755 877806119 591446493 983926869 249177723 879163888 205222222 766827131 806901288 976722600 453923067 933685114 871604833 112932516 681284000 867512082 910350247 3081083 834986866 463086731 597421763 315166280 943242887 525450161 310994704 255355525 976995164 742759175 732204364 523865098 559264625 984146963 995636436 621939328 363662715 496978644 10647408 854004735 901112696 139275741 770874066 59160593 594067787 927002925 117222957 797703165 737887051 229455970 998270476 542527030 258666826 823354286 435705579 854783684 940299096 62013221 87640887 275254846 885431817 698820438 427900663 835927458 428888168 923405765 707995153 925937299 219300171 557998772 784216127 127666673 559536702 124720771 677724972 924754421 127999743 235514673 672158022 428202425 952451696 788006416 869035723 426352218 500967541 15331727 363061683 973472671 768846309 901921645 316125846 986363646 796813268 670989236 913326184 115893110 654327765 204158850 394186587 873372570 897701628 749343284 726830017 822583629 968304851 993325887 137814412 87720594 819529422 173981807 201828138 382259856 3460973 236503358 12510081 578700920 937392911 69923183 125599498 657608985 834662018 728672586 267871570 964029333 1137622 151167911 145695915 568043762 990856462 935350514 874390167 892827554 735741770 683054765 846805516 347747314 681228667 815396390 939534003 674537508 376546709 415502060 879845998 823655476 978998845 330110541 775209030 744224329 670443463 312931416 160690746 52646484 69542721 754418536 813172626 209679899 265795937 22478220 917283984 784289639 948499322 991670689 782120431 633476666 884513801 800465579 368224323 933187132 280938286 128602236 978344915 875611685 271700696 757358084 966288556 367573124 959034586 282630096 331316514 643092977 679186309 959008608 877394689 670989236 694805345 943970544 697664929 807144657 787570590 210629457 985615572 534284655 603388183 685600694 21656572 408963930 904553644 914295357 242407916 726605677 865174731 971287795 719469477 829433125 737639155 118152368 936890089 753260723 92570590 134774155 347623847 367189280 350795550 411621882 578199891 583218143 220824273 706762130 743213190 92330081 555828993 57091044 254282864 748043060 116574223 923253902 917377447 714015031 479806298 768868917 836124526 640967612 786570296 534829248 860072622 137955955 658986202 289879425 345301366 584889622 6914925 332748608 844366189 277073165 714265694 860355710 784327288 960989619 162502563 686001961 966378411 863364087 910568592 89015979 966840122 208590457 345989190 880271166 274749766 830983944 474508780 975135742 456873085 449561843 38500609 798738403 622259872 864755208 781020724 726866311 630859087 692835069 826056984 719830709 574142256 842245902 606820618 833287816 430560096 821090405 518204623 225915933 444027197 73782671 110518823 571138170 213783638 224505109 704589378 10401216 398275673 53172904 660707699 227477376 993242391 869900427 227107203 414215175 588116643 988176232 397101422 370813939 129727331 888578221 628348917 297188894 800888705 59097253 236357176 355386717 994901451 222741619 246188449 14828216 433587355 820865124 789363684 817179034 937100951 110129917 239218986 871228400 823908719 141919539 378145369 709415524 720336670 939024546 852303896 75281938 543098133 880012789 908302982 788903280 263964200 506078137 47836695 24652617 902574659 896854906 672933483 958788575 710434480 436602201 966996663 304860906 641658243 874107395 830399511 843535304 994530173 984522745 997831466 943697208 818631874 695200316 283634312 106135434 522813144 435595807 203470275 830119746 858687680 929467815 886874093 806352631 527329695 855566050 997361059 173573090 719537854 961037611 960581595 245519944 433400249 628608735 236277213 984357053 752102509 956777195 562067282 154263755 50883231 885882869 613742594 670989236 702936409 761659831 307447717 864831041 737963583 140921983 670074432 918543235 358192016 62773032 782564022 833756712 243728286 257365027 504915488 346238205 925969033 732822854 841934977 722389391 102645631 998714875 866152092 378452218 617221559 582928171 670989236 513968741 120021671 844624043 642316088 831168054 329455116 8715318 940004144 890310907 133473310 719107835 902220063 600040315 869325649 933099407 959058253 885579664 53252235 680808549 983247512 606953798 534306438 389059854 90108635 259425622 96653006 645303690 638719919 954693637 533811411 361862606 646531401 367761077 579429099 401598248 442509558 105227796 726620048 736544147 192295969 770424578 750633198 457774795 683896121 919389593 9209454 938711275 657705884 738645843 479563520 85610898 246021768 150625497 57611882 996870961 313339516 828169368 966169280 958166160 199072438 932702010 732512990 713625477 709036472 548966183 974774854 768551924 342094156 670989236 877453595 863210358 676956650 670989236 658716153 622719316 871877768 5221950 81289648 820111422 72200147 896279031 741388609 808584163 897211450 157566556 670989236 4090436 639392306 748279559 154362314 615305948 932011009 740073954 666976770 580320803 366629196 981966164 471701179 715609045 103302488 786983104 708129568 965393450 515104486 715947156 453929643 707553341 120568959 679021301 646995068 994864278 702777591 485995282 508693443 566602543 878580683 822167451 621726242 319065875 132580907 900595339 531876369 839021934 876702164 804408714 713936463 496903462 427147549 599303877 464247518 561830270 211260244 762471585 306481868 661503702 113599617 789785314 196452275 728556288 397191387 749793609 579604814 858040640 288709028 560578635 596739360 640093242 795723167 794991933 615084275 842167910 699599906 365562721 558306156 783862777 707009053 482592655 645154665 587153264 891294017 792032627 731613172 406355107 435687288 722466594 457149964 919763781 860241575 670989236 670989236 648326396 448176034 566464245 935658858 786711371 887280349 316827656 764246345 336157436 484549700 936996330 158777135 228598802 675243283 502869264 732572159 898537099 757290027 243738460 914844807 721553892 560126160 201391877 799830907 847337682 878887017 669946925 322707326 492621792 542618122 73720448 682318656 409342809 323379552 618201650 137580860 722104968 733237373 653320663 735503479 712131338 337792906 763931801 743087702 792352397 231143570 894527313 530988834 989641915 713259311 530523517 309009419 132566085 393467113 643350962 69112435 764072790 25143980 363613563 897147872 241264605 647418994 56865656 388237611 408599268 791077411 106683951 471469603 655707420 949303114 894384676 787593363 403979532 655547247 991529812 937693740 158150984 344445013 941067141 961145794 311046443 840530892 519689195 255665951 263040730 51928184 793708786 803679059 852099806 984633703 536050068 680930665 58251453 839916849 949164266 256032126 937391292 262452921 646201329 374225801 128344806 302494526 462045366 620492534 162856468 625828379 851325085 831599699 457502315 513129074 729975737 627511077 755234871 264961775 680152701 964514264 996706947 752370329 151392341 731415814 3486532 550907957 186962320 646566289 701918143 854709746 962922710 201388726 740926531 921108243 94729884 536591215 804393647 986894376 133488861 205211585 698642146 197404769 112607388 614495327 974435413 678761511 240246429 782906844 991428810 512717891 810134520 892889838 767477162 453749079 337543462 815846155 558822184 670989236 168773461 930757622 38549267 902935712 293953578 766557499 909794780 870276815 404745613 996761002 856556666 88714205 272950052 575377664 926373986 163387235 971130315 631694241 648376375 11336052 894966505 593870827 234489684 189829694 673230366 849283994 655822039 915519156 108200732 890878245 156717176 236146344 214642868 281539669 96658527 71419696 432976998 444888391 660659092 847320029 405277887 431525051 324713525 223951918 377439024 987731915 827669116 772225759 359269385 824861956 564025783 974039251 466033861 458554052 785216455 190321986 871847788 949568336 49980817 462880667 545164763 500308239 514651915 5368370 878681351 784810004 753388735 606738486 621039624 19354491 784932748 464754558 972283365 703155852 597070440 731974178 708597549 994922494 545851714 342604780 210770454 799512627 58340233 162006822 889265574 790614457 703865368 800551598 811862071 824721002 926897806 791330908 226184122 118568274 144085837 952075587 782792839 899532602 913996805 673798991 541924015 948762217 680177477 426316481 722007814 778063759 904157263 410791439 872041877 640157332 319930971 423606924 474704978 806798394 980636035 483383796 177892137 193149721 307004066 771234804 901519815 911232635 725572511 882349336 223557774 440553051 810088460 474256456 951197173 683561333 275781475 923796979 175790855 791592892 146946670 940026541 687199280 694125888 787009540 183040759 334604875 888104929 763181590 740478800 72993878 356375210 413322809 670989236 778868169 601928045 845246962 226662373 528243801 936337476 730612332 834841089 671038925 298554075 69909179 36370672 817622792 902293461 124818349 574423515 30925556 709158516 276164138 477294148 746344609 883599357 687008496 670989236 310779340 660054609 206838950 826956533 858030258 4831532 547096918 999099726 705545998 520720912 750652403 727481518 712403605 799132305 870318856 855773968 738699262 896386273 844611671 199173353 757693281 978697854 585774978 580980645 465101662 684118299 966894375 128152363 890535064 86155762 407674947 821130827 721710913 892416831 418990399 883522922 406781475 791892518 686131118 809842210 34898232 969442663 246109058 734411622 927689734 780315335 954483015 914150343 483832978 774952438 957519011 957887426 483570458 547528991 390608906 221652887 269869829 501131914 596566273 698868176 736632565 844230185 446392456 189189802 872228803 583414370 271481502 903065480 957724347 786023488 404076043 173474313 204367784 997460224 783653520 526146415 707655521 741192863 757775692 918297262 858894223 180150746 964337942 110691426 707534080 572518085 794954877 625479831 939837276 352963444 407784309 917284275 731103514 428578124 695583550 934369299 906474206 742461842 445243178 514699175 940157679 177942358 147322944 967872593 329513815 7600084 594966595 31854903 903620271 779763111 135831039 702110067 120880275 121086096 347085408 825032514 841682620 978878185 615268572 409073466 978675422 179310189 791639145 424804142 748403973 140308347 182888552 856723764 531211728 692064061 266098856 701124663 947440383 683027287 826742523 830250584 322737039 739851477 639565054 165272288 975996197 947329177 343334974 697502443 948664 210813911 676527412 783303003 978705196 184238154 802104996 445405736 714213749 228447250 42956404 167953471 941383015 584758065 906533872 456345876 134744775 50866536 509301988 847402065 865923651 770886227 757218500 738417340 791807330 969242726 367974546 437710412 883928724 60322107 891050296 867721619 615574395 267016256 785586850 211910012 122535636 561621230 975410718 625912484 658604865 719036333 953251939 832400693 601198209 238472222 701615947 886692680 750863517 709806824 897883635 764036737 923042111 749381634 928219268 281746577 842270992 629832073 316005854 785394238 780061351 234969000 996842678 975205947 20141765 455814681 840269545 698831080 970166498 337265008 888874034 686293070 368309579 981205578 966839981 520331262 930007724 979410730 429510204 944413765 841408760 874642941 513402846 936650074 264215849 513952555 936088080 896030033 227445925 17246262 719769031 780559065 487315421 51409855 945153559 356522565 939456331 787804024 949353171 133783840 819529080 974502947 808951002 276629471 247705987 307064768 977273217 29886439 990421783 617307513 511077631 705567347 566685861 776611255 722537362 850137882 705759249 100679514 797744896 175891303 583199893 882859574 508089386 940670425 99852375 649612420 899205719 715168096 4678005 654895742 732675549 18927950 749744495 815789735 79841522 209656726 747997979 987292174 44244512 277516963 950421224 827546406 609704127 51728062 366415729 755947762 61209960 498157810 220503716 515818112 81745294 982077509 500548632 800488009 716058999 570230199 747308939 157447501 722259431 810320443 879757196 432545119 588578247 783975803 228400585 912932892 822457259 868564449 101081066 937623516 374619260 390113176 224420716 686039715 750956894 849225664 975642450 89680006 678123209 239242165 229428464 530252048 749082665 134905370 827566683 208695732 351617563 503199880 830559680 804120288 728222648 466847091 592999207 883915803 911508819 894425684 677226929 221908990 487330356 355446976 673954843 910778508 731586882 392396933 101647153 812435317 862452813 240508274 356102952 541750551 463782549 496065563 185193712 985684775 550236249 95086016 541069992 474900234 994158855 313468465 39295228 895467507 248162285 454918754 926977626 928452789 472658046 293913179 414109520 610193900 765270633 389762097 791907764 561553281 749233314 905378158 578395019 807992292 497554910 92963179 930805182 275784847 804097493 110823163 549122470 670989236 810887042 838379263 971498894 71978294 442871420 746599137 302491751 204547838 784632363 838127980 273228450 989967118 892676971 952376983 548244662 787631990 745115564 992514542 495210552 749912246 8516587 446719483 725840787 896465031 741688035 619087787 798159574 856477758 172855478 256913978 335408860 547777789 198714465 88328572 983577214 873903422 741259359 998080837 132350425 82976075 774718186 717237256 652151936 803067288 744203752 726323341 933572888 689380738 56987343 746283280 842276122 863735183 300298701 838395580 384645845 790165732 859450408 819584016 352092869 31271174 919009672 764480752 616200603 215410778 646398104 802573544 871294848 903885511 164092578 618868677 895160886 273178091 266829473 899215830 275859264 986456917 648760461 791118658 621446059 290357112 936126100 633766485 577568469 600103939 146488226 530227745 310516250 154383796 958039394 324508388 364992535 631706726 786112716 925845081 526314756 671517348 162976318 418451104 482011190 20098424 878713151 994370828 871473964 724197807 9474010 764240213 170869543 1521968 702520869 277865149 443614183 741560501 857317611 519303154 925819392 537578499 582734083 315369055 615123018 594888144 345588815 881447281 88318541 736973907 844350836 737767609 899075655 876940179 725132124 833488096 414395809 292970660 43237015 828719461 896110161 134656582 912989890 88232841 914930366 18706447 670989236 548551348 241507782 911580089 441265350 747854793 994855987 328079597 125210957 938752483 599963675 771708356 204555045 214830937 752598894 709010148 378790002 324421917 873830231 179749510 740038836 208084243 530404239 827442644 771244776 259055868 718387740 109997027 144294807 274402470 767815385 710631902 495727251 159583837 735364906 707449238 108158451 856810349 240943189 303072740 827670054 921970637 869529984 786075908 279744733 811018527 498734268 94574971 64496920 667754839 685721181 517028803 981420826 987203177 290948613 257089172 68404435 729933893 731917441 677822068 512982598 90330075 393695622 784352106 274113543 372434659 98090932 63141706 700469466 261152003 957878813 860254792 991884995 104862927 904379560 93356927 761857363 670989236 705492270 546869961 566649867 379528967 864446860 670989236 393240984 632192132 447737752 110126783 778561603 897988560 56917905 74606289 270430213 615478068 370608211 33581215 842236557 416473500 725106993 861295148 140099412 894220962 837904217 840105343 760143759 311384529 120199831 375266320 333244217 911927146 744128449 30168361 707483698 397616260 773804006 304194258 750033891 267837281 282628723 404043419 894352289 639942534 146094504 979040814 743527406 741052856 819869900 855297995 841373498 844082146 45917828 461271921 785027828 976570241 47042570 289865569 986800584 459942563 808327542 57322631 61220464 728988496 988960463 708024515 679090659 534664321 676213361 214930856 755787023 990104366 43035958 552934270 506589964 962292455 337038572 601156794 990318513 600295378 952511134 413294360 670989236 746960591 942779243 166431708 347112021 108162252 737226462 830696733 642147158 859504273 721069331 921148503 808361801 861182671 286453056 556247119 670989236 807879613 693099021 320967492 663029508 959548697 865152139 336394230 740360378 306432716 254824708 660028709 103808165 798279464 674978089 46990416 600664303 183984477 469542398 532404430 103048047 499965938 424236231 367944932 536503835 905263361 471547329 57952733 783266376 988403577 678774921 759222003 101562605 339072221 868118594 192276361 669868889 759931757 308475979 526174424 134766270 120235950 139814548 598104220 167389337 302623603 722839889 917424104 797257677 723195179 41272322 478552910 593277250 985803790 788538192 706917446 517940498 134571407 255519967 80365909 776348516 922502595 836572861 755764439 831495900 971602403 269357921 502793764 170503346 464479022 670989236 453428743 788690825 580069595 763073680 868069154 957082593 116240716 157604063 997721891 632105013 612775425 481574621 68808914 656915586 243545707 312761420 871360403 737947572 732506470 684694776 345723254 153302220 486474929 605981308 24862283 739682865 910451633 934305424 373346066 398649536 670989236 10449198 73321798 720806306 329172959 315524908 854225875 964125360 758102169 103156599 966433017 867259164 358797069 65906790 195887502 725558160 472154137 3848991 954926061 692894859 601849489 794690694 399894131 49206367 22656475 885663210 860022151 855570053 995611494 930334561 31955904 722154674 869652649 388707081 68185434 726476524 680150367 538725194 29470277 784322179 214293892 3019986 356713449 746294680 945882150 896732682 61488354 913543544 539678095 278846339 893532044 492606256 358375820 205497068 973397118 413309054 824818291 173354226 914415254 26575663 707524074 67350704 766625024 950625280 874222788 31600829 909390993 313242196 158752259 507640343 737896832 207530304 406437166 942822082 915952358 112252011 670989236 535641845 554022927 758800008 752345771 705750788 702923125 430112610 844477419 352339909 623488074 608048983 965826319 288641069 356754731 289974521 564933808 791148223 992967400 388455261 994792478 423763202 444809476 834686159 617631316 508777747 928891677 960757503 108840455 821853836 894713572 732224062 761029749 907494332 971395130 482040575 927827949 115388882 647959305 487604155 844295170 828814981 455001110 685716175 807978010 332352180 269612368 776367694 779715431 347080674 262564634 984125055 866460158 284170098 956142799 720488223 701295775 770070333 717635956 374397994 8079911 850113218 2585246 266929354 510289452 721094995 761855868 730366800 581726443 997389833 795228643 736414315 715685976 476171003 759531742 780006225 695580276 813475362 670989236 581502860 752982595 53072984 807730414 858488231 184445429 143643218 577872366 901429252 685244736 868993069 926623273 280866150 993269883 369227044 364611815 834898025 633761606 43310687 640092195 582014876 826859049 781024636 614946853 963261523 820696443 774978373 681787386 900170274 435004725 63161367 908302139 278831084 472561771 827690826 702462668 615735451 836506075 44041421 111786526 165068160 739425574 959331889 217388559 688649593 833849241 872090345 574990103 914739669 517105563 942576231 448184880 913941523 829170831 51312709 749579833 699122561 7727067 787585929 970933432 61278509 424959343 262865864 867892445 98027475 946029372 140388983 989188799 971229326 950321488 152284015 701860952 341998860 113879994 342017921 799129693 967000663 20049549 478601003 931155947 182348250 709602607 432282324 998582458 91744843 476555792 140812957 803973417 672160967 64711408 695862100 778943701 563809538 786110692 870403551 343484914 818699367 950493862 732820910 506946069 749382904 773437427 852068745 399054504 691610242 47375170 963747752 433189281 910823742 796934090 185935042 374401047 448151152 854074777 670989236 723705049 204786957 272118568 898403452 124949375 794120098 442668109 909797375 379612200 72814618 817172402 779451234 758189809 828450398 670989236 894181937 86102827 769326756 996165316 743726421 163372017 982644984 339034486 321695638 932766974 678638225 784502035 274508991 457649414 794344594 454208697 688466845 30629562 901041036 833081621 706019933 453787359 880841961 723474490 895640890 663054462 800634522 780929119 802119895 907047960 679597043 255774604 982401371 779251687 816746456 798800544 436260338 371782329 656395573 41069783 270827743 521373756 949549825 568950934 849070799 37268475 869636034 497404752 430192055 58094244 165207952 692926865 584029701 214297329 699304692 766589787 924590752 959183977 12601392 858932774 328813226 904018836 818661389 931899939 841325529 769724446 853065461 942116938 467813010 962822737 563060181 418637856 710114169 99522816 823902346 934323608 120460037 709293474 799656802 238553890 993728726 144881630 928289560 931546157 775038722 404543971 483653470 507188588 557375894 363507129 696656205 783889006 546354134 591308711 596928800 713889514 885858513 195890366 726215741 48696082 341104097 889819665 257764442 731265304 123769576 990147157 880248639 722609059 722230182 23302009 943013446 734555966 734268536 246840221 161781737 484928489 954032691 875245653 121331364 117913648 681111447 984158532 956628103 813097674 138316093 242230350 776425358 363269073 441043403 611340638 661854186 488721657 470910009 302836464 885718103 943235323 960200849 834124788 784117863 127386949 189840805 883601447 734943814 160800190 587050023 52942243 974368908 977649269 389810360 50857331 156818464 670989236 966977000 139066373 675117282 963701132 881341321 808672431 321957511 854125729 62339161 689809838 803890271 932312042 285370796 573054442 206084661 353993611 670989236 782752400 910320677 77518939 13221756 555710434 656430251 978811249 789856826 730474514 384390897 622533822 307099941 184746550 835413169 853432139 832176748 755886889 211937167 275178072 343770419 464197955 165586041 856487759 348085464 776469685 742550635 71913477 841516705 685074582 885989270 864851752 985453049 966062910 905050013 642209572 387133828 6194788 586523234 767170522 962961022 799339847 999407712 530471917 176386607 670989236 802249095 847002807 122664233 645638899 414536193 997430331 991296502 409847586 766097890 562415220 386053548 855098757 786270220 543070248 295569796 148563649 922294345 913617155 130570753 686533732 350326354 702214898 806812028 843189103 278446584 703398460 999994168 671089178 977142066 695255872 719511378 834229725 686110787 220680638 769148491 586009672 934038962 856629081 670989236 275829317 99719999 232248663 462445420 862676759 670989236 179265078 461449621 434422755 958806135 527156485 974633886 32951285 11714814 962314160 851157544 461877055 931782258 841469465 288350013 871589937 468554104 920976799 285082501 999922359 723194091 556868687 478211131 629347946 947009573 761723126 521657270 432780648 969026933 798782316 777428576 312348334 688153458 830760531 755811823 424170042 823861090 815529885 804106984 846492166 352241740 749351378 728068492 822822645 699477311 684834800 549304287 896887981 903474780 217091174 684877224 23905152 827382868 357068585 916800498 918774957 204186574 564457174 824784415 653919432 524507505 785425932 764141248 835419041 687913595 725061830 940470019 197306707 939573735 169235562 736915934 197059719 255973896 878007939 900527262 609838494 271750112 978362649 265010879 188853064 631757444 767315029 876540672 709985943 307234382 67429035 813455974 900167460 246907135 997901525 505810130 896909350 132261919 696504886 40595122 967176663 756453991 847006045 295688350 929564576 178060731 90077443 532988639 427339228 300079870 254843910 738717809 421444719 885643087 781274706 980960158 377060289 257187957 970666973 823824376 570496418 707919358 689661696 604576895 781945387 728660092 627148120 68500710 805687592 843068357 819565897 774630854 11041235 486396961 254442026 626571462 671399000 757405413 446905809 497918246 939439359 457222758 538040254 242386594 82257799 551222017 728886551 994417269 808918163 332045728 784468605 363171542 702989105 412231024 521729191 705048378 923190202 20110613 616632854 406652198 559168965 99334921 934247838 844751587 967959326 572955218 731264536 773576787 699506279 367614267 949902413 838469915 184689464 950455858 965383476 814219219 587395760 729642450 896786976 987820594 962841835 163162673 734579135 76613929 28093511 820179626 365993314 626678262 795114104 695290883 580406478 223861708 919469893 36508279 735241922 49437486 865290834 912393461 100703941 565535489 20244274 294543661 495770234 718891374 973345702 398664589 146878799 160532528 270825127 951769893 384708856 223181589 476417752 670989236 315216825 849803508 219081742 128230996 728903472 356041041 995241461 679031100 939500273 919264814 844970411 77107102 705519191 988883759 716571546 703557405 140853065 539912139 187212356 574044117 464775429 721421782 500000007 885367425 686133068 343305513 236149204 994440928 308067288 601872901 781872560 205068505 980323827 895745305 614939680 791302745 670989236 638018427 903566618 845625609 858742285 128886972 421042231 10793876 456543534 747102437 888302239 99196896 362794239 803377289 820430627 34479149 749882811 26372389 438901615 150666895 104425760 565462308 467503958 746427915 60338673 340181664 820720585 181653823 269715876 205799900 603727820 272106395 898306401 965142821 23520169 855909687 193891604 240184947 352302587 106672757 828498334 798047896 764870804 128043889 913529584 687156327 980915956 944360695 210926589 999152264 812850883 217193811 952013939 375381636 234159537 973365253 646041962 482972812 864431830 439213829 273831632 40036196 761272445 258859384 855331040 579979268 890964403 884874857 684819461 622893439 499495873 823655208 490651271 410643049 465288342 520382497 884609751 345985532 243177214 238920570 956427909 928852032 240484643 769611433 710158025 660617020 108751644 258850226 243292898 715561328 932200926 355706813 972769866 544299468 530048669 609981456 722086588 360864444 484752006 735526649 307349437 788679295 41733382 618676752 959917628 680594285 682584433 28819706 811771043 787129663 385568746 605850622 233219074 68593824 226907805 137826530 835924234 214892823 933846751 643581470 373882874 862863583 613422587 544322704 563431374 896782261 883367138 558588884 647570641 928779943 602750448 521677676 584957331 860785005 719046204 51357070 551513602 233157033 78203620 897957125 783809040 389623165 974971219 707823712 805783339 487051945 544266423 638121635 756500241 292496562 874356913 542782502 511954470 976195215 200442661 6886630 294887079 826738073 947557878 532673641 670989236 740754448 523992334 862381758 492677467 503364482 756489125 38146170 147332490 597053223 142997995 477577242 655409088 239097356 835835231 647856716 542598343 418861775 688278079 87606813 328789511 456305791 900623889 716447164 398221901 685275692 918806568 945881727 879740889 714563840 941385094 425389699 749682603 712296664 286306725 675454199 921493026 406212429 930773798 164716778 593163203 670989236 520684379 537029269 273152060 150434102 908014511 299352378 819664606 616486043 749908217 798533124 377036711 787100316 293895333 258296070 615640714 803188495 746535333 887597624 669686515 901330827 815535974 78041278 141303606 447422755 540408149 351619726 774976729 265400090 491918130 675334899 454989962 411714361 187958819 33429374 854714337 893678064 51509039 988716021 340481529 208824724 802748118 670989236 696101034 958349314 75609502 119383874 281281498 896430580 752241891 56234354 513106028 479918902 879581457 550135357 999558221 706374133 206158393 314511876 75966587 967867218 241395272 215019823 23780161 520091090 458969831 138641984 434511211 863637829 381385498 260532084 759377698 952697442 950527464 716427542 279394418 25093875 388888662 654646205 658568424 700250143 995836612 732321532 484832399 990581678 722192122 648521883 764923954 590499639 402844270 690308887 717652557 225733762 495457792 451298241 822599003 439081119 403017301 374169794 181300508 972841719 178064098 700940571 333466681 968180854 670989236 732581127 914352685 504945646 996927515 473509331 798190991 29329496 922814876 672033063 112517585 46125213 740562337 284873024 800036424 208673098 40184922 115341449 997717859 834484894 525374671 634813518 476752083 627372320 687105196 174815282 866018586 885124693 845169406 432271207 355660300 769560739 898852205 288542430 857378281 48904715 242596475 695471495 107292688 801502657 581848711 670989236 946331603 737361152 64851791 81101882 670989236 859927975 785998288 870460813 881995192 998355113 946438984 349313945 591734158 652856150 36965381 525878010 962913851 704615791 802403683 821685693 60330149 44405323 888370398 7851756 656954921 202261624 142969386 898972874 375525333 84731575 728159078 822416082 610338175 32545216 16016662 93635713 424651816 792327017 949363153 993399631 181993300 372235312 76660337 336971014 828432601 750093139 275186739 42617666 945880376 780322686 378271920 714948036 800215640 299588105 687503272 831900232 905171783 582178602 113165054 170241467 825379745 793114182 419844209 445239510 864886340 723798052 437872829 973812154 753132764 685653780 903064662 666503491 708105052 272370323 609812763 9901289 366213315 895455746 225440561 681567807 720655409 758146704 3847648 857083248 821008698 436277842 891523621 973777462 508772198 670989236 571249218 83197915 80810747 467860767 57775585 878271227 993904791 842277269 682438360 149534462 670989236 659351307 530955185 816046464 697889689 563639096 37192707 604967112 74170400 713182553 678202205 115418914 318470991 918572117 992869634 959511515 847844949 885427767 805317773 785672987 857613125 932229349 699664870 689142456 676375851 332489025 783355553 85412641 781739640 686241178 348652071 133833632 380732496 675163440 696543356 523530404 829766482 960697359 716066813 268276740 850042464 661755767 581332943 975171529 93066112 187573756 924754579 687605325 955261632 959973041 120659523 476683511 45153379 295943000 280185192 703114363 11962952 733461010 689970771 965461863 717140401 25888547 500424419 734862515 853436639 421661502 984187922 165739331 877302103 721737225 776418298 987426633 207611904 961880083 744321862 601527276 738499137 260442496 846307338 937638189 32573616 863581284 35986606 940850140 88912255 624534352 878585699 796367606 998795267 528169082 754487777 906208181 605659205 123201297 941042445 758208523 605171464 646113067 154141249 179845562 357593323 793696332 94443088 67031421 763685157 912725583 548421519 734662695 202925819 53822639 819655570 32432276 302811444 646042156 893750113 205567547 759887563 740331151 767541263 503316669 411109632 476462231 93414933 670989236 807158972 837097156 965613819 827141002 824989117 886728932 798551003 141163866 575799042 916552729 888677031 670989236 609019704 380449542 796429166 138124646 277210402 749137394 141532027 521414539 919011458 202100339 943411940 600432948 420011525 531270476 280929459 827244444 954661403 330575881 953663447 720652486 978267798 172313789 782559023 697858400 516183142 824347690 272620704 661455762 818323181 690532435 798633643 525213763 132876532 173765520 604010525 680618490 922452715 622434775 343160894 157884677 363873413 253286207 954419455 504627843 292589059 292216051 743168737 704693118 829845523 646340381 934965560 849800027 778855314 14905044 77148187 670989236 326635501 940174361 903513951 767527881 905059047 158555454 911136802 48352504 735857760 702614082 949121179 322218225 687119174 580782868 6432289 933607971 903488074 28420447 443620348 303564980 876566609 917472812 622974676 617872655 224693649 258231026 864622919 972001383 915958458 774403914 958414172 846005512 967722103 881169677 982911063 409246780 322878754 497727358 540234369 40087265 230082243 62793288 720715560 187633447 561160580 830396202 794852017 479826098 739062092 238276249 900338106 799694979 757161666 426796351 205022009 277357577 121325329 659602984 183356172 744093068 821555966 154610586 436443158 798241093 239194956 252085589 211008035 588233627 140127573 779199011 116350027 877954894 238287416 685338513 874150243 991166042 423657453 920015472 948709841 481768217 887038955 436498624 779064688 870611194 966207511 281431285 527439366 214751563 673804856 14574601 512173193 891635396 984302147 176388434 567573695 67508069 371146969 642722971 739740484 715562280 382363045 665181900 914070974 891945570 743250794 983608554 452388140 760548149 485953361 284960487 601819858 621350760 351267591 223386365 429139787 468180541 675066006 770797854 565201243 544674552 8843773 268396831 864759922 171264498 672703695 785171927 989619861 416771357 828099613 371895321 156473491 885204093 436516515 699066162 126400385 262952853 915474016 45932780 127416715 670989236 519502785 620503491 7766383 988881362 760523054 705151007 829785346 860947222 243482424 415405902 375886791 745553863 293693197 159646994 833614898 881540491 412546821 272782162 179603818 903968351 815326729 745514589 938705856 848567733 334919341 580054974 284723945 782427307 965985351 57077473 772426888 762508553 893613494 315076890 23916417 116342486 683872540 329576818 745997954 453561419 155928314 775079482 244304494 756480684 410903040 102557087 420998369 649604230 768143206 107285197 124615697 636841432 893504779 501545390 815387411 380545300 6170390 145611002 858274892 721552881 774747798 695669416 610883225 228568069 14973740 612792837 384490598 639360975 909340269 889057206 91514160 487793838 831888604 399418746 874516138 547577130 689283575 775289292 956552230 699780132 383877786 854581134 406612910 960303099 288077416 954128446 871579206 979453750 850120320 800793492 943663162 122541689 929115772 529921577 755132516 989411787 965509995 661904056 860411907 714314315 121940281 361121192 618593325 864255848 626716277 912980138 720287323 3889844 734236944 910781585 722418361 918416959 972513483 610929811 523178237 688545234 391678940 837885501 538976225 713194873 974347986 265035857 100848810 895220184 120577863 240445058 873311571 16651012 420124036 673333471 823783486 484860704 883034530 360922197 253315369 548891773 716234927 266476654 367995156 525786980 803649361 367780353 159159793 370995171 790888226 386730061 856172669 284123127 658304153 608176899 747788804 773185151 804370264 868608282 15364337 141743281 76808161 681865491 984023100 648214674 306258607 24179959 534957324 742268012 206728750 977268179 825684754 959002709 934293369 783880710 162958889 828094273 486458203 823181738 527637969 874803174 935602999 446277185 452754085 297088535 650346931 555936141 656520892 652066663 314396684 782599697 202293008 434174661 712975442 308340832 513522972 113123099 560840450 149690627 919329019 270757630 517504861 984899374 869602122 844769635 865832365 96819254 281015824 665547317 524831875 861468537 762161349 678651743 235657806 661339316 924411777 875838872 964874784 750740902 278465299 718929496 744907328 409065852 103666107 781060061 459218663 482224754 32564263 731502750 671785095 650378492 543605614 680811793 73358069 945323684 343392974 891748139 770918569 425055463 323223719 814425591 412095995 93124124 121217773 855300686 887351004 80743830 916224886 163439249 553826661 936398694 651203289 117442740 385853859 922893897 94054364 705692218 238911109 807818784 928347781 141726645 683856094 793678983 138985884 702249881 99267666 635914162 475003822 243114797 736163909 216764005 806635383 505359909 829040835 219603762 618090017 338860854 494169325 596917206 661165887 520230677 820298867 275684957 117753316 97677268 420249947 912701119 726702269 246426606 935518433 856927564 776506994 920447598 910640496 772484646 908490757 599933936 507452504 729890070 925232900 883598201 199693437 671357294 972536843 591596839 853960759 863647574 623505901 526777620 77675095 520669232 896708951 354463376 557392235 229000156 193885993 785336305 939823383 804103259 53370846 954066173 794726405 740908409 962928485 942264700 586981941 926084259 177060878 490232635 392741217 133146798 696006134 620824706 383529740 303224478 687196888 543511991 186216984 956968971 624895962 952102695 59489144 969673436 654894283 714539174 307782839 512365963 158861955 945904658 870473447 856188926 403849777 893131151 71320508 707838242 114914295 677963141 472577533 981101523 749107172 828986903 331548467 644001589 664034035 507431721 818422766 645215593 773424451 798344099 312430221 875048335 820305157 559658410 900529998 82649636 807784320 106865600 133181516 379625271 785370242 752268230 923398854 670989236 749170846 660021105 464873849 202277163 734651497 491081526 954246768 720756594 872509600 92841112 998430514 506735370 176832066 762156707 808726395 411919559 153376351 502861336 790045878 230571241 906454238 777594707 201343550 196800063 379258536 236814596 976522295 788783901 484866693 715954548 824737876 317373055 894388563 834789762 827148358 722474178 684761294 424804121 403603791 577417146 511522030 658851298 665820604 662190744 544568262 170048073 147253753 227304811 610505464 847183577 377273290 576254545 845327134 375100382 72338685 877792089 476348728 279161023 671696167 964216862 931577129 406613936 953272843 399109954 165195272 28519444 973833257 867671503 739534662 961313443 904067084 964970779 652918223 807578633 374142002 249286958 866947576 860748539 898441877 181438562 536798601 520230042 279554181 716800704 427133231 773849844 477693081 972573448 858430980 550001198 782031723 287862310 969587204 101018009 107164112 978568426 983616673 954993333 927822266 836577663 314764557 392721361 15388379 707895198 604716437 458575739 629651250 730405551 639261703 211191277 897782504 729099585 490599704 789225705 845564082 72757817 670989236 332937814 868202100 861639768 707870237 601283338 360335247 776947785 231679332 960650111 673886129 474112605 977890328 840303198 613844578 768330102 68835247 976134222 916753335 622730744 987772403 370418454 590788022 738331786 85127504 679615615 820259018 97932495 861793790 353158052 17402165 904248165 613975129 736385596 729380806 936206091 736997950 940262337 825559305 674483142 353128014 623221745 557978027 981093351 251022323 632965784 100990363 68368930 226731405 721667524 623297755 817505816 605242914 670989236 171961339 860527103 472096565 717389594 848293207 909827651 298573088 722488334 570861574 811986311 958534625 756282146 603334301 895694554 900808568 108040901 316584829 432422852 731357718 121414819 911034958 869569239 887757898 506567002 973323085 787483789 896121578 94149762 109364730 321039088 726799670 790170210 330870893 271940732 983075814 109051033 677002116 696258370 561132762 200960391 987667579 710671483 238686544 508938725 369599920 506689519 933455378 805727290 818526533 903031775 813419033 917749198 889809088 773693146 100700596 904493234 628215048 386076626 645110607 989086535 390383953 95204303 323516048 965412642 673506272 492033319 722919630 244500834 797801935 682519692 199380423 440592373 939407605 995765233 250768196 850029013 762930821 896128913 483106021 556229537 932646607 773533411 504240393 124458521 155263208 564354408 26392434 964128980 954980384 638377517 222967784 487166241 698649680 694514155 680536699 465798331 563644487 209640756 458833125 940649677 667304188 725274396 917772522 484095332 958087157 910040907 348614449 856633662 322894020 321191442 367886152 670989236 458282538 925660985 519370273 708285581 850798053 818976230 757214459 729029024 866281396 812058313 345937593 813101459 134726071 645019073 766480636 941614800 671225828 857747506 733750511 606020227 479432805 755955932 969817955 197390074 47665781 366930783 477455167 367971743 258768281 183385348 463211492 478451737 700466276 528330706 62344475 782605324 171526638 101059409 734276638 296758063 126559863 714682755 403853234 537398380 694589258 457512806 995955294 600810874 115617480 874393448 650904439 27467879 450726366 591772891 700991969 857376769 893734528 180479942 766643832 836193556 174134537 177910914 38768752 163041560 406022590 790345218 867257740 556017710 868775517 911440198 158017117 906617723 788978542 893943249 706127993 521916462 321601218 176795005 914301046 844246486 950585056 687411941 368618813 439661737 779975065 695360682 934472331 54723018 638923465 827090614 44711832 732475005 373346012 441578075 486013283 395127929 892421558 938327504 364293770 786013102 670989236 974331369 802507228 827207831 765141331 947513185 316365263 840929833 708571277 315211125 324882750 684789741 524727989 549737551 833007436 994588623 675696370 707876901 491987605 745498487 125265109 375540634 146603883 705286853 943448067 279325398 365674586 999773435 671026134 912491022 52894463 868537082 686365470 942568161 913860967 748725856 712221367 694937925 691769758 788297975 689076966 773348564 142339261 877542848 200776818 817219678 466468357 118363808 825136004 937830897 888726003 654397919 301553349 728054773 42658320 67059257 598179855 621404139 190990167 453040196 891042697 852267285 994110634 682220755 987805722 725442549 764434561 165589518 681405855 694922704 439068116 394067521 4682498 785126192 923639042 584697531 835888180 899118957 855515012 947150692 593246869 728833671 997924488 329716081 22682180 716826783 978034140 290050967 817944221 819131334 392399530 471160839 706196545 204746994 211910179 590505132 680161756 845274241 838381911 740128630 895367124 794308636 258195604 670989236 738684865 418316345 674640981 734014498 525031272 828425218 759212010 998240948 927310972 959674651 248185363 858539312 42150628 676052708 943650970 927419029 827231748 534663037 587557251 807598365 965940302 891374155 45112076 847837419 5498023 131863723 827523651 711526200 685577325 445391307 316797653 940274019 26198315 903688016 591196975 674175032 882014879 937291931 430621118 364257155 532086675 581357000 454288126 689402430 698257070 637353115 53156348 571009174 720983282 378633170 704146418 790160489 842373012 484882978 567053383 659494204 168639730 883634260 494108151 794100168 562927341 803127801 581763329 916365531 516503546 775642914 944549052 720976529 715661552 166097147 213012103 418256934 213376252 855994512 693711335 503631009 922974812 516085250 628804275 745826033 751961933 861894958 541355352 725259596 220018224 948912516 957415369 20310044 849332468 38023462 354174536 567211488 1793729 705601615 899698364 706127523 840124906 338018472 100578252 760142829 894485383 707095873 274187857 778616658 851063548 557486418 880963732 595083736 932422752 994108571 764452320 795397132 845923770 834106546 788349749 632145061 165314318 668641589 771014923 405045723 757275190 471268432 979829901 320252330 771572339 135530377 208339607 98263308 885244808 361668402 3095304 852648596 793127651 372669237 764698402 844293253 669471373 671314902 650938206 767698337 454043368 791138571 133344197 809320010 192225180 236866075 448244705 703772240 395336359 385820752 727003517 956158634 788692697 901434395 856859796 935798253 932237254 691089236 846830538 439478218 793340050 673276128 481817508 795270653 90289020 405240898 221936549 863442642 365568774 883132208 677067595 686120487 670989236 750997229 646087017 679054492 9650668 999146811 829812986 679685415 262271637 963623511 774504188 717265038 466690524 831011015 42899666 766003999 21921840 579705339 706935104 525257244 20195192 507369485 541758186 811923313 290237857 964033143 919926038 983636499 860279601 686644656 338153181 776591951 767220198 562703428 764026082 672773527 31145780 960665739 30779083 909608342 670989236 171516947 125945583 751868684 356479786 786991057 881884840 660778372 981789235 265814836 418749318 47826102 728205220 982313234 790561879 842910849 631702122 773636562 598294035 774023556 38767819 65919393 830901165 192770164 977081003 907604148 488690485 585072906 380567326 10674946 180844722 670989236 729152735 927644872 883898940 887492309 457814042 165036966 806748095 752189533 298432603 383005210 991854115 816304767 781288671 278499847 996294952 387834650 334878480 575444581 834221712 833276565 212476686 981424396 847087647 474040439 698155407 890598539 464698442 86808575 949163554 179152526 705958668 969724479 216394396 591206639 843222539 62428795 400962203 598921906 869967562 992112445 796205721 36266014 220552882 649040182 121574602 908479997 898673027 927398201 378278567 155428695 884844840 421471798 978587636 732477426 896367575 568266053 764256734 900204370 189522350 700423374 649532678 453483437 871286944 380346450 290218804 518077677 964713687 70977849 823998192 979801797 843813321 147545715 938084057 697282239 644626400 437180375 754339261 200627390 20424867 722681723 687987849 670989236 666669343 395817734 994001309 4779447 832216458 77186329 887497230 217552891 862989476 741569905 993248755 724569920 866835268 834555659 153134300 329084348 494069389 535329120 43384150 566256008 759625586 744091964 768010485 926801354 972164524 681354143 435542635 464192999 113858 727484855 788659737 728582327 765506128 305927656 116986327 114692375 328739587 368316519 831411649 602398213 798637234 28206596 411742402 881863393 933431068 273477342 553761547 952778453 227950316 145177130 565006140 672304210 670989236 625821668 372429805 745857157 913790743 764628935 771437035 830600322 159504917 772259396 681782090 780437094 809279149 100409927 988523873 475935676 758617111 868834317 553115684 658868755 817583644 257998507 12115267 646163483 784051623 845771221 98806407 763532843 916145137 39770814 747489857 922002382 905712880 840089859 950362796 382133943 800525623 79983206 74691721 999299716 349851153 492352582 249760477 502077838 196797101 737862715 191925307 720947241 30580540 898660428 816633425 495269820 264303866 612491114 51696897 701712421 974763001 612346201 599974327 33162471 909082112 234696080 604626580 983147194 336588208 670989236 607133209 915441823 892214239 674375099 243495954 166482203 980081857 752026864 899064688 407936304 464577763 787670671 695138320 941444581 769912557 262495232 643414900 277137516 342417257 213872841 225003148 772249343 755029452 844123431 752897331 179239740 983788556 857906635 266154480 61419597 559384267 781221406 752889439 997816384 854834229 895775053 569179854 466246681 343656928 453026384 824939282 457345868 582971436 786331426 294805094 102174288 525029933 596263451 767636084 597422316 295867978 393728689 970263067 834229688 758878252 2316663 763044380 638089644 808330594 103408479 877407527 677861032 879998504 88013798 20148442 792211267 801959714 169606583 671524002 164704434 9993598 935001572 384161080 280438825 676162031 930101162 75964836 775549863 286854977 771905195 990006463 353839404 687956432 11955795 841044821 620279390 34011795 72433900 868359992 793599023 430667876 194914168 442583918 403731695 77003201 883412096 972049221 221541112 494233735 13506060 771353381 948587782 687656890 385739053 841485650 393577488 386631025 854653563 191341184 504632048 772609482 57812236 657202794 456992511 932271805 553878807 746759456 166120796 651489353 199164959 73148593 763427944 650709835 902787617 308575803 784356581 121084042 858174271 461092646 758244385 426729319 808018412 751009246 861040566 492101421 941196313 881251271 580899477 802347436 856078797 862795581 219438293 169469991 439407362 824089536 113604119 46114032 618379823 345902551 781780292 640669845 286491263 131097521 977862746 883494179 272161660 200513212 113226880 160290943 684581675 897844002 726936095 632215356 722253321 139758990 107959541 477166699 908940781 662758384 998679130 309079290 694909996 376745208 249732950 380848729 115027653 718875221 422642036 720558834 160383062 738807994 670989236 851410354 874227499 960669537 916676548 782049805 444758807 240932831 506465787 432857605 964563799 678458244 511135097 310271021 875899452 583841926 852918868 765709642 892455983 623140445 929531203 731263941 933530660 449649330 813037321 144573140 311968852 507973456 976275515 951976072 707071394 452302354 309818274 862156219 991527989 187158338 24624155 724366152 913338274 37157752 572533570 853954895 442322049 736190636 819103462 590342706 838029801 943818222 531084536 915205047 163789515 797682467 198178185 214672752 463170595 687311617 834309439 935590666 273688481 514666233 215568410 971285083 104036717 385192108 979769691 732269118 161591474 916439825 820709763 739761065 294894299 602749466 710349035 756420273 356385252 645434967 822723812 434213031 670989236 767482883 722981727 907976096 730650089 681466475 806288167 985844513 671732399 282171592 859082757 31645298 570422137 745142605 659920525 266338634 323016323 260043846 368322968 716440310 766708835 99962238 323203975 645986038 742046446 996221894 438663782 29438492 901824095 461517756 697994192 365305217 721010325 358084816 990001325 433122080 660637893 235898173 753664570 185889588 93932078 385584997 998002327 839785137 64750643 561629951 709920972 360668118 954217379 665420146 485004002 281062532 519514776 351603200 672217656 923032041 788344539 981428853 265702348 77113471 792432650 577472466 239692786 827281550 173012663 952837455 193041823 783496222 713145915 590991953 817363101 48755059 35683269 891381323 724236395 745899265 500316559 341678798 694253208 180253898 830127020 853428654 784031923 862282522 889052362 711979167 689959045 139196759 829976653 778613216 732776078 983802662 753702530 418525253 119888348 386890683 637027384 226522274 565177320 829952328 932953949 487356197 290090527 916275663 769023718 839209719 738276879 987619370 957497755 442212951 211604860 810350705 347525662 313245471 685548445 677968435 654667767 976335692 839984963 108864891 954880035 347675523 959967544 247955208 308748059 938160048 396890979 837749396 953795055 843070378 691367080 81217792 941368211 915732378 744023483 946308058 427763486 835212559 199660773 869839484 166863669 203712854 492610806 303482673 717156951 949208407 547333920 878227812 272673752 788001608 721548304 711431458 670989236 993414375 400867207 854842941 942258526 845100859 507456324 354415344 933360940 729150551 999482210 847478826 992297952 848895931 799627381 818073860 694956738 699045967 733878894 704298022 888974667 624291118 716981451 725468315 492255741 507758356 652448938 979809776 795520736 900121686 761270127 914946707 861883070 762188334 370064187 717719892 707896648 942585550 50057787 367719626 670989236 952378547 503488402 202007477 883449254 964929558 742630158 597280375 990687536 695044553 758593712 959123770 671003389 628324805 891750756 292161997 280596241 808817417 830335977 83858118 716232597 91139840 856801771 204649586 977453827 429994515 941600919 398083638 789428247 679646699 712986968 576911307 982737169 841943169 985618064 614887851 767501256 835663323 736925597 817194622 719344357 868913414 221588220 63094587 225800258 908914554 479798704 915114965 298982101 35377268 775399450 861149097 824445777 358799682 988830181 841157481 716384709 670989236 143028087 658316053 879219415 752730133 476152603 830628258 605540487 910686365 133330833 686771632 904302691 77206777 857364658 607905942 997915679 154222615 943171418 794702690 904467765 709956968 607866939 889280754 193696624 643922112 913713051 789519526 890213275 332547003 136764858 782227289 968240806 315209379 130289236 320713612 919248961 763510148 625824144 755538352 109081230 858178180 868496244 704044438 972368705 33210829 606947201 663157885 245502713 815264080 819423933 155334968 829721684 480158497 282604381 840111273 310602262 957594139 153752933 239966516 744103331 525056448 488006203 373875759 876779733 681478563 756509892 755481053 696910585 680031291 277615199 418793398 848199649 889443843 821221261 996754844 97714506 908863408 982113500 257085411 106025709 31481418 729392674 490306867 670989236 816912593 229405275 68159712 499795270 513577855 544117327 823996269 39974609 479538378 426858905 625519033 699498172 230420217 125857370 505864781 629763961 585758054 592593897 939710670 474730601 655491017 970028904 787762066 244086329 636787863 456507542 240059474 85177535 163848700 842533843 918375319 891511708 69673499 712056140 324599707 681636263 782165033 598415542 950826888 391599422 406022505 585109046 203032038 131656196 584097923 822363821 673688919 670989236 577976964 956329989 700368270 944365097 468010480 92578564 706141997 904901742 63853361 735887863 909595007 213240832 362163085 670989236 721165995 785950597 987779544 41557233 818572658 776350584 868108324 588452595 405182306 956831842 930883407 164015563 967625271 457883431 760468455 189533762 502192539 734789038 935847769 776949112 137432017 505420145 83821836 929365418 825249599 285666676 801722276 704026360 673104927 394641223 165640238 357562371 55750945 673435872 850897537 933327916 731965365 652354265 711938119 698778873 234452508 519713980 984384347 998807870 424158134 500625162 223790926 727953990 886460618 440396593 736923233 659386403 527053580 945373951 724957213 703455971 759627087 731324894 730268174 860189443 843600220 822230910 884210557 947055444 772610286 972014461 420404901 476561855 809437986 817597428 439482938 149235398 557147859 937826572 572446227 741354093 120023443 280869200 911511268 729462432 934855788 692403315 959110084 884264166 265046642 263722848 769765471 765313696 789880556 298436837 745531563 887335600 583813598 716407087 857470570 625469780 396864865 957430828 864528678 670989236 800657266 513540439 277966521 998198983 932890111 171023325 954193561 435339738 964075526 103916792 968933463 227157682 475255216 747474927 982322436 716387017 310477740 197160259 675390292 735063704 914526062 702641463 936599719 842196299 862366655 865386940 755677737 989725511 702540957 356919840 803434043 292886997 825130997 867994440 413308273 522749688 371739303 333828648 394756377 644445720 663299931 66496041 976523328 258401494 27571399 551164073 114429608 960710756 371742208 705113592 706394785 191565305 962406832 773406682 687684552 298624812 905957442 949391171 768322964 813557017 891671258 58136912 957929740 435586349 669452591 756253024 988331087 208513124 52725609 930939082 201967420 642353520 670989236 990955042 685434916 712609704 785384869 602783594 212332729 428476575 383518293 418258729 119476890 718975532 850812256 821965786 248617163 247542651 878968532 733003998 134746613 717856774 191498946 407096415 350722388 243928454 944364975 881361959 25552519 771671951 730940183 981976002 856161597 658469781 840246859 72201621 226187764 182542956 969107536 539812134 491182097 982952758 857199732 748176302 200859759 48987179 782450378 402901350 970932205 760933865 977463005 640702977 645239202 590248416 98607811 960728564 881676080 881393315 769975420 588560837 610442000 728859675 124162903 682495424 282263661 212389625 353152214 427929437 164200294 996801978 975439399 255686516 262314528 486715686 511143632 214759664 790077209 732020520 649206816 787117938 777898174 887540678 68457042 219782618 809677301 89431506 650116798 417911161 994567500 731361670 774008511 396125259 455835625 919246302 335294052 613470752 747812951 449699166 359297922 907841504 735989854 131935046 835015040 977657302 915210580 914051625 182323666 86850952 655197425 906744053 367599974 642228112 345460784 161219121 675437371 740470195 241016606 583755152 673860669 81316572 935069026 253702256 49260585 936295251 723584901 886797262 581866602 815065060 112083963 917404824 357309766 952231500 298214653 514501696 104708231 813068677 835822057 937830302 223610869 901750411 729305068 718724046 382517928 749999199 586202620 507210746 686852838 342221802 166494213 94380921 884418173 149195461 128378824 996680938 415063627 485962520 754406088 857091117 964396126 177200457 263582154 658674110 3234870 278393569 366895397 17657049 121354116 326679850 194573105 14845225 546226842 771420987 910776131 14443358 68863489 518450811 463159223 619877988 139072660 152759782 60340754 532776177 562878624 940045841 964896675 771089102 961037733 842569291 657382446 891726169 128562098 985357735 64155828 378712431 855240765 172954099 771945597 104124413 497679481 786531138 503088638 711126844 850330431 538959097 990636952 399171295 11890485 750402263 224599829 575768543 278877324 832222659 979405541 160950180 903121740 851224823 894978552 956231086 870046526 127881668 690833913 708841157 896692964 909390322 150730328 543709037 841179630 939924900 104237964 78266084 376692314 126722003 582408386 999861893 249608228 621255192 184320397 714877255 233832399 31677457 197457380 531282282 358827601 67858494 892470944 828339392 391329469 934336447 748818418 210434872 585820814 634869148 302043472 13565594 262078776 73709451 850040029 695029354 913659633 107488051 725999165 803577876 304908745 419851981 324343259 716699271 574226071 740560138 939816456 600719046 67446993 209810650 63367447 655278110 166358252 942074736 400572925 920165691 820079926 312641616 714671657 421564578 301020448 808060240 71694373 683606136 346192853 859241288 728094159 980694574 863132867 826383500 140424813 5872626 804363560 705221628 424672971 389355963 860961372 232551168 513793428 896606042 895380730 934463526 179658057 729964420 912911991 256830927 290769529 87620662 692236711 796707438 990806443 868574775 785078135 974066404 961911021 857717094 718010528 60916642 824458793 451732180 45069177 768913383 931804976 45321738 516674804 652672303 718599734 713046905 596409814 451784807 959381900 993769140 514953395 994553386 744854108 794550524 731337521 967867549 227495578 949473193 677390288 544822493 286100912 206941148 654523171 175076235 855172949 57860623 902968005 398329631 44967589 744467535 84441782 321477634 616882922 993440627 690908852 702706012 159426752 721767453 924333785 787681197 766898281 632562285 226075425 576385139 169550532 475268609 860936608 28982531 92882602 170842182 541787439 118087878 774966863 833330461 905403545 779778206 809014546 134962322 98866096 678477754 940798030 410034011 622604571 708526504 285299602 344259073 666339702 449445533 963891870 588269350 619535671 699650983 724621722 494257706 433377022 111430256 466730171 563819181 829007976 499580819 315901785 831712280 676516519 636602719 32275067 414551760 971922399 398773134 939544263 802872799 52537396 244521966 884552590 429758921 910215633 425860606 491228311 352749740 954886654 960540116 998014355 931410778 958724150 706187437 332450559 769898075 64176565 944212006 945457350 220763738 426228645 570206874 364741404 975589075 756434972 942260205 760425387 804245051 713759693 826332462 720136779 518743377 311436137 871887443 767085508 203898471 931200248 730715265 73271075 692670185 624253019 988615234 182260220 970808681 690125579 758613695 977857818 562627768 114958835 699881875 845177923 683832790 799186619 788890493 622118456 492910307 131997327 947667001 684426927 730516463 392347935 218896330 89095033 682696138 879903799 676021562 279127103 400429739 850402126 648192664 701953622 654253683 222208509 624819727 902934476 971905292 710670545 444468214 13076324 281278655 973029623 987162165 585331848 808478334 324941795 650593800 805616986 186005551 556347 32692513 878063585 415021556 266103784 250215525 662437329 716875074 981175455 79287942 798587928 621042450 629017402 823538921 987528588 816895090 438273358 277883473 686061523 389350234 573761275 554545221 898214727 709686439 767637928 969242129 974391895 555668633 421443760 225632729 984124192 532071936 906833851 954588246 172136597 616211313 303982038 907315564 71347601 179971694 277334321 946432444 216458274 455019128 51791116 286937786 887023536 486616282 617638938 172378424 973179867 919974348 207908636 539746216 867290758 246470033 560395108 255903159 843843948 136199196 499283459 816921541 760265264 562869578 785802774 246434384 87681666 578076230 243604892 859033122 582488160 945561170 733586939 810452331 859693637 769131823 711214070 553043314 930707166 717954042 927687691 912455993 807248794 326632344 670989236 763799167 670989236 891849118 539966029 52745025 817558591 678400323 585801916 939255272 508631793 875708187 854422263 548286594 529478386 824365214 687559181 858487631 778863438 569838844 495287388 347231901 558885968 799783124 897901473 926894626 832230219 684595016 513543101 854177315 127545806 695767076 911791331 188860066 927345719 527233297 948638642 409517805 957101997 337909448 884260076 654063255 239523048 870641647 888229590 697661459 932433038 948508661 94239227 54672320 878069303 974792962 568426659 732111319 802773856 850274658 754741922 726275472 743388998 743792987 685812654 987138551 492710556 998779414 451048532 393381443 787073070 818744303 62291960 791495666 903963368 495327373 46216140 736137077 865879305 135611022 907694411 152189064 760136513 304386297 798627206 312859600 994024168 973268579 704415387 273777282 1008001 19318823 996961548 989676151 270908678 841109063 991844001 672375656 949653638 72966792 799076820 716556916 798611085 776274668 991740259 483799424 569318901 156558389 248498657 421780793 632575620 907888985 126907884 635829995 950126012 973607826 614121657 986649759 942204768 149832995 135745697 84322065 780956093 567209075 91246724 984976366 296625972 730340590 708571188 601041288 377408618 814116127 965064809 314782984 805172506 796939488 605525250 126369014 817284252 688502370 211381602 468487390 89663716 958475046 822313888 857984327 309208498 839632030 110876612 795886762 503270103 429379903 670989236 695332901 117362684 894542387 719603704 802958152 750818138 852928896 983048934 189593128 638012334 121672183 789879271 966055566 70199071 144115298 989162381 981391509 946988231 982858041 725433689 882377666 377977250 996347201 794080459 672271649 930486678 943110554 392510800 924475705 833874211 310531074 527516979 945214588 709485262 950142615 752344542 517007117 670989236 781694993 54595411 841800496 950879545 541010381 946181998 882606273 185253068 637006063 816627442 222482508 670989236 288049701 573796376 254905094 755333604 272710918 663009500 641716988 78349565 237316776 688227340 120355879 937725109 782266300 902321675 678510675 918055825 782476793 997454722 838003404 9832162 224646819 556586343 892064777 505071608 398567433 855679562 766404564 670989236 933055796 872286282 890053890 945107474 37248278 407619071 148915913 852271471 670989236 719640346 435108657 917111995 930623052 466084379 283078192 800384761 238841065 736465188 790310531 820558529 352601924 867511526 786698642 715939434 751511458 782545767 945802812 263105209 417050089 812320810 491703708 909461422 976310688 495129356 964776807 825028272 600395515 324900039 314424300 912770665 709865490 952755477 620251236 468926353 995068931 78308338 627060653 251858821 811604251 314478740 539216865 324977394 845345642 879598503 215486647 934844260 797444430 829408696 306340209 698954845 274128258 176730487 336970563 222262979 670989236 89966416 218585483 251218661 834721293 306425404 905449104 736942847 838004942 745606141 183219811 745913399 201461593 873749325 848258275 706028847 713614173 967549030 5796466 707137347 29302964 775882834 304388468 969618471 554994185 298345442 54788071 97746776 7273494 235994553 708626964 819298616 245498944 878345393 956700440 670989236 918039690 332761843 842224448 701801452 554605359 303195055 887051759 338700127 923630697 952979239 86816230 605384774 180597346 144483696 743109303 504201019 182869955 974768314 562935062 825527684 570399707 584425590 850455377 743832721 848790246 921808691 844274988 954245555 305907763 701230606 779894546 736121768 858614768 707657180 953307716 728210695 858974467 785126062 640763013 598552929 948466951 393047648 980972494 686726334 921777484 992413664 562559251 84796034 54046611 73378108 535609439 102721526 91937508 958456949 935273032 936935221 722403689 979961312 450967675 986091108 902808141 637366727 983994901 701213387 306446500 491167121 116570020 997143330 100750901 964710532 780507872 379978715 737396180 25404730 660542145 82535141 42766538 968090428 211648502 953863870 967315790 973058123 981958145 875426795 529238060 720698341 261665738 317311387 764964814 142338477 711001394 166165257 554507406 759594168 992760523 753676860 400705230 644230225 604205762 691037916 302248545 753768506 192711490 786079044 582314810 492736557 59270505 839715542 593529270 670989236 707782723 297643522 710364369 885809903 923675635 945166285 967562406 830407030 584072505 265102225 736131929 362878721 478722651 682413124 105243930 581607455 920484272 478930140 73493603 789009271 877226593 73968381 319268873 972009546 117837432 532799818 57940528 952803990 218057228 965396741 698175758 14951533 701292403 891260025 677554338 189973157 636286789 730114364 537077015 55179313 844416882 927937678 574071900 694254806 549467385 551179420 193909978 974946070 846749263 867826175 755720895 726980882 811352601 766984567 48844841 575310323 590011176 749949146 203111481 82423145 113352872 379692693 244219416 4368102 415445554 255585359 434797037 674910133 130676162 327736351 926131993 33599377 198005221 832087583 257434402 994325636 801066063 634224243 388255078 146430159 730071431 669329094 450776864 821091687 899612494 549190160 902616843 925773059 388778167 798580492 756698413 364931499 389815501 744971552 985584845 506336742 914770410 859797436 399528028 887258208 814702804 891066979 711813305 768857235 945606583 933537931 144425524 47980325 154962091 970210968 68610506 533919024 736030537 827826976 697844613 670136737 897030851 186734334 669379557 58970440 831297140 320162939 964160646 584574651 147263571 992249023 259078850 113108182 277231921 686302615 878535502 36463253 849510501 624796494 995374760 838823215 484738835 803967920 955846669 897458505 867717690 212819205 211174948 696991434 881686810 720945083 683583686 750370148 430614794 685477128 352571298 184839023 757359869 550165142 56368852 851202086 926772788 356335071 418671904 770768882 982135971 744048877 780835572 475747150 904999826 838118998 860171818 387504584 738456047 800737866 694874300 623386829 641102383 797228343 704781256 414822112 868675552 298779025 986690508 933729450 805482172 1764167 971002821 687052975 705823099 933616649 950209505 808125665 976498270 7644786 921802391 569663211 236991530 277897853 670989236 416119431 482313377 720428454 391277681 422116317 720026169 823438139 921445117 437587290 178567286 560090971 81561396 823505900 849176046 990617962 732382818 717952802 397634061 745424706 217090990 724594324 69564561 718578699 998085937 711660268 811537184 299622465 890695679 678095436 632308639 877279970 386280447 133590904 857280160 677668045 717779144 246177071 373386059 388175914 728845397 650229968 258918326 92257577 708410351 815624379 739321047 44216663 809900377 912871356 48605674 381673665 695645927 209460501 611347399 85415064 670989236 754574946 677429523 890916429 998409344 305924051 951510435 675845456 351537754 319361523 349741681 155054448 670989236 850652128 785820381 220095077 145557444 641020481 555449950 960836130 927533797 240837868 466278609 935643384 265143282 165472655 696891576 69128899 170535333 182341795 376396405 930316900 775958537 748905471 19396973 257589188 629921820 984198334 442135353 287755172 742140816 102939933 23746219 864441998 833277557 873017264 254647182 484618670 902949060 245169476 631522134 914466983 683578884 338516679 805787932 714385376 127682502 449238440 897468035 760451234 749071325 84656976 597399788 306153896 263333985 913171615 722372408 610474945 558579224 850134994 236121215 286431065 277525172 995129921 57368353 749616355 748511999 210186067 539941154 566936054 188092319 443629088 794636563 181611737 235091823 234752330 757380831 975976205 667413798 718118174 220383907 881312787 437912116 473333536 815899593 718434068 425517773 691050183 940564534 659359245 834636852 731653049 8522159 790476133 482245153 868109619 249290826 246066444 991448825 718990563 443331511 843533911 204690731 500116138 858936649 547348741 497207932 403556316 408107098 832474464 771371950 219464129 296253236 920915698 772520212 120253690 95593024 66122995 954228957 913507222 194680308 939035537 68155228 670989236 827674337 648859532 932455957 137766930 959779861 908027291 752521654 760019680 872946322 676107937 722618721 199923355 979951187 268723192 970162936 799931968 979028265 788787176 281500497 945113357 113364242 778371375 970481732 692194945 916969077 144906803 875141940 564472888 799967268 778343964 737592530 711545213 683032897 528822812 440219270 455256578 604847681 813857522 338131937 4371043 858935799 835831553 817164507 976074805 468697215 692481279 977202336 378872386 827236350 800707802 213217741 59585173 693836655 718480181 688325671 668057118 952457904 880439736 579682805 164289199 819883012 836879281 251183780 6510317 723785838 131617653 712479706 859060056 578999498 590753742 499360706 103604418 970845332 282523859 427285799 688012268 752292477 681283788 311413728 778607469 974752272 179926784 948097826 894798584 149244979 999488281 979243125 51001734 244768405 210737791 900253434 536147283 993565369 423810060 818037984 659321172 241631114 609234998 781343472 346287028 625858183 435254850 531675131 230243914 14110730 912843118 782445943 842808253 811298905 395297690 535807031 530820918 707910891 706839490 851066314 203477697 863019183 738697085 91116020 330983732 972721949 997973256 609696736 141986211 69058441 192552232 875470181 764186733 790652348 577755392 900615560 583022315 918379132 675227746 548724623 670989236 807710323 75645426 244341642 706243606 811369212 853837849 651375936 375551749 372641432 114576217 321733171 836440556 749116370 212684028 188631360 405678207 965813673 197097530 308435635 191532862 126704170 126633446 943960149 848977546 962166124 553123000 401743813 588619595 47743697 448937499 699261556 354057852 449330342 772773501 308057530 976422116 104448159 402670958 910831104 710664745 808879044 361851599 888439977 700044179 734508781 47869440 632912467 368007987 401809884 487048330 705296184 281545622 463789472 632150854 201752638 471697937 324443065 922344653 975711312 614168440 74126060 455778680 468704193 747878190 960859413 836544499 22964620 699657783 428123496 475722950 760755560 777629201 859730732 157962198 10685747 301642757 969583334 908659974 905406249 949583046 798633089 584093055 377739570 114401391 258080475 332089095 675249829 976086584 184173184 934703022 867829300 827513456 221674915 655295085 162909968 163905321 85391423 265752010 662015943 456874497 60307906 132304189 372201030 878999050 990662593 133991270 731860573 850311761 243923764 736364891 803150617 845766889 491463211 506419421 735927526 105587930 314326737 719575879 620028761 637637968 692778298 476378620 116144811 612680528 318367413 48772245 83818808 35454890 687385937 630656904 680232882 849835008 999410710 438969269 977675600 302171418 127061507 282732105 781509407 29674144 785836519 868490327 290124488 693342236 117325533 856054542 964044813 688942744 177094007 435524937 306631925 949395562 719990276 360295765 752927476 831858340 447588982 870340554 813669364 913338018 909880689 897038893 2708665 842146158 524091948 608152333 894881240 239127984 700437543 918983080 218628761 840351125 612001062 452479119 579677599 865682269 515200751 869937710 77034404 609551902 607095831 215839495 89984874 867958838 433044447 133483596 722832136 832939117 689540544 390312235 666106340 412376576 928149101 432601272 14388578 986030780 165674869 300582341 247979027 695388717 768694451 392038739 398283445 501650224 910488796 775178525 205394195 349404379 349288272 535792215 761222091 250665577 401340901 895699463 547674528 796935695 809497060 436342755 846227791 894050325 11430924 952391059 666139034 789786186 909010641 762661584 672225186 686791364 811320261 118463558 295206149 263035837 614653438 666884001 998694408 1487427 401005429 47264389 497466489 726034513 992513440 580914072 47880594 66487451 771709701 682835892 681788166 457906213 848453310 58510917 84605113 18409494 635845563 606756290 225629655 254164326 839463147 963790625 934524209 904808714 748174594 178789622 645570352 813543520 505324178 156319118 829949250 649950318 380640890 591071754 34852654 857842506 996049901 958985234 487381214 775940999 849901418 836417290 805990526 969007201 528908886 697903004 773197384 973979400 18413294 922476916 389794311 46965473 935130125 839864732 604785269 287932057 135090567 929375889 972843442 698882673 61190711 639313149 505806332 514669251 444054468 779113289 752910631 713578683 213093487 953569176 463649587 942765918 987359247 149725850 361613331 842195100 636676361 456334850 225790173 744414027 917545450 288616887 620816384 430338755 536364970 880040755 357956323 739363494 134850698 687466960 714481904 372163856 526084253 930835495 448892267 34870651 234618492 838534406 22464065 540954217 974631314 681015718 336113587 226290499 962145930 734278047 48558646 112408981 199818595 536937862 919114656 207452998 323428882 957857702 265682304 925946968 701399226 611176712 747780240 13588975 289100649 934950979 787521358 663029178 628722167 712504651 83359736 417797899 479058696 670989236 975943340 861979744 33194636 196116761 975958799 541237471 342134785 456409100 470965685 464738457 862628223 743746523 939005559 413149008 912295252 953257022 887822148 956283032 536823467 735980744 969723541 245613518 883989678 517143734 689475702 234881711 232159127 135903404 741625284 736065669 805224815 570708307 681585160 361521027 530829122 585290538 998749871 889916951 968791330 939618643 793049293 104085481 231673307 748926406 775402455 804992114 175828730 900768173 719543951 689878915 588451598 720500016 349822528 178679477 65502725 727871067 537561476 281808845 175773251 632905148 543902491 41602593 963486925 37390187 235377408 678528367 945559142 738459912 365252984 840775520 250725218 410057747 390938579 759225279 421539050 678725719 947155666 670989236 331169212 741307251 918980645 51901608 967441164 188853713 777631944 384913083 762936281 875433040 577337250 163133160 972467580 420596761 309715446 822891669 881987656 181360483 756349833 118010096 452974507 981976053 701161804 463901349 960951011 618392001 397879705 974850116 901582980 32171117 537967083 772261973 296013194 26044448 229890150 876981563 529142614 991269944 962777859 790919772 794314528 927679310 527133806 727443227 551945983 779123688 598262438 16455794 450154150 403574636 47591892 802261205 554127345 537431580 96676658 943234317 721419424 744885704 832199062 505328604 861642679 615733260 646378437 659970522 981719200 627841003 996976294 380000288 481279739 911228428 886661354 802501652 274767375 937455057 640893537 692520793 795474402 18382936 916575330 985481408 799446507 783647317 677789182 714472201 870244256 124523794 863841343 958329322 902546118 298028274 788395025 635617957 775090405 263178868 722930310 942927304 279710590 816739501 703102068 529806274 840255175 114456304 887348792 257556905 5857603 378627984 470262653 431835808 591602832 788275362 306602427 765432608 878906937 187055102 926240733 379562243 778640032 341870623 162326751 214671440 611971480 745248697 722699081 134599972 390530074 885077277 747847399 436757008 554260347 569839429 667053649 772263915 816377768 496739816 990665218 105697504 473102226 510366568 547408032 862607309 911914471 147675704 961929473 121486973 344063933 637926403 682164058 811657527 898880232 904680901 184448688 27646171 485010218 274688057 26647444 143666457 659625030 475511729 996812988 603976997 395435858 115860761 670989236 885876809 418104910 531841825 210681548 128872066 494479081 986417257 880076603 847663189 172279721 638202354 456384013 547482395 600491231 683628673 568136334 968862797 864491921 881129876 623740141 607313679 807624668 545572073 978637652 165433772 56452216 794226961 813328066 479867785 670989236 624507210 746242221 802618598 233487079 915296692 776481118 106459739 671222674 211516115 689958375 868550046 904980347 991201255 280265246 396355072 504713342 323597799 266589572 322078078 843370691 20176621 267652783 679058562 773383504 746200275 613623068 275056926 685217034 506189664 425049678 706273603 177539361 897279168 738932550 181475398 224875797 487833405 764000270 132450850 191093983 799346911 964187139 157276538 344578004 502243413 131782543 922895090 923321829 939895466 969600959 797050694 997719079 585091967 927804825 721176405 109838679 741546438 553702367 129910200 980112347 675921405 829964660 778951918 677996760 876008163 447006448 485776223 684345749 959011273 574820344 112855125 943687651 198255249 728581829 499742942 795214452 896450141 104642001 343054587 990238656 861732845 567239670 981454251 412925034 339353992 333092522 533837718 253011382 790157454 670989236 46939095 685967604 344830538 265933862 860650066 329545527 128363132 856377944 567939365 25282946 144343425 959691998 870026635 384013786 793900806 875428299 379913722 844669603 687043291 681619900 846260551 85165212 440900270 218915074 693106181 418556434 826641821 473258646 497052681 887102009 742475233 152429285 583436606 664911701 773046372 102696817 766865543 647469420 8717108 778141393 286957110 168236330 887555669 229760547 85623625 539457963 299868628 681668891 311749775 810478189 18203977 670989236 904640080 912745147 800467393 576707158 357504284 581351190 313730156 146122752 351066207 444671726 680300885 973987457 108568870 980756085 390383235 255929221 844168840 883172833 438495268 531811218 66144892 121098758 582665258 554770525 431566281 935868331 591431000 805429380 879459399 518933913 806746802 628547967 180406926 471815312 361905184 534948245 747773454 256315495 841898864 329494818 838996347 779818037 58036126 316960967 759323939 983897692 778079227 266541409 557365124 228044697 64238697 593447514 414399611 829836954 301664328 191119874 394855109 950426407 706208304 750010511 945508820 402619591 849320417 735846410 219687684 462447782 916844536 76514354 988069147 722983119 998877273 714821966 926420787 769048768 962072680 670989236 960716804 777980894 906160521 72496398 137875224 407299985 771317760 704638270 416876174 929685697 868860353 830118730 804116636 940509439 773266446 940708674 365622089 905348434 639840080 837474029 812547826 911084632 207327356 933197117 802485201 865788043 823994949 663782808 500070821 606468052 17888624 940488827 352989153 27121727 494885620 919876556 775530758 605690083 550704952 206050191 784163304 722359785 722519260 821352216 393258627 191786501 833274178 337838636 365499871 729069554 702951361 827624079 769309295 654690755 646351206 839170803 527380012 919308534 774511273 753180179 303312354 833842958 912242609 634881110 867280329 810149847 111764071 932315816 340845790 621086669 857891301 917737261 576384916 475258182 447138137 742797496 21550274 289904542 269567766 184852976 316488231 683133795 842009252 745457920 63294889 163698371 945224436 862276677 490114489 969731810 261173079 249421499 63643280 516513304 981906936 159392838 707707793 680093701 792149405 753624841 163832893 233168924 809377649 223927251 639822008 891870803 807876503 701522791 189558290 785452750 879427021 312688687 856053961 941020572 154585457 273778973 996177137 380410833 968410220 735404872 820787581 760583621 685301084 437146724 770508594 498536405 936683536 839201711 290935970 740647194 406270581 480877872 812780287 983155710 996799681 876961421 740428728 298937372 323990177 717771694 32746052 367992374 683097714 357070232 878365385 949398883 860714683 480239208 126371203 357420369 373851115 939560415 321498684 960165954 575608241 456221288 783293614 82876819 97065550 576402456 576921597 28388395 534913885 814542067 761339641 981558709 221850594 869686903 628130194 497000036 250445390 892833054 372670531 840701592 970196705 345033441 833046591 623359602 858135452 972140232 574237434 356507234 670989236 747190551 953851474 780984242 126987323 867275928 980042999 679386359 154978681 670989236 814910779 174356991 149992346 760625775 349284585 966475047 617606174 714088606 989922848 505524145 262363782 590276818 646241815 377015595 221685804 857827067 501818045 650677350 960644418 49661755 925535811 303355391 359730407 671035731 947440386 97848939 402747790 697428736 654983404 817876653 377072535 569753734 633653768 815990028 323775707 638463866 692585925 433569528 928430774 484927872 801917694 564832918 689682390 90570059 524953599 796303190 752516886 638274899 692857232 623823836 876856125 858043014 608009257 371094013 898652220 261664213 866148984 297502492 76576843 339774116 908946716 202427954 288914977 608667173 749735296 974804031 430780963 283878903 685223234 718112261 476405441 812645763 684557002 887334565 879143559 88726862 609918805 381906575 877135203 678975345 590231782 336365215 406674787 113076954 778896256 715511074 903362371 400958032 10983472 619231656 5710847 703095556 413393163 825175072 106420720 468559873 337780727 752777444 954173201 805974005 233738257 687413267 438747159 672593538 726165926 675124171 842104973 225563184 910977242 423502831 89172814 44524328 670989236 916316074 471330776 880237586 185157701 547537179 670989236 375991355 741355073 839288448 652952402 381167264 884708154 457179634 334369324 21767679 499061942 984017860 664680394 402321228 293326399 983254621 820514168 893588814 492074285 27899641 668049776 436191247 989274525 34467554 648676423 806841724 279335387 582096084 612737716 609429066 279006557 956812459 707891052 115715006 880674615 64892356 519146913 499562726 216336946 47935129 693061949 647259723 700196398 13104412 797389457 847961550 466077115 860509697 660169222 990867616 674208590 820247045 715105945 830245892 582462126 962211546 837347712 946609366 835898908 351887249 974003857 880671666 918143397 863184340 132541527 706780375 800640573 114089697 374920193 110523274 64572590 605504516 113183956 703963520 748784945 732855077 290465298 431550586 445625743 570670316 993749708 431723865 140789089 294828782 611502177 752452475 978650158 165046786 726064373 582167129 778198682 628512785 286138594 498933537 874081918 849724432 170777023 737508152 937860618 502893052 516066103 706515616 584301806 141932575 863956312 937289057 781557790 150773471 172562769 248718736 507531705 920646430 723926235 270095487 72647700 922044343 765885123 49250573 846171480 967619986 942383912 33795612 638371959 896617801 822479782 939338044 86419146 285471028 340839646 266995284 532679349 754351236 673268732 921455517 815706300 721330713 832111906 911343025 824644014 953019763 534391934 168995463 618215660 317333833 26742606 919331993 279798133 922744406 174531140 766750596 884362824 828801528 714286449 769252910 899637699 692283974 930158930 707607097 465078557 604930833 516727882 728329115 910846157 513477207 574565690 679285545 331469491 83557746 595259310 766923484 537031957 134972999 948279541 506971502 729037206 980556249 978137284 999171174 246731846 670989236 244023890 670989236 680130993 60833380 499111601 989754092 102355594 919879462 888902001 361357773 852397021 835760276 857036181 413660484 947185983 129019227 353335050 727577790 126200954 946679696 345821296 981111572 323275865 9714174 833449203 898608997 846083821 24765815 817298290 810918727 996408554 185406649 922198369 668637649 821158682 224540569 636097826 924379741 268090432 135512131 483964850 481911678 696116563 50683376 429100336 415011840 742149423 795485455 51312896 210214187 956112082 785839827 786563826 978217894 239732582 636824280 671934295 364871467 21710934 746328313 980523294 579208436 697787526 956451276 521363319 227933684 589968712 666078167 898314980 803793566 955011038 934792300 930653418 204003392 392729672 673384130 751402510 745940591 370751283 964395713 948787943 604198996 350799885 92045052 761679147 236301649 783165578 202838102 825421724 975036880 955548300 818454950 705372944 462420312 709393810 798597668 844110203 401622390 705967374 639485225 695776724 915113174 670989236 888047605 253820878 948138198 692932312 148315464 509081952 504761902 79173835 691456946 123244603 965716732 996323533 928432492 594705004 94881131 404714431 123169121 551680793 105663639 692179181 651308656 746570998 128614729 670989236 670989236 670989236 812470007 146238570 477269958 742770200 670336497 767107303 316997118 988160900 354485068 39483503 692642151 748303746 789284795 301257200 728265512 855012060 785550264 774258360 620416265 573239425 336200241 697702065 400779376 820085229 948507891 876623394 752491061 565566084 194664198 310295258 116133794 515302820 42913960 654274615 635823254 369177129 520412938 219673445 996097507 471389934 336982137 64448662 297221001 434631985 253149032 187746131 989184648 678728769 928923517 632621416 613808356 971616638 223775036 430335085 380737346 219371019 558665484 374663397 806564319 419613704 806900789 793615874 66459440 978040821 650600333 746949903 837015447 503629291 868535201 830047698 185461178 792508725 478117256 358831317 901005428 199830923 40410948 749574545 790889239 117338821 953387115 212687708 659761670 337327625 90917610 89533178 853151211 341785390 16341307 675061860 871704404 940817409 837727661 139996471 364740131 555419806 836590709 607092476 814396458 791945963 815798012 820351890 266888504 628879584 276325643 802426002 656995786 695816705 870988755 17653085 797253966 658544545 890818498 72694975 34318592 611457895 329160227 53703044 539604442 420500617 869320137 724689482 730971753 594553673 918016206 784041173 388542249 753398688 529428411 685608152 717636998 367102952 694187373 863033895 813001584 303531555 829539215 852124138 830041315 832142618 354351287 868031442 931982266 811510172 892372901 175043792 608204693 169559176 199609075 717716130 732147549 934909778 808990241 465479765 953168822 931975578 730664277 295661205 902329359 85972326 899876653 939611153 688523560 781804735 636895987 295317645 815677354 54655063 721603883 256231404 442119667 181041072 392153902 334975062 917795264 940399606 313286065 272969035 291873859 622164023 543526053 211659028 946585248 678655690 741218505 927786880 125367295 982994308 707612349 891788787 723904837 372109858 722755793 441672410 982219275 957262926 73083766 206169142 486905891 605779582 720566372 705949736 519644889 210060207 788772904 706184785 975340568 184256241 809683281 151210342 988569305 826212378 765826429 28912416 284504620 733328349 997764788 808852404 881136656 689307112 539491244 747558425 889471888 980567851 813722185 415459021 140161072 228474045 495012091 663413077 654225260 682079399 326779131 799020558 887500246 862993692 206969416 557674327 885771215 368288593 373238981 710740876 794544211 996383635 680796160 524029388 832773745 664997679 430818722 522363657 715382737 233544494 317988115 300047743 85347272 538556601 673086702 539347875 717869239 107320628 772130724 500012567 492602186 296278313 906678624 103822313 851725094 661239103 244229278 938028017 986617159 108341538 739455024 991935159 773784921 259878824 970716249 278789361 618245704 587431891 752738490 88019269 411813280 723637573 962657246 840568373 514002793 567581713 250262282 176553960 281724084 980307849 222067799 156049049 127499435 269980480 574458420 995702358 293736621 937686715 920389176 995118816 473672118 703729907 670989236 422017292 52443677 622213131 13043059 779937306 317653169 929264489 995882358 285055495 947383327 745972360 132893114 40043434 210969922 369992488 844443746 842040930 629022309 229078294 177415235 11140060 982271792 306463056 345287516 719193362 703831738 688763950 235865544 269520309 727737968 482419553 486229448 275418119 894508512 261501485 483699054 52702878 562179978 132281659 864042234 16116792 510608095 797234655 131227904 759816148 95968685 943517136 551156114 180228009 379607447 771961866 93818632 852354135 663455063 851883189 738956441 873271725 972291107 24372923 166017722 250086608 687054488 78786162 826281127 351849723 781087502 100341191 738478193 815647299 673843914 997801815 221294473 281678353 409283315 539135010 739478468 271994619 108177042 997609577 711892573 577884824 988301977 664842558 703946358 98588953 901847256 467346824 482148335 780687186 769901489 616274051 114450269 90621110 41627107 89493504 464226370 222405548 904071059 839861287 954166734 442042743 215215785 371847390 662680761 307574047 34570953 729790620 805868149 462553219 453653517 501588728 868690494 988643483 750550205 94838291 400558028 902544156 314199953 350423382 498744211 696805405 811752155 792421586 744335385 544707588 257483497 858541146 736543508 120532612 944458298 571298019 44854870 735601858 922132745 401135671 813613829 628325277 727348002 318195343 83476146 919484893 696765612 221745604 915425326 976208379 618935777 104008254 922966443 745517453 448343152 135159478 844933500 548224932 716822542 952323051 68307269 731489615 230644931 536431345 960812475 679785086 147125449 755834025 375394766 695407852 840926592 674700389 24789942 701316363 940532863 721959812 902357364 237620811 17430080 282144163 108756712 473291639 555633340 594451803 888275978 160196715 906428081 328693385 769456383 568069268 164688158 897238553 101862406 705787004 520505628 411763346 676620167 6157374 670989236 252824960 688039067 72527233 711713667 976986755 756105161 355828189 789483765 324344674 985999837 664701752 833180505 676892843 719880562 491331715 383775836 51707412 588307284 692731764 668209095 586621641 953369807 961306460 703481646 487733668 670989236 547416394 309303117 747367716 401712270 311364258 766698370 573916622 834232419 677786579 862993845 932137677 932285610 70859936 218573634 939137111 803581825 670989236 79647908 829110107 876202357 632175819 887790517 157371180 669780108 791647513 621286426 24005349 748337324 746960573 474118040 20805401 541463748 994859180 442144177 670989236 16565242 815753141 812761032 767822182 972029419 768836304 162587180 341495909 842840635 395138977 850062635 575149764 826354987 411717894 950546824 397095651 313343253 658608405 740961003 642386418 546304877 786615939 692933069 605431705 729490294 826084356 194652801 926709462 775403526 981739207 855449439 195558463 702476273 895758139 422725060 48518921 728362394 756628201 538082874 728879402 948893800 705156790 681744279 912298151 789163679 952812010 942712653 198598599 339834412 818725713 689322183 572428827 772561862 317081060 116636757 178204690 756181738 413692793 478011125 54650649 978989020 689170953 843000402 129044463 892987873 947159324 747103474 457016024 307937025 261755311 957383454 960784081 274264204 762117482 416101033 706536034 834120244 653868895 393645580 124878072 795980457 701124641 816606059 926329203 795560579 141015298 62422125 9234067 466892311 186886428 738512060 888779585 674134981 373157862 940775190 23435568 286647031 820467264 601880167 717451195 63457113 597312181 636654551 336911646 760894346 605663155 701040834 762442601 610366272 294412695 368979344 591055253 943718608 987042723 360240804 878704158 877135722 756978667 282682003 730621467 61382943 768984771 411334761 307905790 660478604 676459595 603604738 698836239 643830193 962141666 333854797 643171001 377169482 848446333 898469814 235378726 269716302 665097619 914486644 487623447 118094728 260313780 927399184 797366634 965872573 391484327 474531736 600001099 671399142 826849986 972138025 194097006 636318117 80834939 633079667 58826076 129952584 395620189 750018458 834601903 939027439 315818393 716771622 929701460 891782356 226497439 815725832 314453273 933128632 818654923 405546221 438798738 912302908 677266050 475428993 916492362 169332124 793891042 556975647 966647295 991550180 207645436 629802111 158149734 618828988 322017715 346819776 760603766 452075207 827668234 202776065 761047593 74207140 976513190 753043490 26548612 393270749 742559772 961355352 255214853 24953398 67088702 873863796 670989236 878162432 672275732 334867490 792178808 701930705 705933105 708157722 924700102 86222204 857847032 360698033 950419545 731018793 879489968 808811197 799250993 905833800 593405765 776467662 618343382 670989236 61096886 899375071 431893429 122052514 220425186 869504203 674020635 533699522 395726902 784878558 641344360 228520243 693827556 529695274 503451528 973687328 62897345 830570919 211409299 893764496 925463374 661781637 796722299 886808357 459953917 325808966 709142775 474040497 662538277 687857805 945936085 757900410 801250448 776635769 102155631 733038964 74256004 897624620 808873777 554209573 834203755 365112645 403552655 561986633 205229751 993796043 610506142 100085785 153426619 841206397 313189619 922171284 92599659 788568018 678450881 74474097 835553436 952578362 767450111 532164970 783587064 428077844 293717401 891516224 357212889 923330014 436195194 735943932 399295460 35328447 31782012 876184902 668211497 603647649 683776842 836612897 706332362 285869635 267936797 795024622 615023614 138216029 342714101 741571756 988899821 763446662 938984695 806680792 408732639 964972868 998884389 379859047 888108997 10831981 597648771 30790297 679412633 812047610 73156590 903659811 670989236 956027078 902759789 271565046 869853070 979210674 390976782 273866012 719243784 344852586 891205873 874489318 364815326 684810692 896334234 944648760 320982461 518321124 650159280 882632192 661205033 935789249 893691462 856572946 755842048 944819678 775826499 564333699 243703299 618624955 186653468 90120490 750908689 19936587 130974689 965637792 459335589 670989236 565970094 780600861 670989236 785153657 759818876 685699331 361861730 491316686 393971739 617819587 476071305 731428770 195845470 983376822 674332503 464171839 262730153 815871017 38196134 341500711 659914846 522811582 968800139 15308707 44723137 224121335 4821246 817928457 98690749 811971465 801304464 438622476 14700948 815291084 159458265 670989236 298550654 868436237 761144659 584653413 991444472 193409758 608485798 729797832 67037599 816161512 958442028 450517326 470814667 940807110 53344786 909830856 78006345 831596452 68836711 339784127 996990706 609751427 446394519 699793676 75405995 747907177 811372717 878755544 212660167 244416005 636825813 18707191 37824787 366392900 670989236 11245976 810156596 767449497 93339350 279510952 987379101 31821717 572787776 802756713 539132228 804110826 318277970 500255643 933203047 393085300 468598204 20595919 672923309 809903118 185113392 687653941 974845788 15803829 88091892 590513707 453502938 813314296 467871840 850530040 497857643 58353102 902147043 112309512 975595849 766367307 799207783 863215680 746971824 948334434 605860504 633159487 24355456 986100832 331837070 332896798 665718162 957849053 662527454 906300950 943985029 844689240 998304055 332885258 207172126 148219501 973452512 702671809 284254708 577382335 593917004 981991186 750300100 864548870 737439111 315289533 780999685 71609715 241836697 326609950 204516202 844312972 502651807 475931872 548140481 417557229 900019365 43699920 239268344 365786683 971401874 951325127 820640629 736532255 702140400 299101202 478534598 659457427 794848889 696069110 709344675 121187443 859535394 991475006 266971560 984703179 458961591 97996702 543544868 924534847 447069669 769001419 746791715 868591364 310382829 656656294 136379288 318052579 820728578 83266974 764706425 704973038 352323003 279454680 633165310 543363136 40942121 771899790 426789632 507674821 557775087 14065272 416387570 974237975 143073958 440804781 852089807 158006062 993214502 952255742 776481753 627603299 734122795 102083411 912310206 35479276 841533907 139751734 286427549 520963367 995666264 396456315 178285883 411387658 504227677 710658298 15614954 516966919 932802554 198869667 275432347 412066901 728522648 436852811 63443297 213910351 937282039 770057520 830820040 787092016 731594174 965101097 319108976 670989236 942706819 683523360 117984011 866572844 895983568 248101113 826883395 749549917 2144839 431414466 428195097 491074441 256717072 345547490 773525401 515373656 791219410 69837615 191309398 944502383 981723349 286364557 884166999 801732555 90074147 42313836 694139231 749156994 348358287 841552145 346566283 937737683 954928794 492332763 440180447 957744434 378974641 830007284 874590722 947628430 172690221 184588519 739745313 976179073 404340942 768340427 763192928 941252301 414095427 30917653 814999698 988622521 839331336 838907900 583754485 439459954 67310889 881845172 818653110 769743901 218486301 889319587 268167548 892371103 953292894 662766431 382846866 685208296 470383567 862163991 676703594 199702928 719885390 229368644 967532391 495675366 689373525 710674798 960356263 709245234 864838128 618012708 715758111 830451549 552674201 736132321 749391901 212293440 114142425 771339176 898804042 373048348 883967320 747552252 728432390 635812279 606012481 679746437 96919115 953951138 491802968 840489228 931694330 787433278 83857189 35617585 540123379 718807826 353345479 159225116 188158640 921859349 744006797 739653537 824162492 876112066 213726232 548004430 729738557 943840624 459530666 430648558 95478765 678891727 796944694 727893309 225561816 34252450 745200287 679710060 906619950 618602335 866579542 359265025 811895940 375095671 761452941 853826431 30699321 853771181 181243772 409605498 469579001 177606945 31672503 279798933 675121311 825601404 365989911 267917366 811964210 561713143 475538355 504625371 876398944 742233584 877970563 546002566 903766076 758794132 734896662 280104041 191112357 382613434 911754752 218508403 670989236 371790458 533124306 987271043 199550661 751352008 319363049 773008960 67514441 479981714 107846200 490637942 730238696 932649397 423085414 537321826 773647854 888008543 900942767 225146137 796033205 720360836 835631077 179808295 497664523 74547965 252459995 74482220 658488611 815013397 26521877 919438917 456326788 671451474 772860514 777803307 477581887 126593615 642854047 770483920 524915863 861162345 628487184 275436504 902084784 297515798 291802971 467094450 659203676 443793934 647545911 22556309 667472317 855172842 717742418 550342567 306683105 856248062 303448853 148436330 727368803 388095071 26069680 73050294 727902158 839430500 542364122 111584301 898649651 971460264 771745942 488141998 499609224 21292907 928867485 957177665 772939603 752177573 155469491 768815522 969953150 852641505 279359707 996641021 689636037 605951827 173701772 328749969 906316456 931438651 510378638 283067986 718257962 525191551 610125625 341058607 873714636 516335722 660137280 307314964 11298766 172687551 674235694 887171442 785890599 667199210 732512821 137529012 831118656 486644072 980133399 986401979 416365599 682295580 670989236 147196295 744479549 719891527 365156221 477248635 806187048 686504079 892430656 524910879 327393208 283407423 500778826 965051172 971460342 991754038 579738709 508092058 967321510 65189315 319509848 711119172 964108777 546929115 790166833 248755877 889758039 39166144 814000617 936079393 325824985 670989236 953676469 720581712 778384221 212784240 300858071 938139346 751279024 106476917 907666763 362673238 911731049 958053892 65579654 194876649 880840244 379121837 918298849 654987148 355623174 804618079 441554474 478701293 498225110 893208923 12726445 976490519 371651725 676420628 444667826 996822022 25177853 905168340 839107186 199130341 634766177 683516052 114343244 670989236 794300016 722000022 127079762 890782998 378734779 274690424 800420537 998443542 95625494 774563553 215535359 850869643 206481223 895405604 81406046 796598396 363871623 651888175 804226617 507045207 528400960 868668372 552362126 355134596 122129538 444226938 910747893 148438700 373749723 900847223 996731725 399951392 700070657 893404731 836161666 941833464 487254031 264553321 421049594 629012003 707221279 988416515 940584432 712785849 645490913 26871206 940421462 400351443 926078582 133059879 926242191 743370483 978223087 94942613 599009139 851016065 598081767 198858417 48950658 896598923 780706975 464834566 792159837 492514622 589947715 697842206 883931240 312887486 526727437 708933464 786164115 882828003 670989236 922887085 452139038 840952157 536379177 72876704 680128924 178441030 724005895 448804849 400652240 772327535 772586783 350125810 94431872 759777004 792901703 192564595 144676635 59681256 771166428 951417336 349432575 503602157 436652599 755552091 609042704 356251582 990823875 470712920 920636573 493685649 738011504 522965335 71884781 219418307 769865029 733660032 159817958 916737356 843718324 381252529 27909990 780615933 286935803 666391956 693969454 724648746 493630591 811378998 868561481 662995912 245062332 279813655 665296602 953651258 818532367 232685224 684956678 131695311 126639786 506775557 815792771 891226554 854729884 949238713 61071608 558335527 101964577 753353689 727126884 934550443 682967932 205312208 642958905 398928885 752884331 197185026 868356316 136603028 656151924 130514173 772644923 778651568 801551768 2471991 816982869 949665529 670989236 232303089 74015776 670989236 544487387 645784681 857993436 122154084 928317888 666315966 936241613 389461592 472516985 377897835 965701337 739624271 884802524 674594347 180649017 752788153 376546624 524504333 35677193 580451672 391140715 684069683 449664175 961886644 718727810 8059796 11462742 909921926 273580919 721145699 76039557 977474367 352289948 377757785 824065457 766346349 410087509 162954376 794008756 869981055 813121730 783905573 355282275 788689012 113111801 966417183 670989236 865779081 877598112 742149161 219237921 670989236 225458636 616525048 622152186 866050414 273281471 640650998 127560863 682189327 300657546 32747466 946896734 954959186 31369895 270972347 181041466 874100063 428702302 690706992 287155810 360733122 927766008 181885236 889108513 621147055 990183191 340348805 101967097 42928925 48617110 155825063 707453351 137109680 626937762 506972593 112532287 715537079 201530247 811351421 914957655 865463337 860268348 938903564 948677739 292611394 967929086 391990784 824537762 755162422 840133239 915158051 742532418 131947955 692953281 670989236 68967931 624937391 988255730 728652440 805269568 395877700 438809497 978787424 383774943 439224675 279846237 676855978 609870968 925964294 797674999 506210412 686922098 684221714 465331444 510924888 890481546 381032508 142678531 905572271 645501724 718739562 12088347 190276147 138777780 187673526 757624004 69569507 690143357 953928659 716507269 206559656 430531435 838325475 884061568 830899897 772393054 445203526 972835994 793824213 841811484 779429193 614434524 988021497 491547547 932235933 739738394 605757262 428482361 885566817 740241740 175293604 650198732 282062131 54589262 428591720 733732587 647591244 882635185 842396124 670989236 232748528 887056891 459340603 624067318 1627369 350851148 638478202 914026183 703868624 248475047 86296457 792413080 751634985 227454404 127295198 789597859 391149314 877191614 478891032 108359838 303811658 786059418 815136110 190304468 954521187 470372846 481350771 881478183 91349950 792100731 904531310 782710519 405768116 994163505 3290462 952290450 871192649 317930161 274876995 397505881 740037014 998410897 982021496 792047048 335871257 50999469 826352870 889534069 755816768 167194911 64565939 449474796 490619657 963025756 123601111 809624972 820440854 124971851 878708692 776260590 766103443 526142702 671584699 482185860 897026507 911346539 762379059 765612494 927767679 738740239 930097998 178174302 367786833 227569308 832708138 750213255 331533424 974573585 812644059 652987470 686127450 921080513 575852669 629866730 871363622 809645154 683618688 907159871 905529085 812028214 731963894 755949888 198630031 986628351 563715689 848690406 357974961 663207598 792595995 737223357 783629961 498562272 694917023 783752442 556385168 693234692 943689388 751464687 546287077 530509020 412058060 426861684 624463869 774034273 772777242 914763264 704203267 825118998 930856970 776136499 934170691 746367515 834620372 934769872 167484579 253913236 494682980 219282002 828923320 206353983 724441025 179962178 893411849 819162447 283814305 839938087 598904888 163336126 576330983 970060682 149352917 951716611 235199251 263663402 655769494 704728822 263527664 359370538 737151127 900122324 789136123 906628596 133710369 408141349 145535090 714959071 922569629 221289587 699677706 184718317 798278632 620170525 213339272 242730283 111260860 835821683 602557979 570421129 730653972 408196440 811762516 893559522 524692457 670989236 249932336 682772526 926690736 812040474 816631101 755304597 143143308 375140599 96280454 810581453 195961757 70585411 512761835 309662881 840390887 503827607 327659298 135377427 713298565 877889813 826119980 494829372 713451845 248814697 290244300 150909605 550076696 576825619 362937165 873654443 806492015 376602250 571181833 222388899 833175367 939373793 112946801 712079129 755833347 364261484 342493815 674666154 133227889 12807250 291231294 5654000 850551557 129405783 726036584 915474517 404413764 103707909 741584022 701121189 304169812 958139480 361661373 566653183 49372005 176588406 76759052 626045119 994860498 864368539 525513377 282173664 209799141 353793546 793080011 895211341 952541280 616252019 816561655 989426512 831295588 581463411 845900259 944323125 990378938 882895904 808641031 82017981 780396922 676591608 952579575 708100574 474863947 678455740 806428666 357683186 628365283 385144531 651069714 767828364 991839404 903381327 670989236 76692753 670989236 616191347 997940989 65925253 375012903 858348644 627560138 842962570 304694867 752415132 225197588 938172212 22924839 897587719 816671153 645053507 835767268 432940978 476293215 736929378 567784619 563747730 415028322 430525044 870079395 715171583 379214989 301719100 912514952 462700158 113033118 284904800 932063271 811558465 725054539 605203867 851983589 895318757 991367529 917042075 900255286 488800180 195549140 854072776 742619431 663466058 703961710 971344182 431667387 418304230 383877891 835860950 439030062 233162956 686748211 868775581 14578678 715000624 471884504 710863454 773753774 361276736 960973400 639383137 82301706 487131513 544067599 327003979 694154291 96605688 675810991 790745887 559659598 653311182 126936568 918777428 786079893 863895054 734415382 430479374 582995271 743245479 869847164 450035115 379512971 957967898 973394039 871267454 736373992 759161549 171629808 750143878 1302079 37323701 178244416 857710783 515705545 42621822 739346910 752358653 981941201 733765683 539068424 206002444 705225171 881339624 845639097 78264781 486419624 974210985 119827757 806365479 884406493 817746721 732943483 525572832 926667007 778687913 308416730 881945211 28425754 177592227 415813561 192214914 889395987 988336734 673636642 178243225 301337943 415285038 969752321 817921459 597411092 880074062 297288076 497632986 941088579 117406977 850623092 379846253 861355734 670989236 34665898 369924927 767090709 271675614 134696701 310496425 110285594 977655454 872944303 28984376 910135621 513850113 95029678 917147566 805192415 771763123 877556751 638510771 379826168 85306859 134476514 596622383 783520796 774497833 612585107 149547666 347991798 122216448 983757108 688568512 217078034 574354630 878721284 870628133 893187286 597305010 737422657 639610842 262441105 56526906 947557494 476969048 514423842 118359316 163031858 64104580 353744187 7679527 190357442 841728040 989782180 460863458 114857037 979792140 698100111 37792714 424203073 661945318 633033214 930847370 947679214 830337072 960529399 301241521 123641987 896764426 884106325 437823340 665715652 213774972 467439112 316948897 278445831 384254265 791722068 753278288 284099009 497774341 252928872 523748754 686024829 693219443 157616001 382459634 760203551 987884644 761246686 926811545 611357339 134314204 913642628 572767118 181242226 305739552 74942845 251315817 931292064 86754420 298765903 572658568 268861841 668120351 465172519 359663737 323575375 826156805 22895998 670989236 527145256 850812230 689726938 232624191 683308290 74312002 335107998 264897703 989119929 670989236 604433940 591268411 829161115 923061767 458768959 514521864 600729748 945843932 367093726 541091563 670989236 699641954 670989236 675507897 580468074 622866571 410757534 688368793 202095657 548332902 15590030 429859028 643540495 697381888 361471414 433579709 603113062 835853566 208536864 710771666 955285336 989042803 940723980 97891607 981490795 933876527 630454480 204609646 670989236 536707855 973593802 316845495 447477287 729358806 899866735 690910575 996456127 304892240 620033506 883283214 678895440 744695771 506586551 26803818 823886450 144596052 614199298 877915979 487034837 545837690 965873895 802435888 62287755 743950234 749715095 701692057 607676447 727776258 173066099 978339323 998163278 471732936 130107544 957228965 843730547 719809254 151852809 758242397 820887635 249480207 732192325 843827657 953078748 192779778 907387412 95127218 985438196 746263751 433991894 605457270 708115815 37090913 16604634 199847627 285679485 582541737 785094568 186827881 51903468 901103520 499422381 836074454 734847505 779577691 18213994 274855395 412014661 773944184 751380419 229843281 632693257 337852301 287191170 522740732 768648921 737024564 335517741 226021038 719622306 170552534 806995101 670989236 951314368 151220605 805961851 866430858 680304333 892238062 854617413 860235714 490140262 727111131 732480294 782122321 447607001 515349627 409387439 681579572 896010472 882455877 235738175 632399431 760241670 912847344 603251016 592315888 192231422 485968412 681081648 765057106 675601363 547100529 742320387 781959590 699040657 836543272 11580984 255600482 917150904 803236805 670989236 360991577 98737086 149984735 45002235 825478811 780861192 513473865 161354015 729143882 909490962 202715631 764144064 859517102 820614814 478177521 372452494 561722964 445321024 118412662 806677975 333974641 968943908 747852581 790506429 417390913 501360064 885924189 797023682 958795217 186260341 604407146 421596165 734548579 977639251 744005854 178916215 11071365 336551626 415117124 731197349 958531180 808051057 634535814 354596555 906420204 980469946 78788303 965765798 676099681 209816027 612650145 733580763 956687553 307292852 960336624 20014088 950737881 555242057 761357431 793646474 242523539 936607037 610127692 148472811 557326371 725562329 930731914 263055816 991845522 917416263 880843484 728080717 420160844 413028856 768414221 671368906 609038132 877335655 457121395 743299700 235952986 637017768 510692722 750863795 14606104 848789249 608129535 917056294 912767229 7616510 845877030 356543987 963414207 670989236 145325672 948491456 860059743 500486663 435281179 949456695 85745427 715270373 330919658 965477534 443007935 345469597 813136161 970912697 90314739 386238621 249476384 645707277 824976880 52303758 123366097 824254380 262469186 487801048 479384153 678657083 827932134 779813026 957540253 779098481 866221961 674799073 162736852 998696079 625698936 425589186 34381998 326023781 73086542 989602406 417699938 78447950 874136099 582222855 104865311 332034569 198821790 108098279 748095851 815288900 92528293 787116740 977973228 716925717 218637380 428343307 436838420 957512155 682093968 215579042 905118446 900089514 546686094 797698997 656790758 43383255 947137759 643037036 878338179 7495932 818383864 911359149 898716251 857240944 227184465 260923499 519619450 871815828 402924716 719197529 829688572 829122867 713943149 816434740 671441704 264971484 878441086 302839157 916867679 130776085 942779199 973648889 219587032 843340834 854658225 890812181 319000729 871239503 926831701 443106571 684326717 975124404 53503561 680834016 795053872 769201193 635121938 776732891 648219414 977389000 951274179 989332652 990923973 22902336 787306223 147345020 631102735 538947065 986176350 979058301 725022111 812244363 628048466 853183109 980355 255445036 306087372 102946156 743359838 508731519 723720961 836355443 789985142 797096958 895521939 836630696 72204519 907160799 922231125 47038801 381019663 210312053 77403734 766199332 806114011 288649972 687964086 975216112 974114923 615153557 717672840 691903103 993014070 210260091 708510532 930006610 943454205 880473172 792143699 126339540 302321838 367264291 447495114 409221878 601815159 950911841 134559384 670989236 54901844 204549641 820450341 721252648 134820883 579757529 155767217 578350461 133759373 730308615 491157432 941150449 670563948 708294619 998804277 897067448 262312775 290886355 249643487 295896644 54819328 483205890 271165468 625022255 722214999 918819666 720356272 698939755 330124936 105041438 677064465 90369056 654266571 201075161 917567657 856235620 39860375 380648912 812380318 359901261 674680630 976277695 987500874 895777405 920648837 808486688 701048940 848374488 892654806 302276362 368711667 426070278 514046749 706025194 140796408 213404410 866976611 976289952 780651275 561652041 225604713 842053662 828717072 122718844 934697767 965839252 631995580 302798278 848912986 102643721 565672811 268707148 920692623 104566878 263166282 768689070 995407467 258573279 739381170 996576645 985213485 626287782 787919617 824374980 584749560 587861962 419247413 724873262 263668154 262150405 893572511 576486117 828905885 814108228 200215036 648443883 749816458 387385767 58861830 477087254 800067381 52750640 399414652 528057021 886005153 944809512 949949962 636818749 951899449 155423479 979852669 184887157 564973313 926514758 724337144 797627432 838596371 243790202 304416589 13407560 308978966 131061169 199348692 670989236 443792290 764256650 771771043 146819367 979644632 868883954 670989236 988531643 800490504 959583074 825869497 94993309 571579336 437126581 878643244 704704121 827369735 305598572 647619082 826599523 611172616 219613289 594954961 202554157 536635304 766324169 775136431 131610320 108531891 513533706 722155082 460165857 297549535 958504051 917466556 479863318 438913909 912644255 354925188 832571608 813523959 76212851 281910376 661748287 74652881 38163479 19219763 897121364 982500233 580973221 201365419 949585627 82213188 678801227 886004129 855609087 715511982 696092366 596702045 889537644 206328547 559843665 710034209 127509820 933791846 306091739 731116555 748130250 790804583 891064754 227315209 320021143 670989236 736828232 179686519 734816856 717808643 723538800 505388947 720058943 21998848 334990083 348387354 754603288 482434901 142239245 439507085 923894606 577000486 906099045 386519261 947899491 18921999 348470743 337574972 905196532 804434621 745676745 256149412 908172720 700837226 579783268 44205931 228393812 692662358 902455059 544351332 886215911 415724071 622491641 873468867 728767827 600080799 430458055 932075678 108648621 104193869 914030163 706291394 616331958 788989262 307318197 371176572 895846251 736342931 865292179 228708749 954228116 716349857 968189131 528584137 933728852 481418622 797790275 523006055 337509389 159493884 696068587 670989236 387940469 691807710 996917643 918895237 777942112 385181410 423822780 536938587 432287203 973672436 164287192 655560738 16494537 992873114 17552259 916912147 108325344 731115344 917160663 787205279 516088932 896281092 846837917 280309175 824624416 283825128 899639278 645500286 122639034 843351364 676901405 807568034 31547499 367291755 260136633 308021994 989048193 902644854 788758783 516043389 916588574 918560420 994657779 819363429 957351973 114330703 747110551 272591905 592379365 742761868 984400312 732085491 199470039 735593787 774631282 140563208 899077176 795350233 655810834 664602746 146066498 929718990 688753036 146108610 745044174 968569825 253700952 88542146 743340865 297500547 965487221 499573440 109374931 781666434 670989236 959263339 935975114 4193885 790286206 244799715 778100496 769155235 42295679 563226920 303060536 729687461 878556306 616939275 816653504 40077211 757521594 858790978 689550337 861739207 976281248 729829218 374769377 993969443 945652764 792411620 196173650 685192259 972486709 868784520 391727329 51368646 811041169 952546779 700078907 872775937 783655204 667548556 229543028 844728105 988911155 786840348 706372488 618083950 108524998 274131723 995183088 573745259 979581441 900486055 434197611 320512662 53218000 949094491 740179263 617503781 711654278 524961448 702631633 109661269 442035921 670989236 712540497 780036556 598713912 772969652 756017173 603839534 389077739 868645874 858507952 681780263 852569987 860381381 610634878 787167335 711073500 435052014 573241841 87199541 584245417 863782767 884798343 671579953 299762706 743192682 820668835 758214206 368033730 380610973 247055932 446319496 350495002 430778218 956320699 949832930 999824368 999843016 483906453 747371622 448950711 221899581 614309300 214434163 221357380 122051273 359689643 504895098 400697716 64596251 337624052 455432658 967339964 748912600 228177873 453264897 789148548 670989236 635994812 698478928 742802200 699275485 829032065 140319774 927643728 202024293 495454193 852527447 933995893 747204199 739701510 310811244 431787777 950453154 863332933 974122546 467439001 621009932 824823611 345614253 205592745 784471792 872527256 980539076 788566894 302992080 480197166 448704993 542173 523599102 57556124 818439006 503375800 437497142 884015070 414960724 915877156 772542708 243390033 841810950 537367255 688661319 827936304 149589763 205805245 39952662 882135281 120221794 698027894 827595687 927237712 813149582 958587293 989699723 116127832 75292267 56858218 815632315 252034378 259106338 622794936 694371881 312393946 920916584 542157935 760561836 261026362 679847452 947574583 518618348 569354656 943021647 2041489 724449087 681353877 236361278 81019977 332812529 588355792 749873466 821184556 767490328 954093206 256421391 666148982 918970674 349426511 920882981 297009413 670989236 26338820 172254521 717862109 784926483 65216658 682761245 900167060 940503345 943192733 940124379 895345104 386474660 670989236 817027456 989324052 946451935 290379887 208134680 545284958 338089774 771542869 811780356 834891397 76357788 27537748 220022097 710459051 865416119 593847688 840364128 706086944 656237459 695513896 741763393 309424262 472763174 841423353 480052863 947986291 864559071 759002832 804541996 258564754 471307914 131739917 281216492 681654690 224595897 704682984 657184172 228521666 346098902 674488643 757913453 521348100 547074921 229365600 938687869 96119077 791977441 630282047 162199298 726350460 252039618 840018730 990282807 371737835 445208618 881321094 773825060 24510692 631312872 687701717 915277807 148798481 245978547 831449857 749160822 379677109 595855455 753157593 860883563 285969639 598536766 839541069 810111761 985455168 380287721 925806572 915344322 732403553 184163357 670989236 569968994 848445368 977259460 762158754 269078594 768368701 907899520 646971228 339042555 766952802 629443873 202479255 962301562 670989236 887480722 417359115 59176084 499900404 46575467 895471884 932065541 956976013 955848062 575197362 720877500 817066349 781572465 266261685 703221854 981492492 731639719 605871325 653093298 13741917 684800910 211029477 784639462 856945894 127226545 445404901 37072474 828445535 267453968 885916720 471644857 915695705 964589001 624109330 126381982 60524970 62106166 161871631 753911555 854313922 684778443 883687387 673632991 929396961 192125118 664982363 640014164 813026786 41732542 421283683 727445831 447420437 430110936 827370869 273387930 720324709 670989236 928390379 929225321 436240247 380541457 29573489 38540022 129317728 474097011 236866510 236706187 20497083 863278024 687612465 985287971 20604012 92764136 781927612 782886367 931631421 428388077 945039903 997721207 348241713 163900554 800246779 59560167 718920267 642016614 851937215 562843319 839389300 147562175 737744882 113633006 135765795 833191232 711446577 793522349 689636528 875979441 254793174 611760008 154718495 223873194 793857301 291138944 768539558 959030691 628835964 609479183 942870221 727239621 880736471 29277780 823584516 711430342 879368860 90766328 596095421 452296927 678815620 991759330 121389578 658830521 973254528 397533735 861590758 617050287 616447721 855113471 859286152 176730150 893378205 888775730 796308932 121086002 429276598 858135545 875800187 459782290 134241429 888404421 769218388 920641195 791789806 801941088 670989236 944947876 963528745 39792646 854663481 750696577 589972531 290901834 784847526 904182826 680470598 780410945 579553241 843897989 485686734 461517854 785962230 984697472 998828929 407837243 705758028 873953224 150819915 106125399 768460645 873183937 331354384 835028061 796056125 330133319 406900806 589553982 987573163 828843849 688034982 870102805 269126993 297317243 623392237 748162601 673364574 231504968 905314517 832848345 38283356 882601994 107651101 270091145 715573717 889090966 436974699 842591611 875232147 945811234 868696081 881627790 201924723 872702313 756241092 935366407 347341822 8133934 949588937 776599055 256430337 703804649 964002575 456939774 716549607 366213180 761904026 735677531 998347470 835300390 698328529 788862187 745545903 808979485 683991193 944002545 885788284 950684268 755775610 299940459 601737625 666929786 598494941 815924458 534546640 863032089 998767573 683386973 897017130 230986374 946449753 950510713 945613887 406675188 894275847 296722623 930126519 845950665 53126157 923314476 954161226 988006167 675659933 440846160 885677802 125614730 187516352 997182106 508384452 66112097 35843090 865111723 670989236 885646434 847425677 277427118 384756121 252595753 35992808 453663079 634191468 355423721 932781445 989372328 699611146 739008052 325048865 693279929 257495997 460346161 591805533 949206653 803932662 97730212 717802426 58921324 145334471 260821723 866962737 552470041 943760908 468912170 684831984 677832140 856403113 670989236 372922057 239927919 364930980 571896227 247243488 974673367 734663137 992124353 816502831 305542865 624929981 705426634 885161444 225435834 877069746 698126772 663094548 102236267 147966659 814629217 190826197 670989236 585969135 637826516 882868140 720343579 273741973 707709712 984299488 751368614 835906188 933410996 574953249 959052171 895121046 380075739 678279936 136430025 999084646 584009593 682597662 888550047 748755521 959691120 963012305 354905349 44168641 883354491 323471862 398785183 673184731 850045517 488919472 790721966 710953453 781840969 862819608 819339645 246068260 690149184 201206225 582161121 572740422 842461050 168653255 706940142 875580299 772426700 878442409 918447989 903806355 261375169 646928355 926090090 425604367 39445804 38711034 817827797 336973595 825303100 660512120 927306302 286477293 706599312 840335719 100620347 227255032 339624609 64961963 658215076 693419156 5343350 546242155 650084607 691085901 538049948 651516036 832878642 972669885 670989236 348320702 301652436 597405243 823366304 703827699 664482261 39962951 666046628 817422987 162599218 626115497 155133522 978668177 830334016 839546021 938447625 799637715 24806064 199088316 946014805 514531920 756178489 605241843 958082328 56041695 770583043 506575614 846619841 348412759 319784556 986389092 735069915 393630185 344925267 790788932 732311451 867213097 81479157 891446789 406448220 848766213 651028246 197453103 766503919 672681509 178396604 823425989 613962027 952637518 421222133 898070563 663179740 957493265 982086230 445662023 186523886 914997814 416181602 892522805 195107844 944660628 464265999 848593490 44387705 270466546 987679943 594889311 99390682 801353845 438792928 652606592 901723111 710418540 985238807 441440091 442848176 819135543 782010067 670989236 914325487 397920961 910316733 139400469 753522799 86397444 919045376 909768825 680583370 288320626 699247878 153797271 931251873 834310221 232411215 897723745 114283410 473772843 984855726 423059999 75669562 288426920 478682327 921115911 824621396 346731892 37357042 437087355 887851603 572713608 773215790 456254227 796887556 557871793 420781689 170975438 829587460 590678084 137489788 977322697 658208620 976801950 366697260 249254782 996190618 61951037 938214541 535875420 234653195 613718102 536651956 775800024 934668480 763979381 596341113 140549967 837986251 33196141 841841413 414957061 63189144 446500284 947399413 817987721 614535808 135350243 706333777 113430970 41406625 697983398 315617103 966871985 988772125 866031892 21074936 682680520 657214650 948895637 719171586 332903355 745045591 659680811 887698911 903570494 265661683 177397294 603332496 782260504 794687684 317775258 776278814 849878206 169103731 416756105 901004926 508923319 37706235 894753306 296632659 766318977 939353399 624863123 569225660 821775202 984698790 353976480 904654710 490904459 892984542 625965227 927012776 382387219 186077852 119489682 684903245 347951791 821584147 619320801 416535276 769524594 768028566 741700692 798932192 87927373 693787035 192834381 22234540 649657952 315427962 875696237 273519281 937258016 682318773 185506924 781511581 804347557 999600444 587302093 893884991 96978771 958788764 929212430 403567879 532173179 787388389 9525942 85640203 363664941 735499157 14502089 999125339 983979809 546111152 969194581 773586981 959193607 81516515 647576808 164440907 972109615 810980439 178231276 892952522 397411373 956002253 165394678 269380655 844791844 513659763 756705485 44201543 950607346 47176995 746147371 944488093 168727198 852035709 393736286 191813195 967917480 647815532 729284254 695437849 924054893 896870697 430409529 291464911 580561246 842914927 7737403 945569441 560543332 134869765 71615198 918600777 648753514 328844654 766837720 410714148 743299422 725281921 670989236 483264666 878682604 708751844 823684273 860769657 653653284 670989236 866991485 886616927 118574561 627163136 747426912 952708076 679322045 223524165 998316182 942163074 825054717 961744334 797147961 955028344 824491636 879878533 619080999 760285266 740429693 134826153 993259020 427027404 293726611 703388159 292787089 636344068 686817282 727613555 375751219 520479711 50076494 591413599 231954622 32995814 721640263 733897069 737911780 841728557 640782554 287489274 418460674 806924206 955994523 934027267 636941405 864693658 93693853 176410278 843473568 565536520 796964295 986662464 561580306 947467933 892208255 889178831 186227795 219705147 100294675 513343064 858076739 909177569 683727084 283796618 1447967 155729654 768066388 670989236 260751087 717619965 145159454 803323494 554652060 357102601 327857120 877352859 981583068 803650983 486965201 962306827 217594966 275483783 222751935 974018996 511037341 876433257 63722224 886002181 335292454 889298830 289745875 205650281 434844411 777644695 113554291 982494929 971695307 434283078 21420494 828520123 839642925 229795851 174386731 548226980 529092750 815669231 24461282 579909283 756152371 903535069 52349948 437391388 912492876 935286436 81305603 976331260 400427978 706487356 467388774 402481488 810594579 86448622 491298599 62253050 710319888 808510793 18573816 457382805 526384302 364644459 70768806 186661862 862533549 745289113 324591973 604954705 887096154 630086823 209792688 849097650 29636773 464099109 109869449 721821485 392325665 757590267 661122627 752113804 979426149 731294741 856853056 392944341 586267652 743349596 388900649 794336806 929043967 661919916 989523856 809852597 900859427 540691634 4324514 700041981 428155627 352903757 129594633 293600186 98919365 892385433 977221100 926531860 897239165 495571393 413964683 245418320 73928842 238017456 732372288 804927729 868781379 163575586 299064949 616371622 868816846 377811145 372875787 852610279 61143292 438598494 409869468 771674966 838167865 882986650 909950001 923213046 732003471 968541349 297282086 236228926 200269419 772131872 529546627 670989236 520308656 209320008 821788073 385743686 934345981 644230381 832121671 675756562 750872853 526304938 162430694 991942365 986727911 761241181 24949959 690590515 664332014 837431027 416868684 571399849 237933105 765290605 801330552 913100293 766247695 787875739 73683251 200719698 848607620 738139260 944711422 308392204 274509937 491796269 131135421 880828761 627259612 229576456 255338250 827484027 335646824 983380896 851652748 695876209 86679120 726713876 419081187 195038427 501992671 692503932 220640508 811051403 979450942 688995896 387771847 367670788 102619432 700976139 879952266 936303027 371696674 78519244 129675007 592971311 542051542 138178519 920662673 552942095 182903713 594241318 777713800 856194256 769596112 988459351 764249871 550463518 463983686 60496925 257054557 866583628 671785183 746810978 811590088 146898365 873767461 635863689 408096548 233930190 803161455 172825178 36819526 743047274 670989236 738522319 420112924 863983020 267554365 692935615 672227859 702055108 629329503 415340386 679799645 735294518 264907239 720502680 710299162 705357137 630168415 756489464 487220747 493735947 625584690 891284286 758781635 678259062 533108382 150227792 942238637 755594086 845978143 10781140 782807584 432888170 207427230 659973022 803461658 947366090 689188241 695443180 921006450 926479930 226255082 676199180 391340730 922127529 785103968 961149245 453591902 904219366 743595030 296765210 502827355 805350638 695599825 936212228 789508871 887766246 941484345 883337023 222828470 770556505 824553917 699568026 380765768 480169083 466292587 498279254 663519169 914758317 719780039 880895042 683533312 861839271 805264159 671361808 717573581 900965552 993374216 672348045 618171685 996203760 667949278 549685667 822507524 374934648 994558415 902425738 15507016 916546917 982248496 152804407 792045366 917346085 216313349 957446542 23320518 688560985 29452846 593920836 259949610 878132588 719063315 853432676 846211896 613811943 601456803 872473668 41671118 822345936 998826758 781427636 505315153 214574299 287623715 116430208 625901325 127678662 907970648 993069082 603969489 500154585 215996387 316251009 820598478 6951612 21661038 402474405 949133996 905139458 738038870 966207234 812466992 591803410 821783685 877444761 744525523 790259084 863228166 841547062 133496985 511928772 642768963 503609701 989328658 495064932 919889002 214110600 936066748 55540095 505470146 706301303 963167784 369080268 379915986 267027367 284856161 527739850 549207191 548872500 187417409 226303124 409210968 199202487 320820175 685198276 421741816 811407860 667657304 113568434 63831613 431644863 486440303 756563433 735103475 331438868 797526124 380976682 572433990 781481885 44275775 843685657 507492026 264506338 969842926 554896149 948056192 968195845 36572963 494824558 150234806 117756354 767300623 424798432 827476397 342724245 37561636 676352501 855315482 901964944 560816853 855763459 841355754 747821800 975445068 63798050 220769452 203310323 442533491 882703680 552617456 972076440 294990007 748139900 174407303 777347723 670989236 858214751 645719135 582964276 136547387 857686119 657892951 154240221 948071710 749650699 699172881 72360241 261687453 913898081 362570440 682105387 348109344 851797313 655003480 993981972 121443819 207618695 897346412 696123448 439892691 357277165 352377643 670989236 508704451 293111884 670989236 583467451 225622800 958156300 771037223 708897756 837066526 95819085 55559145 854509478 109590585 287817936 474856512 598213203 996338662 856357616 954311196 95928760 334188522 589775582 641143202 167367901 363241212 889248027 44197539 940535153 170325944 40958956 44739814 670989236 148625304 490642624 772061014 358188400 970635180 407700590 560911926 687688031 880387027 915055504 697908018 455551077 748717140 958864681 52194428 177374389 620321364 840247280 359823187 756213601 25249326 800027732 365518527 399968585 488211757 687391412 890119111 925914672 278344227 974655154 690662360 650360882 352576967 954478 21526526 105582870 202887939 720304196 227909890 294220826 674740064 348690476 944679957 305240933 621224150 247216584 490318961 520283213 98334453 976841278 834616262 757467673 757139187 633954323 932489875 164086765 626084221 983633880 72427987 655466769 496257663 640542341 885021997 891111131 781898631 528920318 125156710 640930412 738770964 228540399 230808880 214292229 19230742 274134707 697548571 722918979 997763843 209419926 981287262 845276425 821886703 408471842 506784059 748339689 409101988 85332074 635379923 512061486 851403732 713916674 949055952 218632606 950030110 843140606 702243729 452136602 905388342 384062689 971739146 266676093 177407681 271355854 614257402 899813690 325673244 390966459 380428786 774816984 722433031 821784253 906645021 680333222 542466218 108953579 565750224 397342109 10896254 909577533 754108212 241364292 322307154 689359695 701099848 710887023 760363904 841315919 863390104 257362241 929035511 258753805 894301749 588443750 566013847 255872614 985963935 29746456 67550473 534604282 394551065 348659630 989826860 591015050 268913183 86467839 152173192 227032840 772309321 712334143 582615379 758831629 735192664 721390705 736693055 506880388 933179053 542462513 68508255 562501328 940855190 464575973 262912595 870539303 212572735 919951667 76994098 973129654 938666216 684933184 311114428 609777151 921591709 683757456 327945383 933245284 724361381 937873704 392278160 708635825 596092823 703068075 844856371 538159654 834331493 313383483 743157954 517521469 880629632 947870148 409561746 841120956 298027890 78414755 777694744 868052774 51394326 832616215 115549128 687939028 360182257 147637631 196226079 500481178 199174257 35666284 800454218 674618304 958151610 500487103 6883502 26111440 657822642 500061719 529866482 900466370 772232342 795881199 558135979 814632398 952229704 869647111 386963008 941182154 684613640 193717365 983723857 745570290 614649410 151166799 941234987 964549714 876813852 670989236 938630575 829072144 243878902 808099437 318274546 111135960 682909912 375840218 706784784 310422727 845619960 497587963 339115841 674392292 591576286 344733759 285430163 841917625 59223668 209358511 676443566 250423725 969215054 7388910 670989236 814702826 988648880 954997406 27796540 742281961 799515459 500747497 865432489 323912912 870996052 279640097 774769723 770790001 188348988 747418415 5510871 320879761 46326480 721678029 94745201 192934750 967830052 907934443 918978854 780026007 848003835 821710069 153529698 502164094 431668086 974557676 708903681 751687471 962459223 718142743 911045866 920570859 807756655 365684782 14317246 373306218 364126218 402265525 681806565 324921516 45774569 768638738 280471933 307525130 151177551 687979540 744718843 702112204 356500784 850699607 184137261 999863662 767693905 872414242 508513617 973625214 250618938 841921979 766933653 786365268 787472525 982010206 234024816 524230235 431780098 586290841 195866769 389261678 859531321 553776821 745947884 925758974 457344185 930739591 247676049 375068890 102380835 655269636 301043228 821882741 371910372 382139038 393805829 31298457 345922263 635134737 796350171 846081035 937585306 301649274 880338368 145384420 434600755 843128219 322489103 419218659 324312354 743961535 539488448 892370747 954184219 812404225 716113687 695451165 731656494 136018332 310197423 871132944 667958294 51971079 47072510 764402357 644575308 867338729 101332212 939403802 760083701 766974639 723861479 864611989 896018099 103778751 482273813 869338283 776019988 169653071 429898023 728027821 466608238 121198697 433073766 324814268 744970443 733806579 671594057 536106850 304197253 999405481 804065668 906776002 608033056 87481325 964151544 418513827 83051384 151945513 204354280 907891155 735499673 647673654 34572423 763977886 685049972 915566707 378271297 283024785 380225616 65932718 850410431 980513024 741666906 359454899 200329264 52659612 151834364 759623520 610793300 694444887 471959462 763862620 710765548 544709796 334947121 462889136 613669672 614658020 838586975 761659721 876114437 38555335 79517581 70059637 349025506 26349552 61911793 431160595 653463186 727041734 917507761 695653752 942308100 24928496 536109162 650428057 682042921 519135385 317560153 750964407 916040225 737251434 993831136 77984256 376443643 67604846 216287450 862967148 944955645 794047270 982911686 780363078 577079146 984934498 235611898 867373827 539398270 108984056 873010998 964658768 755490380 930960349 597266850 839659052 371341781 893772335 281062378 716797972 552476414 782337391 471953318 999239909 755373727 21000048 244053169 556394581 746044642 232466081 229795058 936459062 326379538 490840819 129848430 979449 249456272 899348823 100040213 943774542 592450260 419203640 795296509 594185361 161271972 934001283 357868446 247028415 995636713 958102184 28064439 965903028 692090336 736597672 919592390 764614350 847920299 456459985 334343387 275344642 785354481 666917973 848337233 561469264 892260981 755889805 218895368 471774995 331287526 644729491 252204591 854731647 935130120 768020971 256720276 580776964 208133261 905412994 869836868 675284174 481724715 467767574 793701751 451950853 129152600 98310565 285440295 736003849 217182315 878814347 200968981 964483853 973198127 802378253 804782754 347126602 831447204 728785322 742464483 121232835 307219796 624156426 581857022 379880705 68218100 610586716 470904480 759644061 631547263 885890348 644335468 670989236 868699629 905688094 213501209 441926261 359710502 826161969 402727044 354628816 803571690 176698012 666762108 766407829 832698305 180120706 471814857 453017198 950303350 551431368 78740102 391489121 221378891 738293962 218640727 400009192 935262841 785710758 272545412 776347981 40491748 349594544 837785735 255556778 821782043 950394720 693761679 888613016 938120416 887833445 290637023 702355708 670989236 827437973 891872888 650612296 705559787 304093477 61520281 939238032 790731097 874632770 883846994 942270660 759369255 529930828 928877538 857827826 13720633 766278617 901079447 377052029 681077014 664791432 936799192 881009998 725220663 45714985 921766927 858364963 757068613 276478027 951515588 620646026 712340255 470953347 743706403 45706406 674346948 672098437 937058267 996010398 42886085 76486122 254955867 835203770 50692103 283047550 127816252 972578001 967323342 729340385 709464717 646230828 12531244 158731977 609731002 751090543 221370155 699385591 419559284 854894109 963307532 187116908 851737585 692420044 795836027 235970154 28413034 760021029 616115959 201078371 795239638 769924730 123573836 128092919 670989236 776765755 760142187 804122915 938406077 153988318 811125247 814326314 340053895 773715115 789994277 874586303 207809949 446706978 161959683 39774583 599687167 855342971 741320102 781888260 845303013 459407472 669107343 619879084 461232402 485715235 193550713 938889696 870207021 203758557 107615342 866527093 905378703 362962933 743138362 453418976 801037621 897405260 268648354 955338574 958028309 287344989 745920763 938977267 594808116 410249570 950586158 836585801 158530653 556714632 611134518 375170840 933696144 520700505 715151851 198830315 926623794 552684461 95371304 890060727 248741936 519411001 391938790 828939464 774247237 765412223 524031915 597753520 729512019 991314279 795652769 643281830 912024214 481384715 701156571 904780848 331929205 268707719 715580412 256657913 227251125 719729238 771055626 865469896 657220562 336147022 777740284 905010142 671212561 930807727 127639497 541275111 169904899 152782961 19759116 890467451 713738252 97804295 575838320 748169580 880257774 402343028 729631400 939669808 847058347 989669818 953158975 732823672 875932045 934270403 490424024 324795751 673228544 409925580 987361578 923598574 455769726 487635224 276775703 208885898 808422196 228270024 187165027 738331722 40006731 429659540 566014250 737122664 203783944 793680805 47046077 817735706 573294237 230875419 983294393 813813786 558010537 408530245 878745496 334009008 748498555 887594959 518552002 813606406 670606843 876848777 825488534 710152631 949142428 558829262 991144590 128075379 238511717 165451392 723294957 45124935 44702251 154621299 631306816 669372049 729581171 907679189 745070788 216762018 424249770 464230030 390746393 726793994 738126232 967061858 785202099 924061076 46306038 935038051 694900493 670989236 80489827 865005015 470019238 886214426 874110325 609843502 151582609 917975016 857190833 757904005 297457718 851758416 822060178 881714997 790404625 736034942 974570147 77811620 936598773 221735395 916516816 799332228 689177920 720400461 215797787 150071353 498696151 356563525 515450820 244523320 20487591 902898882 103195413 877743959 918843990 417443820 167018113 585363166 670989236 271703250 767310820 439325817 171869465 106076499 806099983 520550360 327449216 645516936 962731538 885078681 54818561 502344179 89527452 470568739 998016240 538948890 485242085 783104865 583904701 619826371 315388517 238475755 809058044 534114663 929021653 292735778 679436098 274158585 749525432 756922646 823786170 572548660 700066138 63285852 775884746 208433446 687683690 240325536 919498070 45015588 378967732 325915814 123715094 174790723 491194051 781129940 223944029 186437951 113326697 744010592 424908018 916284919 785875465 794791782 807046683 784041278 70347975 817382513 270863296 170332654 464349007 561770783 30342358 434494268 480271014 78034391 318138132 905743831 948688692 749624790 805130941 931923492 941289638 924724206 14924151 700920359 784580239 315848964 367152827 816213548 878981703 494197528 559914845 688368891 239092988 726383630 802260992 476178733 742240019 806672720 680227492 433125473 496921227 995774007 883755017 712124183 355738207 730393945 267661959 117461110 123282735 764766028 3984228 533816973 925828622 835164405 817455184 478673981 579691955 153676584 207640522 921238205 782983370 334698646 176508275 211467694 752065490 480080658 243546852 713794273 337076680 538968287 146410445 995568464 608052305 679531176 816310227 371254420 239191532 283769694 155880093 737450787 949545603 738659568 889177117 721699829 411296316 688685338 674654125 693787607 853828716 729447992 270244497 266659468 328822006 930073141 661489723 680670729 219900245 306778526 720345001 83216578 974405351 280947544 837298759 140931727 983925518 930655233 22800280 867731629 727861926 852609975 47781277 972948090 17627159 397814735 397261887 938562579 873110482 987359060 781955941 397918320 329384351 956047387 807174461 230279797 718985539 859214343 752582521 966912394 610784254 33637101 313223827 626094686 181950379 461291033 904199435 518782607 464324106 760310056 80735496 831150485 328006207 793786637 433701937 391499070 459230168 778031109 770517923 790213955 319822762 687776 430382408 630314349 218440852 669358116 377249124 18713702 304849293 427773723 931440312 610728569 996595089 882268000 953849734 674351289 14609292 61164588 839697048 872386264 42494352 367635222 888155553 769015348 108484571 356420295 718210492 760121626 385589820 977367402 691266666 536874462 877899143 170613376 42072567 862735170 269458090 722129238 849172029 208424193 683114761 525707743 559290478 473105540 988130797 954905205 848282876 101522070 984765741 987275708 962904872 110601411 235075153 782089849 389932977 611182792 885204919 18782984 894424597 675580415 572557649 836680492 836592114 923250363 72699209 771582629 354282881 626661892 103093586 737199816 789884571 400501987 408326334 818702903 995499047 692298411 683455683 22053315 988433356 685714063 558295287 845687566 926161993 784766522 585755882 75974124 319330795 17895570 235740118 963554938 584271758 640335451 670989236 987797884 565466634 670295246 921440832 127395676 854001965 438800883 844631899 636761583 529270654 465068047 238300111 766826589 523014521 408657508 648594144 158135675 780679907 850590651 643152722 690786410 452092046 55391266 980692030 787557097 788127329 729997937 40657321 776825954 139262790 340921846 557378508 178323476 280529121 332139587 104529707 905227688 413701211 675611 36197801 86346161 560283608 704371421 670989236 203934517 434379929 467451259 589854114 651753441 926504525 490694351 215080800 776078942 676764238 706075108 699279987 595207118 472192288 973379152 839365176 987385418 769775052 928150767 803198943 565618988 679692132 509429728 847915699 766391126 591221176 583731413 415261568 159671678 808133702 272205060 538918200 835866820 928783037 598424055 432174826 976405875 272489600 557540598 725117223 835375648 874857396 989064998 28376079 870952719 273178730 412262540 393581448 789036227 725799095 164968221 807397630 800661262 959904087 927509025 943063409 935621232 143689575 145606264 691734510 425545368 959205702 756329760 637743331 855774333 353211578 769814252 861993393 209720927 920600116 708066271 656763729 226353942 182723716 383635859 229549012 103766754 197773594 240151294 714238392 123162782 99052071 671665333 887588804 453707430 932119594 286515033 672679689 375199041 302268092 598045700 505102018 686351636 210159230 136000667 936218777 117133980 131645809 774918668 920454635 646704242 930161719 975672434 367051288 940751608 832181919 451743938 314999352 519386437 409426395 60537889 631689881 933065282 813422523 869063307 509513971 81505770 292608797 349148434 100420838 327409821 548705558 706469608 520551256 800046263 82068325 404136114 697790756 816898684 635267944 900576121 928263436 620594217 548479536 892108657 365919586 96390962 996819831 563427155 166794315 380562450 713662480 789490196 213049027 82880123 960184899 948217561 650316462 876120116 687443545 937495879 787906774 905209600 559603087 88403863 877406478 684666587 17483505 943038835 611883152 789610424 326154004 697099753 386945399 517920200 742234982 486297173 625056580 24575979 550975093 716397839 969144282 818903193 566605755 562187559 549629373 731122624 213473764 694683782 277656206 545060508 387468999 38186170 732811750 205602899 332527430 716071573 847174998 672172714 714790971 810702004 906988330 103248141 76707067 75327303 115297584 272005191 298384390 106985241 818127043 938198179 975181099 188695556 806839276 292443865 884480502 71869028 216398591 196357660 125653153 869650146 230291270 818610043 791844634 826506586 714862030 397734564 714079547 150362109 409648157 294613064 918407514 222651818 10527075 983987048 835095362 709521336 606355325 251516021 893150705 569880237 710839212 705152043 902988614 716176380 768039851 354702526 547305064 858905071 797434770 83373462 929654876 965324157 145122676 792602083 461398327 899904815 688726797 886974368 263018595 355419798 107875816 878723065 550356822 983930104 687897812 881363444 446420502 235844160 934816396 40123521 177611943 685527934 82828482 914370971 448310150 773394843 147111100 857933522 734636126 711153180 942182194 304937125 487683161 501097555 189838312 81203342 122590224 57922992 960433744 51630329 423163328 535937267 811328600 449822048 745375681 652297150 905790389 483477252 861259044 705561081 563819273 723487303 916256300 248676474 311503115 875953442 726034060 572905464 122678033 766479664 976377418 670989236 419479743 462085393 373015341 721231492 843762366 625682004 42222991 718705922 149959366 90857097 823428945 694744426 451331566 745039012 217761437 806046974 671823340 567516271 611216549 858296787 272430865 97410374 186543784 24936155 811446891 403222596 957525601 449927919 705552647 813574303 743416171 995982778 52211942 998051683 947725181 995511783 29974804 200224765 407131636 626445853 905694606 616921475 724860907 660782858 778479589 856742559 342192441 677366830 29681123 395122908 624432891 744864296 709889119 235047202 171744551 177907061 332308491 994880532 371981637 342384027 488162042 698780358 844342675 866646467 74271149 233221952 447848570 826300260 6856642 190468564 539388482 582972948 887530209 225253368 868851892 298388172 206675568 908037544 155293889 828175578 821302851 954825938 971130666 617914069 595238207 988256925 699655801 489942912 920784900 164917888 922023144 599337854 798436573 209191087 74596019 919907358 929286567 837389754 860145192 952695104 919965942 610521190 247193356 806403224 779169314 817705656 607155991 396458604 734077070 909636717 421347876 994846627 956259652 580482940 474304068 714538577 862892134 617139644 397027349 976908923 216853169 964865416 836170414 816456884 562667604 724512405 610161916 875147124 781826256 572676931 935981714 963467301 746287498 642681722 526559515 59893222 261840356 602253448 14886154 829381714 973253974 87077247 832838391 740937216 441301817 540602713 407382440 612134597 340508621 677299828 719870497 941180922 806462475 645337450 455971323 544346611 489867280 9971209 99490023 957961910 875339367 442503158 628968751 336528211 63307795 517582581 504029677 551332219 839615117 909614155 589490168 272733634 583572676 206710006 689850191 358517766 78138498 167116369 96724336 695176987 953351181 982591302 761869171 844236567 804431781 27493298 829733433 751619423 562284005 707247929 688957630 793850444 665303529 844781845 562860997 810711752 211233038 58547412 981536672 872994467 728187775 690996077 786765211 584936500 769062617 461581370 682614150 727886785 172747604 149455996 786260427 160193591 832768949 597176435 283864228 250836025 975970482 852801520 759078689 835186625 689261588 862505149 84383490 287458746 794635670 929250163 657503912 918117947 655715352 355669656 825429886 756717119 983276470 413645224 55285450 824638049 531498939 148422560 797500286 770519933 478932766 937063685 679103503 691603034 682705759 803688420 537194366 791002080 913968699 312023699 652231828 332602022 911021855 697938011 924831805 230887421 896397173 461815359 710289996 578752862 987977071 694734088 373235528 997793028 837827022 112663044 979489713 99603507 812866508 572998985 951092843 301611642 80878540 833877601 867787031 768853932 864034386 264738525 358308459 749592514 185484275 250094686 273300591 714266836 577976880 266595592 460847890 393317723 561915091 13781987 746413125 558328845 824840467 608338500 995776256 691643354 692341058 243314557 787109722 552028034 250933669 919293090 670989236 21920146 417692570 898411703 981136452 855142148 480653920 312827504 896025800 932125600 82767386 919013026 865013408 52421757 166648533 374799570 7635880 875412262 92082505 715231697 383723028 355897216 670989236 46071176 641093615 103653265 40622679 840454489 217912458 770347100 726307115 922617719 740110666 495521963 737687788 869253238 657349728 279578843 652618478 166483 817529520 390328344 961796208 210833619 930697138 789317200 170874138 719690242 782331988 689296862 547899933 884420523 778488732 396762951 58223860 952564587 815585491 824496784 432651298 265251274 796484412 633561761 972345809 967457530 318214719 708893118 318987091 508637814 852257906 850801412 137332816 653754708 618620568 979108137 903706395 685862659 126150683 706939376 905862157 395628901 819485061 286347005 400556447 808618486 836995839 684473875 995129914 975749994 51183743 331322826 56245425 822571992 574841453 457679029 190841427 168788319 514871989 836388711 889487407 747635754 416421875 173557034 960972713 334505483 52426699 7833494 738776239 499519386 493155824 425839720 436586486 640123054 868566609 28148154 378927662 829107734 521480793 49329179 377261679 973673383 696833181 335425075 818278761 160988160 270764719 987372592 366964763 164474871 82823955 858340169 290160953 309902999 770492447 981853144 554690752 803163183 712709227 840452152 992930738 730241387 935819824 958913338 643761613 103179157 735816621 697851308 295636890 678059582 719265161 220104547 686052142 240718230 566772259 975701285 513143201 467286100 263896597 896218169 701078290 810024554 742866667 149734844 753783916 763976600 895989527 187450282 864055344 40468805 916758274 99407247 422266786 630663308 67600219 137935652 543577408 897311551 619814822 219179234 301335235 684127912 385841868 127683662 995338976 143073969 40807288 687954310 990921415 354019456 446200976 374455114 376485085 159093518 765230288 711447547 899854465 664803809 954295318 386429272 501882957 323486495 442088463 693914323 263316510 117287787 65537766 818840755 803449744 772154791 579643661 12975514 583509316 296109826 884467671 740428680 586472577 780052521 849908757 765158030 670989236 228395431 969463233 972796141 723221679 70614694 68991285 570567905 706457689 878832243 663435881 913113466 994085774 692726763 752996856 335451057 504132799 48716779 951306586 783832044 137451137 675868843 990409380 268826073 981456831 353633783 249139868 697518295 677579028 462218047 956989984 914433873 553764501 684253808 673445650 601862357 952566315 911792256 302285610 287107049 121978048 588633574 331838173 826020620 841652715 233538447 341140281 342525393 377981166 849794920 662007169 642425422 138280195 482012238 858684897 967852564 832324927 694724499 986021341 426360290 746840297 199873828 111670149 845402309 815472378 705397839 833776262 740322158 753859338 654218053 981944842 558099376 972325130 389346282 57390298 172762465 815354873 859539074 87279330 700766053 101480472 876749373 826081351 902050095 600906385 607803392 883710625 836135702 770318960 846983420 721245907 422867847 968062920 710655197 263960858 58260081 47171262 888863322 916721365 730853762 299363212 994147084 791582317 751422729 698841556 934222394 872290868 803267472 518055776 868736167 939574581 537806459 909102910 305961633 380329902 695902994 160623194 676591344 736002727 922718477 834436586 816704197 701174647 97258735 918053161 186584173 82924138 480838401 58084152 519534997 779088885 790582721 495008418 623774103 768619776 408145378 630456493 322003696 772539832 603237589 956374162 442798146 717365553 967081992 725507886 983911948 801988025 141232744 123611957 899345552 899894289 947234209 434383264 382959441 373653797 937488947 712058973 820003382 588567155 512769860 462567007 841812686 89416596 538912016 515403812 136002218 985751685 125081057 606481302 920325719 780446067 919888551 212449231 286658000 444748015 736443786 850243953 698188172 995437724 498218252 204511895 944135369 504834082 181877302 64157355 831766254 650447013 335271541 464009178 175870460 115669052 42245057 916294347 897400889 451113179 844605821 933375780 642716145 216968229 805269905 802934974 647566357 289960035 384245079 673522363 874886147 122990733 850525070 754972861 597827428 460932227 40803978 50621797 743516473 712090262 322655959 563973527 957588899 96013848 151908359 707179980 375377609 889560185 738075786 897540275 766750704 640394818 294622271 916130965 237177591 765147200 498782081 639395362 783253299 486553697 736394825 164928059 22233292 694949764 875383175 993577671 610595065 938482160 724171264 879456020 792933842 606729906 513762176 455522885 974909305 51403174 248314246 844445937 738747369 738912235 417093148 38008429 888233122 418176662 773182150 109756840 617951051 960863808 370341148 804407157 90187935 902127134 545589914 568720236 118731699 556614926 394571915 862431658 189442115 431947183 691119689 342403359 6814241 691411953 699722746 53412409 964702530 864256604 117957753 646820722 924817945 894495117 393552731 670989236 479249579 616415066 783029423 857080932 355949274 338877075 938758697 807704848 252976978 531310309 768510397 856522972 800952068 960274951 298116436 782328873 811036795 743912387 70107337 807416437 61228346 188764537 483457837 138321976 955315017 859973360 958118750 832632313 127641937 654838788 973270211 853321446 696346418 240155544 53971929 755218394 431544314 276706780 874878716 830177872 878285350 784644900 922862191 729084926 950323176 747877578 738469927 716788526 881955896 734626535 796715143 959359220 22391116 893012856 985309655 192138248 677931707 356610042 521051624 237643679 114255088 918534819 848090018 948233008 988641812 598256999 539358673 249006026 775550289 481292932 930404375 493668846 695118288 153683383 299926664 960769541 645428881 612668593 972039866 254375276 261341602 968279790 687629988 878619537 531911197 774508848 999484030 735130229 711307950 356084101 444658272 606510054 549545574 916982615 922294448 108507914 375974238 755794255 654817823 73921695 859465516 858594275 147315158 367777719 300442980 689028139 119588784 778687244 944145028 391573636 569850514 399414644 906262238 908885392 602517849 11922184 898103070 349637788 635640500 433984587 670989236 89053749 965391021 711900832 576861539 914089013 633205844 671261411 311564720 531554005 406965008 494224032 314154593 992984395 500222703 294279023 841603394 24238469 102467837 934707664 604687699 578398997 749366349 646908722 190244164 689312723 385981016 323423031 973295397 229047301 845880460 559335073 867899135 614362011 832846908 978875581 975281692 25965540 508746790 828052380 783699671 864054841 136908524 571543699 646446110 677724986 477765056 69946813 87368189 743547626 375038740 854344319 829888148 858581963 897014528 930111254 488394192 225156071 448657403 616883331 781189342 50737813 787699118 994188101 103265338 193786266 883142068 966632403 367511513 311757227 81922269 485229078 566928245 863625557 735530852 946319329 865185192 617144720 240391289 913600092 869941457 736392701 475938748 763748190 378955435 842617641 122370236 481507575 814638200 683809866 679702351 958665166 709374965 700396452 34525739 945312556 798536182 763003495 745088660 971896546 977418988 268621046 945472166 721895358 470194499 178004130 295705292 95766361 349144665 764081244 74570704 535619216 625735159 575074246 943190922 419923106 639168847 925014999 248872475 722094417 727874732 834191616 900099285 858516539 791976523 747093181 560835680 317306472 329344748 522336352 610318977 809487026 196404173 526622402 267154962 528468790 681365301 850095474 555739808 259334835 57182529 739748004 823611638 793953197 184712706 987083574 447505067 956057224 848663765 62262881 317473441 968540469 372909998 554891297 997744477 186759615 803462803 196049716 526658970 775199220 615514493 725147541 824995852 706150082 286404567 80361944 627246702 917914737 108278242 432085869 697273960 772957322 382110357 820250680 895348522 793261121 561751426 511402552 940824972 872356043 871740064 209830157 841764572 410552231 676356461 899177421 935439800 653000647 835089712 655650341 839011611 516351840 486698949 721017930 982192221 741716289 912524361 526610400 250653530 401089916 868214584 820391722 890848324 76550965 875131862 713632073 890231129 682685030 988074515 683824652 163870365 550896272 874404065 337461471 671527905 477830003 194490262 564080624 687331471 847173963 701238491 804940617 354609305 978598613 510067544 402516471 627043005 848668389 92754075 278511427 820267773 534442691 410890590 896479422 344933118 970269178 538395830 660923543 704542144 526813267 611493847 865461613 750650077 992154657 984871170 836549223 198421154 339164338 865535137 3693743 400554330 343984562 385944447 176704096 699436002 691609783 100153694 670989236 128357191 672169514 923068190 882297923 856159082 60178637 8917226 766409097 913389338 878893069 16740241 889673291 697893228 713937065 908344299 653687366 336801739 390806658 498116089 768364693 759534157 807336326 589767402 265486783 772068355 313158593 425944938 365527531 890908179 513164200 890026951 511519560 162136475 206103119 933768118 991460002 127418883 888599750 217755269 990076724 956598754 613523618 628587495 453897439 640761591 794705440 869763649 111036252 947733634 881780566 828284474 681607784 830810805 453055182 242352604 323175952 872455873 708732771 880792229 932889317 677033905 993663722 57444832 870972511 210521039 998502603 254466554 69839720 981718005 245588944 753501993 190872909 869815710 955340429 978827861 769517845 899813229 423874581 536768032 864457880 206591826 937564830 97503671 845826308 625186657 904081646 713202205 803843797 99724960 689065905 713930214 578095419 851182644 313937738 938142847 470604359 648464690 160725724 94896063 507505156 275812381 348340966 670989236 926673689 876704884 864011662 537114007 898483564 797244503 526370770 550137066 683472700 369311175 939563821 526431969 49846044 478548993 685554528 923436158 397044223 794082901 370010509 650160647 966399316 996088600 38675446 886185251 591913177 928712164 176308342 860607649 663988785 737729267 559803348 664320102 757199551 387271356 503835228 937149721 850714159 263500530 970324252 983043255 440919417 17296861 855979185 34830549 988411735 682913535 991849154 996187472 795805366 991806404 495477473 143289734 363684997 839568549 487958606 877101510 42230613 588561324 232165082 637858102 112099953 82975221 62033321 944862980 216605411 958820255 730862857 313969359 386257095 326009022 403685540 957032641 945613330 190243771 715928114 994163392 523402395 715354185 811780854 357516431 965423050 141350117 535031156 339055942 126077778 847567862 580213522 750405101 979266080 969050145 454766667 724938880 675129618 756487593 821810985 742573432 367136718 38830579 783099851 613961845 431616394 893622178 101087278 641303794 875900459 764246786 721495611 709720257 293029547 692606588 664270372 160559035 968825930 667327923 929557088 320897492 448084281 83365191 434834736 753836918 96021637 980425146 968690048 425366170 363676002 981667790 975511388 710998272 552900874 898248709 106135763 819439681 224883541 677426067 155116382 735449241 663862565 889248963 986592347 267629165 825730617 360166016 346408540 212628558 874166575 192354759 699129526 748340325 694651418 870281744 143046209 98472038 492831029 602379227 686761897 711240265 610748151 504070790 798467176 655103830 847795924 963180226 673776102 344570254 959287387 737311109 953609169 429920125 811669622 249391705 837065984 534789754 722175729 371352120 910452273 471031637 227609264 912179755 930431490 453510314 691723562 569707670 945561564 703108298 149378889 906579639 739111077 195403483 409373664 317376492 436060064 923225005 432049861 687773783 898749410 813861581 219385987 745922680 540702660 808312288 723007149 486737132 865028552 427861828 45802372 120013562 257942498 326781002 832386654 234942983 729685803 812048393 777065057 840884642 555662768 762191672 277128415 736867644 369346338 554251944 870431152 824824945 935914891 522417299 987049977 703555311 372544520 689898160 137381314 84256035 1635307 496463721 273255582 442209564 498150471 306170034 133375134 748749585 492231961 706150790 221017396 190061413 55105298 276853334 827574384 88018739 482142010 305558354 665450655 873668838 571708791 496478289 759238168 132323983 4659396 869125093 376535649 830743302 681021216 134159181 735334457 107435876 906712454 720581770 640464324 204826892 718456074 796549551 925401352 516761035 552508780 963197874 277661034 577871145 104575310 993154115 256706163 762949052 830176859 372603063 837603366 589172347 194629068 220115508 310503907 48102147 948356896 301008217 965483516 979991285 743821563 240471804 675069132 87225896 283025230 59597515 462537728 169931184 63878970 243124281 180004456 693968100 740188263 994953291 103790015 585967821 521460158 737234236 801777753 50180540 356303326 755858786 973276812 396115707 456773870 995676880 611811985 275377359 97072801 297598679 270545824 13516829 55337473 971044563 210025447 32022156 133786898 937714443 101722508 410462138 190454506 979600470 222329960 40975447 835158376 308860967 707401324 473709396 631222425 588145830 374840644 894602078 812452903 971213589 395206343 24314871 789890529 984459152 819022394 225891538 689979011 215895158 841469626 27873309 361827559 754622406 49714483 877523310 543504867 869579128 924195392 157497319 728690501 678208 267516448 861222181 95347389 248117435 622238881 8376630 126709296 86220703 278360231 846383426 913222474 678909494 737446985 170055301 137408532 512035428 214327546 78683644 851043876 711836290 910323063 948929089 946171584 304144856 870448296 623824797 834514036 352163005 573247831 949968055 874978874 51637792 585611863 119931380 374924804 728574233 69898739 661332414 79605422 648490728 19375882 847660455 572175916 676582074 614364092 771797424 670989236 64805100 927708762 396455086 346394035 836496804 918656879 850758121 889728148 722620884 853682977 894602440 820698824 766228312 882745265 791805644 388870613 772066394 447144716 509938720 77735838 866998774 912037311 762563343 945741265 854571136 37762483 50374033 76001982 763572449 376510023 385795163 753348643 794416697 259206894 353383630 191507653 876384220 405574313 802734050 682973293 208681464 763914607 274289293 417586333 474431977 881783916 375979198 699740896 957839454 773884459 968796620 888644918 354243475 177334018 869126436 767660030 495959977 637873225 578777268 568983356 725264877 957170927 134829040 216647095 831123994 298233060 680632408 804549333 155774613 718133282 745594888 688164797 739766389 570652083 126576880 720319556 776081725 834463933 465163538 411490375 887403125 318891773 763992827 701622178 126025125 818084228 734487703 886742668 787915154 893432495 291225935 709340867 942883104 344636159 188567034 557183723 747519388 503372526 898991090 864759294 58638911 670989236 665613856 723751364 574293051 992350099 844616573 670989236 113962162 740042068 773647553 758990559 883283741 902658548 813779798 956291691 956210890 797313309 892771502 457587372 704842186 468629339 286016185 801314369 73868348 772751026 94407169 969856317 694444684 832051097 744077794 908186868 805837960 981394110 701180208 852894872 427840954 792364691 214875827 880005377 870895223 668822539 481417174 954431431 773405805 853268322 706566079 533107205 883458867 779777396 331416152 642588508 359641293 803369750 171673885 41951380 60035408 681936644 519723919 925562776 579444150 992266979 65810509 394773424 924188821 486013859 230145968 730606958 717895448 860248586 902579022 959104165 179022820 499918838 979857839 155508885 880185127 44529137 823028121 861228153 20779149 110283253 34952254 744953579 613135614 905668961 793486323 77203581 761582182 711796120 898917447 259722986 648727428 812533554 774586742 651784189 68733129 638126954 417235986 719749251 838076883 870604855 602278657 368585562 774229892 493940689 896931897 877980884 854614119 637143746 553314645 999034664 431379311 921111521 699921735 917132162 948964507 165462219 169390107 555446719 817645246 878181887 871042798 766422978 213278067 865329307 764853518 851749039 742342729 456553292 929641086 760739600 852353609 903339369 758349131 545344411 19965475 857932296 440098890 331898180 724682608 195847804 777382660 277861358 999647015 744221957 929977874 109888702 856316561 4953895 820576298 102755770 58983340 722430561 444492237 898024342 776279392 623390703 903742897 566969049 670989236 7497050 777676530 907096295 940593115 530611651 199295575 962685002 693906700 923814410 931421118 346907462 796048043 480580607 250725044 686684648 842738687 151371457 863822975 711797753 696863228 95088853 738204419 850679951 50039034 647654649 482669724 585430111 756303280 138319264 994630063 786403902 880139522 188994307 234795464 182644592 916796576 214300009 33892721 987368134 713705674 927774473 677775471 978834568 691010317 212005883 6019937 881313706 596147100 426617167 538331607 850860073 36063715 958390194 604496419 505524843 941978659 920852415 487453749 827310762 970957764 444337621 404540112 693580326 769073671 61343247 700832046 521455897 443322400 760411275 529994106 879038488 104256752 291710585 806208542 704143479 315559099 420331988 574563200 941274671 778958619 800370807 435552649 367296078 789124821 765433934 628743674 871345994 338288393 723558922 970332050 305829967 472725575 784577836 813378614 710462004 330464890 961917243 670989236 351040541 670989236 797310358 134410386 281447121 617921719 837034747 610180871 5543631 713054484 842300833 381262412 749941994 662492299 479704774 421633191 314917755 233097199 723075987 160933085 714211577 920979845 477174075 618986061 547817794 537577067 692825923 85428211 975905504 423135431 907696436 629055936 263962842 934901979 315398451 142673599 787129548 969658858 735873958 29046798 761029246 770995049 720111383 989362917 752700261 120196047 860168016 767928413 392498009 970453142 21214226 211547630 152016867 906281461 539571472 665071113 46008397 709034848 451247650 510310294 757490417 940557032 222177304 680884985 895942318 839468142 890255807 965830249 726096774 98535647 473843131 748705058 1875680 487979372 761565942 689534104 508873632 819373734 694339825 697122482 686705654 698979205 784217902 804368175 888910879 341180818 555292650 945588910 140692493 676162217 940576685 635224017 147826948 6582768 170139707 775815775 510291103 545744195 742564753 685936434 466577530 102750974 929352210 392652634 739510229 830298110 509744193 773129201 256020614 677128895 932047665 924725100 977248975 963664684 844171677 557231488 544299318 365232546 817888248 896804405 337522381 968240192 973596311 793360136 259945666 159418600 933997310 871526803 851595229 470137497 827189167 559732528 442179875 676936643 911352597 623000378 987222835 74566608 696920087 131469147 696035726 245196624 862123072 726641810 269337393 788240954 224866733 789529787 913811055 853427131 230803361 701653120 998982820 795910161 529815020 828506200 584036118 642813353 394212681 513872896 561323838 838445663 217038323 973838228 400868052 410695389 930159953 390265017 845154318 883264050 7951684 695341648 831612745 909508458 284407146 704195664 330710091 398327041 980139764 89674430 705937531 3409075 89557084 586819469 998255167 604793684 204403327 902663558 296122372 798241062 448852464 883161615 188713088 626176047 769141238 378191380 265509316 515151146 714965278 738438599 544178446 731173955 230296910 843813635 721506908 393187051 108985430 242981217 800586910 185869363 324338453 475904132 390976760 828078157 670989236 559336572 471024326 95160627 109699281 133588537 544434218 670989236 762580620 974781258 151386256 710196838 790651188 538158672 952718874 533424544 955621709 327548139 473597516 994876281 838619034 902608800 844031816 723227848 931053540 65593811 157679385 251514735 404828234 74344759 676227036 497501905 844456435 107746216 323656786 433523185 494174841 520427870 236161791 930622086 731317002 138167048 741332640 216019529 975028123 314066824 847521397 829657877 825276533 906327958 416068410 837706432 885795504 910392233 788562460 670989236 709666628 948571420 680714516 234729627 103131594 481476959 296141353 284236645 869459062 968529286 759835417 890613978 451517392 64345216 725351025 10638089 632395798 143219488 866085067 326010025 403056182 771795691 428903728 986082439 940967529 330873762 444326934 586585557 426829753 955933841 472854412 775076395 843147713 304218997 372615151 758506579 910481662 244610423 516684730 741283998 456301982 983746181 692457321 341262578 597047283 301473867 694477093 886763367 541638850 707041168 683706809 528224777 659518635 471922485 636748878 333011243 443410067 770666396 76719411 3854655 860812369 485041839 787452353 649523749 476810498 462661681 517396844 275840982 823718815 556381271 961521447 263422450 183305511 188076421 687575846 699213887 877444291 98422557 65349712 810055390 814848373 468787297 462398007 402916401 640958055 142357245 995744095 791410679 696900162 422108227 215175167 736998681 654232730 778105053 634159577 642343725 490040270 585130518 850916453 372000504 890908 925934943 807872501 546923750 785089007 274110897 937934713 514016309 863150190 333293933 586770947 760398836 212838554 847759048 892303953 800344584 628039413 927226819 212539514 821924252 993077082 517679168 738272328 268277075 46531626 858981030 537362490 597461487 889989804 913150189 257842256 80975679 184950550 805333463 913538688 882327229 217513238 575471219 579867699 194149209 88905039 22171556 289972460 895374534 767611375 333571320 870208597 910725198 819504128 814285507 670989236 245783942 816767731 365430913 549551611 862210188 964893153 946163591 117672519 790802219 181629286 709448014 728354712 617460416 928654987 515594407 567034603 989354608 69863049 100300663 292431242 713022489 341993073 75288389 139039140 757718493 5387529 866640028 375382165 952640081 813079935 713521719 731466150 902399906 229882807 579769864 261314611 461458782 363887316 756269617 182691682 898261752 342426937 788345068 800538377 273788515 838451666 774704554 989152811 286025842 228299723 293868460 647410071 515727749 459828400 334742722 888616754 536246326 842671429 1641656 219514711 568346067 915581157 527182107 780717635 823664915 873100797 190353294 760699024 259722495 942289627 412709041 865517908 581226562 536790434 604296571 432023246 834100707 213459578 970794621 727989627 878225701 780545100 280519460 994134945 694712593 219353000 494842825 67852514 46323270 681728109 941363189 902368324 675295296 88683465 100638387 902006490 981225901 53860175 917717778 628543647 909507602 17657886 72674791 892608629 153576832 111903428 737463906 980274323 851002153 190229648 429206527 730803104 218730166 473977577 603657291 680932590 612015708 731689770 339284044 118988665 898953118 929180199 897574479 609876380 851673174 225685217 159870849 900276639 737061572 914730159 886648767 78627330 195727131 276999015 20434171 497329679 856196247 802614904 417277784 108170562 708453416 638735169 569614055 473644553 467235942 849242217 468741411 27296023 774407287 93232980 22803260 670989236 358737566 582202509 700920766 706008176 777540832 996828136 900742130 927470769 555405686 736574716 925579381 245207999 749103076 884205890 268977107 983375428 639658329 198463733 670989236 739226067 523253854 455220447 743839437 751760253 401665003 935000518 779178568 764365934 870249743 133809011 125298349 503714055 698607123 296950913 764791491 242296117 32546331 762088960 559502754 767553820 812185019 911577793 580033596 989809219 853556424 243072374 72536008 790180209 984949645 844323042 377163662 925931197 670213122 635977246 193106746 431668576 901636103 366803845 303017881 808434125 854471793 976151935 457574708 277272546 452788480 874125444 995894777 345400298 81247096 111951619 810901297 307236212 664356850 568390390 749637961 893173995 564360855 32289168 847927818 565035578 723783365 890943813 519960662 70706686 686992793 33508881 398175970 950552013 670989236 741995444 699938041 507871594 862716779 721021379 271911045 722150853 756404774 883189917 959389330 81297605 904134356 502729709 852394358 511120896 284206506 146960906 585939626 89529655 325929274 693969038 125128196 421368220 926992331 654507575 865025396 815885494 553416722 952037692 461231553 176044900 98797161 876364903 206978986 701769261 611206768 786446945 516860825 517763523 712715928 448493375 312079337 744812081 344914726 327424027 478339679 411724714 631569465 829852213 149357897 233322240 824272721 576495756 11461437 267630661 91576179 29886545 580735468 409942290 98594075 535472661 975446546 878052570 446012754 723898929 659674735 876405614 879452395 379862779 711478195 753332163 801957101 491594497 841664285 99718515 223280969 879388244 735495018 704791143 250674915 721766503 981784333 866532692 890400274 259546505 235906625 954331 128295578 669397869 264352598 819099117 855575627 406564947 563183211 110368192 970832224 333323020 714448495 628826659 275137683 579747628 904575757 48993491 141780255 984957817 982916864 972556061 362169303 791527058 720416710 929460971 329923665 999319717 838037338 919716054 21192627 422771908 595326378 744575919 902642872 971144763 708797405 921645907 926672617 522753281 943590683 868140071 82522567 956648401 663709463 821269129 684676507 255474403 975725566 12796962 701548488 670989236 816847833 642228452 730807235 833637726 509855908 807445043 732606043 226970524 153342961 959185110 560975014 203802679 466413532 346395695 556175817 774593504 329929331 355809260 623886479 947868356 562612315 913445698 617216499 637236029 789717539 938888055 883994003 718674680 855899899 942618393 776135141 978628404 352657656 672213875 875154986 455331391 610095100 46136567 710366458 178765954 752075214 939376713 801310312 27993806 954086830 707473376 764067813 669535434 942938103 636508240 748993211 492900260 694567207 704583917 250492785 480709977 718168005 668530208 724182507 732445591 644614893 231222622 968328695 494796146 670264206 288193620 685806522 146581918 44557445 337887991 626601071 772921026 875750273 149993310 285819628 508175304 212402294 782442355 197590363 978296588 634044795 812095818 246595091 156788933 670989236 670989236 670989236 232004059 812004622 913252483 668118508 65809556 127913351 926888669 836396084 925635205 889046626 113597320 906933809 569292553 865453927 90829235 939860695 699186768 851700348 23826346 776883257 878725488 133296148 702521817 743364269 371679845 369213117 101763948 542293310 750135364 775714555 444555278 683257665 853371665 156330796 906784876 499648892 987337450 579841194 735346216 42075946 875954608 671116049 935221124 26755829 882855207 75995401 739056068 405650690 973033624 763492077 180408198 511908165 970776994 532259591 584381594 424113928 37920417 266776263 40687313 853684769 30502574 782474917 979609048 925406339 844087855 326218935 699610418 274842594 845812999 91634904 838680461 777033179 626740770 731620866 561322846 177384787 972978496 883554190 707764648 855303328 645436798 868212665 995311699 848642141 495178555 729266667 865017337 211368937 380262724 628328152 621572750 474136312 610845802 419334005 821135640 412516938 747897621 795290783 562375832 107767992 768162300 262072846 62486461 934766617 426488984 270569857 367953842 908760399 863054308 670989236 988543565 670989236 148905434 975184483 381868638 297129327 494568020 429435473 23697692 890913198 171534450 979450623 760887461 701414696 675555873 51200899 558419268 80359041 886753432 86760233 695621923 818957722 699968456 914508035 106478425 841234633 578866364 670989236 333926303 986687510 294443526 691799801 888037720 860887559 541576439 246960415 832428190 220164955 901018323 693203229 851976688 942642259 637439851 926959789 328048993 923340936 30956897 111383967 605607417 811044581 692392136 346169142 987797617 951027906 790697257 186719046 943213155 560397683 769988977 90279079 689209000 820630801 720613763 914503615 761626864 684581842 230826125 901943720 683507113 837103840 970924541 833348918 875193388 830274838 958235679 864917842 180824777 612290744 395291949 231676039 284869108 346536778 278434187 811951100 443354214 663725847 505201263 773402231 684893270 331872058 811877135 769433801 107802908 66559850 792226255 929150387 265217271 609910955 725747234 227616614 498039102 198476774 600913473 340916428 185966785 893849461 648609295 795494524 819298599 676989043 673165165 463485455 183272519 580286232 441574819 432851738 148051143 537016458 271562222 488936761 650121445 802405649 120763784 998257483 202102585 735288979 729226359 407819680 592750968 670989236 94801284 733862152 572460093 803102511 606377979 24315825 856608524 377765874 853716485 949109746 720914161 972416149 993330400 130367226 957964604 60550999 751609870 944994620 203192332 470552757 904324948 56438626 204681273 189724815 648997699 39203741 854308256 802510125 891635835 877354273 29973444 128003173 480985587 49998239 986045119 776725883 330420822 676819554 980295578 667956291 882825307 948651826 749758907 542932283 243764758 682974322 206923955 965490211 986458471 674780341 158790313 776045420 671885608 444476682 482763749 511471287 398560008 413618402 980682573 245696492 433620636 908634066 438735447 701056048 920726267 540950710 201109691 254950674 951978934 932061688 819841603 355666617 520785486 320856537 263228554 230329440 168062374 813522346 289391524 430303445 651810656 650341166 959173432 22647737 919557809 590377859 79168655 63128629 767836085 851953161 156864486 811258054 910251680 899136724 918334275 85624227 995658324 282124169 366493070 214827196 94550917 879648865 405562052 403419037 889421312 242688159 347121553 692880358 823279632 647569693 938954727 234996378 696482849 247758927 720491903 956725905 960784614 642739340 135583610 790132443 801946364 3439078 927804904 503311170 504541929 238549474 322112085 236219406 789891120 850477068 250229522 671107100 240698785 35934758 535841676 819952331 921821709 35072365 187051267 300884326 901913185 185234226 256385100 632994237 966869210 200709030 217057576 679257205 394700693 994772458 812542980 827307004 677579673 984825911 770515499 918046098 777562643 601222420 873534708 86398899 779658044 878010553 176739667 719357877 445091399 182480318 76599289 923776945 871456362 98856778 24091188 129259512 149592835 713441046 135972788 127947776 39326479 468250105 468579877 763342651 437397122 922107629 919576801 395414521 554256877 839421916 436763120 173426535 372420369 937471055 414618354 912897488 827790126 890711218 985588692 865808049 976463390 180504800 313930286 937819802 676781393 727020833 107984472 891206941 899778658 495704991 950229112 388616912 152064481 822987287 792864388 705030820 697267526 646795008 231277556 783882774 179571938 581274320 906433313 489260490 724953072 949255797 756948290 649296534 795209655 295276892 287586909 272519161 771400023 694115831 789584987 192352563 717840412 765176493 396616568 109230762 974034381 762574909 541213060 172004887 780896200 352245621 286063228 894881957 846818305 401859190 939154077 13815881 732756497 744319018 854795730 755809701 232152776 494108638 969660342 62436360 987615774 939761062 263505458 14492180 185819996 779790233 473681355 969736504 443657285 87598883 952739159 670989236 927295497 790956232 223101488 670989236 554973800 151177911 265906609 586850988 443594376 141944997 593569895 279317619 996895317 955923895 285925228 903595543 976755907 757321881 873734106 974747721 809173666 945976690 73279015 986230681 30347690 995103041 827575373 912102762 764077318 929574023 602530556 660094264 760626496 19029658 846382964 322254814 868239649 596487599 804556631 922151524 492747149 777626656 328160126 547748172 750311433 725729732 422372972 797383764 754121683 803614719 871313902 387848607 489027584 874872322 914171052 608769002 115375627 670989236 525866460 738248805 241361648 840587699 141676904 673461214 991530012 23676729 390899673 766066844 601588225 496217848 923808898 842957485 244197172 845716990 457020337 364867275 860649552 178278359 723005773 513256392 896307078 372602858 605182390 524364899 827105375 690020671 359992830 985900977 302419676 900552599 970433991 397228110 358168346 883388768 1312973 378687921 753342786 440193024 959697937 709722608 805302846 518135686 283839714 408572656 966208508 937490470 804825710 928755629 833335121 319077059 570095478 872273748 532711107 810733064 425140465 406560019 947784000 730455966 303527942 940602782 282738828 841216476 825581112 102002325 732352534 896280718 997867931 982313187 183720896 697547570 296553442 960874210 203139550 638029998 984421482 887092617 853783777 825506548 113276395 948213357 791345810 785854871 899555280 516595680 543601452 753794334 843660708 886736147 865157783 846923069 632062195 798755419 960612219 920467217 433843022 418705156 949967266 85597631 509782995 755218250 818605760 114914633 353937405 334224242 400016131 68839007 252908909 132732553 906108015 830117763 772646046 945495461 462263836 285839036 191927463 97279249 958517399 603592419 517312929 670989236 221601638 977283310 731172262 893505030 14111147 744321935 463093204 206516058 818092600 508025931 83483314 762365018 692106198 320379176 468687376 691231310 430435336 59109380 944952705 858404645 847475027 364286553 944614451 115891621 763170806 837749295 551781292 849737663 509069630 22242946 528043577 889291566 393456836 680134005 241737970 607667070 693761969 336287189 296372356 483752603 300580581 885363488 669469093 779766932 443958115 972464107 884148581 777133060 764717918 890323422 528124649 507098684 83200031 378505360 868612409 254852527 695815142 730983347 683368729 57698202 900524902 407684594 669189762 893480261 48151163 858464511 793879892 361128258 894042185 695194823 222256345 867930402 903208417 750525928 77245866 694814445 788708480 944548068 506143014 651462107 400190860 59423807 124020359 689560815 939067800 284636870 261762695 749058766 520124661 867507402 566566884 122596378 704067614 850264024 232776137 524823473 155443582 12691902 640083591 684195503 919095605 31406834 208289583 96357834 768684911 528040915 790297254 944981000 253449861 962720771 215080628 21177837 354516968 248174882 857803723 357848153 735507491 887553924 430442536 342072993 539613316 646519448 810343139 811022674 799693033 69701947 834941484 415391541 130603771 563422831 413428822 834200900 904880466 707621523 344294002 850565580 357857397 155313974 670989236 246347426 345875065 808779441 571975037 956983741 257962786 389892253 555121913 710429395 900789235 508434569 198204409 10980475 670341937 391654735 962103179 625418910 435344489 971763868 825061749 757121844 14945503 341398087 977289644 723710133 502960514 368611981 810764855 682822604 503122434 125701320 370121610 705522891 365267508 995031003 937861963 905440721 847503884 730069879 679626937 164294017 666912725 861094377 403670759 622458396 48603427 652439479 745734404 894964713 344913529 461485423 767393410 284171781 893097729 799716270 789206703 527218984 379502213 125556472 600326726 707162151 211038620 686731775 900622615 756296092 708613552 715781003 553783486 301270404 73489870 384185171 750556830 138172563 41401437 523890122 38387266 764999544 349371335 913842920 168337240 599336625 799697845 814667933 373825891 394232125 769580473 725383744 302495267 887472721 118337866 891735537 862935963 691825159 650919960 339234472 122839418 950714740 988757590 938578527 705150729 874987206 236769193 921072461 86797101 957999267 869607480 818264471 647932772 977393037 87709714 933317472 824694023 629000095 180072850 562623900 964218925 996128705 816123356 992410428 952398388 838936496 761875524 430843722 705162336 736502871 874789360 374149441 47014270 237996856 587952553 843541696 483697683 705769838 872884526 518471538 777243806 341066605 704210436 682518074 814575343 925747913 515054917 776146007 437589795 464523194 507593955 752046072 778284085 443333665 121070380 87574662 636585525 291390811 442703548 559071282 877555265 910594395 946812817 754276372 718217688 875308720 670989236 301975086 272380833 414016796 4556560 675912777 739574783 266426724 670989236 577211205 482374668 872635086 865002164 742101732 28510537 978964698 212199339 476485131 886540201 859061349 524100092 663195332 454452675 962813204 817506930 670989236 461043526 931160278 460488801 742085134 150402221 769737014 983760661 568295566 706442734 688786941 334215327 900843903 715721966 490839346 700019520 53946445 400452142 202393518 236053077 578218801 748694437 634247866 744412791 490833828 72648754 326326152 76573537 626166929 213980906 943643040 489317026 56458297 771133788 140417284 976906216 41893750 924709740 96421656 981138738 757491246 689248344 187591988 992147025 879145422 145937996 882350758 287749611 958800956 947210696 938014226 938101193 769262331 444758633 193549928 698361259 341621970 243684652 94839883 572905776 584772835 855453945 959559813 306324211 241709227 885014159 776147772 966607639 294484596 889682230 987281601 933300520 655359368 861826513 248024646 897795682 809610608 33125565 822414159 924567149 183427710 886204874 948172615 543814897 143583816 498849484 428486305 32106299 995591477 502288960 988904881 115836035 886776970 921069537 988203675 782754863 884941617 337779160 846021055 782948460 242586974 744142022 943705692 388153873 699154788 714728218 241879484 894198531 329489761 730210242 896958140 738642158 328273402 899402496 812225313 776656808 895487604 367463105 150861498 670989236 269334759 348754494 713098584 191459856 73648153 567832987 915463057 199707442 587323926 131751338 536413408 80547948 622802459 203591486 319001183 588655383 222203894 529581455 46043852 986943052 784027728 3398495 412191991 329874283 236596723 938628768 435946548 472705595 342793633 196590868 972869569 201889376 433205093 526120777 731207868 769536343 943700573 793039959 985887217 396691678 416469190 118050140 533491263 149289998 957059744 743708932 742681080 78635508 96993239 570281493 824096710 821769297 671627356 498856978 751363082 904081503 701963148 978298465 893359623 13892960 704951900 887412020 753308179 566840566 568424220 962489019 314213857 63666497 818955614 989095049 996852192 910060782 102871357 695534644 486605395 746543452 287786530 674458942 436793459 51212650 522514376 714238324 27383198 979584147 280171526 863169739 171810873 687548379 834704746 617474216 129903400 798149622 882541850 400339534 670989236 807171780 307130688 535361085 917202065 749763574 548910140 52472992 983646241 621635820 714770689 738344169 549139053 686914970 885516057 841972096 818567271 114554970 201403892 904881839 369402108 102045623 556448379 786496449 927716848 953857675 950277778 712272018 319591177 399727621 128733705 707090906 722955533 760933566 795225775 101727452 781881718 423763382 479608616 779837277 879992984 415700954 216216703 417962081 877661597 720071803 774053062 818439633 303690465 783857297 138496338 346161609 787225094 589667838 670989236 65276476 550389259 876458465 223583148 839509815 676301068 421444509 659093848 367437409 632833095 525253792 83057164 598571511 907608510 954051160 806438962 896140306 682028863 852079488 94884254 899814467 870851900 751304250 748967412 772347181 358605371 6510933 460940948 778971453 434432283 478311736 688598947 890196419 808751617 649266259 730541967 833546165 909951775 91264290 696488917 587677273 95651079 806385067 959401580 714620122 844771788 558327636 828354280 880890630 984266462 312590102 589809974 657823142 417657595 775818035 390142723 242703248 517514549 945945771 663370762 371584180 265016299 734586856 196326921 33800692 689311752 653247764 906673355 201750401 878620071 995441088 792450411 251029836 987306436 863067535 284507873 338909614 827833848 871397551 660964181 928032469 680829570 973515816 682678061 575355708 673799884 911228579 997891389 227637741 369200785 222476565 970748820 206199828 892888445 102675187 578483822 238769675 815023022 913249009 785878551 804352819 366209299 947628271 673158014 872690495 888281693 676887526 43511732 737175789 837439953 818389214 213478158 190627115 740297297 493493062 657750116 562092831 849359794 301826615 984027830 99957987 935133355 189973105 585956208 552705364 4277879 3795973 820942205 887259366 689809868 962431272 388394442 798169634 885623760 660157056 168495152 177644338 443750696 341619261 125857662 357900660 944183091 583416007 292121980 80503754 993982919 107791340 347089477 836473947 996418935 712333160 750099484 249807405 854855850 655180108 284210057 670989236 832390715 407887797 595709559 412063271 848989449 759143577 437423857 670989236 7179799 556687853 720319426 982145708 21443705 237880981 655789464 403125658 68446059 732233645 757477812 459652784 841585752 570896318 827443469 699315850 663669516 967682866 707511400 596726088 839079687 605779105 928299297 993989907 863215498 400374891 796112479 709472276 537545043 242584083 445545533 818475332 183468973 922098439 399747518 850120505 999525725 466233711 931838334 512017620 756501743 624457820 747277699 946353448 973651547 891065508 879772218 739729288 638466341 693713929 916372463 551219185 158575362 20509349 525678039 566617346 185889226 779665852 671494292 505266739 382924615 855400272 806179093 620380537 942707340 187976012 318881192 67903261 780754995 69973416 465082421 955584857 868513105 180739958 538131429 472889544 735563698 822954921 150280426 383861378 392181096 223224302 474136727 931718898 488857387 18350115 563342018 729527881 682607614 82972895 627006469 645924611 626731037 484547302 802383893 557535001 893408355 955256278 855225285 754330399 725881024 741342541 299161063 931711921 943552776 221432015 804197426 169811635 375894595 384104658 186819848 433005761 513132266 352255115 991729821 148712919 855558993 636634148 750895397 848755804 774261337 935393184 853715676 783556434 704834364 589234846 731161324 279087832 987927176 818402394 725785121 549260760 422041228 277509203 950584268 283858331 673925026 760620194 99888517 417826693 938853389 631275258 827917539 810339042 993874127 773823381 532517243 231225380 719376417 694249008 596796537 863059231 586686115 435445657 896653469 930814683 127491181 259575744 49988871 406609022 263695873 853780179 491882993 750521927 830841190 728626274 283368012 381731492 963152623 795181223 824635331 896316583 124749021 828053554 457894636 811834792 999568541 709896896 937617435 721687061 953620834 15514706 801250727 118506060 670989236 46756568 961258607 502531484 308528494 726055567 426663470 956934585 170731162 757371519 211895187 595150519 960227091 296337522 114135693 433729958 876606513 302384954 901144511 450294430 957330689 875423775 855368981 672327169 378074159 790644477 549152175 967353730 595301219 282657601 165957071 901310069 263726982 20554370 670989236 811182255 463609106 86560553 779769053 298548536 918923708 112936664 818373459 289378782 410138404 127588616 794090220 727366010 57860523 837082286 907457646 168692650 793408841 423474 649046031 925581374 214154250 945885955 721428545 440686142 344575158 233489538 211377249 865556039 229167855 169057287 296010822 273359080 704691997 189984777 763624277 678474702 993888377 86288703 866103340 147810462 725673153 666678702 47107138 836882911 97376951 862889271 889863794 105249440 997883552 487965746 524959241 150668283 440427411 686985789 856739406 788764327 796730378 267590058 248182306 823577136 838249310 18423086 949128094 870994863 855291308 569700556 980998929 893254762 257195067 360576041 795351777 98572201 480843999 594525553 846401071 801876569 493464156 715792926 828380065 948180480 985791693 185387911 100500829 499843309 757951273 877786962 524279865 552313475 944773557 27234837 295605877 234095509 453829863 23351834 821621977 674254033 312225675 784618144 27917920 943418437 878242974 247854640 372234515 904522734 979236463 863185147 884712683 366436775 89084015 666389998 946710682 875236019 670989236 906777503 657227148 20756757 975329826 106929266 978724234 970241063 917741552 800309669 183073281 201451867 609725122 42312422 672840659 305028474 344341510 452749338 888984882 140765165 92281350 909763601 900932788 979839876 15759873 874333844 955580578 721087830 731417042 306139576 421630689 769904872 653203303 214774496 232476396 332811725 683516002 106063372 287344186 438170012 181501889 701073673 644308957 737271256 310706533 691105356 23305151 801021189 444273954 879531934 833895155 388052046 799830367 348669162 919408453 991400179 690330198 682123562 957814368 966197024 715186258 688736434 110703300 96576626 670989236 875454110 922688977 500970615 828414750 729867657 958380944 222919365 908217016 895130579 819421725 676840439 121110999 621763516 679798447 195937122 412720448 84202484 982817129 143134194 622609759 946382099 602521720 96472324 319289196 967438774 136558361 64998925 745559916 716153858 55999150 825883667 721942814 544177133 513980628 412292555 94548909 757340952 872526673 380901489 21211512 743415365 87437554 40153895 974007395 675972502 846779835 508207637 753819086 901122089 512693020 159564810 115244000 921486479 801423946 730005567 629309577 726560664 969747177 834051252 20580430 36164803 21175470 533407496 965167495 932674248 926006103 715787703 763994254 166323895 436948375 999588780 682769210 736730617 978530611 26816632 778679860 553853587 986479759 688872286 97427575 883773231 942977186 597363805 962456548 728501259 888515817 784783695 734474653 464079415 782355467 947372597 696312642 892842325 672859590 714729601 880359778 298193117 940707432 340554622 910901169 22046514 729404774 979454137 876960278 418034198 971990314 744153504 414449709 105180450 147774750 435389943 835306804 755223553 147445814 226136416 740037387 49199792 825745129 704316418 797991842 991684777 476257223 956259930 586148166 310135705 463548135 846321029 352984755 139388950 372924710 999686024 967189500 568139004 213945961 582779185 43331802 722455554 223626910 775047256 128465330 734234195 944972096 950222863 670989236 756307622 358883326 708800703 243717811 754572923 547231713 442793063 652594319 818053714 299268458 891058412 748821354 128880577 138385653 553690441 584071620 316539296 132550598 768273089 856602936 824740000 824474619 388580365 737523589 192802058 868842801 888930421 200515651 583924588 725196598 998381626 710807804 206699968 322057815 840901052 926827301 196467368 359620968 820909922 906855951 104757509 826777641 875979520 893774913 650689264 896053501 875481082 964608375 252865049 941428187 618019243 827083679 73281258 349273749 560743850 768931437 832789056 402518600 692602846 974727248 33620205 44829604 947332891 931490706 619231344 490933846 775063940 458048976 832421816 736255118 333030859 608254699 230407653 690941087 997176179 545355173 56401531 849859954 823708490 603409118 966189988 154734578 8990442 700122890 226056307 443094681 266177312 190290400 79563630 169721515 812449030 370282429 14434629 889311923 343351260 702683810 397744853 953032472 370462227 827855952 325167044 687622348 115451729 273127844 433575351 695193134 979856370 923228572 904594122 807319165 904606802 753162763 518153225 521701222 299369715 910026223 855715472 770067480 456133431 715170561 893368095 346274882 976462244 149117183 738476476 824536215 893775547 915179106 113464950 902191845 263035169 897688286 155430049 45421999 294544070 883936078 670989236 972178667 482711426 115530177 709582171 422662072 946989979 273084863 749725150 963110963 983047095 806923097 933508246 160325170 417306967 226173310 798680026 393574111 706727550 340412809 733087278 87748292 823435600 300794291 514970846 691785488 577924676 302837672 374810201 992114298 739704041 106948474 94081074 355449617 903946776 920549148 770962729 894421285 997333677 200688466 905754155 144830057 470749666 665138358 698923410 578316625 977295308 682572161 723923829 926369995 323159463 825982931 942526202 18954453 79965693 496116501 42144213 190210423 182497811 462772424 841057765 842512023 200357031 467137257 793386362 451250941 261023301 254659961 524813046 696475287 896036536 851178271 899876734 912745233 891408929 192979529 250369264 829072665 921398556 706288783 683056798 778201131 365107984 472729868 988827443 610107756 40901682 965046419 906981720 718053455 327902065 95827525 326577429 534892760 994234027 682710149 568228632 261712133 802727088 306115737 522396102 741129132 835836735 474342282 630135481 291980917 670989236 404723024 852267826 243053875 700279071 786047332 658330852 815223810 701881266 213266503 737078525 735721884 709281349 680795178 896555098 826216652 362460686 55174378 995793526 832953482 35639141 939114898 946349212 808190427 894725605 397349454 921777210 394465733 799146666 52974055 845871045 551341530 942050069 740754656 681406401 12551491 548633454 708883640 911389889 762826922 209013495 754657408 968046697 205672510 925052319 835971655 717900820 641992184 757755880 456724051 670989236 297460674 795531647 771093851 187620634 856282895 982394013 183412689 815191787 670989236 705144356 492309916 877540363 795550548 902388498 950391448 595228349 622493059 656249160 865153060 934835867 163037480 137505612 760596346 831546170 741577829 751427211 176822764 814112979 960019327 284775375 439649261 979284718 955998013 134881433 708897639 526275571 876682961 579050746 407384513 964059702 713943523 972879946 438883784 569712971 408186683 982324793 391500101 670989236 920177901 115595254 808410748 810419264 504837182 772087965 812458783 671546593 670989236 786769517 352328746 573737592 49331826 765235950 749298328 796330705 978663190 583287551 220557992 983744092 758470106 883464533 822863408 982398979 826098670 798873703 840755215 433517981 670989236 216593370 847209466 182769635 68100226 736308764 815674264 705123507 946713799 875438925 35720154 732679668 428950414 972239193 434543475 2863508 144694330 414645377 113898554 894485817 748220088 284622017 998754190 245763965 818768892 710979961 139310410 65437277 765446793 815537968 770142680 967350883 814458839 647499291 871258216 16410014 553297576 806794296 833975643 824912005 437659256 991254985 370397966 77873931 790257010 704962074 849725758 751710334 346921059 437469458 117204171 709139252 132713015 664513728 604578739 761937949 943293666 907144636 777039315 907802845 353910759 721972271 702620797 789632174 958846522 72174903 29161332 173856351 152018000 871980722 665262844 207906559 655578562 745137212 21771789 275454469 923123498 400244614 974773382 606237847 563290294 113039163 299727345 983084334 879209727 510072951 701413779 836885196 346366294 704366677 223868553 613604863 709058516 516829121 913516985 77456557 372954812 398976019 575419420 859696394 31866271 538189443 670989236 949369677 612033196 844769822 930560124 893508114 906390743 841256816 712373729 319899906 796839587 456331181 468458451 802261704 842285068 969708357 751407154 771704419 316576148 258997810 756806054 726853114 411775514 392463910 602589317 811389962 217586131 354328340 712039768 548275447 618115883 959692945 863663887 843930425 38804798 380902511 815232546 345229177 994636524 693184951 245516530 431596538 810654259 36914976 787571586 757676138 670989236 868327424 911667749 481440425 962635662 992580535 96846011 178157953 278791100 326495738 221419231 776752173 792536032 469462824 80611823 211875068 222853329 292528256 555455371 493296855 991207904 156756665 8821493 7787180 45667060 884750630 966646821 675228897 735344178 418965452 2984559 307528585 537489146 749837664 420059968 948974691 362394970 928514320 783620557 512244026 749428433 751371780 902540965 311646135 354866434 79261458 903495318 103657041 378339865 998013919 826377678 531165623 188378485 352234796 29068420 573705690 793362952 795185621 233209416 783032892 852302740 581294534 973072065 146580666 238789509 788198502 680399382 68434090 937383134 560953901 460205467 860497291 904248115 999419098 922107008 735767533 787560264 4548982 685755117 276752416 327160104 981889296 689196934 888491557 807485662 329266790 445819468 991404765 863771815 926488889 781325762 670989236 933364499 112380340 822016978 188687646 856950464 535522587 260953593 702287105 911839326 124822384 980331319 777859625 581931564 780447261 574360915 668195756 949739209 416594865 518318890 362220933 736982591 371170792 792399344 274545978 941223970 842590144 978388619 645412724 322730530 790301904 232277940 465140714 777493581 282531834 498390350 754995815 507408128 811838955 808783751 474486547 387588350 690165331 665983781 779892553 937313819 569577126 842093306 681409854 485178480 698857119 486426677 813568120 458496166 809146162 341257802 477255128 767031018 890969838 235179230 891894373 173402118 817901911 26527460 933912058 761820054 746870991 670989236 802641389 115050448 952937312 407268091 670989236 317358877 647908447 859850570 931672584 59592736 113898956 417907426 620996529 43042844 845425495 971775123 190524723 106141704 377564379 617555543 330048076 771927899 313615849 897553292 136574538 229045246 696108662 848489800 824556583 857580771 898032954 960014818 47687442 834744131 669053675 201452911 985798737 184092365 962339721 123741540 645164271 791432399 996665400 23724543 831125443 827991813 670989236 603303658 710470929 701356912 896716435 132495146 307163635 141681382 848997048 196124404 826174609 88016795 930100636 160417488 209928157 767463780 847614226 997715814 359568467 444571714 364323422 755525197 421753697 401256055 967013609 773914684 981289219 759642356 813945502 860965786 995904955 779847845 432415937 965465567 199877750 673160312 776494330 944352545 737486854 73650011 542744191 848989842 728760245 482125066 926156006 166454603 670989236 26941687 142319105 53021215 943270776 882444685 872489273 457988196 210871858 235591479 748288978 799407849 544199781 731316745 667180364 511396421 835363293 458265560 136554338 754776097 968721964 51399412 865448029 80295362 979480944 726025811 940601441 995011155 923106264 449921526 754281730 848051528 608301020 779315681 833577206 796486958 286211504 811606416 915502422 867539229 216954570 841151097 516972461 170968991 175156475 505200551 331520222 778413703 732364317 459325498 564024545 607609391 669213954 744005268 751779583 540017435 340718860 139005223 773857651 5622265 158232818 241034592 185688881 742452140 815536633 670989236 563808282 957597161 670724004 838959952 82579385 861409555 780432385 905157488 633948445 136534227 216162150 607472670 703274559 202322579 255946124 650562635 831261472 670989236 485098737 995543227 332849986 289889995 994924882 825627917 914032305 520830667 682101334 992135868 298639459 882431611 951964692 386489767 539461928 766685029 743724000 769993805 360276543 546683701 51134455 866918448 757452818 766806603 666244459 999115999 373944541 902742974 747368014 580720242 974597254 448649167 24641430 494231460 587586415 849656739 309272966 78409703 964900402 267256779 293780788 498753377 977242566 110106345 665574844 795946080 713200472 681981988 724806284 995371027 152396164 947955065 725532771 966101146 587767315 793970986 251466356 791412959 725155811 35799411 754948367 2467721 502988580 562133643 131769971 330155360 581433297 624661290 422395514 411645232 138705930 969331440 106057889 260866378 163003663 768985550 139596013 852929591 840306855 136673493 88365318 419100427 561797445 430495185 375192567 502493399 778850212 805160244 291190255 896503928 964346021 792709719 397866572 768401606 740825404 767852704 801861500 769370549 809818924 602941070 981426327 873533671 489655961 350807128 275891620 386952802 960387756 805777882 780687656 61709970 39869499 703838534 811330629 845975633 376538119 967704214 469538078 163503264 713135994 204787017 949303755 933506623 596683732 428389843 434786531 950581121 852055388 149140611 976895932 922160344 749192690 852269826 929883342 901499144 931422324 760814566 817410081 83140655 423688653 772976162 163388090 36589623 573683555 943302123 729919461 515927691 828695877 747938223 167101463 777529041 978915510 17811669 551321982 867430373 586195164 707655753 25792164 921382003 700430118 720413524 105128007 217299018 881498193 884949679 458369960 891670106 734069277 598269578 25927003 677122975 38308441 334289352 299927430 43735262 339460588 694457997 234837053 555742120 212118466 943584160 889911601 764115186 878558311 545911796 776056031 90783560 619666685 300064721 683762974 766227279 690418485 501036602 899658014 483653683 740523784 466573009 685753378 160245832 757360339 970486281 754829154 251291319 643579527 358631239 877404566 656293799 882929751 298987008 600964923 416829118 398070365 899249934 941080139 461784162 999951391 852975597 862673620 955875753 985937983 833730207 52957249 221329647 940078093 59529725 927685423 472364968 327774950 787939879 328089778 162206185 397106064 825438153 928788836 214184988 728948712 955626015 6419084 441511976 924231680 620065541 885384098 370545650 153472458 795700518 670989236 338787411 689791107 223132448 335994685 615286140 588072476 564779250 805636051 822599541 70966716 791264884 670989236 968774239 672398774 569427101 780972674 485625603 428161411 984932691 529589749 7976433 79960854 911032132 853166964 381394099 625561305 45104309 877061571 138021480 821463555 870113234 283931667 196737413 898807265 526013227 865050715 691193591 739883399 891446568 854298560 670989236 532055316 725068255 154746173 900302829 770416886 323076692 311793159 935977259 539942891 44499294 495977882 267795018 43927890 22682214 31601430 787140916 140348795 688886124 638315369 563265987 884695946 793284116 280789783 725270673 852393575 670989236 960583926 743218631 149473625 672558527 911573206 811552489 853375273 70254267 480284791 933341172 974868140 632515264 698059509 625734225 744337413 106059150 45492070 763510143 155767019 930273167 193410283 601839259 511276179 566764584 809363345 328500037 270122244 270266461 764501686 422054191 387762881 16326721 911342773 74714118 380325057 305379423 979778463 890370399 678160384 98187602 470950958 563520463 907670272 444116233 848417153 895295568 713816185 91386099 728101130 838812380 58205253 440925386 927808397 629923352 138661184 781658170 693933180 607878338 798869725 875415274 970906627 788536111 924681799 553671005 206855253 581885019 70944870 738871353 833373793 907570732 475312657 506282186 250115764 118308893 747253107 918204704 866140906 9709489 921136070 119273273 820480307 116884682 287485086 270524497 775735977 766554458 913300135 892154278 348373805 51805379 678594761 743601925 924115806 517637069 781678437 835333204 281638855 698983368 461301154 244983098 471378191 435294553 908957344 419467628 743103063 766345508 971468536 906430266 780984816 921248108 564355791 829494624 886679501 207652407 802351681 70689920 201616894 747782953 466166382 864949164 815018272 935873470 807599050 158493657 289544418 126159601 275889063 773115116 727220415 417089455 373187484 905742008 881574266 253368217 706765717 670989236 670989236 798443326 900460548 947645836 591417872 303879460 863451326 31679421 919166147 972519149 89289971 951575321 782986073 736583167 546268344 540900358 696620166 377257289 338069530 907987591 749874781 565309017 202380380 321568151 894880134 372635359 794107041 668815793 583672548 202122689 727664353 729922361 334974921 171738467 979494886 696789886 137124634 315777450 914176696 448273773 848478926 770836586 840010148 849330539 76853173 63001738 994418153 126899100 883115908 703579748 670989236 462753828 940708766 982773676 991635062 512067680 154329522 655704717 927878748 872245801 689548772 387195322 739124212 976536747 674575671 988816303 891513799 462395167 946876821 447344033 381322335 475944828 781490091 815886926 778307902 141421052 142291968 708408242 501815384 743377854 655019633 876846084 933850992 127461644 788614283 146861821 665279415 729564905 952271614 343736242 810589863 670989236 585508649 719548504 97447289 698579384 623898652 815001063 900791584 795648158 496096807 988667635 27480344 326934399 744552864 595860020 793926793 392239984 673195675 715845531 8866827 971767976 552616660 845535574 321577007 653328096 544584439 466176588 33325256 583303237 1458003 962642540 146787932 834325842 252704360 184233112 543629186 350720483 503429915 390348741 341917287 859721658 750693165 849324709 219878303 786563877 224420058 891170410 499228029 904495636 679483176 699197233 869298465 942416125 241811513 534640361 963438598 499136143 648900345 444943362 18391625 963681139 337351697 207357968 209308402 396666753 812990941 957259658 852820707 834643817 728666564 807317551 779935505 747384796 448365264 109197793 247938566 869870681 399211278 867327038 779823401 911970960 670989236 853244392 784404909 174207983 828312149 703947913 926228633 824041142 158112 886188576 880556480 184046217 851284989 303370922 257720701 603018417 493513292 352579708 759868134 848754187 216724593 829002029 670989236 8257645 911958501 194684832 128004296 816342043 935474594 737389218 948145069 798079789 221727084 277843223 319501590 428898322 792727666 707738979 7110409 561932591 827635657 764411210 877695906 254885080 655657571 510420955 267878794 25572353 235459479 168210896 381705126 490694151 699075646 577760140 852848153 540541508 215458133 792296283 19246389 178674074 908281551 207083983 432680753 390389227 859622421 830184285 875297136 698806767 695936725 434841392 758891599 791480219 995103636 679589711 288494560 877937769 65911944 739222476 40201404 41011592 908761035 400787313 489019740 135410251 79079831 833823034 804235729 204402030 533595216 566121070 450231670 272100702 959111281 941730220 817607101 861964682 829533947 230542454 521244330 744282035 322681999 389823173 802892268 838672528 479468826 52117981 652619596 837628757 561612247 274377955 799108968 979539686 944711635 493091198 594090481 278920971 135809977 627465165 978565875 455747502 276728342 663187698 802262020 189443932 894523767 716502252 555159673 745991393 917778374 205446386 465198294 180470687 659986955 670989236 311559892 732209078 736570989 587865864 784452472 729028347 681145113 98203720 968637409 1205913 253989177 315389449 521554112 828207912 800580619 95671619 634031871 793992554 90823624 238417625 966880873 407631876 917379528 268867173 954374810 558456241 893245750 90288866 739151072 177244521 835229073 431575486 972370945 862925139 792204630 209035217 308875079 211234854 803716831 673656253 250104141 260434232 890501759 222234621 605468106 788298539 816132582 750207283 735093607 672442388 179686058 670989236 434578701 799836892 74913758 180211522 662443109 489816944 735587899 876068094 658618935 205800823 860374784 725644425 719347829 590910373 844980528 263969108 672162993 758159221 817023669 887825222 910499986 162904746 805678569 31754382 47154488 887589705 791487976 855729318 792064187 801110803 853370400 449007932 977186581 217088189 858463844 153193666 443855235 397579329 981567241 671473365 927082624 878332655 800703362 847407189 457562860 944447194 802567072 921531310 241792969 251196419 551348319 801953370 803135316 831032724 523617114 440037888 245097092 980686594 687650782 843229915 600787624 634192889 959776508 147991972 76718197 932933534 634994690 731254220 833841577 859651812 734922905 290556709 802074879 813424018 537644158 820617585 558013312 221705528 945537253 848620095 977031604 712501232 482719151 30526593 949290769 811685941 812716424 280857525 606370328 759351952 673798371 697823295 853781611 668287366 693804765 115064 258159906 979383139 940128423 315521079 365769537 111984649 187405324 844114725 743651723 917034270 249745 455104033 371659138 903367559 670989236 472269907 498956832 754852716 656126090 990777258 644958937 599772175 890651060 19773388 699046599 373316725 979304409 870363452 77617275 484168809 404993505 645067784 239610771 821780055 933521237 337194088 466736255 141573626 917188421 680422486 535086331 56853598 773957648 820696388 13159265 767187241 574490161 746874383 333600929 502674024 450558406 960616238 568539598 409247489 762886642 912671630 784908902 497923897 782899704 677551297 912534671 886576338 774272379 180056901 610747830 902154457 578261411 995834101 605891518 936085390 986328201 699403297 714347167 996233324 994417572 881927359 392094854 516734664 856487734 696645999 816459319 610699740 697386299 434895613 702585466 862579786 38436528 758418604 314252733 796143951 114443959 435356966 260158869 599701141 718456628 778028706 549547829 203162923 216132429 171566664 49687429 974038120 870933087 615515434 541289253 941284242 746210066 23167446 831223618 771058154 897535792 610645196 946733336 8675202 318266319 733152599 792635691 749919673 807413344 425547554 946354574 671902196 245366731 722967368 887269626 512041224 671140831 686750295 452313033 136282461 858942084 289096745 454472028 793623780 721449148 383174759 757113428 328647748 549931954 718477990 661748215 996630304 794581863 938171632 915816811 123251771 454119798 829989407 248370563 266947938 977230980 87807046 919310956 684386533 896909416 435806184 654484290 395115614 694245663 894058852 652752335 325656433 687751264 420472767 916635082 829351422 96493201 706893527 845702019 563002658 941896852 658555856 890987008 808199198 495214625 189478239 380682395 949318903 578649195 751452624 954384621 853395354 616286131 800563690 323638044 356026484 281002048 691621989 896460538 273253739 723564572 713891812 959457309 359911769 552202387 567167441 713956483 321644593 445652075 877397070 216567839 891759125 769988179 726883421 891406840 228729341 817037083 698638643 242261819 914179689 797289280 786188597 462803650 672365029 758473480 977028138 858310295 376683683 637693858 694437230 627427727 707722142 863539406 595596846 953994308 783847867 689911144 288246678 590894142 735743628 357372115 985258394 874220578 841600059 539593753 34945230 384019448 541885091 225325655 638268612 275931776 182065999 196147122 696170066 973050427 957773467 439967696 257291888 703460225 881329810 430932588 890439125 798265212 798873318 979002768 82532703 900744432 207936068 6070993 843459582 356973534 526960382 259151102 613369517 746568803 990337366 725423994 953566089 916030281 203107508 987303081 579493377 739247420 535112626 910490157 960944782 666583192 77514876 895603698 774629204 760448051 255793949 381255498 711834685 908594635 854166044 50599476 194998242 374676785 230456734 408328371 815596486 584651406 465433270 143185979 473729604 374069438 813580578 750648086 681782403 205994226 878949261 42714522 213599455 357516366 135902822 855151515 473715635 37680138 785014694 66677234 49554342 717778796 437622419 796526907 724734741 791149409 503143216 181210751 86692642 836638598 693851757 239969999 673733727 703174529 222873162 170242224 789869002 808279271 61205476 964048958 342355708 744225403 151996026 758194273 103595107 615201127 646588873 745328596 147048155 617044647 344357497 401350463 929219341 925069846 923808001 307823225 190848206 674258087 26828890 957068445 791240742 892105333 317298388 100442631 659714309 488581626 980509224 282581634 577218839 966094520 63583245 625528104 930381107 629504696 633316007 402611193 809736908 124499617 902137147 942798401 975495436 286222551 400545103 798508845 790266387 658686002 701856222 931947587 848127133 973792165 7216310 431862492 87224598 156341438 782232177 932608543 376929191 306902981 471308656 37405780 772933604 684239298 565969301 975819261 831479548 904096348 850221129 195407218 505428215 940326826 687726708 788549680 935450397 425459014 954170785 164743472 651358108 305100597 311558461 765116542 926758037 106093917 889874825 552603415 947258458 730380628 943587236 550082402 220218242 200039355 640285616 467649885 985929322 497118594 45414976 231395565 70408307 747422852 510177578 673259717 690261765 201443095 897832752 596533026 366251238 772243848 718072870 53669040 596973985 291758725 682169559 484711526 332062696 788869770 798705006 781956899 237059617 93484790 159074303 947702924 17418868 611771542 319930888 480782068 917443354 858700485 984602260 900661313 799030580 864601019 830802751 698266183 763684820 700274131 655346593 923487455 617110681 990367040 694582253 782097093 851726650 947173027 85173994 199407426 24549625 620984851 828205229 386936620 880865563 101055044 379943308 932191308 534703813 892184813 229178375 293456088 889057235 885759561 668131534 772677155 436771558 123198945 99340271 811152049 111174983 124611332 290603836 997780323 701538551 805042045 841028266 355914371 665197179 797903898 603982043 890595094 458039905 910606670 251737527 657769165 736582269 951216382 232350525 999250084 717915802 972439029 670989236 152513567 385003771 70638567 654544975 735277073 86871489 900420036 763049500 718096536 408904298 717119180 308322500 724716821 317453584 231425139 935468318 698535410 66365582 444685294 797954310 33897585 862818992 374320762 948430154 787738579 956503864 84886583 173297732 60207474 747746607 139149454 942539747 699987140 807178730 345684829 956489596 451297520 861647314 746138591 958637727 11487989 362232637 423789179 771699402 981954419 757964655 798643734 991562090 829006584 939522281 736239678 776365350 667652795 285362424 858443888 817353454 110694818 983649556 725191038 519858185 313561896 108662368 768038879 518746068 440605526 142299448 878377533 224740214 701629171 476487693 200289733 381078825 791216773 436379004 724679731 34568378 661985903 194897314 95788748 8478958 558143220 689956317 834631060 596836010 990606776 237313259 934559372 826104064 662356573 752727828 718620415 276933873 806800045 37841927 496948794 539903710 794618870 18329335 700961636 131583131 845759817 667131210 759673611 461826946 919167988 237339954 834359427 666232595 512353804 746938039 700334665 228962931 155098532 116742731 382787640 653396416 28357480 482486965 932036258 174939 827763050 815949339 794193053 785564203 395765621 299085768 782093077 693503115 429332408 970242857 951469491 14765530 734737731 687221476 569467064 130608685 957020019 712240879 893508022 624772319 748350047 200334139 851742362 590647666 638218651 826386151 813763863 758324295 696365484 299899030 504172135 460591633 687438342 792526428 933398970 198533914 613540834 872955432 612299185 684207287 111545144 970505422 706736582 514113868 382004978 902090021 856543434 531371973 723239303 815326168 960856666 115609263 650012657 277273642 455437166 194645641 779002725 592284044 624383989 130273279 790953991 679545435 779028542 461947329 558818341 294126222 795972322 910527118 801052165 665255565 859348077 675689610 950487715 775602065 883824290 925811081 734744052 797099938 195902809 680835988 864452415 149800283 26999989 485001800 979063044 968901773 743675924 68534236 50830742 424729178 660249421 735489854 380660629 393104058 670989236 915101795 755868122 119515558 189379910 718265407 316423878 857417483 84031138 414110379 195956662 984504894 881696041 983296781 72633113 486849812 837081333 931574422 219661732 938058619 949187890 21674945 957716513 168442977 727434310 618884276 913181159 333443262 788140919 932393042 973855668 673790961 788311911 510197685 801213498 428787273 716064231 755852726 471976076 422105762 996713131 397873912 293407402 266597220 575287497 622576832 408570998 909443413 776611435 828455843 940045964 113831249 772446479 765809601 792467708 837279443 28280297 708073502 118980704 384431320 701728569 901311885 544342141 711823557 69991210 515443647 955143956 501476361 889702299 718319417 982791454 460929703 599017807 945099350 822166066 860951202 401434056 716752385 810717074 871569051 741777769 341361887 785044282 530994410 324908202 516288290 909109931 428896539 417031738 731452474 669584572 49829537 271114762 804468332 846250618 813210822 391345132 456132785 684875294 896852327 704740655 328738364 956753157 231799777 590797151 973358518 71275022 772912794 670989236 212501065 572652454 785685486 995708690 942786199 373434495 487258947 361561062 841625809 924703305 400260238 250940795 451100898 417868716 782107966 706176373 584430314 68348278 511096320 964900016 795801029 481580011 192632928 937186537 43348760 923646955 215953820 191637217 995011250 843032856 857400891 836660892 359750277 245572547 627594953 67767843 680891783 663918427 916596890 580623295 488297621 767560434 959830964 372079722 181989449 135380459 763580626 945447019 964604317 865856379 809736207 713520378 161335257 694293264 952712310 453746653 825834164 778038409 893419809 892367697 989392204 304349899 824628617 840055066 670989236 881126064 942843222 820374055 622219672 673202606 418248851 753490001 690198398 549837717 155310490 697849684 468015566 807419627 696442670 208982955 21191943 724239557 614887835 181757871 676711004 858941904 802186701 697157751 884281063 54912452 610803666 408785958 874472202 113880384 849186562 786572171 953916659 5794980 920462234 978531475 144896158 975641766 847402647 196910953 640195049 507978875 760695547 685701551 494177865 313941540 957858516 913220672 225869815 538306652 790045151 593916880 832657864 854784034 384694965 688956542 795947279 856104544 292006649 564776518 606587618 634305709 981060272 985265402 200541329 782328101 782195670 651536802 120494171 670989236 105693378 950985736 578585569 105950448 771279939 572221702 775128379 326501486 17755658 873182725 663554916 992905315 590806644 953647087 684790852 396188962 88422904 968594847 946237920 354021516 303649094 716940101 577514721 556456646 700471612 824168138 79289048 503435322 733559034 655607841 910287027 36437487 758006880 263023157 929709540 636800574 701339843 878224953 948755002 472721062 792014446 532389797 82587794 504373720 230609373 806372664 971640693 108307404 460421239 443512206 121210630 652026140 541660116 973541381 610763995 847431810 867015205 908456617 872644277 741234767 722176898 307966947 415799467 967177389 57295631 244432494 968192830 741413110 480487148 929276524 778233038 716237764 232861398 819954871 591187021 935484744 745574187 497322689 971599607 153481225 805988107 138347934 906657317 457234701 156873683 631182288 880493356 427589316 850093372 810832606 749152716 277562054 432506927 742066202 234892442 922327700 893119494 790624277 552869771 339401492 734465277 617203085 209637694 668535109 176716226 936069756 781454848 302189047 670393824 9088384 685202342 182731602 223617025 42894326 472294338 181123002 250357306 107809363 844472277 763095946 670989236 143195963 871820969 963754090 323449980 892554190 142828159 358044547 623915428 254646652 936760504 923476337 581388798 175657855 871807408 868637096 582690430 670989236 422607457 876363337 146934632 936513664 782605392 876359472 628596051 32087684 836064942 947848946 498798935 365402856 231563475 804756225 720185694 924823750 461275612 773195458 459182300 546946936 933743964 477928824 700068869 100663901 176120600 897072648 965208706 603113361 834030250 41114975 996098876 300739231 4818562 124388787 16471594 356223919 162561681 668349312 29942459 987862793 809169481 900362933 916733291 469664212 238127926 538067621 254494642 194409325 518324940 702681017 243050789 513399746 813251679 527966741 846316510 699590478 589257620 607476948 866402286 247105528 40122807 83364348 865554902 964310324 768066832 949666701 712166046 806957706 350288916 752155181 740096157 762565356 110377590 183641089 334397297 790059029 181333303 396043777 772319728 509384965 252200833 877308939 905392875 581451740 925204202 358363410 93707795 725249834 753385555 810142296 893615201 7567678 438039059 494828289 234038733 427527116 480834003 838439581 797515957 73518287 666343577 762083165 906366536 670989236 478902182 305992720 168117412 974411530 83040476 386947195 956675940 983808846 983438354 780981242 35002286 726221050 264181250 372108070 184244233 339150867 846954091 834971688 9980291 963930011 912653366 815285493 223658215 840390211 259687362 293741108 12122627 415494863 740785824 935682466 749271593 928724084 884219203 780649730 469333156 791094976 226142130 108671302 814962979 565036616 208744016 345667454 693446527 480276465 977918753 224204328 571844963 80858950 913099948 843351131 732236680 65257279 879146800 239152138 700411909 919833193 702364194 900712627 548242889 263236153 822233496 43133683 665000094 41095197 250524516 407798979 182835602 258274843 670989236 347176710 818940754 839617573 108487390 935099324 532024118 822159216 728431402 773338995 669414354 2811627 807709874 885928473 247727032 2779829 839488345 337917545 920931903 832785641 418703740 214671264 243402414 928744397 439516133 868464891 793851670 744617955 397369845 918752458 474955607 355146238 900228602 771530145 816405627 813435490 86816872 941797085 893282279 786327070 793324966 397509946 966336638 173764485 786876647 683249189 104425013 858712266 547120037 952332103 973285058 788564329 108247072 713255031 750582818 895830498 340378970 268326831 576819066 965406516 670989236 290370282 997498720 775510749 999054084 996060568 796857452 938204071 371621436 64849584 892793344 332506824 574331787 713264623 503199122 281944952 940042897 691110774 787052975 125262276 19391706 951897498 719052476 741615910 781364034 254957483 943731692 872062350 561156070 993466073 171668897 65806336 89773378 528067074 239399018 40516345 455786479 990241494 884298537 564475523 27285041 18964614 644255794 818869565 759613860 560813941 835846588 120374473 93129146 853518772 135407501 161826448 686912943 349421605 419998765 929459311 811966430 674566842 568171780 670989236 131339892 781823751 695399218 936687903 42344169 899443927 919727042 474138848 379777375 26383125 18662199 570777586 872806452 366067365 905532300 805038888 214776307 495980114 537188394 140929467 841497112 572849670 505910653 463832474 208240345 261299999 435875604 321803225 670989236 702896969 165880007 966972611 627947220 923235192 719174282 906206184 563519679 218338715 627546326 982056015 97672813 682911709 878462831 455419840 96040145 848778860 638189896 860760575 474066996 889613733 844852136 541537364 161276186 968967402 864285440 888461150 715813017 613335760 627426014 910561070 542000809 147837842 907079449 629835692 670989236 939650844 246563307 635297252 484835377 836107542 835179769 346323479 478601768 602639970 384625983 113616891 381616236 269961201 449806506 739782862 477952760 166152842 876897223 618082007 600228355 723541097 168244077 788365255 688118065 329784598 757889474 585421271 1333649 257622001 365794015 882511062 76870979 941070050 19919250 455768411 705744898 138714775 950235510 774744862 609296100 326012754 915606331 5586284 552640754 882906187 836758839 731062035 472981593 915562721 955603707 230827788 786587809 206206819 800355383 628325159 506227183 625574207 974511101 434538648 893556177 285228877 762433837 416793864 284218895 869975893 843515148 156332816 849018009 585905286 50719018 954027414 698244813 618450732 880044940 172027937 680551584 609526002 633074184 540441489 67987623 553211025 737182048 785649841 248079615 220751275 937402605 734973448 953885731 657899779 758245556 807512695 221484554 823484581 706850215 724323854 370820360 984676245 889559282 209147760 846209069 161408026 115495662 318871060 781539076 148298524 912312834 101148785 371712831 236186784 114373450 655569043 309858486 490397928 871002646 174547197 222080976 777987914 882928533 921205682 728127025 879781703 950820465 765834793 788825311 753246232 838647897 599436439 29170225 413774400 878090179 281962048 505757365 287341521 556554546 211053379 237653895 347313243 944498329 963343627 530319621 349219004 976730025 749295900 996010620 753398594 862168101 142368491 705513010 65915294 450370600 809110404 291516979 826735170 862707660 470303936 877662774 358010029 125456879 164811767 891896607 464543589 766191767 602900622 943652664 727665779 738135170 862745009 798618379 426640730 839382275 654585220 177298867 863017999 706928414 213413161 637979687 762713732 73433186 511210915 675906168 896407179 956720709 423988364 811267352 73241741 748976414 673603619 55792612 919794270 233087943 824840101 213172770 715533002 778119127 828235699 582322457 270034253 829289188 457735400 912382849 133587265 364725486 699142581 911672732 876978021 732948572 735939680 373784136 530645091 216707565 177238395 490876131 981780862 728843516 931903854 586896281 579329474 360522920 972853164 954398583 826115079 673765594 454062331 527008674 48772373 908252353 933510331 754313032 553139776 748226126 890498404 362705180 632281695 107030661 228803043 826891896 312740098 694234637 250525880 963701354 54580881 134421247 937098264 728636423 880198685 2593889 735441857 648211550 591688972 938777775 980540528 730456141 131793687 287426712 534344724 444681289 631367733 818683561 919532415 711366163 928957380 217678941 344036527 376010620 999950918 806384253 267452875 26464133 447289646 802288578 34129732 987012171 789666685 514475762 46840146 416720654 961228054 427245469 61923454 824988506 758906081 92418549 202839655 664271057 3613965 597537325 719302368 176198397 16164377 722573455 845555965 795641211 974175653 818451926 670989236 654886878 818885339 625828806 619034429 520823821 510870815 468109353 37089262 888465039 705122949 718565746 983332585 922111739 828062677 670989236 472600954 178442842 179256429 818096777 628633046 338088278 999084899 832918709 445340361 848439506 796387285 937142276 721958472 417690333 592285816 757406403 497611328 296179469 586771688 847711065 98044799 883269608 688018852 757273483 744787074 444656167 496683897 364374289 162379644 852297657 963727643 758110526 940881363 899021825 920138385 419440624 956419628 335349107 730133348 678756657 552089172 877947915 393834621 147207729 799927113 670989236 815410662 853905767 845349822 43871241 828553099 955566558 374308025 728271254 515817312 385382905 648298731 360500424 984632901 652846026 646113562 907331781 175454097 471115815 906725997 370788792 688734013 910271962 509273703 818722323 8109562 670989236 996313046 631204918 343075763 809479723 619359541 904808522 594872078 24652320 663326161 806718071 619018550 901923854 701383833 606744803 323166298 21777100 939116524 787251278 827397520 824270205 1480528 221568506 805993723 828148385 990909169 271021432 917320772 498766418 895197094 873147369 722167793 455637048 860975704 367432924 764330934 701789547 982983402 373581323 3754441 2297202 282404210 129546679 951962835 466971061 705791923 856630221 742604727 842436983 938866846 840193880 326163978 722878304 774395969 593675738 809399880 739065004 695805336 670989236 226250840 543625321 788667065 423861927 423349558 321709822 896449769 712005502 408563136 471097847 758004280 737943955 142834982 63834983 919938524 270708907 82761828 758291072 969376870 150651650 876474978 321349750 68548379 94171695 711350075 651311219 56302476 64956418 267783398 910191908 305777704 998767649 482911117 952911935 36033234 6780516 656231009 61342892 750064124 912625456 268153362 103759577 812136592 853908468 631370600 959599206 578445335 837683855 892816365 248662042 696205197 670989236 881414099 59329958 972608411 498187055 426124833 764838886 602224884 947123495 906376208 476731729 63765641 433781595 789527814 934072241 705420665 377033696 479557031 461991094 305152148 49169334 607188655 694149908 758949545 49773348 279823548 646839368 990608119 595767501 753578464 679534623 762099053 436739214 302682608 778263584 941279780 599847739 606689030 926025993 797222112 667118695 469694915 976820555 440777317 459921611 637604321 710922540 278021335 738584605 765053799 740210600 682286784 827185686 402214014 774212276 892463532 431862800 994449120 478905110 768465639 833607697 638452917 124090569 950019594 497770909 205099398 959930197 425435093 354202607 715623727 753981810 59279438 813259578 83271958 819572523 946341067 389655731 32095624 412854940 734958941 826409117 699024359 933982042 190664800 984791145 816049346 435109942 242219868 43659077 495862838 657178053 928660853 979881671 917832797 733990032 787238404 466679771 351084000 942097586 441041873 702584339 837430804 757686769 798042606 369521422 34911161 23339310 62436340 920960124 952715954 849987442 999026622 694892877 7934191 893341299 107277397 972605178 531057686 679465601 70482732 406984105 146817604 713839436 206120472 356969462 746844762 168399239 94747253 505340895 59331619 607461472 644174023 857350242 239699808 791887587 328711872 902771642 962444122 319036031 858100331 87182974 913018456 641500680 886320065 516687206 833578004 753548455 312663093 319487987 923872488 951366638 905270056 127591453 535211096 244438084 816935330 409482137 76747300 190467324 549261112 679744850 713078686 844352554 953000559 464492626 86543116 934071052 704145122 882830730 827086362 140166532 889246773 734342204 694587331 320173871 581290736 899597398 752024939 378441054 684261906 402441891 648334138 185064544 372927603 778827107 399118450 227960424 391700520 846241525 553602564 751010086 628361659 696646691 652387211 496824097 208400476 841238673 580242001 150875849 768346771 685216118 530827878 730163826 944075375 767611773 63871947 515643594 536465925 868312908 321582840 838630906 655702773 982968217 921827814 715458895 686503594 8417128 731172550 266772499 743128331 742855951 213076581 458807768 665034559 688767216 964454948 882938163 975027351 806449494 518969302 119470984 973430484 831224312 894148988 877885236 571429555 571894999 503076413 801126316 104746905 473060985 626215991 729321438 856919791 597171524 793555448 901695780 311102352 641400881 918261957 316438470 189348149 513237663 434687830 409658594 75388050 176444175 679367993 634598099 963123705 115114147 951684868 7349109 754548680 825077707 39705922 734601810 906550094 739788213 784071423 948781536 836067953 215225535 249822698 575726945 682094645 670989236 886030493 830588820 413152448 347617536 447479804 935447225 769988332 704399242 302379896 34247093 917672843 532054578 946226435 73050273 947591434 690362230 495665529 141484952 398882776 372932249 29764453 770144950 46471765 250817188 811120049 533398698 661508516 691621201 296254862 62597862 233371267 32923411 462203284 965909468 452187624 1862221 345094360 885801559 586171088 594867806 934272791 205838614 6313535 557127870 687798241 955133120 317234458 738376036 786877668 995242370 330830028 188658807 815427812 622231034 922986071 874998334 913555357 983513767 855973708 708975713 889542845 565788875 965056682 949382180 457087731 992474622 904506142 453331631 889947476 764005472 161399778 497484360 762048607 840021400 550111092 879552266 789077828 982497828 599385194 629505851 327490257 12324989 261801454 7198539 543029467 549884820 865618491 538040415 273785703 919904177 872917453 793655956 624811060 796860165 906026103 412341623 995536373 864462245 977568145 976786752 990764367 893895705 534972891 202580831 51571061 773355900 446122329 775186585 462828553 858246199 524852798 736796371 828663678 470918595 228961069 365021060 189215962 664985291 977878737 115138834 456372986 211140011 208901647 900444190 228958104 524339424 15967710 357229833 670989236 910448771 390611202 619662477 13667988 387394523 899080458 929424540 931892426 578760355 846911139 20943422 909934941 224493194 885504071 485554454 814627453 470735604 143176194 831025401 767299544 607538821 107792650 905184434 763421142 789034040 916223205 981628352 869423766 480290988 988295926 785583489 844780768 801295115 248333195 838786234 569368764 848401902 818276962 835932019 91065454 847034268 443864396 936430864 958262860 914845736 455284349 697221048 425952154 715400810 412649966 15553144 831444043 466246429 116740032 7704371 614852700 504643924 578863713 802494156 605195173 803895375 202011187 971282909 854320955 914734744 837907454 306568791 998262432 875195415 242876490 538002290 920235584 759296501 190781584 775147263 327339076 737178113 964651186 802655273 685930926 356702962 166453976 564196200 52056737 452089550 796236326 755493306 49678366 276477132 99948033 884643606 919456579 672924082 963685400 751305724 892030001 227495938 172815955 839143475 603058640 937018333 443184519 943804667 206955705 9899459 361904376 650548064 446224855 890756379 445800467 904149676 668204671 889799332 11162637 357786257 519830921 800566951 356881270 811161380 92656707 822718731 678812155 921311811 375821770 175430747 692442075 804622407 738217676 938021902 809794138 938809944 103024373 842427805 901327053 153882735 726672710 915281537 783105985 773485906 891165726 781896845 110990668 892428399 985750611 705555586 343676699 922297104 665949958 460770562 658166047 754714360 791602387 137977422 678469936 892846944 754502103 343702898 917471077 606883135 907089035 437307152 886287659 888096978 207125735 788854384 763159495 742674206 805096965 245066641 982311245 479938239 562149558 270115980 969697813 143646057 859042340 16666199 836227640 217087412 156933997 609091568 383070723 990727340 208694540 20442384 101923432 931474754 940619730 708412904 614413778 64103567 235246367 746731361 819540510 360388909 469557861 230787822 982756875 425442396 406142238 861441559 774301337 701167123 630299860 219535707 932935812 653032435 853892737 899896894 324361718 990051721 649572759 426371923 792779934 984589059 197147406 438367030 985606686 702537997 919097516 835799230 752143657 432160264 460629081 575095311 900973263 993857324 216748363 384874239 973715716 175194980 513948870 926588502 891729123 716541359 895624144 670989236 584892807 915887884 671873687 287623173 362667412 861968977 191980030 927083676 821404514 239197181 115894659 262889804 636633676 503166383 954736379 86777193 849488669 573400377 291121774 871178148 117846160 63982570 442649964 727554035 860514839 768887635 597525308 287753607 892762595 353244481 553456547 20185276 508463546 51047490 12024506 505423770 630880191 470894364 693081050 806165102 922364887 984735469 202764764 549780114 550705284 859459067 670989236 486179733 326601034 665566399 138096862 587886140 688595094 399750240 593454426 899590809 179927120 483865556 227883977 407985161 787490708 830604839 850941743 9636261 672448348 236448600 533524342 655987749 940156473 277645363 101924307 763885276 12335945 106079619 83634382 516640853 668302437 925958500 68557202 968599792 925053586 742454956 158475609 589565635 914369966 369780876 952823610 895692510 930164681 788639849 54259297 694603810 631234019 908579952 893637130 837461287 974207816 795898835 886428874 724297058 546214637 267307854 305100038 651873356 547797002 472236833 895223205 722987473 977735804 805871181 389536258 288948010 175795451 230546562 691519362 865192833 84158157 480016143 623903875 706766896 741814179 224377142 218501361 531037241 842098110 826383753 806822105 309253060 704481332 364874255 758306303 197078468 923611305 720984280 152514962 908699017 519243091 441265842 924485461 978521433 839492528 148110077 887861067 589420070 611716382 871743586 359217463 974319747 750820142 512972624 957676937 548453423 780612628 723060877 788805259 780729289 71243140 764048253 701953031 268458043 798132838 833280826 236250654 810608639 931887148 504402997 882730210 772009453 549683508 311448815 192401080 957500009 780133869 696433550 62690470 972768296 36006891 76996065 833263774 498874646 531676145 624547746 567866300 670989236 758561047 414379699 457712769 133854632 186322431 999041175 477252927 527684278 273054520 721568813 710203675 733255142 773374104 274914338 615122919 264825783 461734431 923806240 887731630 836461021 837413938 1842732 773812462 930805309 116591121 462222230 684956007 462729279 697228037 198931278 940876958 33673109 336385428 497054273 893872212 929450979 838120826 461993574 301563538 714538357 366968014 900171217 771388658 802509376 945932685 823661564 434214079 175895469 220770712 883716244 713064180 541756323 604681867 765145817 246320008 899383145 153368506 795198695 26211976 336042671 837237740 668746552 703908687 704721304 175310307 974847505 499912164 995216820 856749706 966430365 753360570 494604663 701487825 640866006 451772882 947342429 68852760 340775155 962339629 465184042 891128718 680916461 884817879 893601037 67546873 217549738 894094704 982914542 794856649 112988453 356113621 527655497 920367178 422012982 619974023 127932381 851532638 458741175 250931633 943296068 971332064 827282043 968464939 985577837 291874812 603751854 884613712 762541241 325486384 116210781 448217903 850905167 51225590 306703680 850306244 667930258 471170416 636886135 969601628 115793355 894570641 977086997 951245736 903728600 604667919 789958822 366283210 399339260 825063548 756208215 950587071 670998535 190155487 809199529 233298216 835621514 883331300 617436762 320946227 645213837 670989236 921810779 55738860 868263755 692707326 726515442 855681249 937725765 336629344 672375998 6110460 573780643 902350809 58275202 828541647 358217314 254445619 364886965 717025839 29219498 142098604 879332658 321230108 374154195 792392606 863620523 845649866 36712869 960754168 379828779 775654444 767601675 733184710 799741449 81052357 348070917 779551850 385289236 866159327 379892678 938299210 884393071 93620114 985007307 465748113 654511686 514717110 576620887 345956390 495059147 501213124 577454958 369348532 382070241 684774869 957768110 337497567 509782589 537451025 18202570 49425972 255427947 308044870 891502934 841886292 206348741 366168442 33194415 599935855 128588156 578440182 839140359 191839048 921735762 718182197 989783001 524110035 470276374 775502653 511616418 809231680 391379866 518229242 305227944 930624307 389175564 146056637 990625062 142206854 675591613 576871420 270389795 867416236 746051771 311514243 914824682 68734447 44460021 112871967 865583758 908321435 178646628 400383518 203168147 738437721 685424922 853044825 658257171 778749728 782240848 29264267 199881991 33510236 785365376 738057998 675705983 997413476 692922516 131016773 649605963 771284708 906507948 891147242 902985601 377683200 15934059 37305849 901060684 723553373 683120251 853799159 792198279 976341765 35647238 810520363 560291523 869902882 524968004 14029595 433458223 430534253 787228791 618106165 71209183 770372003 392964211 877896170 82456190 794860270 863145929 679385207 334547263 48647835 679703352 663575661 956011302 297029814 280213753 852646010 678179049 846454751 800276239 743171288 592734464 195857649 728507345 245926434 830264307 29361376 766005099 998953648 956992544 7495013 928141139 733336402 996243591 217643271 863441518 788727764 282458574 64239149 200086449 323200407 453252156 176507792 824812689 829083106 955475552 901415193 598706668 916434125 374884472 167630222 199638857 307296530 670989236 896730921 999739257 105261343 484456534 188425956 157584056 248457440 185561362 250169975 119940199 917479809 719374841 933830228 756474161 884922761 919263091 487922018 752804600 803271511 695180999 367675207 984459475 659700585 243273676 13418628 65906534 281806149 957092867 117154533 605937690 518091477 146602896 488004483 463630970 434107352 268496512 601666866 18630975 36437845 777387822 240302384 437187015 740817885 469937919 920298342 950745857 641972586 464606858 6762069 708745449 776567166 446733821 826546473 106773351 949663498 343843080 468018892 755141401 390738601 563046381 750120376 304904138 61051552 911539502 617010857 274270511 846902757 629653660 153189574 289519477 832252625 279398220 874716017 519691580 209272949 809993322 207184644 228709700 524782957 768664482 45624714 320626272 945873460 780220415 915098477 18718064 683432031 428018555 404876257 464613355 152053733 331383753 902423453 440604348 113079770 466809675 529415092 835857429 179754553 546621612 568619667 18234441 973493270 690594230 847325508 331275482 756292546 924232435 715159530 341681338 469115427 792361236 778880668 928856490 500850048 511490128 380901743 214796130 589738464 803708316 580541151 864296833 874191161 22874911 744553141 20028594 137976188 309438304 791582335 265805171 809305258 538581869 826275245 895623317 193860042 693742328 761354329 847918619 520876323 959179547 270888759 870978072 743443106 526406373 629343056 380876294 45036119 401822831 779061414 986096129 557004940 447509820 785454525 796651617 58468959 361737039 847933927 755655592 563448726 241226801 855170751 712345459 815947582 925974904 947863721 765504727 120101636 828374308 670989236 889718072 278357545 846493043 751318992 903672605 785446502 902051303 673435858 779450224 744431031 848707148 109398175 672565487 935078009 694793503 877712760 822629926 774813086 586631799 730860751 982702974 442424261 133203304 663602122 467357205 691444387 16072063 981447124 716496156 767199712 37161410 858709298 829141721 366100646 653610411 434139325 783057554 43621903 72367680 677970586 653762713 240946623 442343674 505452115 310193385 876375866 553767036 44865252 952071016 451524011 932699334 945340607 933101616 167063672 853760529 364131923 640742619 100555196 83792282 734361961 304071333 164851936 172222386 570291025 993141771 949814988 922271687 681201398 692327686 716584485 753894273 964270088 905494378 857712731 109848235 199494329 835568420 229688877 654824675 574551408 116145051 182967952 651734082 543902432 320807335 971947638 88448821 895035568 296994111 821548888 701854223 36336884 802079201 21774835 859498538 890537280 314908391 176045265 806159000 873834757 261558245 878808273 723334914 672897004 296852941 735621305 733235223 769794769 844862807 845137542 151226704 350810769 733260263 82584916 811979959 803269947 630759143 515672502 297319734 475297626 640409749 947358801 346314731 413656125 8928781 77051279 854728950 742216816 554331418 935583816 744606250 16793257 574254618 860918118 574384116 304105536 33651366 991106472 979384620 689970456 614389629 286708362 727238439 803294121 980386422 452020936 146130092 318001921 872725580 114956611 717222417 857718173 611849497 241014615 994107938 585658359 352099083 365725236 722778967 712432139 894832929 569372508 937087894 674247382 4400041 586208308 549265039 942761004 991670613 706441813 942530893 939766049 68420845 681440708 701350270 692018639 455374690 72045503 856375572 421165696 631319628 116248260 461100508 633570474 990744925 36639946 191707047 882432173 846026468 14551550 970378821 827073565 623744701 722600158 805399533 160483506 5558098 766200904 878155418 613012375 956322477 744812921 967471696 904175558 819794120 849981801 890385183 909405641 748368636 12846706 839047823 877512776 318421228 415489628 802124441 891288682 660895690 799964758 573265774 949534002 946169055 472061326 882055469 130198083 724925481 388933243 883829481 401393385 611895269 425894060 952750100 27567527 220909196 684782334 214738539 513234137 933942770 448147711 994158341 607083597 927334018 862236862 864136235 486416179 866780968 964299431 918812571 726148253 872664196 698377094 448286640 349264177 817293836 731819809 393412628 736406689 103862397 337802403 840473167 629838132 974161351 811818833 760349139 158878104 596147986 116123212 108185058 908714995 652844644 786525396 670989236 534905216 908790008 820370711 805453029 670989236 628491246 980585296 122214254 610373168 653781093 953196736 610189071 38059634 590078964 991571677 684203365 759540071 360872316 940892281 85296750 685207078 380835167 606069944 774769133 50246850 741088549 827222975 701427857 256916721 895483868 972595810 764768481 454450581 153252678 584499456 869957084 133282909 815937867 880704920 836698503 648235865 898843489 859709902 757392166 493997881 40823549 847464629 197928263 244072657 898893657 870238992 923932059 13819422 165861472 959420933 836875418 742990356 608232801 631057908 872933296 999127159 690231403 381893830 873544848 855048373 581438972 695234008 919791766 863560163 886306756 986851032 819215499 912477822 361271469 684265917 849215725 820599072 939028094 881139278 483455755 15221633 113920907 604500960 235662790 720528109 949256654 30539255 127706770 212313395 642477486 889098126 807248905 390319785 670989236 681608793 465115297 824963398 121223317 754475289 807834847 500766287 321270541 677897624 745815694 911289330 739473671 884271406 670989236 974396015 793911045 729398885 875007207 889724416 594488051 733129129 920993207 531892006 504111907 952201120 251043532 404515853 383803866 274085488 157509981 871898780 411635998 418349900 67068081 823581847 759416756 665930590 826785465 723643414 796530036 732089874 980016575 790047216 999724660 675391225 856738288 82306833 545361512 955211860 160018440 453648329 802741208 966547712 507711802 62847781 625117902 397634666 495717807 840012418 824713229 257778966 817293364 586345178 718474214 174885446 391092631 36415481 245929357 547002358 345910729 891380325 818707620 985631840 896982430 670989236 779840343 334899291 560587032 245886766 850785505 972433724 83669217 394831694 475866695 650017505 49700876 191810761 776853587 951098235 957126036 628125564 51551731 486738268 847615146 868066141 490640451 49161456 747310510 368067950 991610757 108522460 768894711 206768433 927591466 649766190 640053850 911390701 833063785 79667690 703323881 20497763 350688558 967033161 941722072 704375933 977833770 551888970 889969111 229174354 299775731 282727792 666251547 991764717 870577055 156078978 733684214 9126250 57129523 788353593 863173965 149321576 662284693 17071128 120276809 560489698 751288417 369325679 8753830 289817238 344975140 428969478 669279151 104512105 601473255 444041100 696310563 548659644 512527049 861363064 14983060 62831442 976482385 401367470 930979281 224150161 429254046 702609150 112996686 122734700 791240055 908413346 16593440 689374015 504880876 96374090 704780457 69416601 840906358 782816338 376773341 700358844 646027360 136628235 726541715 674285425 311400565 122796887 402399704 410358144 115425854 983271371 764645272 619179026 187787675 430453357 400607734 30983352 587784261 851237912 913579210 158951150 339267459 887617980 945216798 288666473 698218889 814851131 745940420 660913284 679063856 984903208 731196673 516743689 854743383 934318581 647945808 429760906 552855337 409252945 178420872 762951376 741855238 562280836 927925275 107809071 644568273 10715626 493355903 188499149 991598802 282576972 935898116 952516652 522884298 98821994 852910320 319850290 256046223 287643737 252156166 411447280 829121878 958922372 452417889 533476798 833168295 307120596 957472022 732404509 932127561 9228134 636260784 279129332 943495590 838688503 186807192 670989236 438206516 726705467 215331156 498596724 627875729 849034539 853409251 913462468 774600212 64446974 684558906 311515548 525773917 906546123 842028738 63148152 807594530 282485481 993835889 840891672 190721070 441827396 766724690 807244494 894994823 796940707 693179335 774922628 968982394 331445413 281678411 952260336 852765793 684240843 159462008 820801494 167726179 996145500 755759530 29945638 711243793 214034690 800884588 292686926 858511826 910109966 345897336 196166883 899548752 968986934 518273610 626972669 964206340 142602730 709025962 792621362 340540360 933362788 789536839 406741177 599808956 816540400 852355363 734156369 827005907 763209587 734672911 665515231 785300757 824577082 988471832 875878741 599544618 893436566 86617121 876193651 772857013 116505228 803446942 500578686 750625760 711964583 615329751 948152620 801136004 68572351 349842785 38463876 735158796 458751813 46777078 769079934 700719187 346327506 898377160 787549550 944709147 25162679 34363497 329496410 65856475 729351704 26100033 761126705 594216565 847117061 789704934 113521040 794647486 960675352 196344042 873635374 841569906 531877023 904000663 309472351 633917673 984075897 55451222 899687919 103818892 730287909 867432055 987157236 883825804 940037169 14876518 929099359 29709505 529268074 126014650 70173781 841200487 486195540 683559821 319305001 575277305 997098219 523205673 854488614 655621152 963066083 182654129 319961460 20125689 625567905 325263885 385279480 115942332 981602583 797703057 913546196 603676984 906152000 964282446 798911233 370086410 127689380 49579250 97714026 41081129 727700890 862149628 943034509 323635019 993569775 385998895 569065490 850867629 896725986 819389447 444976966 193136020 550003512 719045666 405820333 851862032 971020720 757931026 286080493 764414199 909117936 4858686 730931943 867848376 992098119 776712363 207700216 186288429 78511411 89704048 869665853 743867964 613673915 598477893 668376426 484217572 928683032 971068673 80894216 484201683 787607720 817688004 754900509 690144568 949235133 164417237 833860094 987905562 910531365 339820736 310131798 393047616 26943795 946385418 23853340 898442985 760086194 779156594 681254319 801728624 720906853 307370757 173948238 839747677 878025151 370091617 411717621 900339498 982398433 794328060 991503331 711310244 584534279 12835381 675359986 847165179 115453724 937277392 169314173 712824935 355203978 714741072 963029376 830037983 822274997 880033987 916001463 823851665 119083322 795635251 748214857 704439820 158117064 463611384 59409673 999776171 759884238 892277801 109446288 666703827 203119315 351792377 510026972 771662852 107712253 52206903 158964749 418675636 961830949 553839654 778104279 807412915 396552490 711854391 889995669 192041060 894955876 323554848 626631818 792170351 420318580 686471176 178487347 934438417 853359363 261436577 86822359 307637251 160342834 964488962 413255927 710334334 853276993 627457811 902698648 881666740 116891436 866284498 807900904 436837281 312767590 19656453 279963716 185697783 712158630 87499657 45816576 193970843 12855619 440478814 670989236 374532013 983295957 757184981 926779383 231974659 161832549 552994220 213119452 676384886 721567139 914081331 539053259 942836762 695215491 160911790 68064048 45893621 67341685 956175473 633941006 60771822 963684770 750206100 443241128 699798991 304515538 686771693 942398328 930726229 347200279 128769532 759325215 444169526 920480331 455901271 17966912 195784426 104354553 945640425 956867751 441870693 147887511 300127409 551510090 299940910 820874125 750820043 745966946 842771263 116550496 312648604 866229492 782124030 913214454 810192951 567290723 969748795 132582520 827617850 778025929 622846381 499327278 847787224 575548437 629615293 670989236 9299780 324060189 405871348 805478775 496580385 773673849 822773993 450641233 381643050 351289192 637762348 327919915 762975387 590329050 964036406 666369867 713653690 579624178 357356965 873414071 825200667 809858018 745493259 63812425 467210151 213003051 903194567 161533573 492971076 967796236 916931689 545274881 257911849 984081165 939925624 598475077 629614660 964634997 469389943 820470532 841597300 252339409 72896001 176919247 355503380 85962765 799958793 968950136 984405489 372020961 371318951 559918723 809279592 49344082 585939153 950151599 776677614 794099155 255422119 893812362 768932629 357058204 326868648 748417655 835396854 865584126 20639324 978261212 824842834 839065689 638007956 952846964 584534530 9999974 702687815 804870138 505613515 37532831 686786421 999158079 216294596 728730813 749482274 762463785 895621997 739885782 328503361 77051120 685994701 28836573 520264378 878099882 807491898 151344676 670989236 161761579 177359903 830461652 246397814 970220517 38882477 329288059 988388923 578064157 528018263 670989236 838529148 211115174 185644605 913908951 979923458 382464318 942614927 134262491 963914520 914293102 350149194 424359077 153265719 649891328 926059628 970930231 998145128 907650765 964719058 853324488 105470580 17184609 106389616 492728515 670989236 750452326 318813513 743125300 951041850 242138487 49593631 593125921 991625754 625904630 697257587 455443677 58346052 553408956 112427815 713068486 994661215 102663118 346623391 10188137 262003961 289950421 431314943 855083854 397829785 753177797 447160790 985295684 454856474 449318180 386944121 866523601 316854884 99608967 19783785 950094197 313861841 905715292 127506242 306488666 787681300 965992996 637160545 167572760 857460812 4844836 155031718 390707179 630701020 899674089 610045750 891967559 5443252 467171556 561395886 790589908 673272478 773066501 994110619 950679138 219409164 498328721 397925513 652392696 667577460 303445719 789587881 724279754 919729657 362599205 674534816 381151598 670989236 95856410 691349389 95095363 331109289 948297813 502981620 432347400 205341469 863380130 670989236 755430956 958461854 408702451 781056150 581574048 567946136 128941208 474525239 243158110 924683183 589286868 930971541 906169301 287294291 39078498 91374310 104615555 104002692 579052204 404600361 137292318 471099361 675494911 602028276 291915431 4769263 736301894 311318993 805742575 732820911 758910754 756687012 277501649 875491536 428379920 979033326 110311926 120803247 773886287 380873959 972859621 781186016 495881172 953941540 760038188 874739270 364516076 670989236 153810759 791134874 702288184 68689829 267157709 720867048 620069751 879772401 724737420 71881899 873251155 670989236 516886846 958298495 798716497 782836576 763472479 895864193 151826554 181856157 353999831 816531595 945031339 563113201 467394428 109991819 752667380 94040166 913959169 288561044 261573604 559189861 745859121 669823997 722402133 436540191 725136140 854205823 134044329 901106126 463105925 733876451 369677152 913631720 794495235 916873404 648321203 748585081 274091186 370794125 687180928 73727628 304466580 35772784 806424159 211873712 907899117 150782856 167716307 980255556 469237769 228228443 207526778 782532727 790553942 192995568 282265521 55267956 265965284 328641304 678316522 607817651 670989236 760906218 961575302 476651837 792459154 778398414 948532267 214819216 808543005 329011054 685822457 646498584 170366308 861647900 413803467 199790082 848884862 732269895 726880014 201757957 675658337 558297345 113772030 554483257 798038643 767304159 387164525 938146621 250853967 866707703 639348090 326295589 806605001 1492163 470251152 930419468 693213618 842922611 289419634 531481089 900786663 487027552 670989236 495801245 711950616 670989236 693624517 858323290 354884243 227770415 670989236 531783857 973609163 56091627 307139407 915579692 470528603 873165596 531779012 892581090 791276307 111068903 436207274 790507425 414119297 638345164 255016086 731401547 137082253 175857924 326842831 965291861 498475522 220879408 324402047 693438514 283484437 973088104 435126080 759520784 609014642 906639148 718893133 670989236 142263232 742250076 831158429 605410800 478155029 145402684 791085658 835299602 713917483 358777798 924421544 918473217 746922635 169301791 296121452 313544776 396951960 892593780 179199349 736489938 937597313 839262186 292413152 922194252 834447335 692552495 846186644 294672386 632274358 414611662 482359342 412850518 2505780 787246126 880204138 405615960 747397921 989852317 735338087 742878420 480561382 869435355 954035736 789516255 4008760 320628066 830014940 894422029 333383189 156989289 716005018 742800445 667293077 701510074 136083576 437536498 693452180 882537261 36309081 996652148 803076346 957786131 157924365 832317737 991983130 793181225 916420687 508523434 927470490 730616757 87447124 216248014 328307515 972796016 676518964 690663278 782529664 684103122 701582166 889564147 602772979 869521218 924492018 411252948 589730867 670751728 971893651 965966248 714518034 137498530 786539673 588381316 885495549 647034148 336413033 269496144 379957464 300829312 66027403 370850269 492662465 541244756 206620587 797273124 586142467 919620324 915911930 907920728 802821590 751676339 768676256 881335757 874733387 717158145 746426778 728821194 936602972 627751809 401901620 757302672 671372686 759768307 886154015 960708907 813184224 892594750 613959415 700082078 747805022 158554379 232902074 30939474 697396013 505763844 753537531 950857452 956279882 329066561 759790731 439635263 807668268 950534500 168850532 686984163 6822714 938743787 284510440 86728857 571925579 954076965 544617561 126938603 907648650 217227995 683034665 947636702 923699713 140493877 829708518 693505726 133518932 676758477 652283283 83188808 324464750 175883649 48037583 704378868 987033240 11125557 160861889 507865536 717450087 578219851 685569061 911430347 570345824 320750970 651670232 175459680 917829011 870504633 796580886 670989236 888746811 670989236 885752080 666294094 208092506 675162305 448256704 650430175 517506085 145159747 932112191 825418185 691395558 995815199 927707279 384441361 724078146 754124648 873781287 848472591 331695437 845981312 624409084 131594231 736247901 648758107 85379688 981527046 880781405 246195106 511265928 369387399 780955610 356133511 218884488 756871522 197911639 605758877 886695676 848823370 831053157 795905616 790343267 443218458 765432408 638849500 808845490 796685988 119454330 544140967 701034310 188380042 885500774 560718718 686607205 950087312 830495766 3370261 494249887 986813600 268606394 749038359 713995316 785594559 133077717 992895111 604158602 149230121 866484333 250775984 305097823 451153785 670989236 918633945 770368995 116652902 577489090 690242594 499797066 226508306 749273179 74400217 352922200 864546840 390321642 292192554 877661594 16056918 425580632 757053440 784758318 308580530 31343897 655283025 726079178 63419395 361593813 927757694 122228621 846914110 446309280 737257967 702555205 830322055 948605196 889116192 401175588 831285004 49892954 230657592 850584160 707596218 985378529 512968653 304581041 474734857 76592318 802171370 872828589 301353421 120192417 168160658 679133405 499558998 487931069 680309775 960773207 608019791 693628380 691199592 517625476 518423321 498275739 972600231 767207062 708737127 399351080 923281591 929406064 118605315 516884300 670989236 962014018 711291484 963125418 806984166 944986825 938875612 561014863 326069755 933906867 90118537 988622599 806343282 488851349 772637273 336899968 226731306 135647039 993191378 699798976 670989236 696105879 888948156 981908265 137833651 721725532 635947742 871814255 889230713 225582522 828251787 97660085 136637350 732218609 165387876 581817955 821371777 832012770 937124764 822688768 841164958 907349815 684828326 76794288 988421352 670989236 901545702 223340013 417091495 942281868 397048523 929007060 200830498 733281584 341945885 479122678 821708868 761259240 430126301 851711811 406403077 113158470 877448717 967715073 508733816 631869393 162757392 138805910 903550801 480895578 296336105 966119910 850988136 889960094 702659620 129973769 690158698 878170571 573463133 678781760 972011510 191636232 713467698 349438900 990126002 595436662 730437298 802011217 334687933 948140133 803253413 426181549 476210252 170499829 142094347 330030251 62243212 851815687 758071161 142374039 985100011 901902456 759147255 717801523 701808890 266341959 700951770 804115465 670989236 151613706 319240094 745610614 693708108 995546980 39145684 982122857 863091528 477404570 943815969 278213583 359407000 820577972 408603588 403836750 25073569 804668865 19600853 938346477 307407187 329334945 12741505 17618055 485720852 620316568 896445344 202166766 629744237 721130537 528255461 807283660 913869566 127044622 987094156 696977778 984554093 623605346 83815481 809322114 727830344 525079886 105154268 732820027 218370182 448715430 312995424 915017137 417347035 174876990 822513971 733740049 708111387 699467432 524246354 462465773 720747431 314278213 682684019 24588878 800387193 122396710 696188406 929321310 719235303 788696005 713360098 57875587 199944338 866225167 644595818 291589091 549856149 999833996 623830343 924472366 791252701 871221974 759493849 928112393 75036577 807479326 580566680 963826285 702470181 85608230 852240775 746258567 942480989 131847748 700344388 865506606 659117284 869245325 895004059 807070737 100896589 147627163 886609447 45893539 473998690 419352505 429607017 217361876 913608922 502017233 307795945 379875252 20002481 339780845 920801882 698792277 243615695 673349455 543182934 656767804 383657378 172659147 831227573 24963529 552419541 972220198 518443095 969532511 62674880 15902682 333276166 671921567 79643959 366701045 707755823 833868644 261728309 96909560 976680743 48309650 770357909 670989236 470159783 967085419 192381428 227342092 332705424 524649599 670989236 237285161 310482314 464608299 973484691 40517228 808147079 918527128 685744186 348633767 731366456 639079840 344406178 44338236 648057909 195981265 737381930 197700417 366803266 634242497 833452569 547323453 833230829 310968211 678838301 302822337 845245367 20419883 754415764 527208499 696136275 915140512 74496486 814988854 439843618 331118349 254807204 983838506 787005219 854847266 84129374 730573698 92590938 558362037 858146514 825652192 339278328 168249383 211045783 706801596 575791783 442722800 249685669 598970173 461088094 825961540 976182774 936051411 826331674 530003807 980398979 276428397 576694028 809233764 768618821 178652174 303725608 870969508 257091279 953335328 849631810 769081225 247165837 64655794 579984759 57773746 893522966 754220464 437144139 431263074 736877720 752256388 601063047 793168715 770914270 950601975 533104320 163549588 612078479 343070610 727856348 151958660 689533473 885050424 631520860 895818385 304002281 273503729 720711373 754785609 734395751 732215793 464381536 445201278 976655546 367093040 795287323 758889842 206805103 952089463 303310150 747649229 672715135 763606501 722312264 480666261 446134886 68049994 988875514 944321717 535502172 878817548 329187921 306824559 463725011 378748209 14314645 18150554 894286781 768969734 375760277 459936908 697089191 919132450 631858829 351371878 338169864 536813280 855708113 833808481 144733788 749725999 12453221 864371455 779628890 245754055 51247600 318529230 735057145 465215777 952422782 740831298 532745805 880842102 352499987 21849264 943594266 813407266 444840623 285508590 208428466 46879507 688888259 901811737 695967505 149916985 64417630 519018430 502196625 934526360 985723385 675876216 871042071 553635350 973339623 29989637 422326823 94271640 719766781 378291827 928886866 819827320 820651409 740848323 842300151 599127098 793126115 110208666 985874716 160622587 417242207 984877785 769571321 670989236 823201692 961417579 245944513 93354496 618299614 996533767 652143353 635697958 828683487 469890961 855117507 894398940 382911331 416545557 975623160 50320432 610527733 685536572 170650538 670861943 864996710 673948736 769651437 897237423 189080404 503040304 715919223 490026505 101005747 632627131 392794153 956756883 171419005 139788540 658689493 842185036 139491373 107630610 314442412 933183426 858823422 367313719 130018936 845257207 690138417 393088512 946903675 742245453 783704575 572692488 779076052 959376277 888486328 944841753 207813604 907661780 729048357 693654383 585095010 960313200 79465479 369154486 711087958 809045376 313218535 850567681 900458583 222263597 585921594 983678437 480801280 468310183 945794962 948777248 770429931 589270087 872635737 146822311 322831661 545601865 783752420 154150257 901555937 283499764 424453255 993372398 863254869 143502949 858099353 839103610 805060207 987976519 841001854 900346506 945221766 339804705 225674975 647878247 111339880 458261003 70697528 800972087 482692876 847530938 952880933 968110275 106555489 736731609 968156440 465289454 101004659 915424044 120183025 753526008 404485217 922617955 355946539 973235069 254088333 128214728 122207227 174869245 71920897 980191728 758950810 735663801 909184221 884986505 154065038 776640018 698276684 434383586 990495204 323465295 754436098 689159152 54748002 744762280 863727153 861723293 224374680 88427313 901700326 797338545 997613123 843094606 662891880 846171429 111488331 969298309 60309796 128143181 357968914 223630416 709647160 964889912 938045871 954110959 652534106 730636157 815611081 590272951 87200105 463100327 719757461 608313786 115387773 232572209 852124941 401445843 677163724 208976129 86501452 246594742 712668133 670989236 146767027 661379820 981555174 181472552 718501853 154724590 744367704 682062717 481536915 968513251 779290252 768799533 13478728 746257930 644993235 728105678 893709239 605054827 390835275 876201196 126766334 311438438 276889142 717957156 337045668 180347982 712309807 767257389 915790184 213220590 389313467 702169918 346752739 479298435 838812605 436402723 612706428 864568069 691732796 179976679 643108673 180760830 365956453 165393953 991622116 746834435 197241341 370688448 297810487 909392583 154804305 49104399 170793566 829557051 226697936 684813953 594824382 167054639 842833984 684306534 499368516 957279225 574291333 742066302 297330997 791928624 318622188 358074580 234992340 699862362 750566401 455400221 494136252 4568667 6981748 606185286 690754152 736258760 581919182 809872259 885827250 894513326 453100151 206401569 901578112 104529132 851077506 166107068 628879679 853021729 966644918 834205505 915212444 800400824 810721600 860440812 638957385 928812197 899133488 310862816 693866810 905754728 617385166 391424119 856779914 967343974 707111149 296994242 729999289 252361986 850233189 836044308 847129766 395420687 677277964 354565298 866959058 891319014 185678957 186053115 267066432 934398083 290345601 601367444 875160967 913447109 572609405 692537742 67155480 605398128 402453802 535939256 313907227 935015689 932726639 571061261 861701294 909362411 992783315 913448517 13429215 903213041 707448173 687370906 454688840 425645260 425444221 478899583 570154441 720214279 48930971 241751125 35393486 625661133 115006059 881006679 980334235 54968339 639186651 816540833 632574554 865963173 11818164 20297425 584001657 96567931 927303508 245566116 845643303 864735377 884808470 483197343 443433090 176829237 498767041 551650969 234264225 847785987 392728102 99341025 765522333 265057236 695087607 102401693 477190089 823847283 443074401 775192421 191530300 751894171 888234583 427530315 816810495 363798408 372258406 626910293 722666531 549251986 678121790 737578953 970408329 935148618 996014444 703507740 796209365 503729633 434273719 446878643 393778447 606812507 712941110 584005272 983701601 146262869 204584349 841785565 845811312 670989236 899018118 755135973 82102739 895416374 426838904 396505205 884782343 185533365 970981837 879807644 507822949 711193793 990633407 638889145 60107150 845914629 601007213 856504959 331256633 854775420 122468493 534836095 324267500 975646924 220943606 386220169 289990026 815780059 976358708 515271622 700722473 693189709 388723529 759421015 518678956 974623949 826467849 775135928 829547477 727998774 808709957 892661072 894905053 761715954 115894851 498857403 667991777 937605576 924141271 587904520 655757265 953028436 432916241 204867231 436344813 21075405 487071418 397547478 713815103 869436775 722464069 879520165 571178109 414470347 393232271 670989236 867304208 535196469 186749991 528250372 958463006 966483862 873981006 82699650 684341889 685918826 841601506 191182559 527781778 828337888 871650918 27863885 889458438 382543367 448476124 273764982 423235109 780625285 766812314 693904470 755492615 235486979 948875145 728528887 761193564 880584327 70621892 974953533 857961163 355918379 708163901 945178270 972069131 879085873 606740247 218713445 827153237 840916679 46423059 790558868 440632506 795550841 158916006 399628391 124730756 903663592 725783267 826229212 91445464 988647605 899925961 884825411 152385464 717556475 922316795 758744526 972916084 654529908 670989236 413308435 869435585 765397242 438083789 631139741 896449511 904047250 192970733 670989236 686695717 715045919 839119451 372516054 677766922 145287967 624126141 124418274 707316844 139210850 257585256 846513289 868843447 785840008 70156390 678180137 800636826 491244169 74930123 848163916 318999505 970172851 930904398 893290131 168392934 887874608 415664307 426380556 52407210 156321291 801059105 158104430 750989582 3187157 803324072 666142057 317774668 758258038 965717002 416469576 845064240 537801130 823221679 952972045 487271215 598585445 135042462 499989200 87642716 557777646 830134439 947906906 726758817 505006567 857235458 146230195 695282699 951990784 234847326 881991532 13914271 942984589 967842388 60329586 107969973 698952004 760388051 670989236 867727532 350313655 773118853 209110268 748612655 83743065 519222076 800464592 796886915 589496242 725403955 234921397 724874646 289415609 145504404 836329445 959477266 214310740 996103915 784856474 604995836 772022896 155290182 32180442 463003364 272957450 779079424 953854271 786961260 660279221 102461487 512873268 775811091 72955858 802643928 487401692 711829621 491895090 125939053 131034753 852226127 694878692 966210866 400620640 927104277 467933958 579830299 974211592 450247189 901277159 871465378 415192775 437530324 290512225 45706850 738741973 351601808 127322434 926424075 937980122 670966777 431363776 992725875 541277606 953787968 901277369 529859831 881360014 992496218 350058790 163021830 924608987 715080817 299478321 987835793 734663607 920989633 522503081 439419706 78566441 644329932 535310154 699313300 889067326 425688661 543635196 331167759 724310057 153461842 869729085 955821600 492424020 452679474 723214895 354245829 238209969 996999305 527053740 868919943 213548626 839046504 782179557 355823823 997285852 961071475 157518544 552041825 278066353 902902982 918989454 753040823 123093391 617500576 195457566 828322482 205609882 712773422 976779356 951092441 904793929 387334051 284732386 836378447 676049221 920668831 380921835 711187028 637869911 764950439 616589422 676472124 902449090 566003916 894859733 716749687 381226246 577092561 947118400 879667580 877906059 189354904 751150120 78004690 901662849 203032804 5472430 670989236 551462039 346273077 410135076 997904507 811779680 284111684 126988203 795811329 728407176 755946363 864510075 926357368 607961 827880815 259773623 124188172 174778479 978254609 395317115 780052615 961433614 276930846 788287987 814673457 987871239 901050164 916264084 847163341 115262748 99227277 239711097 164375136 670989236 512579835 16274623 907060416 800426650 636491480 626679354 515053847 967482770 17244431 682259239 785770978 998232726 465529302 973359895 878892004 86816609 876470628 691896128 670989236 511396004 478791969 992516460 187419814 39292430 25777031 642969567 848277752 670989236 767655147 519643891 922577123 187227988 310512801 291694475 449914158 927646606 725922083 876324414 863571218 816465984 650896845 289220319 705402123 214147257 989584145 306995479 800695640 1001519 414328984 966401008 699464607 686383022 174983958 884268157 569182615 977676188 861890817 437435942 886607682 853775728 325975306 743035769 555594026 540329129 390335563 516637745 341020051 733036468 297729643 259094217 106671837 281840572 544519176 790004610 441318857 671287954 78127471 783971205 111005484 175406236 23191246 822894120 704163534 793853291 910414195 708093220 929648053 285811687 883516665 6602008 327882117 747336180 144100751 220321464 789787779 882428654 963416716 745908675 903158411 476662305 538366916 966603961 921335079 795255403 936932517 318488449 438700710 744272710 5287651 413292839 757785145 712906554 966817200 213120759 325345800 532684786 29599114 797615255 519157817 143285650 186137302 603558763 371495595 340549378 449760185 387411044 874536109 205487194 424650530 607656692 960195901 989467552 347230335 539300839 104233921 264823827 146289189 647366949 457854504 86221532 529901998 759767938 424800258 592174564 594347070 417150014 811057227 958240997 987556592 103605455 603480350 696930841 245030919 734048087 917048705 967984197 749277477 332367215 607784065 985938634 394525812 705132584 937747158 63721865 4781337 719633745 512731343 671241046 72084510 210561019 608257942 888688733 729324080 443473101 159237158 161204473 339227307 547215872 855358036 891635953 966740937 347810749 421079875 819934864 894051569 751176736 445047513 113029986 12023886 909130441 858295076 719064278 147068631 779072497 670989236 343035512 970741937 750272290 425676793 412072133 860502421 595958993 642729699 207289351 869936349 61056110 445108291 848033760 332540355 342957641 727520267 973307600 866007999 510636017 828204095 964474704 268989983 139308309 153972885 279370689 243432223 716036445 926912782 893710672 217971677 900455478 607423460 832004644 405154844 180706838 503540789 830378812 549146290 429747587 77634268 314544211 759370053 500175554 218022288 840568656 250321704 297556338 428039811 587048199 888951637 801463070 753727307 939331091 639550595 312891588 945914298 936615599 242545150 104087153 78330282 792443630 826269489 990221796 976140133 131885542 710604806 394048501 479448008 710266418 384421341 18018980 780195770 48176643 918513090 782687759 70501194 999446014 774696086 98534214 55487487 765402076 962539949 534996403 891714622 168862663 130176445 119498311 76770211 361567522 906664045 593712669 215758094 376058474 988192 965600274 462083368 927817064 355486176 261504244 466408109 893206974 282589601 910378700 795511757 548388263 88423967 785337366 784199737 302126150 898463489 898726937 730504063 199154961 280789341 107530072 952034421 661375167 344133408 694797797 949290945 670989236 432434788 861243048 641696340 931039064 783617360 906076254 878905837 715883714 902738003 662967391 992579456 680307006 908327665 388077839 937072917 757914466 578675335 621573395 821575747 44397713 305304698 294433519 823567053 834536584 670989236 784230023 940789720 529033524 341330555 516514209 230214312 106002240 516799647 951954390 429490854 528480893 239913859 433949695 691038191 147943854 54701928 465540203 931415218 670989236 557807804 188305630 142957411 940610944 755838235 419553268 303356625 476532781 866826845 809904355 303809762 821177431 103378492 762653071 912308809 773758443 848320404 741143902 626334036 298642041 275476588 884212156 468421564 793004686 57234979 791010263 729393510 154906355 992216846 660983766 606261762 261084400 772886221 373844347 282575582 973836950 908398666 881267346 918829179 852817188 98979504 49714347 402548755 433013568 939722708 183157637 619346557 688623020 724261474 780792207 824509077 435018531 892045026 940861927 539586562 199750151 709871965 273664135 208517076 971185928 7472523 789752179 733382311 934473999 689447638 734428923 472950564 752247446 729031757 495104605 398345864 688388115 707823952 717060326 64184621 577137202 447202071 904429172 373138645 938188190 838213495 754931521 603459758 774355371 537418800 603363065 762443983 889605883 32239673 255821422 827477857 401842228 733186092 349035851 128384872 667065235 420564280 219974333 808860065 449161270 792054077 372492840 429246301 294822359 697571498 62104963 400489683 33511266 356250248 218717702 827388276 768349045 91153535 112808131 870332742 707022153 830853396 198695889 487231823 571433774 823674207 99321681 979634585 742663489 571301847 853234000 157483417 366142145 760444199 293789252 410026142 718536821 163023013 214177502 786310109 756708598 328117475 836066232 20241918 3714900 953440460 715311825 252219311 791005368 316994985 833633984 239595700 703908499 900137572 607670548 145327514 891267576 652719725 179735738 693990726 966335723 802657843 477107994 473038940 185563127 784923945 762892037 177007466 922325198 13694321 733002951 206772250 834710969 501184091 570651564 693627772 372065636 867574823 184846840 255740088 59078970 969415270 944752908 890838036 687518353 171588929 86276431 545450303 889500787 378602721 659779107 319505038 689887377 280161799 854964966 23918094 10000525 146986799 358529509 687533558 194617908 197517480 725467170 918752839 206751334 419625091 49878255 744846063 514716389 711045900 816951234 290093470 593706454 712737588 553542954 429121349 894458573 286703892 711295428 897234789 776305012 529490306 855414638 407024930 85657967 736072160 264138810 4326692 882538836 83622135 714962068 917828914 886098055 416156047 718503041 477092027 598707285 875000862 905570619 353966249 798755761 598053352 520103233 774131017 920367969 147435759 433351579 291252789 351450619 282603546 994479623 482379450 710569118 851233711 867683722 293097423 72786183 693485629 189367299 764454726 990148062 560190775 766587608 705298532 389623663 426123770 164396548 167233651 605571706 954364605 717655134 785819304 328257058 846643025 53272994 769590191 999203447 304828556 497453902 269466125 120964806 714701614 924169465 563697976 308912243 799199660 555677213 175556311 687303097 776348472 745693847 831131567 6484349 753916196 704106101 70026148 825689316 760626970 886585629 708545105 687958569 713888251 534812532 612425057 422847077 889193378 730396949 643740868 558005133 762184528 970482861 39198105 869388383 212622988 980693788 861139607 198062876 617759747 825504242 807813225 691604337 445873451 678937893 709771292 305850837 332982364 593486095 153315036 813990684 578519481 153941909 316497665 175111416 731802686 990836625 486599680 7052924 806239482 338991776 680695365 462978493 894415397 614419797 229291568 991402061 914601249 129828293 909217303 923463753 482039791 750880018 920867293 37428909 859902306 328412887 419334912 269670035 622382180 249760166 899965476 728202450 761887931 644521379 511820592 72405148 924980709 742728651 971810169 773115918 468581789 941748986 815368586 432403469 775704156 329840517 964533547 742937781 743023595 657498951 870389638 989986816 816389155 790865633 760627713 504007044 93322708 390478925 788161101 801194528 686478009 354909016 527102101 951065972 405759826 465045259 713212445 912081043 871604278 245180172 68974542 952549121 748090162 615720293 747532412 284173850 207718630 695203582 445981470 58809277 988954913 940406011 706358145 509486450 551018518 325338966 901148407 236825993 827846071 55394866 253891355 690603047 112358212 780338617 611286305 913989558 873869802 935725812 706687098 926439286 923007038 759724872 965402393 812525735 890685623 92345157 676707589 775326713 736605145 754373779 973755176 383475096 598008927 848211290 437845947 859892167 816147945 927585268 75105306 55053933 140425690 49333234 853317898 110804633 48850055 114650909 346452734 987435068 933835941 342330652 504277265 860629864 455964102 245225591 80279730 840764159 861769900 849817534 292992971 293496857 150139710 832398506 809658911 42994470 728966480 827342349 437618565 59205379 302852726 70913629 998317758 462201029 43540972 950023914 759777337 122018367 670989236 299601962 507434629 334697792 801072406 990305780 546807396 142851799 160997813 816810029 475938803 193730046 133277111 684032309 18783973 886172286 79459472 720184540 435230867 837979717 867013216 996334827 878375458 99385311 748035789 398597232 408056481 478824294 729710183 565369853 126447856 190973274 508785802 952109531 880059088 889839360 663701166 96206444 93700472 509152102 75327106 156985913 914228366 649115791 85111567 492770453 160293652 159047759 328995456 880461611 749600342 221651895 903486233 997100417 432757195 670989236 829109094 127238158 23076532 761401046 627903789 884152743 7371438 437741072 78076592 996351092 869651838 161297119 977743219 752040003 80468093 794555176 550938037 958796886 855992501 893918692 787566958 198201990 866376868 758774124 154619124 147734205 720966882 940666211 829283752 984549097 807574156 124384355 740338899 955490089 755302048 937839450 134284205 911362002 761915318 740751200 748351052 400692548 87790111 842681159 460309925 188700306 19618447 600387165 530175619 373344490 542673430 976066214 779529545 796814740 687447108 309209282 905014471 931407914 332206619 907253516 780485930 939995085 755490580 895444749 334837733 920928053 495822800 154344530 735633321 823939397 715611826 798886278 386168123 327388394 973076260 655293458 320456305 840838709 987222844 875510534 906627937 428287786 755454877 639801330 695129852 916086587 778692749 279189125 441582218 2315009 27999965 944646841 542853088 720524144 909900789 284524440 122516448 996334063 226124610 670989236 692233091 752146523 460066811 295594699 68610053 657092414 370458855 128312128 730385483 901603558 838113238 973310319 337063861 16841785 845354024 687605043 189990490 300586326 827874881 677191051 836400716 911446470 990977082 670989236 41561699 116739109 111470237 87461307 666859830 409424024 455368931 109189694 4700602 838900052 478505786 948458969 844014561 754220441 394957557 846141875 641467470 925856140 865253064 860392928 884961940 763206153 343252834 241808536 23766132 685459122 863613318 615671653 928843683 454953348 878444080 950608521 285805489 432931928 978919742 147069760 793140260 456440750 960600481 709420061 260741505 127887521 586331351 670989236 384536180 468798092 740841769 560490376 515914947 475786449 757578171 81707189 849367662 331786924 955441684 8860993 146477396 859152521 741955385 113914348 680293483 310898321 258587055 381142444 866726918 742373409 670989236 880887223 151452757 260073516 634601089 812141492 179945164 644276315 28932940 689093254 293494722 458514402 904189869 628734441 695700345 924566594 399327621 712204676 83099345 799655897 734506071 329523957 34847991 788645101 670989236 937237006 46423025 991112914 767107719 736534545 67017877 4056357 344194920 243482349 74503212 137629440 900282667 957080411 951864361 302355110 858986699 872516771 842593224 157592443 944064390 429255659 445764335 161400715 738370881 921517809 713855025 718069314 292817766 223238100 912508308 805454249 799330431 574321260 953779776 711828905 760777915 976347885 838022858 122955430 340950987 21202370 959264356 877838074 787710474 548225708 991582681 873070829 574366359 709716756 132986 631353790 858806303 492811602 394364967 936631773 81125608 850700033 503627987 362927731 319705250 444959720 610810793 551016285 551207324 996336617 164917089 925414577 814640882 309211298 38916882 764150105 272587009 75401006 361633652 884294996 158698472 909616906 778772786 481060431 248104522 103647992 953876350 653951021 972094761 151647940 846919593 838984007 117378629 788878953 637226215 933184925 787222687 770299047 224612243 51711363 316154877 670989236 926965051 482387125 671748093 683906216 586621287 449244935 587892268 756475413 877670426 36382647 838253143 27681171 274192109 699141832 796542916 885287120 741757287 746177887 998401681 673158300 82643435 867251786 927203813 281184427 730276130 839272947 879849840 720413827 145046346 736426619 988964070 978007465 593239845 908118821 908936610 969626167 295080584 169385754 14804613 987022252 463693995 896053658 639558223 533450591 882371727 976132235 524598918 377243192 346939383 845580671 110012273 637242819 827470434 968808335 225303822 734085222 20252013 763244004 779219156 541649533 678333594 463473344 18073985 758534257 951015581 974321593 767375928 737641712 97668709 906701900 829647366 294308670 33152889 869783820 780186536 269902393 161038878 241565602 725678712 749355063 666124302 735063434 223830963 827760748 561524544 651643544 779369054 792691055 315180282 765737678 706664763 962324550 852847018 234055243 901339892 967904183 322112549 39644625 648743998 702795863 762681393 810569759 958099293 369705296 21808926 670989236 105364217 746832670 715253719 940023618 830659551 824851664 515395772 88915169 458604746 433987007 446169144 402908374 885462412 287354052 559740973 312846334 131415374 825636113 785385142 195015372 840684314 931897653 590396763 819565142 396364644 947658402 367784238 524750945 374975320 682694212 937289793 101669175 975076309 856192396 75670661 884048038 276814444 158128391 780114805 919534497 693052165 765521393 984798052 870170075 80500964 781707763 416796005 312434317 676680089 283624713 945356568 346310298 15597923 31511660 885001110 118859360 694633570 677106034 937744325 668591531 160703917 722846489 564973859 790842947 990159513 781830930 938395152 477463324 428964462 691100823 935993776 321129458 856881380 987048589 869372432 558877469 727151715 31403966 81980522 795627583 478471286 699841482 965160916 340562445 132644609 581695939 806901304 333736885 336914966 303156729 957497009 110424024 939509096 834350019 962382332 854571872 378986241 338489026 86987090 444045569 670989236 670989236 432822997 358460220 245829170 871269434 241655056 570785542 670989236 854576186 908935184 605453339 774992746 575533534 915521199 770722596 716241547 993983961 552269381 400346785 587249983 70095782 714400236 880005369 840510943 917517595 728689680 824091924 888296571 975550056 474480291 949691745 971134012 752530431 870078824 392514795 773483496 628120693 998833411 909106562 791692443 549256563 814794055 430934528 836362995 794459345 836082835 623770351 952361289 645061174 739857553 367255710 906680785 372311542 773616638 836987655 286564372 675940947 839411598 978487129 969923280 967438714 967206258 770651749 539837020 320643843 994505495 713065120 268207865 887466470 348940229 380419350 669919852 880778106 683126426 310499700 383616673 526712852 943989005 162697898 301657402 749942445 744969591 988798743 716831961 944938019 285696452 381224287 795251817 47586042 663652314 670989236 145690250 717217855 122209394 898197105 776578905 435923748 848064595 91485056 743812552 551116315 880383563 829252526 616650797 981312768 321828931 581665087 686416612 790036777 469979090 92311687 122840777 280232117 739289143 733230507 821835466 425967736 56475965 730455932 127273714 753961391 82553224 383147239 954897637 265849417 605494494 410141478 502241367 840915287 946166179 276291410 915870758 868511131 324772424 846827220 711723243 237010516 362405858 529046369 877510645 472880585 863001792 790774351 966946793 136535706 979490154 917447675 880159419 963193762 778604497 943995704 868333388 852195979 47845414 956102821 742224413 468846196 875609992 832940708 514896199 438590933 328300514 706843887 287085163 922594073 277286208 894802304 182187665 311507077 966347298 280686971 603735320 185498385 642324067 912539856 619595738 214279002 278729290 458200135 831376506 849411768 252968608 771038237 931024455 813812178 17983213 398101133 315614981 773258430 210147118 908512222 737633958 536053681 773426960 709355068 919532017 667673368 314328761 899431640 482052936 788869590 692069556 809917416 184842448 968009267 893263030 648253336 516153227 552509914 869455894 713351979 223585851 373654188 875655297 762027158 959097614 881050411 24933949 997992852 953363714 882164077 739093307 896925941 885080135 553080926 800552471 833729400 812573695 75807161 503338341 851331866 721126146 377907870 122890283 937058719 927322297 968734975 264471619 800255496 501145143 343435374 164960060 693539702 308288884 884924072 797233710 955398562 895979586 356061219 676975372 949758644 637695059 280866752 591272798 48639449 615331803 539237511 871317999 743460319 430422736 197228324 589639323 688742875 7931692 746561831 971907149 835260718 176591914 924914830 750685263 936922456 142590401 458709286 468374260 795358014 699504158 987194302 672796867 772357980 895861779 527521140 796642521 935999686 631813318 475736827 922603110 896766726 269228825 866229623 784051598 995066697 202349479 293791261 700194720 33195466 676907385 536605016 763154057 61098934 675275715 710971511 684840903 319614600 963119685 677784403 229074888 891245403 197028460 35341822 401621066 719419087 872609313 955457787 148435298 855332546 904549717 127091063 196653685 992099437 194064373 428124252 882438947 439032948 659491622 921429518 551698949 846290260 519850538 893436458 747973986 385469588 888448912 359206798 206890866 125841351 154304663 904098279 973000439 745032741 670989236 682685628 989575338 993179329 700171573 8644385 810719134 751713464 562093639 145487686 757994555 849505319 808817298 827170977 753453037 735086095 425796970 981139468 736688510 611462262 734341395 459684190 10823315 6918379 1815436 792477060 488281900 396651683 894706866 191677718 983608730 157069365 73554462 268281058 124205759 272382779 920548468 771166705 265463307 157971754 479837608 978826122 224539886 355593960 379173754 180805423 823982688 968051937 552331636 170170812 431545026 318572381 319314480 224454526 765605220 856366496 808509695 130828394 809443094 833689404 798406940 872775343 95321164 121972245 39136478 789586495 371808239 365244695 745702586 927987132 604538814 135298989 722764614 965062940 641986653 580449122 137599635 809952459 903687369 916898370 692208040 719055062 983832258 245752039 991132354 732210928 440486749 571249364 832973591 24210592 156847621 463491694 801392548 696578716 676789849 975199620 851296420 907983820 434683906 554687232 702900594 245822331 768400959 754112132 832718511 753303337 370822636 701586844 124479289 729929303 939475050 771773510 563997858 135253412 928481390 883497186 962297135 999721533 374169866 597931449 788793838 977463820 870562312 846548003 157468872 670989236 243892073 875352379 665596829 499093629 825375450 304915807 822806190 816839709 883492257 692477319 509845495 948086050 995846018 581632559 925585622 73766295 663282391 29596026 314632510 641799642 886645375 396814051 146208688 214024691 972562565 996271863 896549234 434532548 688074671 732988954 475144984 932009762 442531168 375098799 812937118 275845388 871732083 876387766 38015561 728149118 606072224 503531763 128103511 904245936 700275235 855272051 44116925 771529889 622697208 992973936 922041873 73572040 75887371 522387389 624338790 395224755 516503894 195985739 246792264 985585204 196813608 122193355 779056903 850543679 206867436 533628057 471003369 709423744 689136876 907115860 487149171 703702398 822372645 658215220 670989236 949596309 533502477 586494225 745866460 768917206 613295790 791153978 866748316 986713595 403738446 791812670 768686964 784084151 24931564 803711415 453628334 330092649 887608741 162771500 162903212 994392287 101660645 937981421 280321937 793016162 126280033 538306550 199144506 996243166 821154877 618543201 753308578 967711888 862484741 766645953 290047206 997780937 442100640 928135780 654544979 374039489 621045623 352608426 756057921 795888910 739728189 46032847 761015009 390388228 489640555 590334353 960683203 942627781 303843710 36936078 999287990 441734862 946653915 741344994 766582827 134333989 365178775 443959321 371033532 955803593 258735220 717740121 438153873 209577124 526023636 996108470 954387113 903166701 813506295 655298774 882808906 939648759 621474016 926690928 840090122 740067760 654136191 188332149 814176545 827702146 137089307 175813021 188934198 318804108 721162732 618220209 778997108 204446576 887100084 580384601 923237075 732751806 870934786 113683045 166968179 352412013 726757496 385118570 745235107 130403147 670989236 561761778 177975997 830382721 983009463 670989236 806040302 980008312 987058980 124666198 804465408 116635933 338099686 813823913 222375109 271072365 322170539 18001071 932592149 372666692 156402926 845702295 647706491 994060320 670989236 177213777 759205470 615846161 378376527 675030200 265663931 140634089 118309324 623327150 505737790 987109860 266648810 952422778 17442941 440030617 129277902 17190441 444729802 568812119 914439490 608772572 821654472 742885940 819353134 202733990 100816737 324883666 975149417 706195550 848912966 950696564 950433977 180094711 827307882 404613997 251161899 999418554 51306712 991375085 153623460 490461609 670989236 847530535 796352475 926341141 705821784 109006410 974249336 878893633 875831242 1558511 392136322 360947517 4677031 929903318 195768618 1308004 874266 932437434 405428150 77550143 822055265 31203468 874837357 189093105 926948874 269950805 930952402 742531476 585168023 247619262 751433061 406792145 580188599 997592527 927782409 199781154 105795047 945799697 223549587 456120656 827574167 176814583 718580073 691688502 999629142 331926150 934738741 649997248 828016354 316872218 996855191 176593208 161302071 975079473 192421755 84202215 745777743 6994178 486858760 916741317 260251019 215489406 869284856 668509645 668260875 915960814 964267520 996285162 795742936 784839111 24492678 673113540 208053343 785852179 367363078 650332686 479178477 788805219 924839386 864954538 966816027 601537828 162083603 445423537 217060055 786066615 621104833 255920509 301064777 300253335 305396280 251074339 646078001 216252957 595060654 875205857 808794418 939583193 470483916 153952156 60414271 926026148 670989236 745900519 690890213 777828082 45643647 913298087 984331374 803724735 980004411 257786532 522866875 91834216 566677380 122468306 509830352 799074118 5799812 186646495 931495936 926109883 681200231 991248274 96550685 933680001 743777257 997106022 413645462 402666917 387423248 679260847 686787723 814859416 906078030 377074153 12844723 158971418 280278374 278385885 970774318 591481734 292392487 857295678 65002292 290295483 427648340 945073577 284712233 687568008 785385649 919919189 901372352 349903380 122574353 886629850 561852163 947400676 470714464 792311483 320522824 794180763 999067634 716559179 107953382 611007812 870181815 157437429 903810487 710077482 261447910 813563667 942831123 976940445 918202394 344632355 389870017 763563859 822281830 994294170 417126435 923245984 670989236 688593421 614954590 231957615 500297607 426241487 122114378 408803203 812065610 680612010 855914449 664270102 154569710 870817613 654072735 149602117 670989236 894729117 935932649 698057776 549186238 298368806 836827226 826808822 935834287 973101738 536008052 758027297 670989236 275807360 69005765 967378910 850802861 961263609 326255450 715977342 869188784 18231698 734006922 619551008 181092380 251867501 744632470 722431910 734009278 864132196 170957592 397392975 464360086 68774451 725489911 287833120 300237822 322010877 515951272 932703387 488699448 931905870 299360831 711669272 558051049 495086954 933556520 968327458 765575210 989033557 73266535 991305662 337433464 916877006 721041433 674668750 619250318 415684412 866085722 724307668 984311135 60826263 822456748 596621656 10683300 673725344 563335174 433145211 771225687 843905260 681930499 781469168 175406881 261097608 191883018 702357556 565035848 914219414 762170326 95693201 769123775 693944287 337251590 781280985 750112790 874652734 742082303 498057033 519519330 841741618 187437658 173589853 841249131 183852563 855097924 888530244 662970339 760492090 670989236 177108268 749408009 678982183 988420212 317161062 353275992 874716007 986921141 838153741 658976913 229976285 667632961 814513585 739795803 913585426 201475867 882430404 853892153 691421961 900548118 948704622 943166843 661481829 891144843 790952786 870358067 760966596 475972820 44391350 716575221 267459890 609972972 737561371 842097125 664187465 87205208 74573281 166196917 832222090 886469457 670989236 881201278 861717294 952445192 290234649 14998354 868956840 592730994 124848422 293677236 122325383 744891915 780664638 299602602 691106283 570310552 550343785 939213233 426134317 906356144 948656545 31037688 455235202 90516227 245566347 950558502 280217432 700842036 862161298 411707556 340213731 771974563 890294771 893858383 37743950 290660128 565875702 670989236 164639326 897671366 927828453 865970606 736782984 673629308 269180942 916208030 782203487 686015521 628316776 112593512 810225269 84199399 711596191 64485429 868501429 753996575 173275041 937038298 496600098 523895930 836675813 575525959 670989236 48294451 572296855 473068423 858739249 282067472 237999847 555109737 108159542 11608098 408710911 169119491 806614869 488484124 997281968 961227889 364674559 738381700 480467712 759357138 892207123 116215790 728474556 84053365 606621615 991519111 710916877 223295184 316758894 939431559 919880324 534420902 155431444 70554844 945852412 366745191 678816969 702855082 330217738 866849768 410551884 38317438 124341406 838206618 52793250 909772435 474217006 559468747 750759513 558008956 114009147 354548746 827650074 727122139 703181774 159044405 828990218 959344209 978016236 828650744 235448576 465554687 81821758 918316158 971841826 574636960 571381822 522250935 638666711 757014579 882247669 409298450 888209139 833952460 142330415 949914362 504510191 300114175 418564680 711390992 663683254 989572858 941273003 642843331 341795392 53578005 94769197 859624898 701847679 647245417 613536181 395391871 684404924 363355878 142007994 686631016 459833246 835784781 678434336 354092895 399539133 544898316 760615056 301227295 521407326 952716467 11747411 774546829 674720541 386671148 214472265 911235462 676238249 687589697 171847248 122488299 927005582 645863260 512609864 782028264 277972745 929568169 987128305 550425405 936074350 495283575 596999789 718854090 820063760 988918077 935990938 708698944 919449425 924103201 874046962 927728172 968712412 594701349 942970751 845864456 434279292 626517238 913429834 427151708 569129724 697237950 791038479 752395101 976730342 387787235 611352103 750310552 700724512 952168790 423010200 554715672 695996167 670989236 376271570 695246664 908675152 235876123 789821784 542622926 890197844 83017886 409089978 771000328 898535625 292217065 350664021 354772425 834710422 244679012 573579121 972357927 306930869 886708351 64132785 989843341 841344773 48612304 670989236 423046084 87449769 891695489 820238194 229044096 772533121 931719026 583471824 269144786 573764700 751055934 844830884 184097563 36616477 565002010 894801832 223103861 923548151 862219739 714514341 685803602 835922459 594345597 818632213 775941829 205797557 604102636 462560168 458096440 963363887 226329126 180443190 565950908 965232659 461398949 392151297 390803955 263265595 835466530 474088129 610170653 372028553 693164218 54155017 138569020 926121533 578013620 807696846 454429609 24275885 62227023 693999953 733126858 517236134 926964825 417043466 262210536 767288232 784606008 805739449 896250393 559767265 294569338 490326371 795470924 914590629 997247208 606893831 193965244 929586907 344759904 848728346 733125781 942470287 152710736 61783678 10307624 836625554 832862442 339764624 993506691 371459236 442964859 685891108 790451897 846692361 991248611 724615571 904977879 840734357 881722236 830095539 197429162 248438461 266133783 124546851 894353227 714101638 411840937 902862007 786161109 710532843 270633673 530651410 698387601 214571252 791442154 203579884 809546571 777524733 210388260 795394518 318980973 732271300 179199337 970144269 91407273 64464960 670989236 799869768 325882807 58859500 848941905 428987751 814023278 849511495 934849482 571336752 92462669 150283289 31504399 573259051 167189638 984243841 536187911 938814129 670989236 435987913 813837852 907909692 102947398 623116634 289284390 870964794 634843058 547982368 147774845 829393304 602737642 989828635 840663367 28049816 831289979 381350374 471712240 104680080 23042788 812178871 956114481 985157234 964602725 948410962 821134848 10948075 503604547 606287396 314470260 604034774 486297555 307982766 708440229 319722867 746762962 810677858 323661294 556413202 711987826 639788621 753487762 370317544 433835100 237988298 797528078 267152879 972940961 721756145 837374143 428879796 569780646 194687306 885065556 89233464 642608391 843663997 566493293 393043921 543241410 854319040 823523783 758214890 884973862 847998405 735181347 824503478 608483059 687381415 157348852 928484350 213861020 694677457 930688785 542083656 763951871 753079255 962303159 749197810 721678184 436472194 1740499 221309239 125322940 52534444 553179194 843755535 781193280 946546813 766661483 396713559 471178774 637316549 590445911 710288505 987263928 442599316 568415266 604112531 383654509 828121003 904427956 478361254 874310431 240127436 589382971 800221120 490440993 896692439 274303906 707703637 670989236 592433371 860197249 891235812 831132246 323310530 822647565 207305981 700568389 314078386 896220925 750352366 240568720 166893594 891065686 854709342 2090351 654266900 243559620 297400918 171289602 906454906 769486183 820145430 418070179 801154965 607354552 814603353 914949324 817199765 156824052 103236636 853714312 77796415 25704681 493353111 504527080 281497420 990482765 688232032 103702183 919952621 272772260 401163745 635876034 554695601 444475342 969058326 858702706 703774033 826808421 729385767 285822608 713069199 761712357 923212859 11353897 769728850 782366005 824481558 974207013 256306206 587574569 489893653 446362817 822932609 145742611 670989236 793346177 940497039 938313794 754630029 391096832 710644922 309249277 86248439 74335085 30463969 695610313 341652209 956938803 535973821 730202330 906911557 717087145 676181856 33576607 660394583 101153819 808924776 266615893 739264777 936721165 966996287 915640913 204695260 388464577 933046452 354308732 640208089 358690761 16939575 171971846 204381276 988010842 152083940 935617798 233925339 533465784 911597418 945487265 166534120 931002910 100217304 951415928 807802846 895284591 467592724 837167824 703854520 361132214 161185778 911295295 184268562 270362449 749004127 827083119 971547589 702697510 944845270 882440500 654670619 896937957 440993699 736924137 780682560 991971008 50200043 227243327 791767978 543826261 492698765 410453325 258108780 41572141 850954255 998684893 727218433 860072859 590897498 949031525 727631048 677999271 843206993 867440346 206048051 440193041 309309677 857353494 602564446 5246164 735453900 632506223 137129904 832752332 683105872 588697004 69205486 8779147 913532193 833716695 274463296 864300918 955764970 313159624 956491318 866938514 937652691 685617235 660834367 949788495 302672638 774023925 95363236 15583036 580949406 971141661 678726344 547212964 462659975 318167782 634504030 446833379 216038506 847077503 987474307 564578468 750076768 432542495 802799949 757627802 140779879 343296007 170272361 863316627 948266225 9105340 12125616 519480685 655956617 901702800 351640821 669115376 791496671 798698855 560031719 670070129 706566403 706712204 64295532 34317829 747892217 872301965 699195656 999129294 950857594 875583354 131185492 254851179 313879278 681237508 869557843 24564403 705757696 136413003 297410418 982220857 812212192 999760966 162743829 605403049 291864474 508438787 573939195 101272018 487747166 327044904 970260491 600932658 991556460 544062066 82813917 464586379 187573155 685080499 70715613 472017691 456120106 122576513 695834998 421904419 88795645 207329252 948804292 830367960 688093432 740139686 772443387 590036903 971692288 998718851 930706791 633470177 905674300 744212828 861470594 118200924 498320858 140747965 672661405 461684430 621683169 686961525 800593718 674917805 837706780 187669987 563873543 148799716 280267023 252766273 893065904 562326471 37920590 681555372 716795327 860627051 537420892 743713041 850250156 453055998 724129477 730329805 880685811 410198145 901320252 879385373 716846589 116045139 884224152 579423669 983282114 847684986 394590119 870606767 694067475 414985714 125604347 570878904 165030609 749574892 240995141 622407961 569486300 929735677 800111593 272913805 616894376 944809163 723794406 869452920 915821592 99422544 413126447 942445797 806359867 184450118 594819825 513240199 534943380 919409498 323024706 320635084 268234642 872861013 829300842 942862897 660354262 137561365 764657242 870429003 75329873 499906121 787865556 987614343 145689165 892126937 409749130 443939739 207272840 678559003 670989236 205844162 670989236 848458319 756396707 695797069 63872304 324473078 857921905 57416281 56253173 397293819 841848935 824666899 873095426 205667415 540401408 623371824 187173646 839684210 885402460 501009002 536677988 600159541 149543764 561544992 664557009 770629442 8986457 339625852 714441752 507324917 450311138 529823318 841304076 836496190 444580052 876224881 906865154 744318974 527191285 335703768 908362095 603350142 316066425 467833163 142724627 402427274 336138193 891477234 989252011 25571245 699470470 377340725 76736667 189458871 367995346 310789034 492223373 820643542 625949507 945201315 880848310 487813622 833306262 858624356 828356983 508937462 222550262 985075250 911678362 863801289 449764243 884036856 465376912 778254020 760085350 710397783 761995941 907610657 670989236 570954256 462801938 152206872 248328023 668791835 455184183 158421714 738658142 538351563 805227157 873277381 893188962 151041368 59133207 195682618 731736136 720298533 992366659 872527645 356717007 529214009 42202458 92488816 578568155 864511640 964811717 670989236 957380740 725817036 902243183 908244497 343068235 933399463 714275526 717826371 403114666 958732154 895333616 855956822 523705636 407877146 721963161 981958576 685578320 425296562 561009206 224179266 730598454 417306728 608047207 684972920 275205600 948012724 189335617 860494575 670989236 953527797 450103275 675579240 996719829 588438292 471888341 636345831 382775244 816987344 751429620 206410375 946608242 720542116 801484301 247778456 673189458 533405553 814594999 715473523 390464060 462851099 320261526 540061073 455453231 675228904 713849596 771474634 788943107 273760783 520049487 825332837 589421367 698069871 684120418 840388544 465707196 543180030 849838928 319259518 909263020 602844571 404681916 670855629 336439469 206948136 718095445 276595927 904926119 967253238 799474117 903659958 242719090 943172979 813048833 425949633 985945530 849642 892869166 606017512 206247635 579410379 303270502 144474741 811660657 864820234 278272519 274973550 178786477 713368454 872569636 995307486 945909527 471848840 695940105 863048078 491231932 584949606 718441713 662338 142340351 957283850 230869684 331886942 377493462 845369245 220174946 883321727 327744866 830508094 861662685 465608550 125077674 846101918 345427562 943659623 217465436 543203024 792927698 671007864 872080822 651461549 865514756 17110373 673605460 80379455 905268210 909742366 87358364 575449944 215438840 476943809 703354024 629565967 705686618 397310386 726484877 244482068 206473240 103188912 532907178 990058830 845780966 955138805 819820425 725308876 720311080 404127685 971573843 801561522 624844615 318540133 723098658 931032309 170894843 889094720 769846237 549564310 592525639 147414334 984749640 796352122 55969062 138761943 990705614 931235659 815818096 878762271 313298933 843701136 72972628 886247466 310572481 370609435 657378420 760708783 856480498 679609098 533405603 503073853 925439714 930264734 816647391 712259911 900949259 635320770 717592973 888322726 428907805 813919672 866566264 974904181 825691950 678709139 415676202 910390750 989086011 824801266 107167552 970634870 688381912 57956257 895566348 380012594 315707963 564551373 814539190 834502743 809544218 875792837 911179716 84721602 500742932 858675532 774731740 709547104 832708950 817642451 307917050 665421455 998847719 693299434 636152287 607840575 797844621 368099930 945251801 894326072 965980748 943713425 351088711 626178258 574889223 641946300 690038595 283008055 4229931 843461602 640443557 668001368 40597824 768546520 257238207 539922156 56446088 327533291 696972500 385471176 772200639 228682090 670871455 267256175 576289854 52971359 576729726 845303319 841891527 628608560 794234345 299750405 36628775 980018076 543925636 918735818 871588424 232311531 710104987 979005532 649703508 973197356 513945879 911557575 923647787 743607145 99627052 897409440 290945669 119458324 407437580 176011539 411830847 425753972 521550275 565351647 801038050 25331486 373146206 48190224 370591920 841468921 842489264 314366579 952993654 231270119 768732147 59870123 188774298 426330358 555102098 84880570 786885442 726782598 716622163 899995114 140323345 510077832 930415909 160062165 606574835 750556233 720666658 870132536 631889450 218858507 129678307 70825951 819802301 626658437 945198666 724496217 789839119 700077743 121598525 993286756 734961492 581479521 255717314 353383485 848859589 235206724 575061612 429659082 357322103 255055966 910783187 801255748 789535716 734330475 967423980 997993036 384262155 482245063 678648287 874998642 580106494 387658727 499608877 826066985 577790252 736757271 394982969 696843487 543333823 956454903 795257276 925499944 899384545 667855242 989985627 61960552 862681827 904707567 897574532 815569862 128162846 464202818 935694143 382717455 544619440 223987970 921173336 275580519 892551164 719722020 970812031 712283827 908827309 584548564 917192524 588616549 575386217 560992981 398037192 555363492 981831270 958441063 597682291 99108137 725033000 112810357 958072844 854404227 996151590 643835376 981719618 99449504 678219545 991029376 479225705 957526500 375865558 350793567 609138460 850137164 311327265 687214878 864881081 786902916 235036217 770458076 398078815 640507691 28036327 989980123 474089322 990976677 887458034 782556314 256532178 672718905 656717669 286652651 266919526 670989236 329371345 104587530 682406332 133880536 25666240 766066785 254800598 267224021 624391170 759622578 237733433 702285814 194309341 888764428 950207172 912946206 935430624 669050727 458936785 905645037 405597073 751563018 59638606 315967714 100336011 445718995 761400315 717736842 961693421 968179147 287860200 286262569 999726924 850208929 166485006 679699681 443211068 945315519 975527885 786902436 905243967 564594366 747186592 171171926 975304178 52820835 410963804 668549789 701617281 747261461 400473756 923931046 852704875 728367722 884461436 754480852 445665570 819437576 988209964 974498749 661670202 916191487 400883654 286522887 481235693 933363095 415829569 755832131 17024932 144817800 878366680 311625834 67581194 973228715 422627295 161933663 670989236 701614897 490421967 462851773 776446390 307991013 562660720 909753551 884020870 802038627 766965846 405141509 980471835 610902189 33176319 870765073 695310558 810816509 314294208 806450381 594441272 897113026 668275021 94204812 766219452 120297468 898648636 509288338 793753238 171280930 596503424 195057164 242858190 571811239 702363763 886572996 446910891 464218090 348170306 145263837 893439127 833633682 32533137 374765810 349105538 783321215 460318200 129484406 751392408 937769962 968467523 891824624 845040129 780423420 35839409 520703678 828075763 717914654 724072192 851970909 347394372 699134849 390369254 37394282 980815314 62322748 740223694 803335328 250915895 378108878 867179205 500696020 897896928 825466448 886627905 385399896 766073071 500226524 806577467 686191653 750374457 785276155 930277047 333146351 713835935 117243817 443194488 136838084 111748721 868154731 707864821 477646813 313109130 362698560 635970943 325245642 420979500 867306631 755122830 534801601 649045765 143773513 310752305 15493217 715008499 796615078 678914389 16736405 202921838 443229543 801587631 462559878 222875 983469655 607361612 761630233 288573412 540670967 627108162 256433827 75456279 542287595 863986123 666982762 984480234 195448155 814604205 511806794 923155404 699108677 720360771 243287811 677277510 861974606 94728576 464633576 72328275 887501554 444024661 702501434 909903779 780293017 990374133 815606149 89892155 964380783 501350803 109216479 502015134 539951015 803945656 580930008 959915618 399031547 697575307 924988085 308623338 500753761 552841035 738096323 946629604 375802928 831701179 799967716 770293224 621763959 852305723 854706790 730505260 410938549 919383412 539936435 140860851 720745634 282673838 872494370 279858097 893187618 90110269 573481905 971765049 674994180 217424083 926770038 898788622 891334722 571212826 958208101 366108612 901795567 319451366 332851663 670989236 237959034 472449036 435090840 625779301 211946370 50777312 44754153 996962825 332441126 180508015 313548888 543545484 220606114 850400290 567658419 914904596 11150320 2644243 174587210 584078450 893047309 199292537 777038994 887784211 413414313 201191170 929243617 897893146 880644109 227093410 700422640 181835944 833267517 159535773 481927989 396909830 886382997 764334445 736302037 670989236 659060560 272721949 343116641 987581069 799012564 274960115 598948714 304403830 705844005 776020443 785771174 108076203 475738343 952982837 504047305 320105225 594257891 589398344 217416204 946738902 547913543 179232651 46121977 374935078 890230649 309633783 408049648 687026332 356788729 943714308 110089004 105467966 113310392 282332211 821547793 473597157 400326574 572096246 683748469 403587115 254687864 499495272 361375906 468421735 744105363 682141904 730855109 735974699 994220565 548998851 829827162 551577536 572344176 982461387 881107684 928341275 986766544 967054655 804161820 872944841 3986690 78910867 570594829 385292693 148241170 798979677 832134028 454745786 153513969 195663009 670989236 754457765 28102655 346043902 250116859 499968972 154557796 897114714 730441360 980831534 483758614 194816981 659201460 480177466 683677822 824862064 700133245 655667156 423157811 290208892 699559010 386252325 861282133 995335744 711806468 837145488 667415968 782997300 438017489 891508125 988205238 48375675 871118285 989254349 538051459 913527141 676356695 986363321 656193138 110594914 784792449 404659063 900113757 264211881 943914677 857491197 645810341 417068395 638887614 683833841 129144977 697340259 399350475 865283984 879030174 377496091 240787203 731025598 972102955 571859278 168780656 580194011 670989236 702669955 858921043 949744872 935319691 481252078 689587138 11130341 307963355 573739640 774042734 207801282 671468352 902620919 695866954 405117937 536643997 523109378 160325465 166744436 144778757 771511136 460955239 650076271 937966440 241044987 297641767 227936890 379847319 989447473 999192716 351194054 764350724 886493026 65936569 881828876 826484239 846216481 620552624 771097048 905959415 983228434 773770197 581624078 930690921 441916788 889100225 86933282 392979368 948823733 12848151 445950059 938241098 831022387 698845473 693707764 760968169 626338510 114481248 810255153 489999757 977847951 290028506 947960665 652349222 399745036 738916526 476781928 903987747 490917959 224021233 916121415 805454693 864777520 672167615 515064308 488141567 879215100 877962515 27538164 310220508 377854957 542569337 697963309 849305623 19507679 754167536 787003236 823085331 355013771 690855545 176221061 143001776 704069721 959227156 854189956 139482664 978129326 695335221 777255149 829868949 860725679 102280476 814453067 279546461 933678765 385208095 699719204 517735422 922340296 531943105 42701630 147227497 275224414 877125655 159849889 987425642 442643995 103149913 982800949 710154280 987812966 495092270 783091354 22004981 532325692 915599616 982003636 234307732 745483832 689081672 959182505 382534434 738363369 865135227 663650778 54803571 13527805 449151530 985822220 628493390 384530435 916733636 955420469 208384984 727162911 250234584 2178128 576409632 263231699 903679235 585283160 873718611 552129631 959618893 113044315 864317847 846199349 894936984 690810782 975120647 529889408 953875679 9628685 214202038 146469973 714009475 893463812 957260455 796695017 866683988 665554436 736520928 503186338 999751491 682820911 935965950 415411294 941941630 608096587 175173295 702619584 918335633 886752871 979449215 768141424 160745667 678093553 130255944 687447483 439196891 860285391 689888054 612220848 836352475 311960606 808986247 987210782 167032034 228077166 828854434 530151659 754689231 861735082 52562477 752899886 369726636 120505103 230188620 384258150 995651386 192203064 756214933 925738233 224563637 714219507 977660666 583840393 686162347 858123983 386342411 530019275 907264457 756761119 942405788 165007292 914176579 760068203 626848432 896963017 83202477 618863899 905316024 783720087 852887569 567330464 932962733 934860322 936618768 808755538 804861401 369889386 275325566 709441156 479247780 726212806 654355910 241917853 14729104 676768437 344006030 718525802 900136790 625258825 464468154 877302324 102862908 797815930 848023705 816759374 672786290 803561023 672881983 466401626 48138013 289676140 921289773 432336050 710976481 537267530 827661781 34891695 500503493 812244268 670989236 715134258 832795084 6503151 259256327 108389628 563801015 775624770 248698022 165850091 35643818 849092263 605105198 202725184 862850560 339370276 903382282 350190737 942349147 799566534 387545212 346114944 465909118 823440702 192735742 968649064 897999304 851911798 844820929 27420196 897465397 626196387 796557001 487126209 679623863 907112281 662307957 562858466 809700008 362562979 637334220 261980257 670863293 929310769 551351620 579262139 888027306 320903886 904750967 870059166 427395119 78336845 737426443 198454625 670989236 853603220 503922620 136097319 93645918 656607376 802032489 734695573 900697774 967920562 689087957 259188716 785134228 838213927 614339066 691730140 922106810 675727356 847660521 746980041 10163067 359027826 925472602 186580347 411862941 869001655 72603143 371109939 529266920 292126252 754640401 271342033 455717286 313295433 878766454 149584879 97656352 54255114 504258171 579741730 916711271 64420759 428264829 874888580 985387811 362209803 657636913 763958883 670989236 742519501 912643527 697658084 271917630 626997376 560587231 3727680 820215657 730892149 350768228 626024103 702052697 593517611 890551986 268537120 972469115 890786704 389130168 76855086 579268239 13293262 670989236 659793976 948491277 354224936 370175817 684797691 775010382 936888937 192998456 142689273 952646081 271291816 876273331 583024870 620278053 526770039 22323810 230604686 999852103 760732880 306881032 238988233 547067669 207759459 974362232 792036353 926790000 936943264 544835716 949527326 383716343 463643497 811419223 946229163 604552340 464163890 281650663 720673611 203378718 933079776 972886170 867007733 936084555 305041015 352896595 718085154 794526183 895200362 670989236 281080879 942759321 687243123 658845422 950927144 11641816 531982040 872139919 679290534 367316337 902250351 167619041 578555737 842031858 166698118 621091832 925860259 868290531 892802493 697378922 942779403 594296452 815029246 35291694 742775045 753980419 424368820 363444473 32912000 254506376 175084812 783501074 944507223 726850790 931097025 834465741 802296659 974937737 349114757 815493202 875181052 758338603 494268479 674477582 444064061 141190988 785159338 970364779 691727292 703310678 469810294 638307022 680650828 188800963 674394558 125887496 376303391 822889142 900845533 538587054 976297669 411644010 895270923 469295790 136962301 759076813 306146818 21428116 310360929 356010031 883196698 306274502 924102438 782378732 313792356 420876781 822695576 136077677 841582410 739376867 812643170 917085030 742275769 879598083 408659333 841065218 851026113 180752373 877367335 563562329 450026934 144293459 512371152 391451769 182776565 677621066 882397888 726210637 757915130 800100845 395463616 141228640 322222845 439689995 726234368 999911653 519205170 862272659 885357101 282654343 404655952 910331957 642287565 686749385 337106288 942470933 771757803 588907903 375285914 924581486 958891125 923672557 689596027 212982202 418037919 768265014 232855389 745692971 550406726 107149867 689012125 947829174 36880188 735063877 855200580 804604006 990080618 245347626 123816681 732129502 156071262 524297029 677789349 827916712 684922877 732360831 744872032 313701396 799009255 263317610 27051877 729340436 394274051 511751581 948386586 704440793 380337750 934815162 505371384 931293054 802057894 435202433 922041682 195874833 786927896 199681589 588970916 24280766 502272838 25288820 613623723 405274823 728909165 770258052 840180532 114442132 708255194 287541325 489041995 820283499 977383957 735300403 525719986 670989236 399363672 973851873 592291539 859406551 680378463 240093164 903382187 671123897 752187415 728167358 997161733 880205111 108160732 417217263 827455841 894190132 493355640 852528718 549103817 140083952 852918821 198001901 681385338 305425355 518990347 674372879 641939262 840623745 901112069 698619483 688326519 290893393 320973747 174728803 501133777 321225365 178898625 950940026 637793632 102076673 356772852 732999620 22349842 843079263 637710529 923586438 731795781 732382796 592656300 813902160 245330636 758986323 276162376 904585216 832808276 855145169 756332950 962528579 764981569 861473433 334784889 782127964 696859955 92201371 688057565 3308860 864143516 878086801 463382452 947003224 507631226 759373217 922388580 708272987 959352548 371504369 87656341 738688350 814392892 271977709 792413947 953795879 329266831 836821835 772131375 823968538 665825032 413819959 83328821 565410172 759161710 205861559 695536308 729682630 156377546 831941185 887149017 195182347 960388756 727855887 641253592 951574306 772244111 407765166 233436331 550650124 971288695 669698388 279717101 859411753 933547567 4464032 605714056 179052270 851737312 350763089 744343638 630087442 971839458 746590654 682070581 840858960 386113392 759114896 578403115 826489220 364095388 809812605 378214690 709178759 102496879 955605734 5101583 999242605 909332916 381462815 994398313 183276716 740879491 923227899 298293521 651481531 697837875 263492239 498973637 225417911 409478019 146637809 670989236 210239635 858002023 931392863 129064507 246552589 485239179 424101973 816298686 545874172 797463850 351353109 819144787 408968932 187951046 983200030 303872188 228366684 368232029 977443110 426459031 18707037 981328503 961792018 931610323 925071333 569368808 864978233 969872073 526931237 227381466 758434545 959530259 818794847 959756019 894439012 749260907 719903495 852576202 820193150 567939803 918681347 712053517 959894566 846373404 656077459 756828686 993920104 858995454 921316558 570134799 259851427 455327345 876066280 624676980 235770945 950556165 364397229 298688345 83840498 758095569 671808663 890268784 591694472 701867369 845170120 430320645 987951254 606318983 829270928 134815648 749620121 848952401 37163755 43830446 687882161 971588419 950066499 301285514 806202583 191942365 400948566 239148326 334333060 66827599 355644541 284211878 859618481 833060654 856090119 760779234 764172279 150342095 32175089 815694103 547988083 636282512 160859045 987783605 902895793 633724937 732043912 532785039 959352517 215317435 119673126 74970443 124554685 108640511 420272437 858888803 967771700 931260946 59506374 796989641 714359301 342996517 498456531 325084764 277709001 742510037 750903718 646844284 293358755 553454672 126565674 197095860 364671205 859375092 889947404 745147472 922608901 36788027 26710607 837968503 948047109 878840045 542160572 406307102 994253513 618079871 409042731 942056185 832685579 462897218 769080380 920694472 716013673 886787019 181229059 750650228 607074320 610772663 863685116 920060758 626546204 678204360 595229406 902064082 721728369 129526182 487250413 8843023 198247209 462772513 616164175 392193890 146140451 161420546 676031421 835239875 931927149 994223668 432703120 591807095 959041361 65031093 972871105 379666625 341523418 595487760 208479639 245518234 868845088 723578961 356664569 875040174 558750528 935519885 800806772 51307819 882015723 494194988 813821195 306980041 785825968 377270297 819163792 681471409 773754265 360883279 986692916 996108455 808464988 98291953 983693461 414862000 656494881 30371889 740102326 824980713 210588730 923170199 898210170 906486051 775150910 586279155 145565105 767538150 893761180 325922716 695769163 710166325 706343196 535426149 620878686 95978427 930164327 486504447 815736304 872386212 524424230 430533786 724873022 607976515 517028745 976171923 727403609 685858814 692507458 91050226 771887065 324385194 525679125 997361973 855283348 716304877 946535036 734602956 379503809 740793910 853406213 907583570 107266975 803503134 579837291 401296229 373417960 953911622 81284641 434454047 670989236 680435455 911596293 578817485 720890981 819387737 75113165 223382476 739746764 621659169 857211088 225519897 127389779 832486006 828178440 304414336 142248561 911615307 704749990 400943950 118618628 253194807 674174512 73411426 996204608 651479750 913095937 393302836 238734422 146570231 470743793 167713194 732440108 679973928 910548977 448681207 296354122 843934259 456423576 780025316 388081118 953918851 872150843 489817021 940961626 704585640 65180425 904534336 838497461 796432195 592392010 319739944 544573042 845527634 128655620 731980979 320978739 909749163 972552877 727453869 707842254 160810133 735205621 702586275 781692677 734948896 855206927 992612866 999124326 295425815 948205829 412992724 70883291 289694568 565682696 515218379 888263056 147809418 161326320 544235767 509906219 703837044 747541995 428938641 804929923 360551181 708333278 324929479 921774808 680439887 334165780 559930372 822977315 762215018 670989236 808651119 872811357 465939741 728137632 791700942 906898818 797968439 375230016 646634664 312626239 942227644 218917653 171270279 758121050 283145191 983013848 129259192 670989236 73867348 688469029 482794559 934479326 948709693 267924471 15968456 364535271 22617587 207818012 623584258 470469304 886582774 663652869 834690755 529868203 883259136 35758983 773526052 80140742 45087740 940681981 670989236 426499501 878255790 944493216 822626154 591879444 964779104 750737401 435333269 512395903 3688244 962959868 948263137 878295079 222889585 666455367 505335687 991054326 297451458 802151135 306144874 287869112 712422049 280983479 747896302 366940393 563944619 891187063 213146626 163392503 73472927 799409500 651171411 894883761 231993508 255999304 117528748 241766555 902697399 958477200 725495890 992744555 925863636 784620868 657292797 15526790 884965149 508952891 670989236 476971097 670989236 683647206 670989236 566486824 776331158 636604797 890647548 968858907 663965668 722445522 966341517 795794682 384588429 339574449 43775721 170791219 766101268 814996923 489460146 358243766 465894884 138295597 674095100 505836256 816772999 744567017 787864000 871480358 578180552 729541905 551857525 146198388 359678942 129387190 174484671 396499805 997743699 983476795 37234571 297764803 47991555 484129595 859613485 712617871 846034602 738218066 748173859 889119588 589636532 736114214 841673122 418557241 125843237 208245859 708698365 439018095 988092100 242099741 436691582 493025165 855387685 91074981 739747792 749949327 343231011 992402022 723756788 437826148 315389278 503512977 777206090 147615739 248602926 260251147 768103467 681111865 247057896 996751056 753947092 49662340 24545720 689942658 738322863 237186129 796177548 294412211 679655795 919720198 24047904 575898554 727610033 123312070 902486343 113725741 202769218 444024937 386183454 580657736 625117894 946461178 363853255 803580540 823736361 562825037 726682566 766435626 784805997 670989236 689194366 779018000 966376838 801694242 911947373 620424640 127254151 328860842 999737293 232345281 546523288 702802782 789641240 13907811 454785205 753770554 811628488 899270473 793015131 677193796 689531998 899338369 683622942 959814779 776057780 188158288 710640210 735670813 859564308 794083693 157150597 121388316 929445281 714902623 307612123 174251775 121197961 305526862 404705587 754318047 803567810 21850509 793606638 892460436 636250430 126123510 21649177 263710550 948792068 96065932 180255530 956573317 666004675 967163038 850107038 849750950 22301318 859996720 337067542 660874137 122974067 213295007 965487050 882545782 670989236 806485508 190274356 868406492 599258913 845889361 539830029 943130283 917675016 715705179 444388852 310819466 477896593 216461834 173159800 807474787 843070974 691216253 141861414 987387299 736901948 691001602 56665231 190223486 3606723 884088270 281274457 984915847 635882843 974393058 313008491 300317567 882502571 928219283 822035614 30452947 462425862 503339145 107453840 963529793 864635940 907060972 819817042 993244356 580628208 709018963 853164011 405089582 5989367 56910141 112768321 872935419 797592339 997992193 685886005 702086221 898219434 667486932 767798908 25103488 353758004 920203860 131826794 717802958 786780123 162372974 208432110 304279135 670989236 889826870 997669400 169095248 634945926 101151560 566349107 754787751 973900411 109518802 129339136 687102123 801020346 417007943 374219609 805805639 726099868 253942000 804802659 978131200 684242323 424730648 977253259 195748916 448113826 913013267 359023804 418342325 127711759 125314303 757554275 912702201 946733495 690126510 166749489 818759607 958387620 814954873 804575594 616903105 950256552 543774972 272722183 723700194 906102065 637352966 112557431 576272174 740498100 273201576 741674150 309613736 233475794 719129661 993194274 763993149 166116543 770086040 792198846 235565418 439439363 799086091 721931834 953104940 145929039 670989236 18928391 891958161 402797077 813515056 540668973 691248138 630109407 289662939 749929006 820521161 853757554 903604149 181169271 897617667 225584775 700785352 660846656 954728801 308317433 928462000 378119594 762594867 752281268 810273811 184148687 919802514 833816742 7857107 408351162 884012834 808465365 765478785 915877145 679643118 692519377 959643959 871133135 757146834 873361458 758126949 685052544 151906560 681625215 720365892 676041315 412882685 309748622 987501712 306570667 766499190 821856850 382233881 779595977 430690446 146663832 966281751 72309542 388034531 4428236 830944235 357729662 11768735 206302086 843623250 264714399 684523814 299008954 838908178 908262750 428508422 531438901 885189479 881854573 992705340 989483179 929444061 639511126 856481144 893775073 203146666 345988345 680240447 402210538 516480420 379856611 220418589 561730580 801665534 980359115 20338549 577250315 795187072 69054469 413842112 638754328 926850197 44395928 113355413 276636643 882964837 649328003 466127092 832788278 832227147 275670127 588515557 431136677 935470698 343771249 285479085 622288629 231564322 273373740 140594925 477287210 366538069 555250444 2999201 826054655 105515227 383624434 107619627 332603453 784890436 182131267 853952029 585817269 51909378 506279174 270181136 991144622 829451952 605950910 400480593 620011269 172883794 643820625 524695658 53256389 922397018 208331561 247625174 854762847 776702509 239511829 63135998 87320804 966087668 237666619 323236402 680661177 557677103 496835220 644916123 699016918 931394781 353062652 87258780 525367552 194164363 612278227 585076383 751040477 834652831 708886426 168937523 790249736 232217645 177558389 690536791 569030784 601945667 766541855 772812284 670989236 246597626 665684797 439095745 724440594 813033 410410008 272228888 580799621 121210592 366144824 546338660 790582072 97111563 319255670 743031046 774128457 412667414 981816314 987091998 113252105 790697566 165038140 390084604 789399406 388158839 584645420 665935138 319370814 709439647 830350739 359606294 475273769 690062559 201514116 14121511 814755380 950425672 882045011 409313476 123417405 574469700 144445723 827466672 776925084 204612108 879555462 660915062 424370200 113646984 361735460 61228501 752339983 468424749 819874634 172326903 348609401 734034165 767607236 195589905 91685578 909097630 659039698 693024175 548005794 435973609 90475836 842925795 220576408 941623969 982971521 630205309 820626424 565035746 950337136 4836073 936216872 442421701 73720215 331433644 624959691 700461123 962181669 115165474 951866641 450621185 192193593 435890044 966440173 705210940 835910045 745667916 18666607 905225506 794847290 984304997 788957068 763401741 215277797 794104218 797497992 715219343 710659822 328605488 125180848 834839867 998229486 666745814 886919087 734340119 689075688 363588165 979455115 855090986 737534733 625580975 489359854 881079403 963677753 740553896 181216863 996589625 768461142 910389640 332505866 898521431 921790926 369489268 347153147 541142545 813631522 348114799 728698063 332235297 284226466 280638631 404384038 77954567 12391168 207312177 402379409 746706916 782665873 864284657 480004272 512155201 77223241 633011034 932115495 822303366 657431987 285843111 700679715 904977009 390321011 932138108 944523678 586387609 309862124 759626090 691563801 604829138 874623493 90071986 105928712 134096148 767762684 955416081 809246784 884603440 24191699 917708374 953312713 207791839 731550295 977887890 494842082 130344065 748612583 448650619 181899576 714990782 670989236 913196323 354862723 651881071 818444059 623413614 75531633 108915155 670989236 799005414 695234808 742161662 166965563 973833641 549793394 261859141 903905204 276724231 245151063 1702863 535797659 577222760 991093197 706201671 43280923 994307281 954277279 199326824 165041272 71285678 860573166 877542589 120164971 819786123 455768706 145147258 691171944 856741256 825081044 838657162 441979254 395468592 324996350 985378013 17343620 896252928 993636265 122104155 745417782 579161506 176133517 698149146 738069472 967603700 882917818 587424943 720564002 539351495 899304651 446464746 725039083 17068275 643245582 606887563 947917428 841912230 962384910 943548336 975334635 869890459 103980995 734528334 991771276 670989236 783257339 218229652 878038039 392926309 688916239 760065470 899353345 742981640 353837501 930909526 929147861 591226373 901417356 975693644 950000914 291690391 769836634 932682855 537765764 363058414 16143616 973973475 120336731 604154801 583449870 120581543 978212254 727222286 99195838 730776277 350580419 34666408 545588674 872552795 730779601 534580648 473094056 267016432 44197178 778273926 678277468 690584054 764990434 906151692 33250106 581888836 75987620 700129385 950912526 329456006 700612599 827551436 82342887 140900431 482319001 672192696 226627418 944846910 901533077 59698842 189699219 629996616 707415999 769702938 98916517 345885697 161813924 680222850 40272911 364874245 746696734 967907904 901806097 672933194 549474441 917851624 302665606 779957104 645585666 463464384 166946323 889823593 857575697 151533133 546141900 356694657 68771676 814010872 618853450 370272822 273524746 974748935 343117006 767401872 222552944 73815331 183164850 126200645 730549625 602807194 152936670 179309998 528912169 287604425 834015322 151223104 678455874 479543418 866618839 802502157 840167790 989415895 606677830 802839899 895229397 239177238 751553612 861158544 258080828 906665929 891321413 978699934 685604429 328113483 494917550 407041832 366533244 496808478 537313342 707799684 640077718 390574026 776022397 298397512 405659821 974828024 958388282 843679299 511948216 379369580 817208698 830909635 9262940 849089742 747223523 742999012 754896647 2264680 40024962 11718877 822359571 803365010 790096784 71821712 761520906 209227153 885224654 224800162 694102104 759019642 208507138 286976346 411624737 708314867 502868638 584085913 560833852 371445099 272500561 490743256 573732603 383576808 987906551 896996734 873919022 761669250 66117363 314645530 792334083 684595753 333453058 613639746 369366714 302411910 169891453 823979421 446323450 697016177 718402183 703096201 956249182 963840062 721304786 822948359 802134235 698090498 650832707 723973589 557316718 510191977 825979643 560833049 159885549 328014932 84571043 776020179 554792005 856812636 114525057 748439148 597913487 343326171 957945209 23592762 419020919 10546742 781910830 302952470 830144521 331389717 890214905 487025513 619800837 400699537 736833252 221735514 133716911 843522547 818136164 824785048 474589778 135482474 41447965 743970297 866564653 9129661 933462531 121274200 824879476 43247527 757466941 220510267 803673845 440031059 957006870 749445729 914208572 473910659 942883498 211944797 839819403 694116217 827159554 184720462 744153180 675320508 765290507 567394848 589786446 801795864 767639593 682756360 729046406 884282211 18472132 705502720 655907033 825170868 36480131 103560492 942405997 400645707 63294588 815630136 841748340 948486430 107155091 799164685 261574810 531482824 936127115 108905551 458409630 897080255 133723922 930163506 704827579 15788554 777486381 976200400 713666401 381432134 894296453 718815581 144026644 515920709 661558194 793084048 666000880 886098859 422766533 689940968 449665617 873294992 684160396 46029849 218624710 100122341 710203096 488945329 242006443 982121822 554768647 54325540 670310119 749520791 485231412 381749238 477977554 659274543 929224450 838110592 343852848 928557812 355730253 854312458 199625749 43732130 729455504 973752069 127394222 136010067 423253308 387656858 488065941 26805420 509616168 200423384 736929977 94992578 231863402 786101072 979646252 838987783 594692663 122882852 988901614 898875470 805481550 767741714 987987579 999784226 885568436 676672449 729589291 945347403 771403355 720692875 806604520 356789411 22859970 363944898 812279688 611753643 445294505 691565091 653927902 670989236 993338876 572075725 19549857 926575505 777781030 16271135 768056664 826827096 540587708 183302751 853001402 951802934 840056016 624636673 69632178 937053130 825444076 902233980 212945935 931688324 545286534 866948729 193748935 775247704 747202123 121049288 686492187 931688229 531759190 116071551 709524183 798820088 217030663 791941267 954470848 688296392 126165189 753066411 758135841 588621685 518279322 892502279 433409630 788071994 892708187 738772465 682818308 480449843 588266874 403378549 684501125 842253558 106363591 831707431 33008260 535839230 525217087 254246488 675977570 981833831 363859283 670989236 794131615 131542343 227848537 886134132 747122696 785518909 16301638 705172741 872368154 375953583 334501701 941140150 367249374 103444260 403521730 560248230 923855411 238048932 579351461 832836810 580018011 856194995 380421926 901261349 87603360 685121515 397530497 858033732 888052859 400931004 919459074 938582445 949388941 98063192 644297174 819527210 723199820 750793687 734915972 668520210 970828469 796289490 107076168 681686199 377423391 932653995 847848912 326976719 94662305 62950049 445466542 595867358 938934866 689475124 837918276 324568551 246643348 847321958 867340312 594778499 538029135 768509546 710735118 559247883 186679141 979743622 709918438 788657024 944403785 858991792 884531629 938926820 504086919 280064957 494629845 702499138 682555815 199346773 165584202 515958050 636614228 914829955 450427713 935445660 892785922 65347125 629328957 278981183 621258831 821739052 177976162 36816603 187440623 966154687 173810892 309589441 749131520 674163241 688299420 172790765 758322054 330880247 669658082 205881035 544695329 985815084 938143657 631545986 821968592 855740201 552609084 455886770 792792729 687007494 840618362 893903264 86428604 922208490 773716417 963489653 924835220 893472151 855545966 827820416 817425932 829583575 883207650 689548311 724977935 667409845 522403310 948638874 834129601 959708130 38372232 713512699 750722080 906915836 808189334 518232691 289456253 24934465 780543418 845679147 970924796 147272519 122636364 200470634 459378528 379338052 313722378 766250978 993011933 720229215 3569999 270671526 315517065 356323725 310994561 718746693 529231999 464739408 215699362 611600830 732297873 905531370 322872303 884576170 12378419 591065916 355562732 700980022 738181176 537072331 908586331 676477943 584613801 777247235 10998154 715249515 608029150 488298284 825738043 381737504 761690147 842433929 240070897 194999219 243483123 376570454 251879845 451762772 883616203 736410305 861028054 37256756 903565569 681991528 458956779 824894103 781803937 711743813 279476927 919676623 253104621 933938144 536305865 955949777 405209842 714269630 952072941 196061743 763570634 442369451 258663086 261012120 878926798 629736846 36196456 20033735 624578961 572887642 101580277 344284890 559689184 877182617 699902832 280232796 968994677 378796078 816975621 537783754 204492961 998608182 856358581 708056762 496564468 685598363 4052087 181135410 754425722 932246236 415442083 925055986 713075155 552197790 437746279 191630257 409103775 677463518 577770319 922187777 749710632 142585962 169409523 140253958 591101901 917697516 599202653 949192827 551757118 705744596 479975705 955909387 778313793 951153231 185225633 733751286 940448132 716669113 8307679 303742176 51209999 647091776 756444266 401465024 182071481 926101047 705414718 942571542 707761318 212440328 740484339 247757275 942650336 757836619 841965016 842554473 430579961 628163464 87842886 326824884 725531140 789170278 775906831 928967723 302444746 868756095 6053457 215991964 885538345 972630258 935710573 136103942 839874714 669037203 122217260 9680052 782684129 284010140 679603655 56917628 927975329 741512300 374808026 946408351 389971568 320925216 670196396 918582828 932535231 774104704 178962421 578361058 809323790 389790342 501726444 706160831 792488969 939824016 533152889 946104249 773953595 815812563 572176904 935052731 907290435 825173182 979310416 382973855 677980210 728494490 969623220 305037166 769102092 528926839 205252409 779652674 56215672 976313151 375532806 742514069 786855884 205727706 831211674 806096873 730636529 49779123 345112237 959742997 939403686 863142033 739334260 26240961 890800985 958417711 142390207 979131949 109637998 97513455 373723756 177080318 827201477 728642200 331377350 727157034 922209322 334915178 670989236 759269503 441591553 625587117 685830422 493806910 425854850 344592920 968967243 233792653 200700032 927777994 331946653 527667937 306038717 41159627 72100881 782636261 867165197 55765425 771238956 88060967 723982633 328565203 30058015 961781220 307708720 444220005 951023882 302516769 929592336 251909889 128757777 505041757 432014208 777040659 919948676 798408335 524450618 889938052 617235407 878481688 93014847 747904334 199828675 95426263 516537183 461148581 965406854 431500893 486267050 634238935 813208482 102518528 823183682 420898268 374692717 851125042 996571354 644999851 808314515 32953146 932541235 685378730 896537185 808911887 298478379 41378042 878089685 851749487 882700707 924744097 686459109 821208429 436918872 670989236 926442063 761807114 370656102 335223287 992510371 321146352 232620694 288315443 484884405 946385773 163840656 945718857 513252901 712907943 705100319 725395398 519670404 338361819 386510613 501746372 979165473 317898673 909995867 957273687 705820863 873195401 896197871 206056606 268044308 971272950 980085497 308619711 258978557 336198015 213931317 988495245 992792612 670989236 46829299 679488542 200759699 727182261 584945999 78593673 575238681 755145099 503452791 591072046 608728145 794010084 692323822 612563402 67108464 603581029 826634301 847939633 457924827 680381274 820370810 941991360 794902486 118584186 46317558 664849169 223129504 672527939 906668301 86290356 646973035 826907158 106578546 607065366 670989236 674180883 556195182 845339694 290678403 56680948 900478538 423008086 486396942 788835618 192765452 697975014 713082710 303062846 275626833 831633179 850642570 158433887 678999500 798113759 72106146 578241853 905253781 827529599 861993895 261901939 68880357 133200696 718076411 798565277 872228502 788343343 763193462 394062970 850698570 132480493 891704553 10117144 905779392 828919893 670989236 162716598 722710022 184065310 934991458 206579777 306778318 417564917 801077588 915177354 297599742 25739332 767794287 890436511 166748320 165410237 867436778 685317116 693049077 917742582 909834395 863151557 122492361 867084639 843289337 713362301 38573886 923332407 781478735 924388573 511296716 810395754 65902603 434330273 659845934 870561346 481414550 433378663 260386531 665056205 94348239 425273678 379672068 903962250 893486333 765240030 340320890 504832058 899744265 821430212 449748840 538441970 763236864 455910523 726546726 150727793 720574665 255458037 794614562 353313336 163565032 646543065 981652048 380540379 855513814 815787596 45374247 453418489 132469370 946070945 81354993 470937148 781019055 58244670 30811425 494527737 610542256 970764211 484883945 911026693 355796882 951275777 443573002 671633067 265473016 905860777 816257188 997054451 891457625 120521063 560386056 398877932 82705624 414305091 14547269 415291699 871937668 504169820 384742339 295092936 984996887 943745886 863763165 931557066 349356491 907881471 252093655 979749038 844995780 51527819 13978868 973674560 538159114 106940121 570435984 321371724 950669678 980394516 896886302 494362064 901038823 700280442 579857738 504849807 50449259 974689286 162735625 785869043 667094750 692651925 76581454 777484374 272695396 17848475 572657832 958963716 729689499 835449032 716197383 377392697 106797982 576634447 362879134 976460018 445566040 676699796 347939545 243610417 288127387 337321958 980387033 434051307 678374899 404885573 980813480 157245844 817299006 816020037 721884391 812890893 490743434 707310957 114013897 743172191 164917051 66126565 931158808 972969370 771224265 633044741 103809081 863047513 785963307 389322493 134367168 954287721 943502779 282706123 175656107 382964563 652364882 751945604 76541802 871363995 593768021 820591531 62169028 602116954 825639008 921279630 354447793 829189485 722785295 814508887 432854578 670989236 860173646 959631004 500254423 800265052 617915766 992653888 517102870 780113821 371792621 297676777 257029329 743117890 923694304 683633134 595519993 307392499 902287013 912427365 42207327 660577908 90415923 930217535 231438964 683109215 541278396 499857745 114242700 471080410 960174450 717160678 847182647 924449990 702504346 345620762 191656058 192884996 707328808 388569419 413658091 498587558 141954095 506778847 194256454 702629794 843946603 974141205 708939763 906255960 218331019 325881067 252711378 414944136 632801943 691520434 44622232 31605323 149422952 653767523 390817865 457020842 911260981 233067762 599379284 453576975 375338139 810188307 236717701 664753558 91475602 967270794 502172156 780711958 675580502 301880060 572317976 401169785 268583634 941190645 984151007 860663553 539531953 366831039 912042949 258583585 671177481 717908237 763716784 786671219 643582232 103237115 534275170 722530838 791344113 952812770 910702407 208804635 861198092 670049226 177961687 108032547 835888197 802599440 721993895 497898036 86139113 688620476 380531371 678833101 745123473 387459068 169076494 699422118 859793235 434049898 933947776 840294482 760223496 306800455 926197308 919445449 279161502 532391636 921429463 829847365 787872238 485529246 266476318 922944777 896859290 855368515 130874537 70100071 937199014 298092931 142363278 768609648 622344383 810594296 501179277 762186589 362436764 803159256 272410574 378562182 840097929 793503155 305797130 974889568 963060381 246874886 670989236 771487114 976333039 821263287 923366627 104545334 925603392 872147615 75474391 576678488 883495303 468168620 864197308 788612523 23633426 967050177 230150547 829424399 780287913 703395747 834677136 819544207 82744797 857614166 648403314 825916794 961802395 521543735 160858724 899262158 869061590 557869946 903377834 317197192 887867952 674646121 190963070 134699945 315080169 826130549 976932486 463607963 850254571 392412373 310113729 135523868 731842138 67144066 813938439 600640788 644688888 109561493 803055770 557358966 791912932 927531157 156992613 341201229 813589755 650119752 418498015 790793748 577200765 870078242 950955511 144950838 290241491 742074197 457709765 539900628 187431975 974221409 544640457 900308014 988460724 988217865 614712889 627703349 858010688 941602254 684403821 976475047 694601713 26910402 444355450 346229800 110249053 944188632 165989975 857681515 838796276 950576227 56479923 142069636 812899698 248169796 534796367 61934006 720210397 745670500 182307547 224440923 114510526 862864642 611735020 967025208 711934036 670989236 961140120 900988911 829941298 241560644 903715255 950134704 796451327 905571982 307381820 670989236 908903719 268652694 898010336 872708998 941364752 559997763 741527385 280960995 706379721 880304255 427468373 888447258 809700227 542842867 729320370 753129089 11322558 216758271 852521279 283261114 545813489 516575816 959752495 287605212 853136620 437548473 184127470 393259383 905886766 557633977 581734239 992846972 7215116 576928545 953780042 902160505 895544115 567389655 659040166 194710692 974543965 772046681 343640751 140410644 788478909 826340741 891628232 401690187 20890296 855466446 442387376 587891647 389943075 945796368 950729775 764627201 311875576 342084901 971698907 949271163 852955475 685566765 728552198 891065875 806063573 750965206 497517158 795240425 361803640 312372079 689460094 386360980 724970015 186096874 916231759 171654465 97399515 606584441 736755162 803208626 734796888 807534899 48910046 668058602 86701882 947041302 689820436 354997772 677203475 677626800 725582423 320029531 706488719 90905386 39554178 332871742 866820293 840365846 84431042 710440772 346498265 594765517 187042817 963822019 113185123 539540605 529283198 376921140 913093675 52718288 189613365 765143341 352425752 775059044 797088560 559110258 938177133 7632427 40426301 150935338 135183197 848764486 976027331 946993844 295477297 149888774 787467517 834013890 681094842 654232506 564962817 792880504 707333211 978652630 982765027 33907175 522469633 904971742 703425273 773106386 464872552 762904202 215155065 175705647 980722396 978831759 885192525 11234689 395447477 109241661 288317821 339235754 590682566 883485533 706320322 943179042 346705255 928490292 516038168 80778617 57869688 201127282 787443393 626287276 265218602 685569853 963090579 329310045 492336627 838820821 828431841 992835568 902560025 194649057 136633032 952973025 418284306 308184502 122632814 814948582 549763204 102496876 458581766 940501195 708800596 977387556 484424665 171593587 780853582 996860452 505597422 906339444 884076819 688340274 653871525 974529986 988015267 432896138 503778382 933453273 844860643 569230727 543839205 953099653 422231025 670989236 792816931 830166525 453750400 661621525 549090175 119696002 966143069 369574124 472089102 933014469 773469995 876805557 24360262 533856189 829805722 747737307 872154126 13807134 889846823 733854857 670989236 478331360 810600947 249815215 943021036 480106775 61589791 811030322 894224593 969844311 772159955 678349960 976282931 948760381 951769176 111996215 256995702 552020202 567955681 671608530 999569327 928278256 874350597 129162560 499892523 777509882 834395779 728268355 498342905 538301726 303420208 615181217 615136515 430568999 200486974 183907607 798245454 736390056 846364559 278235807 940818980 599844053 959359266 716710657 142126862 994870860 245494741 863688750 38104591 896219637 38585249 106762734 294313119 572712913 913075778 740287524 204631760 670389796 715010014 866018955 998896252 890529343 643517603 312789946 723493014 983513257 945196091 247013259 807022832 118314840 125301103 933656269 857962497 437857649 934952375 931170418 111222417 235074579 518351550 408430772 307556665 876745854 843988778 329497795 272643229 75656304 753903922 508501711 288008623 76954579 681460464 947482934 458251387 706662392 705156884 452784694 789011569 877092348 981045387 340052648 855677189 134580721 396317914 111501340 439253190 110518544 808331639 824664902 744762205 439825104 98578345 412403262 203637791 289991955 806128123 670989236 239579102 858864157 27149865 204729519 542985193 799320470 86932056 86695299 46612202 928998498 674066282 863313247 34391023 851014512 240081607 990121280 972409519 256999179 232002967 896561716 896409719 57276254 937364098 991236386 671289086 373990074 911168376 784754405 117375442 537684269 511102778 852788413 989573762 340830201 965288667 850074896 511537327 8249810 938353558 137175392 908551412 265659631 869712989 2774890 595768735 248048071 97869103 992941146 177349472 776664492 948308784 321145915 773268540 966337210 794793538 773175290 850605602 516765857 246638850 822872100 734353417 514616880 137801327 856390266 988792816 566365155 936020491 588862758 952119259 427275728 688327468 702800397 856065102 680643945 99445122 424318404 32944656 7967058 816695939 986010873 710296130 899447630 714767462 249807416 946589644 766391213 246139677 74836292 583313268 476645176 97680358 360672949 801753652 701741509 670689530 504108109 904015982 714236680 689827089 395898846 925720158 598082720 751299835 37982079 469557104 793191359 503949853 862396008 718777356 69835877 824997711 732734226 796949542 826361027 339928174 592458803 786322243 386572777 46949953 405194363 984199045 728148925 798314580 820399412 142600533 212426049 593434856 909515000 984444473 948568903 729746624 509402321 892439234 954761699 584019530 420712256 834213759 822449787 982391154 803401514 786021538 753953910 714660344 912506607 235662273 114062145 437350156 724561098 300492871 906777126 801016295 861563708 927486917 305566784 578867614 921636927 406558516 288062693 219935218 670989236 931919891 513384805 264618408 870046343 843197909 77125711 886966194 526606054 885168720 874743704 513496345 120098968 799699905 467746495 929314967 980400305 919412760 725929891 37644686 309677110 395370155 269472442 319147320 918330272 321226333 286467048 973056972 796972152 473807490 477067690 614709676 834909489 986781663 935273983 416911018 507864838 692823162 954713212 982699467 315335761 375672947 378530496 134839204 989750454 599378916 973819448 921798898 906998761 898470533 588484564 953933535 394414968 921963374 390514352 718503033 670989236 779083217 20439152 941686613 626218893 827757384 753488228 677199282 855713190 809452266 767723141 69330158 842341203 141485011 968596059 90361646 85215153 344648392 448237378 27915014 102743432 278126156 542082049 801557592 670989236 799586695 504575527 769047689 242562525 269626325 758515308 163650098 240005118 996301029 334102060 218044594 968895984 568969219 814449031 247735367 830415350 935518885 669925511 420463012 492416899 796321124 504641477 769427341 272131450 149910693 173858471 315654493 384978793 74935291 468049949 84434278 817109481 760227835 994481817 359154629 995866555 15036238 921078611 784602014 694728304 795823614 303281854 495377562 818653061 901475163 909067858 359992472 936212637 395749690 547934278 4491053 898184924 681785718 534935782 784147032 531440709 57518105 641500143 192108557 891263535 862777493 490723580 713121754 505077421 789877693 851681597 580363534 369882097 900361755 793231676 937721330 659960193 758396371 864584626 933215993 76479399 86509627 594101629 230004413 717888730 970963512 930235533 223154542 474047617 882300697 813052901 823029005 660083134 734373078 673725993 896783418 685308799 597227385 282875204 457522687 806875719 855354990 148240905 937512421 548017680 730418206 79159941 836156527 835037157 978133124 701437560 56950398 485692750 761046892 546383622 752496058 268870808 847307780 488198966 893048367 845291928 833659607 526823951 670989236 547794120 670989236 192657620 813741567 938638473 921938537 199055161 977212985 699083269 750576205 860399899 885877796 670989236 959871903 842755215 697801677 316295614 462702358 697136481 511675193 825739456 971184645 705201234 696833837 670989236 673254167 46335406 119218270 670989236 735944430 964305283 837807780 38303200 820478041 704854811 720430800 790044813 856165294 976195594 697170005 410463527 810043270 584372528 352482890 944270541 760302344 679111501 451740622 151554646 874296362 757334099 392431635 945176381 713317934 936455229 736100328 457728212 903359026 960318826 631243142 157723784 817506612 635236130 189482956 781005730 610066015 796952880 396715204 303227535 466996896 283598468 46938344 629691631 950650155 670989236 383054598 753581949 100201548 972189488 25662666 355759650 72354874 299639544 995706562 443605393 782867565 786308815 525447917 388439684 819618539 384201702 289701410 9238127 777257667 801098222 769636135 576390831 497242158 195382239 941556532 819757212 885929695 735272423 297930445 900677096 388589237 536607872 813501114 747797724 9344596 73476506 226197185 674958775 244336929 97698677 683806350 786695658 748231502 880647873 940610116 883635401 849802345 796308489 775018536 992073216 571539980 810850694 242174495 717058284 308790771 53401024 670429749 2148841 641122041 178039497 861184530 271523544 713800995 439292820 667036943 593946263 39261890 820956487 828719380 689373276 287193657 405384414 416013270 237889325 551978502 573920952 969219771 755597805 36547235 710347468 387698021 313755769 294538117 216642863 915276339 766137971 63476751 994313597 45059252 406121884 281035266 903217525 956815053 15418631 427190896 383043798 744015482 810001241 233402012 207383941 485856569 651722491 825172957 831232924 691576998 594159885 663223840 226620145 734288679 429752897 255863047 676793509 653809537 173338380 805401953 984121921 224164218 627889098 418383471 844769438 30174038 16960364 280243873 743973531 807254114 400140423 5651015 649238269 62058712 964898953 60648827 765023002 295680283 491509257 279240781 861064394 646377993 790928922 149431091 404704436 910030654 388250942 762644457 828513188 706418266 278722253 399898812 9380948 641152043 480355305 784029639 670985047 890775664 948689933 323673011 953867189 96657529 267610018 176388925 977066855 836731137 933472862 994266155 514997482 70739619 47347808 992375769 246198166 834428030 945897413 827879437 430457566 310607961 486533936 452889070 489130193 713496041 860919284 954767397 165757637 869151847 383971365 394344088 516930221 883712471 804836212 918623680 866302059 450014093 140091038 362400538 670989236 705888407 915681548 782670019 493966921 797621758 670989236 338516902 824076725 390955041 305644736 996356771 738286864 446478469 885722803 123610711 739879388 718802177 345167287 772194070 918251570 529322401 973040913 778455991 80169223 34584054 915214136 904049554 266424013 852258984 758470441 704309905 162568201 155175317 983891938 874080755 865963519 40762068 490107504 427691374 996248006 171208272 842796908 749056648 583306088 658727068 401598385 847181844 935294343 885559813 982505125 798140549 957520289 791596717 715759831 669949910 267928716 464454170 256819243 129151962 68975906 738148583 452755225 925795080 670989236 535814262 331712570 134995737 568687122 727853168 942026904 390538926 776635251 283782566 833376485 676305186 825614165 838273762 335754717 245716255 895215014 718390585 143283870 215371286 957441168 357265207 909233057 999580199 712546812 870916696 803387134 247893887 524658525 946731762 749938616 649486487 670989236 10604215 401857326 286464826 190454463 927454323 947440559 904051641 650779425 879304233 58412478 10119917 585084530 817199480 186839835 104259460 89726104 919142817 518941143 112620815 512803189 380931499 940087116 836575323 561290931 50604654 964807699 789950830 699018018 71596010 732912858 762696812 956788287 742621246 994255023 495003087 178736918 259362925 203300571 832001755 719938749 997441265 254247535 235134367 591699507 650854459 72062415 52310301 726720346 771952203 859862921 448983681 863124444 85858288 883523753 403167704 230906243 984360420 222975004 539080565 341770656 932684749 378703983 742633398 991724536 751441469 967461997 123511887 827798463 724062930 113483454 139469934 643661731 625869637 519942258 780226952 947764223 794337015 388891840 684199705 841690956 618726227 665938049 500888203 65949125 766634454 186451974 751216828 829124548 679893296 252021000 581055596 831438731 833393557 663943783 64358553 670989236 985126624 843854582 693393189 412755359 923927134 126888828 918809251 324689630 517380272 395021616 999284946 145594051 759210574 823890085 17088848 963417959 651343233 536438003 709852449 698629353 791611235 631206513 666849407 360885246 634625521 508096044 977234242 621556886 589980599 772964679 162200000 345305334 205145084 708527853 420500394 879008293 993220781 651005414 884322454 146233671 351956909 836949729 756040658 978638328 156418717 984591321 560608598 946994298 569112345 452345128 835671272 953746971 171933973 956748142 752967281 510372352 181170310 529883358 952243913 711423544 158949299 585047871 661014756 375531191 881286185 809547675 912481286 590527487 165511340 964529474 722257821 967486046 826321845 487297152 779602730 118078029 432840839 267147702 463703783 868921727 895452027 892855952 22696218 818201885 683564022 880331289 941672033 36425426 791839126 808170748 858310394 986132031 151079788 527081360 146928045 764090375 734017340 188258441 816765389 349088950 874282675 200375140 478470044 718762401 693976013 887535096 209287428 846015386 901838436 13970257 497038115 910069721 238818480 177278900 706625172 518209245 954794658 968386232 837913889 127603525 773943236 752862014 797660757 463197705 333419546 546973385 221400111 174970590 685041733 637919995 856269019 694219784 536913620 976368380 184108518 247119833 918305991 261290542 623648288 843506163 852503885 670989236 712480584 509270423 430097094 820725459 458485712 347979865 888367636 907304606 961075838 397757749 920065659 817958676 638496012 840544483 918134211 917914256 877175337 298531772 270525724 368706983 454286171 675105398 833908587 150252654 987235054 188927914 531224559 443303758 110317137 542764991 899716773 333510470 432422224 793641223 532059009 173246216 543056197 883009075 682170754 858829630 939446706 542258759 303596589 989219689 922169969 262973526 692925213 309881296 469761640 851306351 568007413 914094925 894572265 693289286 853549793 825690256 823074699 960892732 186406717 889572638 12958331 595197314 98720512 263537218 590935499 399692303 824982878 9834815 939848611 395822584 798811634 583714613 998182484 833768342 739809568 346147181 664188543 931474559 824253069 44071823 939633604 686528462 749287148 215305931 707847742 141160853 678075252 560486230 158077738 998394262 48455968 35418297 724548875 904104451 614517596 511242591 744326297 521761877 691257791 168033877 156215913 868214867 374088711 620169148 988536619 220773641 179906163 684401972 527641611 984740726 825204557 887213436 113861073 78373615 706764145 40333162 209472304 894631035 874481094 890349898 592747584 689182887 169145415 11404959 242774494 81030149 915300723 410671406 174341609 806264721 575420190 502357671 909811880 740804244 449074269 825094466 982510681 740711004 357620436 875974378 767595441 594193758 562121699 724046921 886450290 790525737 30846163 621920504 392622346 105189531 24477924 901997639 289358387 453930290 912305613 881251646 103116990 968187676 54613226 891196137 653062870 767011025 681832951 127410191 396782627 672293992 408128865 498295720 981320660 483752461 242447849 711504699 833464033 751260459 562735993 976011860 893470318 43878599 557380809 950571367 486138286 792309768 303351534 34504015 952942764 911580224 844841441 373890265 967942147 62168990 477069705 254230808 879046845 922021656 933716884 760377 19088305 270895128 745962138 974970520 996807726 651909407 848711345 117104105 313460779 803150107 654875650 142063001 246557201 386109288 161149876 827581565 848492728 793658299 700047451 709672096 991104261 719768275 531291426 9511237 914733208 914982574 901346842 695045424 818597501 784813856 813656462 97804550 249816008 913031108 921315132 47354499 280625642 106859669 111825276 363416934 968028657 887138205 183059637 370386786 246383999 993087078 54852228 849918877 790766622 997570083 57016711 664182975 220916157 916706121 269452438 495004322 991826721 455710449 669824225 353676750 800827100 786364461 963961197 737872957 300679701 594327456 17760251 687370582 634364391 913934930 482142545 402569569 302484762 722004659 246759997 384990622 416812818 713722323 916873378 670989236 555728104 899727333 539987128 918064552 311164623 554988613 127026944 40095420 848895655 241103691 455403777 158872097 422829495 349247228 466489540 227911218 6209901 607692596 175811093 595209185 810037087 204016382 504856703 427150743 587479894 912699708 365614535 814487821 684507997 964709899 476114895 412497609 361080498 873373470 109190924 998424023 974229049 788668834 920963369 639698308 938338216 599080452 758443584 978380360 994932955 570731400 496808177 923082280 415165802 548951357 716552249 120559835 670989236 174645434 328276626 727025860 948922159 680545038 796335024 173069613 377288397 802019475 131944521 817461518 820002462 768975782 680737961 698693437 787630871 868443676 916689630 686295660 941734393 19796842 926134958 429064290 978540971 437881606 881355777 407169362 833666394 867234051 857718333 479424807 670989236 909367867 925352782 6469359 157657307 990746072 222906295 941656408 895114436 800104195 199150745 425203090 765969039 737017453 728528051 916921928 396590584 809615292 164735326 397622696 747479800 827793729 866946299 462500321 703866361 778143225 996992500 773933502 363150227 375304785 403062127 982742872 373114163 911084335 995417794 900195952 808892437 699392402 510794321 637130843 854692868 294907430 888159166 880743616 700770755 76952524 884228783 670989236 333021121 472161422 16195719 811335362 897968330 31727336 311434204 40480915 317565827 354571676 793449503 618007617 466946415 972618885 991694304 697280331 259766521 721041227 189421201 728085726 705697244 472028474 982886333 802046888 80755440 936887999 725390203 918252250 29616864 750767347 766593982 407277977 9018732 50499629 226956188 380297713 311745130 733023182 406619106 973029344 40377884 733388991 767199543 762673963 395057256 977099869 525155464 870071247 858187228 767016482 701612025 94700710 528340162 809888395 575916393 593174688 538842794 894292994 228830816 635182910 280982042 176563872 839231182 327766713 173568264 63116251 942532277 842506106 984791004 756319101 869009040 508950574 990718663 738655520 633172298 870325662 901972005 753981375 853834462 874843317 938702541 687541156 966152442 571476696 226251257 740639630 971892572 937239258 925315592 421775372 780265318 841810914 932733070 544809935 822085073 450430227 259410408 398155677 522658063 55006887 861144282 88862611 953829994 31549557 696641899 714359438 715004705 993767986 780517829 624584362 759137394 719349736 745856180 670989236 200697700 609231286 934748941 758484835 376815138 721053137 139873775 293032951 791028985 869359312 922493019 631563315 205464786 938738298 543727868 700490153 957537244 144403963 203286677 14229486 461472092 903504715 467131756 728267664 419834524 336197417 366002223 599369162 654330722 819845273 918937863 287114466 369573619 811624804 187478364 840442700 355452191 761524564 708041672 686891255 327348383 690536457 59161185 711571272 933162758 670989236 37639139 16598095 846262086 739659290 897387992 890859781 956463066 648594481 857366874 991083123 947910438 992492952 152443177 762994861 816278326 670989236 772221885 944388899 984258643 623169189 839681156 176068504 69603937 500947842 900510545 741355283 96983920 318168086 341460644 936951674 384274283 509481017 376647985 827546859 61145703 879498291 502201950 49847577 688119905 184145740 523182439 544690011 743126070 925230386 475537348 470189644 48851639 947598798 236460404 689828260 627786689 200407943 613579543 499051104 242799831 845074088 827219402 766826584 695386372 998585811 976770211 960969529 852492258 692278289 813741873 145235464 670989236 725102015 992478865 480212058 9992044 534723429 545633811 236465147 791423497 733532915 143633051 393933208 359665104 904100766 714010567 955820340 561706739 863867545 90943645 872784991 593780343 778527868 50218038 757792989 739462624 924494387 491412419 781905154 337036361 288929241 749175473 762897568 677796607 36822142 476273387 132038420 670989236 54865102 824167998 37558316 723568960 761326904 741023664 152429262 962503025 523003503 511200561 97241493 33028928 536992324 785352900 948119758 946184386 293251282 75008743 408525467 57024651 249537617 670989236 260612880 564962867 29730016 969097910 289563386 947182269 125953675 273282865 743183240 15667108 583841640 866945476 969738422 633601837 380457379 247615878 264328855 954687504 937818468 207549589 116221364 476103792 284560635 893938455 690442294 672064609 826611512 802637327 73202572 751138901 932086407 529539341 611910481 950150434 71374550 582768377 491232213 986334313 345991782 688110183 883048195 438350632 310703554 845639675 922940771 965636400 865267200 857842121 522758966 766727916 167214322 560617715 958692689 300909997 721814279 255775865 328152267 244708241 806407458 803493483 392107064 773657271 289689499 634973885 795906845 69108727 242071517 753307401 758183791 955976846 841515345 805073651 918972853 718127623 860398531 714537494 878885222 35760692 687270405 923995073 674047644 986159870 861634337 174441181 575869553 104094281 157076310 176349433 906732044 353868588 209784106 119039475 82923230 741088135 697451245 294759517 520238587 776455770 985602550 990949606 781049848 947262621 911527187 819448655 153984517 87433939 641401208 514273264 868053297 542065870 150700512 532103864 877168594 645386538 82393506 759906452 909420123 731926767 396338701 876577430 280574549 359915399 431173819 580679940 288797129 624923620 321008062 56481082 881549582 904126061 729424539 284113387 146730766 795118460 778051190 751518498 892423205 527032177 542886147 844420114 841571938 711140746 880110260 121928018 996004619 560504118 997630027 39488817 283471837 736752894 224121233 969040446 501737056 341705644 810322036 356327555 162635468 238838978 706567543 188275973 243149343 168893039 483279408 493891849 885444208 76764726 571712606 168022452 244491953 881636052 729860375 533365981 809842629 995677189 130552535 766011352 404445495 998821861 486972052 310537624 300685629 641056967 788176435 98223041 576892699 29685521 128636709 376424092 325226648 525036743 849863282 936908235 842220002 867614018 645344679 883768524 342682219 80918885 816419395 976671866 707322891 609490701 502278956 805982161 738803770 982775278 840490840 363877246 402631923 379520944 97937407 909598870 949116271 894070868 697377282 613574642 766469459 553357932 570749851 694069182 173339541 139299577 664789759 680836242 187283055 752529078 566233432 226678505 525910147 199712968 990278214 851913104 981371511 32437020 851175794 892732330 721442288 129225778 794927918 556896996 122249804 660139921 375793013 707943708 989339131 49818864 528378490 801539776 747030462 525873595 708410368 2944411 739401237 379428328 517307545 718197082 863496929 972045954 828392246 380518515 811572067 890228672 670989236 779824833 835345917 778288636 784031299 314835367 31689935 381342638 670989236 900162184 929695320 944459470 23279161 373985188 605730944 28981064 184362931 53653070 667133559 152707320 40181848 589376700 468924752 262565169 727782373 927448936 551202966 998287845 55863344 406202805 863559299 528551457 87909611 846549852 865004334 746275553 686407267 830940551 765176127 780163294 786449499 462913161 413672966 86798605 308549954 984657237 670989236 121000920 13158567 764700651 652257021 450256816 738268390 807262972 751130908 562641159 741949212 726896100 972773010 940441039 299276461 848890776 854453872 708994591 430512373 945066789 782378591 244711885 850999442 709716408 177733319 975818680 385752282 79388242 225457156 834026153 815493988 895080945 310039742 494157088 759912187 947038822 723378003 896036045 99507562 976110160 214315777 776714851 921272851 519036216 561736962 956066503 99103315 911353650 358351131 250758883 601978635 47594108 219390288 104255862 674400998 789466548 711523995 519903026 525352333 929401220 782421756 496617714 986098944 986726525 115237907 397766737 929289782 45818238 356528468 757142328 40176602 426670333 336151075 820076739 769288961 109833372 978496790 790560555 170756071 963982731 987595396 164122358 849917139 940859867 670989236 800873950 856210132 849239382 136396624 204923472 687150939 983902253 93126417 777461545 347852990 712268022 825927502 734983613 794191041 938568329 964582947 848298887 953251980 987970384 913157829 130993195 715204690 998951537 349501238 132152909 710721908 763212798 407862966 980025351 933546430 266844422 1564184 176014677 581159700 802990439 697484388 959972001 319069078 794911636 922135120 492212209 490955080 865906424 286624408 173845944 736814147 358866358 127297973 901828754 296546094 467220163 267635852 720535266 32709895 614572120 957645019 289346221 487392669 217421300 243602256 980678586 435511542 511094669 952608057 85832487 806923535 649888075 850414314 734480245 205384837 626201801 955122576 774212504 324951436 663208884 993811172 765906947 935099207 417576032 504254857 905638696 877113324 748754104 940376560 759100391 896970333 394152829 707196971 679542120 974166919 922989373 825044004 715139276 359513988 984662319 35984148 806946487 715668889 320512539 948624543 450498849 316843697 165895866 933978758 951387598 380897479 17235104 838325508 287181115 864928165 905429644 697904322 905579832 990654148 481843146 568151303 973765696 634125429 338974151 57586229 895125059 951300865 843828358 807474905 228752229 670989236 530951933 864011973 261355163 749334180 819481304 883055939 184522102 790994365 107517422 276190503 792450712 672853618 870472211 359278031 652410477 248370836 907124254 717645685 347906519 843931065 572019730 711900911 479884634 136093965 778658197 352314230 901689915 786304043 455514122 946909941 908323886 519183294 108827345 535232550 80381414 984169340 813886900 808441957 286112463 893038061 715127502 127850606 101782000 981748749 980583124 785196332 938144566 647030700 865835530 839829609 850741997 804822566 565551298 672286589 906828819 391019760 215029228 784167356 807309187 323133848 442322581 80669816 906810121 386698525 816408816 315124566 213544460 294329509 178113897 406865613 783531197 123788143 958556078 723831361 793238981 865015423 766227482 245152704 732467737 280254634 110544256 391125697 581141931 646294716 432005104 715953607 57300382 810195825 953787153 224328105 466280798 754836718 368320101 841564008 325698132 796431569 969165752 34564265 985889365 737577832 155613148 542332191 47989499 65765956 609124126 764082477 668806788 765257584 941419472 198008816 378922204 758991919 768643348 153216994 773005030 804291190 215104772 66127106 514418532 332453975 768936654 984433647 462643294 398463287 990421258 739446944 755165151 986010986 820571453 298222383 509716477 993919532 888879455 829068593 403542137 682896473 982185884 683114812 694742302 338798587 740650703 205745868 585126460 546800973 871842490 431476493 467552045 95753094 859460216 774161188 695946191 216231606 976451262 675637845 77927966 794030487 833856280 888055517 903144518 913369172 847065536 779973583 923799672 784126047 347057906 869564908 716802987 256702359 128469377 822816776 904144565 702204280 971730254 683075683 594374806 673912398 328481275 240215147 820142558 506762463 65844919 439056989 974805095 854294881 417289211 325794839 992992113 761177314 107713550 609470631 926380510 658560694 132523982 616089277 848550783 830461297 900281759 862638790 836789003 879556089 779474356 950520150 465285180 953402304 594917335 985590673 530552731 638702681 135061597 659498242 140549280 813369060 762887238 918204298 333088305 907256787 869880198 407223150 518954562 596401373 382977306 263282105 447579591 244397734 688938737 581066653 902276478 942707995 16168870 926669825 103984093 935739534 838611236 521520110 799664121 741568982 691064002 25968165 842845651 248167699 976464661 870168704 319911899 973271799 346124087 636326588 822034549 118963857 747771244 889950587 924702324 971974364 866875464 974911178 641313763 5726051 50587788 836230980 725158720 257445749 69326993 931762310 760787726 781173519 924974235 368578542 959026514 973084941 551783234 635793337 802348351 699953998 415924803 854831067 118133652 778136634 957616680 299655228 827746308 853569798 755778764 934836729 940530855 958298862 743515166 872704040 417284989 819843261 793597921 45772784 682789756 104294838 745632353 783280018 343130574 868106451 193818919 685946677 624945889 553661594 533380061 29482129 813990598 44157395 990175327 435030038 173017206 793104 678062436 800800968 947917425 53090728 705827308 201803674 964588703 311049181 670989236 239345879 762049245 731660456 53612031 583541792 347041484 539417495 788032331 110134020 721008588 993738186 709262539 984675461 57840987 405105180 703012512 908986745 939552346 552891935 168716568 642986003 669037358 623347900 879488605 154031831 740073520 795438671 672396416 374518476 608685877 222296299 748788411 287190601 241444989 471214389 918652455 598051647 850311938 861401060 954965581 798897983 670989236 881061036 895755006 222958997 571578957 735248913 920732390 240709094 991044447 139429719 633539601 874954342 584711456 673706937 220188606 599982119 956534339 781131119 563346767 447949404 704454194 859137891 646389502 156989367 846096952 943282017 939652637 846136197 789955576 748632737 885866674 526227195 718303892 924227088 280960037 865551911 980557824 861803988 498694530 414029772 702365719 869951403 798215954 784944139 816799801 707955314 953782229 453719762 234862203 321778532 828488150 989972032 478821887 884907036 507537111 694491433 412516135 7474250 882990799 364816546 867191083 755373088 301139259 335468494 140477997 386563919 967411020 739205499 178744933 52229912 682826349 605858803 190958498 464031934 212620711 594728360 685629143 848102395 477216660 231904735 15675500 691444837 377403239 693716196 341361013 328598335 994554327 429096331 92673259 210419586 162094175 656732499 881608544 561398912 298907672 899397595 259414886 19531728 939108377 722776670 147192897 869947587 396922432 37826482 744743817 97672558 332674360 760350955 865101983 108153595 576270023 686917095 508304633 791856107 996113121 771681383 915217604 288518488 198225333 83998272 910790550 744247742 570166944 131378584 735397442 123825420 670989236 476190356 845257294 941683540 274119375 694716448 648321279 556911985 276221099 743920546 113410531 329143402 399024015 849789161 815440098 186744393 979399003 681845942 983203360 226574074 878277583 327698392 815996498 403461763 945161210 113312773 222668769 898605132 429191151 670989236 775651896 951621467 35194646 152058443 209882396 295766657 939577892 807036665 785945190 545127472 980502978 788880267 33399544 304083858 873517383 671315302 993323524 962205209 752789945 846441335 262524781 726585784 726498145 930821772 973023112 56086422 578359720 412261250 92529446 472433585 736929485 918194311 980896788 293247910 403728847 741023985 541373642 879333360 832034999 851508797 674997763 809074956 139708461 660983808 952545267 616773681 205454587 952523689 800780563 788548430 992520515 235170918 897109944 206030567 856407870 545477733 174829122 720298688 670989236 745371251 8298591 226387322 901555264 532145068 722633871 281324294 241020869 16801778 859696256 232839097 45019960 703615272 895475993 874645234 357434745 38517267 883959247 797527225 367628638 772574311 25222905 790996582 381950507 825882791 705497519 280534599 99646154 262599989 488434800 778288063 912819315 845944993 513186175 756353532 355314941 966838582 949876020 286649018 996255969 777122390 243696238 986570748 425026438 777499704 118091596 230235128 612016807 4927408 961954601 554161708 374749591 542084370 26319309 149076703 717120397 783685970 770332078 32160512 968647355 604151232 611949972 199103183 598958435 941149335 534695915 43503910 928852450 801744812 873419895 791600603 217209923 305913582 698956916 539587298 933279573 306580142 248965496 149252951 962967118 622082381 103347714 354695271 857691665 784735729 741195443 654927506 791500946 631813502 738604068 549118841 905077212 840373512 977571997 831760302 504119069 847343799 665818955 377408680 853264718 38473082 906979729 759100318 747607721 221830388 444426708 804700369 80061694 556338228 853624710 175735834 814926645 770671352 846267417 526896965 531653069 227815204 351266981 684066205 323914976 781596532 558999765 555881028 39706521 171022389 308989272 773888929 28176934 612949070 209597062 855094635 584980016 305309519 669998595 766260087 981374348 354328258 3903551 946011332 797394996 634891824 863646068 767994785 836513360 704300681 525412809 543079206 670989236 101337614 787092289 970705401 91004536 690871893 752194530 181902760 120565279 471036927 264612688 255387515 746521479 70391549 780907457 347234934 95390420 311921759 974327196 8065780 984362275 955578575 181955262 692818778 989180586 219093920 184897317 354999409 672390223 840901752 620006644 791972858 974622804 831084318 782070637 273053138 706880128 232648365 470458465 463980527 539447073 865664643 934943594 926067659 467412232 692864267 921542076 77680052 840260532 815280245 252246393 234396610 992596333 204404944 697974546 670989236 838462760 792538319 835380473 949031289 809159419 698873705 7052658 734476609 718450013 744156673 836146942 317123549 392141490 114271711 380754106 557326708 202650371 709325344 805591093 167606978 939376412 610100019 109415351 144226869 787719356 242814644 274831209 730929816 156771384 150396033 334151015 337370009 242671127 808519748 270435763 141337188 846889317 776060468 878630824 673749754 681825436 529455623 891665352 928081471 675419229 837147584 930604720 420423708 268818819 857655085 48686930 187001440 181473559 953505803 744609396 970408262 797401972 622297718 829707534 55653375 672531302 713362817 848892032 913815464 229158686 329746075 515297775 858164763 602967618 697831425 545906883 997989707 519147785 566951269 723853383 74751697 497622978 925646594 323056144 414022529 229039064 357340740 271124513 675518472 114764958 786374237 470748481 730507586 947287429 364688798 826086741 978321482 2551931 567846951 527957265 363502195 686464930 38148680 139927722 715687322 938459072 670989236 543710010 329701051 572640130 334171326 868486276 258426292 206855144 780156543 880872255 672905574 639594004 975875917 483530736 856245580 262026959 912062704 272375483 66205244 290198435 262409691 757012277 571876112 991050948 957206372 799557398 670989236 780738134 830607900 332960702 782208548 870666491 263375844 781913044 670989236 757538134 444469143 114312489 813895702 671039439 684135230 699536051 659892541 504212955 623723504 305921726 291612517 347974803 792662953 700873832 383625418 467264064 380007137 8056366 812382585 946914123 643354228 920087439 79812433 639743556 332759269 21695776 881283724 937587804 618918908 351070483 712192229 867302243 5656203 676300583 878838978 921714539 227817655 962289760 138026860 734412909 694385501 837049500 970588379 213549937 546227394 995102627 563508371 612608773 980248415 836624518 746541766 673705766 688551891 270912268 812518080 692651428 810117250 713688248 737061539 80012526 685014086 45554704 793583369 428903853 856827016 784405271 319501738 730749471 486150866 312817855 624055167 421035420 892210582 760347785 736787168 917476852 830328085 796119790 155583640 33523386 916652694 203562120 864271996 387156628 611160007 356792606 654109948 772877869 900679811 992510637 303621529 856389844 721966631 226579598 86359784 967796472 466220865 788201801 670989236 211040695 588312738 138460768 140759905 99652028 38717719 451162839 797381066 412868408 986318163 688175457 526980620 834955716 61445744 377677795 995726751 838147044 261398171 759425496 820178461 908868277 761747465 478180706 137195089 376136759 433813609 455090206 849672757 865924826 23419876 801636741 769643357 878298398 767059033 891777688 85513352 785447390 889966377 619999147 714584071 974710496 715060723 508562258 420856748 880013969 257512985 891625016 726931061 460434814 266979057 854782526 991618554 613489842 771515726 954715696 670989236 6617253 984291944 596948760 717344198 947313893 35572387 832459771 957779794 82583430 676844775 567205949 858517119 769678013 325749986 896845457 66805327 704928122 51142860 49912741 830167484 567303607 419472051 580257421 448593445 171377958 549644215 812942197 620452218 905261647 718707350 620725982 717023754 651829314 833082629 670989236 917558584 597251725 902171601 554003833 311236475 955916733 837812698 574022590 735215069 943463633 176054962 344786655 392574245 17503911 780346217 604708351 615830367 923645333 429993039 768417000 677441581 721100082 542675367 49444345 741468680 733212770 104657989 93631184 758815773 710091398 107213518 520616091 697335332 866812903 905607185 985854959 204740041 670137751 715241171 877798442 884377745 129966910 735647324 889894908 26288117 670989236 223427709 781661127 808508295 845012161 525997596 784397999 974849593 847021677 706297035 917837584 769734641 750484545 527139249 760758214 616621010 894022042 965578238 898912871 817818485 561778376 759254510 81101318 859562372 74348236 959552201 853956986 211438781 221597998 950355276 612448378 681266978 23626442 916734930 612313141 281560359 653851661 736759240 784840278 674162485 298017029 360385655 544291878 425795824 885583169 153559348 88797986 510114202 311636383 885096122 761538896 719788003 994775416 955975163 331812780 702185539 246230158 18256798 670989236 684633314 508696515 434027021 707157361 994960488 993616049 83710377 655496131 839183997 893648166 759486102 256559051 590062823 998277774 559651478 687860137 707292156 924314668 894982572 968789480 465588726 984473742 715069641 688482566 840658446 620375356 805005814 221432378 885011971 932433960 328332226 225049914 715857411 133336237 334521603 756366378 140777128 9257647 623498683 171181540 289761416 897076782 785314845 914357736 667856564 738042728 817675939 429526267 955065979 36495033 530437749 855735504 852574604 63707244 117829249 311181632 877329788 800248228 963541161 381664546 514701264 528454274 742907302 261002046 852539651 748653004 179919224 894877066 335190853 988650409 550360157 905857785 676391251 784495870 951593634 503297965 449264290 882462940 831582433 367401294 48585108 210986656 815539333 711283130 435492101 499687819 731725412 244571284 484135918 382451248 749001496 799104476 214862013 399458739 286874196 330731702 914589149 972311566 738988831 864085619 608438664 862923255 882126615 953007671 876594335 800518826 57258193 383136917 980763005 976115780 848917140 355389753 411854573 839922430 977484390 286972587 778776444 401192195 218888546 92598263 287681049 900652078 482617625 411793397 418482590 6520529 542568782 345399613 449039140 456256194 810620562 142932236 991172620 512040093 893260156 560747509 918179790 698766959 747713534 696025681 807952774 909156030 662299486 540065746 670989236 574197647 436298445 900892224 750414565 658599395 521376947 277275516 198955962 821512390 349604569 776979093 500876358 816297444 854089957 745079062 673119975 94447978 98836216 728075292 782269921 119304976 450379134 745243369 248396992 111354314 545101632 686765495 341433272 700816971 197547886 25216495 68874912 876312123 270024745 362973429 651871760 289058202 775825242 827607792 835966582 324762134 890621481 269916740 768445526 856651627 199881233 846703735 822888516 756973625 853863040 909441862 122849354 726893092 850367270 93070365 35499674 794534202 558095536 186460348 736349969 762849171 950218482 371939836 409185933 441299160 778552839 213927127 298833461 140101263 937988061 962746640 394410812 489059966 120618230 738433857 880346625 20527475 364062328 723907067 454263118 989291009 268491294 943312447 964270588 958113093 202779809 595264973 269473912 324377656 110421403 693897628 486186305 459566783 336867857 235572190 564851799 726082055 695752056 464932883 645132914 497229315 963202939 284660109 198585726 523079435 519617655 932384788 302743085 650052387 515367727 761272755 783118206 897582372 225486356 991658042 844187172 873447562 65175919 881138551 399657492 693334324 670989236 733020770 911979753 208449111 699225236 971576431 54607036 976485376 763906695 799898587 490162123 196003531 703819462 840849933 926064549 95751432 520364800 867792922 913076477 773394242 884391623 758778052 861381168 917706098 877125522 975862870 889098583 852026705 678179979 709321927 437703097 26118971 544719993 924545148 667444547 864438151 753100017 681020451 893253793 455903638 976694956 761467907 704258324 489964854 998414766 834481305 123517574 394162063 751165547 132818363 973632531 842887303 851439468 436551167 760993307 861703373 969325325 965247048 315729947 840962567 809581601 703935122 482942444 884292642 140865896 722100345 628777048 852182453 603671313 539815687 785141142 134168343 670989236 418092598 856582214 246516524 968356821 272045283 631851983 227456656 842432506 976552491 931969312 769450924 874965990 24305506 116510373 616222506 189191515 827017571 102283697 932135824 830419012 163008930 882734622 595219434 767616745 339122026 583394751 417648104 728536022 79155090 324514741 993272335 850256338 491962315 957949589 726473074 960197173 819867084 934190038 31931902 700340282 328099545 894751407 994950796 360904482 872935388 141081834 925510711 922141871 670854032 940166758 722690838 257894404 505043749 542545639 885359994 80655394 62690004 738065822 997252622 128742686 606382749 923398315 484457605 666697120 39645187 895018171 924298532 906350350 891014769 834637257 380934981 672559664 127800154 770440709 885292048 905373493 982977097 830487445 943575603 33375920 552086455 507436757 126575534 761687969 452715016 807470279 882065053 113350060 109332785 862013768 57201149 795014346 176735997 56032757 354741694 828286626 223533282 411217862 899118347 818366600 452733521 59701204 705485252 386810603 972578629 915494919 217774085 431727233 887198688 220091661 994096634 199516505 837057246 506119686 981640331 815645437 811743489 990177752 638166818 69412316 750749280 860259382 159618779 720446059 558846452 136151183 537013372 452370799 86915184 735457518 797573514 196720532 691052555 881263125 920914125 688487029 872725545 870367618 458420388 512813275 557298317 632109002 941081385 125942707 740403207 130431386 689802977 449231345 55459090 951960364 750673729 956968927 596100756 225169607 406784379 635791579 945417725 256321839 778911386 560614282 121872063 571751739 218838225 513713197 761821462 743685671 148759184 701210927 168255662 888783750 423592124 42082600 175327551 508342687 735609149 868102385 243736001 478938113 270877702 266937333 467655286 108459622 902037075 909276591 808460800 681996931 511552450 810998425 741220589 197511077 493047419 814909388 935466877 414618669 670989236 847181045 765144402 454031100 819437975 892499329 698563584 272136668 131385941 352244417 844426603 958503045 747138619 287331414 827825776 930203625 897732772 987511113 879819758 632062803 35751222 23530569 790450510 562998834 802463470 756004853 667848967 600410185 375505814 806889417 879159691 675848730 533850431 725868884 176226875 781933282 550462042 694752561 801977068 509572346 843936723 350260739 132174398 537936518 850704452 569361795 128391033 676923149 676583774 756999115 971965649 868696817 665070186 436144142 907357040 886435404 744538485 431849998 662857987 947383513 640321260 676168865 670989236 982063976 603418866 996536190 23221622 325218489 88346094 823322129 987679023 763032362 38256722 510394672 199869859 984935730 794711148 885386774 913736527 773230104 613495779 708568988 678587539 31901498 742499564 475148056 427563792 343954658 650410158 628339218 799706390 175818930 566506060 937297697 193932989 793992160 762438921 375578237 775792001 94347236 141630478 770383746 264112560 790181739 473894846 919365571 84895889 574567783 218363012 32894017 548274512 742104706 472564912 434154546 19680442 133255272 401102523 948392513 639379480 871645328 359751102 248722506 917198299 462685849 56536604 741532794 254096527 194936206 582107441 651162817 494848303 956918262 797405770 932295119 948257158 612615464 749061585 358691191 938625783 574704832 57969082 4497815 852006408 310091030 846681921 406643852 485263354 597694662 682406667 543383875 450547931 169244032 833408227 999093046 844835653 283584593 145013865 46492945 41563932 895067720 749923988 211934524 113184104 119405964 492523127 912860505 163191352 863697006 205331458 951425166 729371557 958606181 933049626 840250758 601469975 316580952 604938837 48735667 343491887 878149847 583247950 976917534 170073170 456008833 407494878 289436155 226940074 794085980 439656559 148962469 776090665 685064784 694458580 110772136 397791614 783733162 900483893 48553014 535638247 984314083 790736216 667250190 25120033 833350166 271943800 969344292 608387122 871387290 465875287 986160386 440881341 464675542 412555097 967067930 753807894 827608116 938967196 932060979 906246653 122281664 742820595 477458448 372302511 670989236 178009369 633897500 324575954 670989236 937702848 127475951 289564442 762337721 42230218 896993389 317774135 242336409 981247005 942303069 871840906 774534728 87254455 388457550 487629643 69349961 899388524 998871746 332233429 848542932 754383926 670989236 897273388 224694068 791898035 502935706 160269830 284502307 465863218 126430955 781008494 765117291 875627300 470273773 1984382 875418649 65713017 837417180 713398758 534869663 255476057 827701754 768161665 682169156 126833027 903803266 975708799 766646261 44829126 17893213 441258163 316128482 941960886 853106111 152974004 804845696 187349651 756847974 165444575 675805130 375909404 584483651 879711694 867085286 825154303 915345947 817026595 792306910 935075216 432665139 764849867 70526023 530164166 995573125 806936485 971788150 912260284 891814820 789904000 670989236 878922389 19843976 393048518 193047636 737390278 781332099 328188951 788540889 357955537 764961736 881315570 467677526 514775032 74336017 735151587 670989236 848484999 901870398 958270041 670989236 592910073 767740281 812374408 307682242 728710100 386044512 728704512 307712911 741157968 866968627 948678373 617800667 859510604 592352741 177369076 235766419 183281930 985819050 589580976 265277042 876742671 894379608 757246757 779273025 760914534 815334506 274000569 998597263 713331796 879603329 352014359 768366909 937363098 831041425 728230174 843396740 235206704 580588324 684826476 314598473 787327075 865405887 194635028 758819864 722498684 784331310 183678121 260966685 974621805 939956811 955502927 871543068 225445848 496786259 855965242 757384654 800783227 975444534 878093943 450222788 26509648 382050011 279754379 939341043 815503138 670989236 818460044 438855650 10662086 164660684 715911025 889494493 924235573 350765877 331691129 557814194 316166739 750003744 785828668 773130950 515783541 670989236 906802137 240117847 911012508 792859271 914072025 717408065 657935305 905627073 970742727 17514834 460418685 5001201 785675820 861625025 281263382 717909049 641826597 672794010 587657792 179410239 112006551 629307132 772062269 681221162 695136839 608908058 775114016 54133009 472822219 170737934 835776233 90529335 74858827 828416795 476492444 804100112 148495184 589346973 841286218 11465821 883331944 416125617 786642933 18757032 814330701 936993894 8442860 863017695 172884089 822302533 763293411 99293009 553979097 872524299 932578813 583020562 453518503 818421119 925288582 565879248 956477576 460038557 915924162 395394741 679780915 447457731 795124431 413153958 833521510 670989236 694097691 214608582 625521255 929808021 818598463 966148124 857701713 483474455 829419589 354098516 27456038 791754002 434843253 685116227 934606818 85566708 502091788 154611043 778426910 516088471 710195708 723427030 284442215 954744565 106340930 250633055 158569233 676694371 652735268 970350624 307299821 73654121 416788155 993692644 80725487 853216749 910591945 118563274 786820750 842367267 338575232 989114689 800039543 782786983 703543421 9181791 977312237 560648085 472661459 670989236 859810115 757537473 741157391 638058301 725321880 805089345 359212215 436780158 970131354 670989236 993392054 84503652 898510100 708180987 876505108 568170520 886258254 204833043 481145387 736006972 805666803 185711833 954507419 178220401 652287256 901490274 619489648 993173123 779785401 835776374 920321817 462009741 868079886 31031510 424078486 772236271 750265051 923672776 678580666 625459063 187553646 748405822 775121446 991436884 633926571 673913216 511792322 894465766 782748972 180613837 620239699 32063342 941335800 384567066 356808940 51593370 951211463 670989236 853111344 347643293 289632581 129007442 401352400 800035222 110258399 658122769 906746929 309742352 998782689 859943753 841282350 41807789 728764154 474733997 758554080 310898625 206744105 626668064 19472341 714756571 800964999 448003828 275268191 671725991 44866314 5617799 826494746 635913707 712321691 917717849 447476713 129967313 802776555 890011572 617993319 269324770 841196145 822590014 579952731 965565377 45125180 13588067 707168943 685127796 869799724 340260113 629673078 583214359 757464907 214786418 606509563 897566448 726030241 607779288 701957379 103249117 371189196 863437016 855960825 781632701 883789624 221957170 706713227 667193519 147335066 350192976 700958543 913522607 893760940 127629914 119172406 195856044 989425009 449954847 618825169 169942399 114682668 988470116 380854266 825464227 480337699 736322258 273355589 751641011 987741056 609421922 831226797 262963999 996541586 667971064 637518809 698205853 731893008 918233771 122928759 682815194 143112919 887539456 882855992 584240264 251177469 714154306 813985596 669643647 187739560 607406655 788392662 742215923 21907621 125456989 379757082 627547229 581538604 50518698 583066907 786300492 236500477 937485016 377465940 876858889 320445365 151465975 785659858 761190242 694579552 918677364 166359426 227119251 283250189 164715119 476400213 680077092 684645345 911114140 616626075 740390339 890800858 991158111 981672332 645579294 878462670 137623126 568849507 854479991 906549569 720311982 528383373 996026868 966140638 601520683 981760262 408277545 767964751 201181624 850505707 795711674 763017648 76677629 670989236 801979663 273398820 780055827 637750470 917491621 818572258 291601228 60429149 992381999 195908500 907982932 798236278 723842121 775676902 701565286 840278819 831287966 939602271 993632040 920245076 888478336 511376537 157822224 810922262 402312387 120604949 706803916 936865816 406408098 716233247 962631284 261748957 196504826 490637723 554654216 43385509 988190853 965939261 687804840 730908213 932264925 801091688 333286315 1595937 850394132 335891469 363254601 976525374 360171508 760247892 110581649 835355953 603095015 150927257 890984398 663476970 840098160 670989236 776004829 995752968 46096360 634058551 277182029 302102949 941632023 829438745 990101724 676989884 670989236 645979210 243771440 342776952 808739133 313656374 795585871 512954082 834074421 767167083 519559201 996644750 696153015 933991508 227978099 415586916 46992335 963490482 945170446 755137070 733577071 967079923 874500515 677580895 824442982 727402428 656021813 931324619 448593928 393124645 805654609 271125709 827480177 928802567 444757205 986351099 936614469 907088952 732658022 993675557 551020514 453837531 418171213 987936671 964092119 131282390 875482996 591420649 171080796 496090809 789606749 820226480 301762212 800009955 963318944 720747534 93593370 651136813 368630781 833761089 638102266 21343112 690956889 695087073 548989701 689867868 765792026 884201694 40251969 441695702 712883911 49176948 813830620 561893975 404476583 996432922 918156008 282599954 98903252 599852100 558429830 653535286 396417725 197037641 677295882 458151495 98499857 128136101 626421331 393321912 336502201 577775762 584485611 819731848 764024914 85238319 606700487 781464703 273134217 956813466 851750958 533037106 991057800 693598351 106803701 739076030 221366668 570698333 880071787 346159927 312968787 895398336 823690437 901715317 567817815 334474586 709811244 835699088 377187332 132911648 803720294 686191077 124215066 918284523 489554544 944249851 624681166 977538266 428572349 442012821 965182733 127955960 790984040 412750394 709957006 672707375 2219639 375557964 893733831 267743304 651735793 718165061 311617429 169328094 939539321 660000906 324586723 816003235 998554909 900916617 160490586 792886715 704168811 575295440 688482888 135050571 851186448 703745950 899679919 733775248 535025757 753999146 334414837 734841150 186603220 852184376 130668017 862397417 354820977 241622901 923128523 896226685 840339284 159567073 758289327 982864599 670989236 706703901 531498365 374685452 243464137 889841134 74355514 120763280 562148865 472813410 850251046 698803836 237636062 902175652 831036583 174175739 70771129 977865883 299109427 824467774 606153864 377020937 320450205 58666332 632635976 967137657 585997946 729167075 355144132 524405363 437822437 919338764 933038422 376109463 826000325 454800332 481896734 257814551 56906714 990774800 878556237 676434201 993536191 138312692 993145102 707064225 387308922 732021450 937733384 394643647 761968947 432526720 18434337 895418452 815514656 384401741 312538626 926545568 179355856 256274954 759559683 567686070 888288999 54913163 931467892 15511872 786935222 722611115 957483284 737899602 506223823 582172530 308231107 638977268 376709128 83623296 380710818 316438579 787153591 834288755 939317081 850500698 490618893 844855049 670989236 107934192 315473884 11281159 844684353 795894626 836745193 682133395 366106910 741315187 763945636 310563475 253358615 703021180 947772033 900155757 459821394 773754019 570357790 847928848 819251257 441644592 753293574 670006907 711941133 446061624 937283913 679251984 669751180 713128203 994597151 215561282 847214859 204593310 965212185 447627571 736551120 766049606 721240615 891338550 808695355 508512458 354120080 419091636 489287409 630495275 13254294 794226948 654584753 744202910 886095969 939277831 368332326 784823905 108369399 572440504 972009772 11781811 949494594 993960803 406965071 733224034 852891694 532490516 557143219 856364302 801123560 893646944 899498771 442695426 293538095 582126519 925177799 793576915 737695509 952930876 846226776 814714668 432589535 840252883 845570324 445738617 886519141 791295083 852338445 75511499 750119465 938730441 848772410 763939159 192161790 990777086 425989920 26400320 482599284 923669326 825078590 13129759 946112859 480486438 383953851 356712114 13514061 807282876 65501107 569800878 911417185 375972429 150797672 486854562 478467096 902177494 549196365 871958405 926666210 111628521 138360502 891127338 487900148 522344823 113773688 242723075 921158697 248232090 528229510 445399997 819696722 468156872 852129713 425417020 949813724 309692814 887493016 485562186 950198708 641442253 238121347 409302059 742082723 142725702 847953922 467040471 607677835 874707090 40332119 939937089 791935345 596273088 833934342 980452786 440473987 813198707 669130472 138605866 117840097 143752504 955711102 817274215 921000225 589210483 959979359 56196080 175710670 360003557 777490640 217022065 733491938 919349681 1492509 779693494 819297878 619895725 884770873 394532166 271228144 919146485 446820982 871868502 859624173 28542894 223720462 661301202 876235822 313330861 670989236 977740028 988441675 548600951 739880739 826105015 631711325 839211264 877424722 999235961 755627358 898970110 666853985 853979785 762664804 193813231 670989236 86491057 170615152 979268485 451496800 994374427 323773264 941129599 740249678 670989236 921768004 702545532 275943697 341905851 179308708 215720690 842755055 397813439 237733955 589766032 746946917 986158252 176896063 12923667 932788228 171100104 673807105 103029598 498302815 390930426 408840887 7302526 136800484 433217824 973549652 888971784 857147187 612093642 470486376 504609749 151456310 54031545 80495334 921569995 539211471 466495087 674510261 231340019 858169126 695359484 935762601 888564084 169358589 55381014 231140540 826906900 746919772 558617682 670989236 856915777 603718069 103458926 826147905 740167815 803806194 963890488 685054708 967156924 863771644 746533506 732142405 892135220 862145096 578024133 778628348 83000986 958647270 10947851 661684866 680269544 980423500 881767793 22150205 876848445 584126267 642009655 782259775 521828678 7658692 849952428 495866990 888138763 725055024 907907457 247452028 47562793 846735627 442685885 360871731 670721108 924503657 121200863 832752840 898725874 707020222 733904287 388529208 598962273 931039027 957741808 622647541 804036060 56328910 388468596 816719804 25797708 808449629 762059078 149743255 144248186 707194408 992430379 618511188 709804359 286378199 819307970 953332853 982922779 237399962 839127025 948879386 952428543 599828277 551503822 680863741 723674461 858133556 807312807 628712917 869265463 767279141 305936069 20971900 297005015 246744724 465603171 727358468 311186068 969383981 975972250 929842017 807375138 787708135 577186217 559961463 251680224 850298258 622757968 948634098 664339928 8076700 870564049 494606034 68316715 258187270 782602086 54252265 614549714 902232262 744852918 221181096 210515349 702550442 398707626 33623750 631290840 489474137 560087467 971335265 85540875 121428570 808227791 305667475 776116362 774081769 689961529 728851385 396772484 768468427 656930429 715630349 181499917 119997635 947659535 171892571 685752472 249872966 811429469 961715458 912445414 596608534 793716754 888779648 438643448 196180572 926800874 292560574 51576892 260632810 881447729 885237111 38856599 766003032 834404779 767769529 843699268 724538725 994678235 642065819 359977630 811284190 232133319 430680139 996317120 875438745 80012512 986143902 86996007 554397120 902829338 288552610 738069375 828219568 99223634 488905201 803386682 251898630 692865044 191173901 384365161 454385314 921847235 686572908 456380691 22833385 356735172 393036684 664325312 630083331 336867617 899432452 539149963 214734436 535738474 282969467 350757885 352927652 395605473 515597465 358574076 13228526 733739255 621087286 737595709 823468300 948444249 575250905 767849286 380432856 854827939 437200988 265218670 603150060 862484359 792078579 609690392 818836650 937920205 314771896 983517582 755623974 670128935 797395282 827199037 887794917 674834166 613416084 913807065 870855858 934511901 545222722 613700519 269854774 462525333 811461473 721162649 691264257 60527833 212085248 31669448 8313774 95879093 933864939 57851011 195394471 342468605 906688181 389541018 203941855 872254618 93427666 31756399 875739029 288254822 978867442 276388929 839595852 816118943 352094982 86168092 676277808 498841870 975425193 813646755 317331885 367842398 462189851 992830607 55259540 444118751 923358224 435669476 823499932 700103096 502637591 730967814 570305060 897728439 940990621 596454190 932995927 750239706 147416206 984198859 800036715 182056861 994546270 308696912 911130840 78606421 937051240 219930833 371985335 790648546 910631314 751882067 180711143 611250402 237191202 11076800 923669020 441259499 583507571 535775076 773580498 927733538 305706022 21655024 541813098 937783198 684620724 910846323 670989236 670851531 839571281 572238099 842389721 112540810 736678941 846722172 702375991 790111465 101975347 204564649 376255236 978836391 530757811 853563436 68059803 737760880 955831515 928674354 498607252 996337098 823818934 372259685 197011216 782122158 960426168 709374676 501807769 898326021 482343876 168916390 788607514 697373748 512502610 969133044 954064820 356651657 943485193 705951296 225920066 964754273 430673689 691441687 183224302 909301790 792841372 482342883 279111401 383776402 602966734 452270794 988916889 324905122 939590747 937324612 704703463 894626164 141100043 293303050 656292601 895343221 987980716 764138173 494026517 531663142 485220573 574795732 807179246 720697882 894965949 107171989 991533932 869899000 338403691 708657831 355670232 951491834 53997609 949570622 552692365 675620089 419247889 102155831 955737605 241641601 240295186 133424127 341005909 338145144 181275611 874219726 860311889 716728445 653901391 923026995 802667956 432615582 705262215 486234394 901756308 45138155 546682632 91320405 808836796 725909187 8654691 116242141 868605379 723934561 770430254 766766596 870233942 916154653 430655750 919996095 137574289 175733880 970262512 783133890 711508108 90123901 612921002 670989236 788919019 670989236 46332811 427574770 546311791 878048485 903287856 697827178 604058392 964996935 967891302 152147346 971680825 741909409 737205611 77049348 774418712 937494048 96296647 33803148 861247262 670989236 638668857 339473949 670989236 169536374 332268799 472826505 736313688 330375227 525356500 686126228 185471233 731614367 535531409 748282936 776427933 180522808 40366596 556186538 763004433 788872080 885310641 384123767 950608764 974789401 715590647 748249227 142368147 458228814 531540499 820488693 64753298 428710287 988115895 387748262 245562948 107535258 467579803 707386758 546093278 523138648 582027953 341930383 875315979 89531842 246748753 670989236 917645253 920318483 178998016 712730053 924326584 993547627 366428107 475130840 454240831 975298680 337747245 753902350 889554177 690263261 546247414 895917008 936563735 522102812 906150078 688751997 710956509 299606558 826452567 924636584 460406156 394765302 852116028 73328933 763834272 804198220 799891670 714290997 309318538 573694499 964153640 665870736 38532509 279133242 403358846 791242550 891605469 288358444 864230254 720287578 421909840 328290289 272556831 182051846 815177351 971268697 474263064 416522039 109704926 682995684 476175697 826086110 896119676 749054714 649886227 335320298 165712733 970385607 667922292 432793824 902365693 693323885 646456244 981940084 790249545 926848977 41770360 138010606 670989236 904307317 936287120 716332516 61978312 47546088 973300504 776664656 827682220 89299336 683473484 318032649 349147124 156634687 876253838 823366868 880721788 786917959 981508268 111189084 900807367 893759070 915973936 812971148 769693371 764799440 804572792 978772998 774804461 409659385 238098250 740736780 871080909 684018349 751380123 296897221 915012311 611512676 396211395 802043358 426109965 18292307 970720617 241016786 977681256 996819824 845383018 854693636 769917167 451721367 969115103 893287020 664073775 776420770 535328288 683536864 993823659 703644756 435710037 557863819 627933770 596482740 290514350 500696447 166002701 247262485 769380712 216645141 944903259 881941209 972894632 617940117 994596131 985302149 993965571 725775248 278984159 683104002 891272661 701195434 220883027 792349445 905455545 120693960 746940309 839074389 683168396 671614833 782775897 143922389 911612128 830399685 840903459 295085564 686140425 712454704 973958328 959950561 759563584 85983063 960810126 896244391 714961883 992802978 250544596 779690067 620583401 945489512 235396309 851405657 513866178 783999434 941144451 949901271 224552908 833244075 959542444 74060230 724610937 279472494 754444757 855892518 923202417 960922932 830356501 882379282 884738500 533969780 759412278 697196988 676359580 493664743 78822705 708364461 612340775 231270351 991358144 827372744 839075621 143412842 862190282 633827762 253790856 345809882 821041936 174006618 885159412 924526086 707038304 682837541 739667582 866431829 997193747 729216634 932133555 282816841 423474198 466682497 868762000 554776642 649537829 995327566 378060831 792133530 308649752 22051567 461545458 141929689 854554946 553238308 18365059 396980599 313603604 272153646 741287654 654512806 27187959 927224240 389933586 787903056 315152939 635664692 83610103 991598127 314375858 732034022 777544041 749955089 252520839 472419435 617057107 826899581 207317619 737831842 162869148 808274262 884308895 172838668 268152452 34747445 810546207 504670178 757263317 594263914 212070557 792928262 606720272 240148534 33129857 253663716 936089380 955268703 817490671 985188398 913428161 756418596 749382977 453996449 846352287 832174923 565703965 377353643 965173715 547186888 919198149 950677035 702868394 171297006 400159 171194493 353132462 732816752 731745664 958146699 836116742 828883340 683908819 907233382 529203941 603669116 696084733 179558542 318334597 731074283 264636801 574024744 815781914 63221774 766725033 930894314 150664195 948815769 295160408 756294413 914058401 249988532 936152003 473616205 438532962 97627242 111682433 964276670 490798991 284810781 576281469 757057736 722228226 978873223 764281099 783262648 802621225 63356630 782708114 382840133 977633308 538510727 877430631 475030882 475970064 913426808 848578070 882292698 561497900 749835861 980124884 898232646 347609475 992999631 679321940 975008496 970806167 771020095 119961744 332971147 881894515 637798278 84295124 534863148 286692063 71808411 664032373 937102062 918601234 929727234 819119698 15745752 808930319 908259427 508639790 153872086 94016893 388924589 145987914 132161280 936765059 411738438 934451491 106154960 10957617 660843976 853269409 66655109 922382417 295194345 783774226 415093021 394799048 832522367 527321738 207545307 695427708 150631988 153759647 815248003 532733667 977676495 642330983 915910877 493038360 431341285 968358095 404487171 631699311 906013374 101546245 356381730 689320305 744882602 544534415 634140108 356959339 70424708 620253183 195178494 969504990 775264966 938084697 623680411 385429113 996615410 993962474 672562658 730793672 188723342 678529851 56247331 770053462 932097118 838057405 424038823 122241698 652888331 336669906 765774543 437064206 296823625 151740105 298282750 23241985 548975061 26388929 906867426 626538575 670989236 731544126 670989236 974538546 850560084 382486633 767192305 135822130 854091755 798012939 765026871 580602802 151500852 431312776 825887631 699050955 905880031 277023420 502051820 207323519 27974878 483030881 749311788 2778861 770318113 701103176 555007298 911910583 376397905 972007231 699476558 236326801 530198787 703145862 218234510 309834927 118453466 988258359 782445709 454273377 130592497 361155102 486685435 224221198 808499892 536886768 982766505 441469285 820503997 790701898 812376977 200253230 792602600 982608156 939605432 543808425 665137805 930808586 726484583 284579712 39410421 867665483 443274309 607135151 384894249 670989236 646411888 780962825 530774845 844461877 972117758 716074415 980060304 795159528 543409430 364663862 40393645 720788324 951164897 950362786 147373046 915697596 946190783 910972788 271698651 782089860 626081846 872905810 487781788 836219178 722511726 161888601 255263341 965422171 640693400 467417573 134322923 633738956 24797656 413804839 653069038 785070355 31541842 962020771 827356849 158097985 814489807 662472168 730768588 940489087 442872587 779166704 745741221 187390857 794312652 719813622 433597232 559721589 907398611 142811143 918433447 503446259 789483504 900857834 151493009 829046241 899371495 786387825 271493605 357830613 361148469 902585552 673516514 248037517 338364805 446276259 858755853 852051194 211697839 807399042 176959526 545456101 566946882 147586553 871687255 171940584 917869854 707402430 689576055 906940695 457836833 285191558 828818606 626945386 892453068 484572945 880166552 698328097 661966146 27596815 793455211 793983500 571441326 928449589 978147599 795449132 339393970 398019874 686623818 535925210 860148229 596007375 328085759 844925991 271362761 109975908 102556185 950216276 693582898 365617795 697659964 684573307 919656123 657387670 158338118 653613680 138413254 17262841 510883942 728366027 886789012 719160454 877510391 159276166 885070913 241520285 316755708 810479004 671040990 519961530 846383286 734004155 327502575 703921090 770537052 10579291 987622476 761495859 702510966 400683536 678119965 900805431 929032072 164703485 848876772 33873689 861856535 800077380 304771479 733312765 253478639 72541205 214579006 661281142 645799742 721878244 865989693 793987234 555098927 745459480 691534387 509584127 504106293 704800478 167796744 987328534 830767724 488670108 358643952 274106824 664008783 936344380 197009311 252950672 123164592 931497013 871251043 964082674 834832890 293668434 745696446 675793926 77290860 306124928 583153865 593788980 907824557 833684947 845603752 425556025 474066156 843643992 148338715 717031271 46643386 695016003 732737972 492129482 865537094 619585348 429230627 951920431 742856033 894721014 89041649 238395738 104199672 8502014 303360661 772955102 265327563 134813612 269699248 660546407 485598388 565816519 46621546 121250274 814301416 985259813 662134501 865586059 441153707 849797367 185810134 685480406 520826196 677846039 544344625 139725540 603544816 979962779 307069378 462735255 349745771 92554493 878268421 213514825 991120819 558229140 730480070 966323654 765568789 211872947 497864196 423412718 414525039 902115284 849431027 651602490 897158956 901209365 838427764 690813561 772661106 422811587 263062111 591695268 561803147 728189114 293097350 539084236 672514306 316809551 473062303 838251128 998597727 693744035 90748342 862323141 384379535 670989236 904863175 387448029 276452685 39961375 199958001 490688195 240869935 85412108 213831414 995327200 170277796 65940781 520124745 217567945 992492431 669060720 818333148 779282573 788294319 988372564 917133100 873591700 423565981 955934887 93165832 749556986 967959311 346099342 872148943 738482281 941126954 512626750 644620352 489327758 889923770 372081746 734566154 671127513 704761093 853936099 730695087 359722589 401224483 829784248 952954365 66297870 119774200 127746900 472212907 102227480 22487881 846625067 372338401 769744977 457140521 860823453 686244431 752075558 943175094 917520114 823398718 6188415 439404218 255338125 959844240 564405177 670989236 293063598 23383925 300152030 948703278 144535630 719006296 760447691 930278074 833405946 732306792 868823989 540799375 984821239 279435174 984057961 431510182 308856559 216298869 182446410 568581892 651863860 513496959 895245834 115608151 404215633 926654109 61501853 564191394 566850750 769666849 919890734 602337960 28596011 678364496 442101069 439275607 83387033 788189757 786584744 670989236 72806706 572929209 942014319 132980813 578945312 247307465 384175767 831354999 34516014 315022288 715274891 794673994 828046329 743397630 733315738 253157649 891938564 680244942 683715312 671215664 392211712 815193363 904364364 104428819 926175906 736319330 645570403 911359108 353759362 856859261 891560851 421035648 765410299 903991543 958602101 360651608 532059087 754094767 669361338 779013410 434173407 805100226 149545462 670989236 852331812 654403555 826448566 357486926 71784702 463142394 176351811 947460294 944684832 661406036 693012684 489011423 825890246 697233932 892947082 456123336 313546783 180343248 988708845 358216 684698902 935691668 749166634 840527825 326593489 654687979 931927676 954103793 165233016 735033526 900369671 944410629 291968945 711748899 630847943 236742239 489436931 752128131 451862326 842797145 127183928 825830436 117402762 329093353 289924793 807332366 948291227 110937214 43990043 662162622 846099916 40047920 748622380 53873342 593056794 907223272 237855526 994289980 151049033 509235204 191476749 159539021 375597349 728352047 754309967 602405632 594507394 522254605 832542812 247225694 634724169 659679743 281080607 683357332 512382233 670989236 928393752 107983695 974039058 811341448 98662721 605278760 50708181 273071898 496927365 699024362 620443114 497955775 335536476 584244735 61237500 808126045 291484316 602459354 588952869 973715453 427606779 793066524 573979235 313228189 574877541 861005102 347013096 107335831 994112415 679553357 983949821 427264794 977370250 636374567 728026780 115263206 751608361 517873371 778162791 86426774 416486452 385142689 670989236 737316396 367042421 243676604 462550907 728018213 811736797 965627119 673663311 490734801 915924564 859050877 25719648 674678446 74389588 3516822 848109394 670989236 188349982 954698705 839661652 964228201 729543417 970162596 98826048 596850957 864225418 176251918 294689802 967514075 937469111 34163902 904982431 780413062 853559650 715830115 510132400 856890937 297710414 598394766 174631111 387182399 787178140 182879138 725231642 817244111 503871927 855116001 690171803 82247630 485351903 700996670 188760235 710550740 763905058 357465453 588740227 798369710 932578524 973848741 811832833 729800582 968852444 217972425 831633384 713822041 860915469 696423408 417947391 712556334 475660349 872641269 219929756 511971655 970736431 482058486 651736129 902214352 999433087 750929978 140571451 415705327 458942014 804791763 645153594 967575616 68663154 805387518 757076530 290144030 92847616 172718833 753674330 975499964 890457649 614432769 808406466 898048923 814090531 955101861 162134172 911608303 96356515 486056454 692288322 187118761 872095734 708710289 284154992 149155488 463113571 679654870 990937970 220661647 914873630 798643574 823626059 766010887 598550128 858478327 711654254 30389735 788236820 365202797 866545579 972906822 52552447 416315846 226786802 673732772 844816413 988303506 433097281 197609074 480518889 193184429 628330400 776246572 685832087 155555613 109321445 24312051 30062377 988836734 105685237 931672626 982255861 755069218 238604943 268873983 926190761 885826453 776060055 994317579 131576591 414976835 813492676 421998269 423002832 712795752 841033126 737587216 137916779 680021724 745915988 113228184 787118151 958077014 785925163 583254650 362386106 369919256 628161253 93902828 917331502 771653284 836972629 929601832 910598652 805871857 390723022 670989236 726740060 926912815 942003843 803735559 718520405 236294573 379146363 194572575 827267472 237611605 459731098 671007925 683199760 630000527 963731651 899175196 493741440 585480551 570747391 246340197 717465810 521433057 706553074 683707190 349276329 709586799 661978399 77761388 976670617 713566336 240944103 855996710 571541870 867080274 678165000 824787730 26086586 724177892 672908638 314563910 867857963 267942708 270618126 849032434 893769542 504288182 845096586 80030965 244769839 660090531 888957992 766528778 942772043 685991615 677125603 268704501 768524803 651034648 701453798 670989236 394956041 910694041 356987057 587000355 586118614 955287379 833717909 335662177 810449628 813216138 839364651 981491051 449445406 723916166 943389205 990467836 419828006 808848233 46645600 678089291 919602249 274622806 696818030 470250143 742545944 479071988 890392535 721681852 322492291 931979363 580241995 505483490 191559015 141492360 539506410 906791315 118319426 451134655 750199768 902401340 312515367 410939763 406944223 27487295 787028565 719941052 149582622 883306898 945393291 727832401 74052854 916726575 715752853 656824535 941276627 849961424 700038979 689621029 591962040 209283215 237244300 949315293 845844769 990517930 192781734 13251709 810575125 762160845 97585494 195728891 630469356 989590165 740368260 122850019 976899353 736999321 820252624 260179127 596561404 209083174 778377612 243837381 15419741 598424465 122253673 588402092 294499349 802102945 853084082 956623015 951098337 676228759 653754447 588237638 616547601 848249368 986345916 578279946 901219632 100666697 521484015 798260701 22271446 704463656 194487061 839178430 651458074 532302856 224820957 925997843 983854643 406940652 819782144 635651900 665192488 551519506 314835656 293857105 670989236 655023568 872337361 317346382 781215780 173654361 79212376 577796679 686993147 588584952 651886604 934657602 482699702 734683491 670989236 764306571 758439255 697351012 355382473 916732416 845641695 874533807 986735237 976068155 732374607 547195380 934303641 893172069 899114180 131628743 588694134 276804288 814188554 928452753 665008091 789236266 908924566 431472458 373538228 547678851 990478106 402253435 670989236 789117957 775528557 701864905 460299599 757297074 232336178 675787720 947546929 815082768 628742703 670989236 798598401 828132312 253987302 733897111 416586444 440815039 356213642 102108611 28448310 767005336 209250612 227714761 330243009 834236536 459973578 527209822 16311312 363626427 744766804 698932141 673910238 610070244 649579647 32258076 183417001 754983976 413724629 197583801 814957749 40349980 98163066 915790640 866327727 807039037 885335287 736896132 156889181 844556291 571626515 846845508 728759431 694625291 121991120 139487150 225591141 158772225 835438149 808126918 954469025 850424581 700091921 451667291 968860334 244587467 898147121 629492958 808970363 765942479 260091015 532467528 957655568 428327757 904192491 686668189 798984960 441590717 940381483 588069746 556224405 526951131 980538050 189521700 764743225 820036744 717685055 822768414 859878032 576633240 732957633 488037832 872549229 975912824 670989236 125685929 995379081 763490469 936949572 300757677 704501324 974854830 568130272 726111015 511279055 560142675 948625037 968840725 954438519 400510785 562277209 238158359 808694149 762178997 292685345 112576271 417973572 486497608 991107580 332129532 796660046 982889153 747636917 761925140 252620504 615308513 808850920 117099277 708993716 641736588 485733305 537349686 806392616 283042296 130355508 686042095 237957526 463653218 362287147 886054507 623438403 676906978 327638190 109055342 369811767 396982124 777695280 676192192 6349894 211780507 677127835 175781885 107679607 836936933 723858165 955913644 864546742 978825275 883069008 250685890 381495890 928290245 243847900 376650171 456107721 944794902 711192965 343715807 996775423 819593799 969967186 689448146 959556621 849461874 422783269 809399432 925722299 187698879 955998882 670989236 94473367 746718465 746861261 874523787 732896364 895443979 539479523 700403542 511057622 379978837 838850906 709891789 660124738 857931963 646760814 157526789 818047890 833874038 982286474 803380123 723009546 895305198 199401562 531976469 519282845 325908389 970165626 887549556 631136199 26148321 396925001 734065100 907844624 950289766 699406132 562904292 179600288 699719960 644201861 982058922 965815674 139796505 837848033 670989236 246398151 580594075 415515630 669499935 227114391 180182314 366260850 227803076 793211047 129291640 516344530 736491923 812673184 228681495 604793463 459358898 282684954 952751475 786015374 813609380 400305967 697058640 835650728 553218369 851953283 751542311 959942992 753379790 558144558 414027962 692064379 140540368 743385638 299284264 469330725 8276909 965697936 992716425 925402916 4759025 781517021 248587698 73877372 880555259 150548061 767722422 935661218 253498083 570471458 781023414 883028269 915048987 964210764 818615496 630427458 185061727 833677449 492059143 552097632 159928084 901940775 254063481 696390168 870608019 604412513 700612721 972050708 872273086 704504667 264591691 568095459 968916586 385432818 452646375 376946684 830394824 892133627 895783184 612798799 955919744 879225847 670989236 753486397 675870202 778422963 247787078 566939292 694832923 581366830 966010581 205302445 936694161 841940722 832578187 782162874 896172455 701503393 9519837 734097233 990320569 878181163 826677315 775647864 422780569 833611667 856970346 105480552 530112219 278677855 132788236 296460423 354536190 44002376 348689602 458953706 670989236 760419436 898622981 838509750 940773047 740994355 467995111 516607477 309409729 159478113 670989236 748331182 837801178 654803697 908860900 792704884 758941722 263202522 758755424 199215249 390464276 662576562 178799271 630199173 983732792 523169188 890726802 634617410 712493893 879491338 280291075 957522291 522171960 678908458 889418864 740297574 944893763 204958689 387083237 966252294 879549251 957369953 133335246 348845671 330170895 861869731 872689529 763758704 399360209 483175196 48967242 936236628 853831236 704595075 975411218 537061599 978421789 858296323 75329961 712786293 447190694 150268621 972235122 597044448 779709476 82227526 836104875 868569260 807243808 205422025 286805640 708110902 219407412 886530624 703029480 8463622 622321672 651843198 964959247 460847293 35507402 241262812 914586307 296518652 445702218 750868389 912287538 868855302 817741386 603071390 757990654 158108265 156449440 720926470 672790528 670989236 706272178 806081691 870733956 941638544 721664073 676641831 912540887 706784715 804636653 654503524 742755924 664921167 791062161 739188424 843472410 542720226 776637683 891603135 94392235 81923660 580313007 668416254 595530828 895142111 315246214 788372431 770890886 176605063 636067762 863635731 744819504 998213656 253321347 97289618 816916316 44713829 971270227 883823139 877664 344487613 158241130 2949478 977139518 849830444 770487407 50968838 311472206 235498785 416383748 713084536 723649014 55194821 670989236 636777580 670989236 398585864 604164275 194003444 309628893 560902535 761398169 72536900 630284993 303801980 969279447 633467233 948002090 999931903 993805749 648561279 783792906 438597965 954566442 977836793 63341943 56730663 489769649 429944452 600814802 523041943 956092031 835880735 803926815 465569259 438229483 756793963 786504571 841424622 674243641 17703662 803086471 974440793 626450185 966989918 177060769 938124803 348346810 319036974 470151501 633038390 670989236 519118899 148864628 174815988 416478275 623414277 718802847 872051176 494385989 54732973 401377083 968963944 717529080 90043182 38435583 121896740 64008779 537646140 732248272 426094858 843978566 900017177 804681653 778378027 596523241 329596283 424918250 966480015 850934418 766558621 317767069 93254606 810675052 124326286 995695465 967025596 845584915 729372274 257526190 723328205 706319064 670989236 441554673 771916940 419678438 265896235 140882309 752668827 812818068 231753485 917365271 114625279 87443841 861396882 585050464 474408677 934142190 60940759 132174894 848005584 160668748 418179010 606090954 712483681 665452679 514729141 703403870 833805988 583422630 428691077 808057954 897834791 612547782 95930263 769406880 842910691 670989236 647027389 591504610 411561562 882396466 759597027 438514164 359551315 800099939 38999790 237635166 833362245 868188612 371254477 609656113 834464941 435206357 864869727 386466753 723148254 737007910 972451144 743952619 6514958 246941796 902747741 740865836 840578824 935030612 847458836 556522519 745488925 384844914 610457385 901910544 459587906 328193728 851339315 932932500 487556159 758213373 792789618 910120231 782536956 997114681 674258943 77755265 694281620 708061021 91097055 402066962 222958235 948749200 821508702 908115067 762686302 593145774 338424205 254624081 914072540 266954304 491464179 451855185 923612780 999485661 832177610 311935658 526065005 614159340 808273840 812242090 980401316 316458823 133989997 485689254 859911701 972682072 451999221 261937966 616019949 396133499 789553781 912339110 396527431 834367999 740188215 810692281 975422554 104510633 19592004 2116040 651738609 302601491 219403769 487620563 547632279 428603292 394250648 739740660 366357796 875520079 686367801 118991185 820679444 973031548 230092107 410693641 780454208 839422847 43900661 541351512 509860160 230962889 867282439 370006869 828666748 933280651 558951147 675644561 616093165 22700098 963025243 169614353 134045414 52926325 790920752 932122635 519361993 764145995 214038059 890709234 271065737 325477253 119882162 967692932 787238953 764570766 743163745 172642478 142003228 71422895 241340825 878458510 883669074 979198612 65772499 891172352 762833739 411473569 226064590 411067299 545092521 304302283 105965534 867404601 476592308 163923690 378228248 245131154 804658099 763147834 480980485 215496374 691307749 746444723 88481040 250761316 335457759 122306835 379510382 60192501 675530196 853126254 926827486 720917015 835284855 669069168 120354708 708416837 699907717 650871565 229605157 817093023 325160524 612366370 523924935 360607239 497401 504381549 765361643 725969196 678025815 488821084 719382376 948593185 422253540 550611565 937556427 28292531 670989236 67201671 519014005 769102549 842868326 140314608 699037290 332960371 868896184 734387555 141321838 977768176 978659811 563963233 705027378 713614498 8962080 122675935 843507385 46016193 215394480 114892063 716254839 24394341 649423251 809858894 217069612 512366462 740510072 255257778 678489556 562160673 843532356 532141635 664411479 450016403 419023568 880683028 870785368 790505977 913669618 634855739 75337865 803402510 636585409 698314061 310183498 757182810 409771620 977346611 434976260 592254149 329844117 934318303 395648853 737387268 891492248 766245469 694536367 867712079 946302401 324606894 367006079 515950185 907422423 560105737 308266254 870075544 796783849 759683572 900407534 887468110 168551111 847673826 164113876 998585838 941892928 334190626 845294670 116245202 719925408 953474110 652099056 604000900 520408094 613150220 45624733 232231717 711318185 685869281 304415548 255417595 937791119 167593432 845229289 140750212 763501053 142235317 436978616 543351065 623103075 46416492 108350828 863790185 763142222 87892248 670989236 586066834 266152062 902174765 998817696 480739883 988996684 253088540 60288059 723652996 865562189 12899185 247272145 871421333 852824828 197926631 786379944 179297973 195309617 834386297 380949791 179026757 708978564 165732 709216034 498497012 522592467 711678971 697953782 639604493 757242144 531847472 662916314 136832522 254341318 538352511 766326332 703796390 890163040 38485885 190564004 744220533 967314106 496901626 640358892 53872347 988335305 434946908 981375384 964060917 454189855 156615040 684544935 187295783 875816755 748650640 173413046 69687123 505779266 90419875 752887219 763189317 992083160 36255906 994640604 272200923 774335790 607235530 105982575 753481248 811124531 685671915 584375682 545461634 676563842 786967882 889420288 712190307 913371121 947341228 97167475 631543 62998933 670989236 910864706 481591426 40817751 122515557 428711356 902129310 782742483 95485116 452302099 137640617 128334454 79236414 93728365 676996989 387148723 190196548 98031589 680327476 914189475 682333007 998778816 546128457 435963151 836367496 670989236 356592459 821899351 455588348 515025361 535417101 666368821 649423865 801458340 703705562 764963049 54150041 802166863 21923251 938943887 611092353 315798824 813412842 144098768 275368736 102112521 143653670 790949147 103982981 665481148 169790711 859794510 681961100 790608447 740898682 44311831 953184159 198768622 945602930 970680046 976558550 127690304 938321219 52390794 673087490 239180153 817288512 670989236 850262750 284012197 754524614 176322454 846508687 40457612 952695652 882120154 651480741 868481098 449967077 919394479 721159415 151234523 922347712 714761537 631812038 625240453 254913183 868479247 719797608 244713805 976364737 234438987 833694799 900095602 931232194 502630839 675627789 205483226 851845059 28414655 519938742 189747579 955179093 951786886 752398209 731263564 775622255 542429444 224512444 135783627 618533429 670989236 281465000 868465477 95477201 918718044 919769439 443133664 380953337 140510162 284733126 136625179 668733391 442579818 33719663 741819723 505508641 832480153 825734496 912365985 841666258 183065036 976984680 404232006 759770554 307930442 120158912 803480709 302317215 919257617 437953445 713044193 255155404 868329941 714369849 96266252 512255423 672590613 838102114 55332436 931721818 73123537 214065811 512151171 855495967 692051758 254262981 443695992 820602703 370119348 919648456 967790312 926000089 873558327 687626341 398034463 966588305 490484117 994312942 858857967 226481449 52482765 996608069 453418241 284214371 133980373 544671415 898707090 888523309 807078028 772170882 838443870 789013481 152021395 445330454 959271744 463786124 66340235 851055874 945264652 228125382 427400719 483898543 715613012 723329665 687425734 621542564 830365934 932009423 557825518 338266069 826943085 121195053 895096653 835451121 176386202 827858266 782568722 703124011 148355652 684620318 949943905 218782603 685308444 13385919 753020531 834089306 198234164 740042265 574968574 86374143 926731718 680749026 332830277 924394955 175286064 769460127 794466232 771351622 806979152 714302220 670794406 529398429 780054649 792495572 577640192 857117581 288409940 318652800 228314012 151131479 903527883 69258080 142877809 47513380 134541564 943546394 925608855 96744068 619394308 531229776 923314873 107504837 157206421 670989236 857521278 681552891 479963771 577148559 838924455 696450790 198242680 639381344 470449525 301913156 479685437 805821054 839686917 757929767 785252120 819682928 586280396 418023326 140089411 225977005 363194408 933320182 754846899 956842908 901679731 984404314 926661771 824312263 406410537 719105801 370747493 330513684 670990966 506359987 966830144 920164624 940611704 397920556 919157268 670989236 729514970 41433853 366751885 189359525 753402666 792992136 932298864 776553874 752668749 810368989 966368629 132155684 622264072 496164091 514895227 652524957 613407350 825837249 724447572 779312218 84487665 727318152 759840897 794313305 719928199 907285697 330227674 769454297 391774292 392939571 394595066 836435550 857784349 666484623 881594311 963886673 918066947 775766630 937599857 596805672 964435589 915014925 212083049 786026342 856140887 309127948 259928073 357267828 182531468 275044278 215691830 662810007 436887366 970660595 521121748 791928729 670989236 806216236 542146177 861236620 802979535 226320097 798215162 304606732 706573914 712675077 29579611 181842648 815046125 560567856 701522862 842247287 964325899 826369152 966057652 718711433 119901352 970875673 338916217 985230322 285476670 947182101 49268970 600343647 273286325 150909809 975692232 25696918 527362728 162426139 531875207 85188057 630998928 695533010 664075857 697908825 941633964 768959705 632997592 822313079 578648451 884953271 839401085 343362914 724323012 340239383 603336443 235448668 852902047 873544393 889244112 334536554 814218829 333676249 753997597 611602938 2991263 912646173 626718463 612536442 403303427 740797999 238689919 516078270 399837013 931798511 310119713 922620637 406325487 833188280 250578049 360033576 950901600 17245805 120880324 173358 108260152 331816304 937722390 561699215 87082482 864745696 775358337 812648206 649186935 766806398 675415311 373808321 922436946 833565647 942524920 159121094 789317075 732420739 179117510 650772979 906635269 670989236 120701287 965734216 895951162 360267066 121999819 794633530 850260286 919574120 894154021 295578211 696711594 760556743 883255507 862786777 345034545 4647411 997070285 759157739 972056537 822418899 601073946 788510906 814377584 562814780 575927265 1154909 894799456 418563482 698564164 394824998 507758412 201780663 188852476 705080001 740790622 492859535 849249414 521583236 779758507 672676405 91046218 710089145 127985778 253935045 203479499 712759740 529577745 776715695 997379167 776503135 895031420 613909110 705039593 304478887 975816239 686165627 706282419 690846052 567419534 122870238 589006629 675332757 212711526 199386591 788550860 4500356 83675704 790786093 934704190 640271453 550355026 281173316 193669808 35824989 209344985 398255630 769704899 802010853 905730192 900319725 776574832 441769238 440812073 704976006 259958831 435467629 559086625 748294049 929224949 190115624 828973121 358561091 252113810 63815131 432568135 452947521 797862778 582795422 441296583 811469340 892312347 650375240 904047632 892494956 423348040 587354158 588915402 999318922 595565195 405490436 900249524 796814664 50065627 890898884 616012275 675360632 252520879 691842552 964836572 311187558 867006807 937425538 430475599 670989236 630760329 888506450 600186852 106718869 471859891 176019461 164074166 41601015 838266172 248471806 782154997 500244985 348327824 933327077 456479580 433329588 849776237 722629818 918764193 62709452 570425791 812322726 658663344 711709926 755993265 721694742 838152731 768231699 614589686 799024638 560057233 626356241 310292218 710640517 198541307 991695776 861309579 482739906 902425042 320935624 584736175 709578040 910203061 947344104 521830286 720583745 639650916 988137981 412729008 282511253 322184549 161372608 689361550 743365736 981718619 66493594 882530158 343365276 852332939 854500043 749129988 981753049 791706128 318197930 716028071 260142901 667712503 100558263 645125760 803689431 906936841 884302077 919177990 808458771 843908801 900073714 896048434 991294402 161495337 712518641 698468891 315030554 670989236 784153261 890962777 611544896 235842210 613463307 253590183 17968527 736575660 882450648 985259312 849006776 730253919 282679416 163864423 264413077 861353481 808066038 641534172 471494866 940049697 70693352 809451899 777987412 178850441 805312078 436991641 997357436 869195077 768561145 858241548 677945898 754794595 598532877 986202006 882150045 556542186 954693880 88821540 696787014 101903193 985164570 462293611 119240434 482202756 86297374 881608928 686293815 868372123 888037498 475833105 325164975 114896717 762015329 80708356 977879229 440459821 800059249 58950458 953165071 777798654 697053785 835055139 716073863 969792439 924932992 670989236 370571622 944781401 782348908 874956400 427022070 65849029 505555661 705868959 978540223 679364578 107427008 98994886 853387742 538812173 721717159 163050894 214154786 648495692 461170781 322136662 882335498 373653756 309059869 670989236 857403000 147061136 958371021 940406196 342767601 871440060 674508957 677967531 497630080 13069415 859273790 732963480 557786916 916648632 986103682 976418504 717663197 878813667 494902443 505431207 378075779 852396099 70923370 393300725 143479256 729849501 566542600 592634191 737448455 800168315 493207252 381783688 738718980 799609632 126224730 60286566 955846010 9795132 732418994 837068405 894770445 737051606 969327873 924296530 366407314 778607994 792548474 759477552 131637118 343430110 679227120 307614240 375194124 160893369 732387758 884498838 969464946 810647613 51178219 816017228 755902827 84668399 725410713 93703307 925061256 349363536 110101529 461911670 280488603 788495338 483797537 691650681 737658396 32966600 5959658 845314669 887384378 339782284 136981474 933898582 426417094 604687776 601700500 536864457 913903763 583651050 786367237 647739702 683665267 294573238 887218756 246885609 349619306 311298003 719291079 829251537 235261648 670989236 360428439 259310745 793970748 596109818 791818155 6978753 497413887 978212353 816112234 753214950 832103866 606110098 713853241 894803787 738168103 151917440 724982653 242506373 425396431 100073610 827584821 522256576 679890568 479710039 786537378 722989281 632520223 476475828 834338450 681654179 976466324 767706913 477903412 447343684 616594020 809370557 278155119 273713067 32249870 981002959 164856933 179725186 733872372 502809841 847635976 519240531 965071592 350018072 860772173 691231628 324295576 210016361 424154531 822111940 15383992 931505207 915470096 639495621 14321833 913004547 932803405 896589962 959764239 90690668 385426726 907347292 504727590 87874147 868915380 953979323 738109523 256631450 912017697 909858418 801694788 865105989 409810132 764951695 950674074 723462804 809318665 840236691 738542513 848336594 150386501 755687511 685664394 54510647 757566621 604986802 954711992 514832779 688251323 802278486 669961068 238206829 796874839 908128568 221889076 945311720 940227565 785939910 24378473 648576379 665609480 846605555 353246292 932246337 758126938 884114256 950311017 268396985 506213298 670989236 858129694 808115297 833016504 905721210 507220480 681895754 648096190 659396531 677011923 764694398 849885895 964669208 95074491 367290485 80860538 524245901 326450804 638531648 805480985 562850520 247196593 883010685 846766737 203653210 432121001 745059673 395236817 614825390 82205286 737831710 602785428 162832384 670989236 755350145 710190050 240368170 318175144 414765211 375115510 749908198 359946814 449428622 486132344 806588141 175523853 844956951 883072360 986298501 863371382 325196169 849515289 696745276 900713337 76478651 247434518 721699234 409176370 288707772 814203751 215822250 769065793 829845911 284770262 853891813 218934194 44368631 500817011 442658566 190772764 123905328 647482749 758525008 703837510 886285236 547498227 679374911 826551492 878928924 681528022 909600981 430594319 850444059 598487145 921188282 996659821 653457274 665814633 802325710 53103232 35362275 887042925 825863893 827522173 389494849 435583653 682718472 758888095 765819246 129618104 77693974 915944605 803272218 982297536 736472102 947624403 34079599 836619417 910303853 965636596 756176138 330162631 350292029 112331550 336909914 299376071 873371679 618342956 349180324 583215358 332095752 920769419 989816530 982137698 672763343 701089593 986338021 768034267 796813561 714028804 619547239 84692028 265789004 63154684 896739835 626517114 974634039 907528196 853497699 415178530 5276101 812994527 289007327 158797273 293329278 293250657 813868580 20144118 69743087 828779406 879003853 608799807 957051804 983093201 611987610 876850404 120620367 985075151 868934115 213552303 886034410 967210347 403823245 914011217 830109902 671888768 937217726 952273612 738728931 831788041 616547428 880841504 250933562 988733238 3874805 714734158 757528801 118745415 835663415 276785165 833521534 69971790 366712657 890554540 760508237 172474959 396177777 719659124 752666382 723272749 927281797 903256352 366017044 210209547 871828368 48714797 697018357 819603671 627660194 72494239 106786964 281172598 476163750 743091103 444637088 712664769 762087647 401359523 808641014 929892772 773702160 746431430 183175625 997769021 597906078 557914183 789519335 960810200 593138927 772845532 985479670 415902283 965063628 759839930 107837519 85637301 349176499 268336251 920407438 339476549 985896295 628769222 688320289 172083142 690605278 441517198 210936665 920175768 720655550 443423179 316630589 803819857 968247690 406829093 695248882 827210802 996681498 57733128 9619387 380615123 958396335 828112005 864909143 572735280 747460905 817415056 834415980 601540752 634441510 475871931 305986211 243373125 190025084 728998486 753332952 728130052 948738728 683569181 388944363 323697415 886199163 959017613 793995989 153778771 845631587 818513633 919583883 866274764 725256847 65648530 366493368 571325558 182336548 629177739 715120638 340666864 186852667 999258891 87714781 766360554 935544085 500570446 933778252 848308924 436913931 754382165 947007315 517621071 968149004 732658567 499915393 687773041 750756708 486585151 796108379 23653786 933046797 500194633 552422875 445866435 987581648 719021188 705451156 972612184 338568177 805535046 378068659 211190008 932054050 329241876 132343032 969190141 889584419 715804150 436952889 844037921 78472811 823990675 937099572 993481222 1564063 48981013 827164910 810625494 74522964 612436212 731051141 206794822 681699679 250496268 135524466 727445608 861082696 111314380 916634214 942031132 922966398 848487267 936909538 856260293 461403122 306981442 152921638 389908753 284482947 898992110 514214109 872576945 657580966 706545589 853101829 321415907 719773471 857501733 116401266 961141512 830381733 60755413 111609242 200628012 273284879 955488135 272875982 463159107 472182814 518538031 846038951 10633918 791047153 685238794 345911119 669743848 545283863 859741040 90532063 833918682 988310435 136954707 886452684 511060821 738879422 371585787 758115344 535563911 902197548 148214775 654720680 801018434 921078255 936376511 921602644 715129759 785585922 427772628 388246592 666916581 256126479 562908478 730177371 321272982 30087254 231396206 687821549 305870371 122961297 710692708 842482745 799547263 483251240 176166730 372827541 760105904 961507753 853018022 634810300 799182564 933674824 796895212 870931818 575887309 486052004 18670536 172025830 689052039 154775071 582688790 752115428 226631893 570915636 920692658 557007418 162301007 639450484 823430640 29304116 427422480 810694998 378860083 973779373 881668539 820483538 12042101 589413909 355204851 764600342 805881052 739172554 663204505 730403252 159596027 775276326 842164471 616058958 734710338 295622656 827724458 806007276 74812800 879159169 451960699 595428238 953684762 856161261 726104240 699078282 303726421 252248541 773217709 319383598 78724077 739350970 624535 118285984 235881878 239747060 733585022 287705815 714659780 936972828 572049206 688237096 830875049 87472835 724094538 972157993 564489273 88902832 678405355 898541055 776102311 168286717 808037945 321545468 872371334 5877202 841472313 471319460 228172408 569674893 86684916 768897329 958848445 18717695 40971245 827451314 885733384 490332575 64133729 17882479 11138206 367165995 989637788 783245295 845129556 455970782 554942405 983884155 389997265 771970632 845171627 417391763 820697208 736549257 643674006 963278252 136093844 719800994 936111112 332907616 279395336 540559306 339106244 878134152 888238747 812471274 464461726 550529380 827343295 317377332 627520146 518442763 705180953 424059503 407008496 204926394 913527394 670989236 940458131 763035434 789138976 801327994 803415283 790255889 437924002 313819588 626189289 963968252 949451578 873617323 784041745 3579991 687140873 22879900 239352452 37446114 701124049 978270973 269858152 373943746 354313906 811906505 897805352 810128488 800372570 911540178 772536965 139344855 50001515 397656134 719052726 966857409 830067250 701354120 85426668 711584197 948094456 363048094 783128493 266530195 656073688 114645547 971320099 698256941 449338088 968570355 120050679 140439115 299019289 947663829 321366397 989241627 949639809 465876680 894659405 932592122 604385079 833756377 992253035 585162735 601499225 147640085 699737834 703070982 868257751 843381873 157495410 913454130 303008349 320224119 500470647 682959861 153328638 992394685 801987780 831664364 128648788 433982958 299006743 908242309 953972286 685500863 356019634 715528002 702012046 281942893 675510451 266922704 303398966 311732115 703998183 765283926 920427496 174872727 78584496 959702624 213046351 452176652 579304602 810392199 903606145 741353137 124736891 327257430 189272065 94190389 533338499 224814952 670899624 648025151 972560449 620261763 229763722 991305729 829220486 601132417 298564613 947696244 724680403 626567309 602921096 874439696 220668447 859259314 550174232 194091967 790722982 85338088 68215401 453326661 442810823 687198868 446198800 740405684 186779454 907977220 4728041 744819825 700053033 587671530 787156516 904345983 501353358 907254031 544070491 521465035 448104767 628180287 899407518 9784706 844468224 182101279 139927903 243783507 51233809 621977791 762087035 853260833 392337764 744678531 282216825 992063935 667939981 986581409 818806402 957304801 595164049 986962862 957509201 946592499 284955744 798854578 440199848 924187954 708115094 928081619 45241254 773714667 454269453 54372385 976459423 619446593 549832357 727698607 656758534 95254772 342548596 764415549 671415686 491966652 886665424 178245001 295935776 140073134 704006628 534286011 704040746 364604378 914430449 897980019 166666255 861191928 909719136 560368600 930835002 296276852 688877781 58553499 630030450 979300102 176800537 102023928 986425145 69626825 692695286 776481394 96478733 781224869 510579938 728692760 273189133 776669883 406489353 73851211 999500569 398497175 700861465 16416273 250157428 965657012 219783630 670989236 361740930 339481722 141694151 358808214 790819608 609907689 670811326 681114720 796489913 73554066 448210917 5522525 545932648 768432799 891889090 848384128 813157102 939337547 715921711 22881326 482343836 347736723 749949961 119420751 217832083 673720717 555370705 930284972 577019055 670989236 736372706 741914540 395273205 946315524 929236533 21186810 623344481 794984350 867428019 780045816 246497493 777597413 778091751 579093778 90715459 742974570 692734454 262626637 670989236 860985901 338040111 134259297 294890441 213089136 695083625 781144442 945340586 889656529 681195909 923156601 85258250 778593240 884177710 339458545 385652033 28551079 204265461 94523583 173887534 938475348 313139938 809659524 519439627 674182502 41954421 459498226 795128618 799963189 308802177 370819851 431481640 121903452 868796086 919740541 763620055 952212929 462850316 119344837 354656367 16049929 514421407 789702926 730654931 930970685 937052364 399527828 723383780 856440877 306563847 728531280 260722313 690028157 147113583 173981091 514486792 971420019 735711273 818689935 890781280 784086892 154283916 466511817 162449555 636308948 757698693 489422607 934874062 684382315 674082755 825987618 962339921 86558036 99122908 462382116 887426408 138496793 986840920 913817553 742131888 277541439 989112350 262554178 48858038 617191622 453764221 473697967 273925626 693861981 814306123 907579666 441794945 893465665 734851331 266252799 639266041 86418603 970208097 980739444 704992293 742108751 553131787 109858675 801411941 191898823 148033686 137001693 873917207 729604212 222809078 590642801 508678184 670989236 322377206 689059201 977666376 722825836 8032520 729796186 831120444 857336237 318555309 897518458 91258797 710557785 484073712 72863561 645850539 379759188 243026205 619743991 940980536 69374855 516438813 270774755 353241668 50405933 300720350 443898808 492594152 35291815 689202218 172999820 812317607 137754825 940939830 738553930 474036631 307481100 214184350 864937924 875770479 305457894 863491437 161666914 247141462 967010027 713272690 376252074 359520885 289992746 756677879 734204257 149051970 722358254 416931806 823587244 778983533 540672639 716210870 694989039 282115725 188545239 401805937 759606989 244090092 41048322 763683040 227359271 951170300 944926156 158555569 217216591 979366385 819246222 971235985 965138245 163740981 965077060 838626813 45889042 28268065 532883949 811101157 907409976 136016835 284042147 658108152 791418211 716082269 798432116 854108289 631579385 509186338 987707604 826766605 400087817 213049460 952806002 785875411 948040827 838562254 516076714 346784460 564462632 113778985 818862264 909281732 512583429 973627041 845890302 631115474 421376312 838368782 55943923 975497621 487298142 617880060 875396696 140523613 722420050 561661988 513833522 769457722 946873290 741153654 549963329 57231551 714981553 715673401 656077550 923991178 949460847 916709160 919858816 952090718 704337842 787659382 558993901 490158556 946950750 789529918 937537036 731044789 29846661 608275012 253211195 233382712 785388719 824799266 411597705 70709681 899084982 920376283 813888037 866212852 152074775 698907201 339600793 736156318 931467156 704332718 768007967 298637835 579985014 692151790 687261954 290834061 478242714 282182079 939844891 999937474 729431409 321353330 886854263 216026899 717431632 458125858 353891103 788225182 109065280 664471761 211014826 139887769 827954976 525162113 480991959 173018658 377073008 670989236 742930562 69489940 392770323 713615001 423978123 670989236 799959734 695383793 869996492 814902797 864110845 795201798 423072196 717493029 800869010 358616347 803723406 603731213 568632557 94790534 741783237 629011686 515553770 644506394 708881092 314009273 997166633 804904707 537665311 574058462 59337703 808000276 335498918 706986643 743580015 352682770 491029880 180984639 580639793 754401475 169360508 859737311 742223976 315535683 606283264 235863800 852904555 139995288 771741965 85205850 650540239 954960520 674100492 810936838 53597591 815631535 913308935 258281683 883818247 475377328 502307889 697489456 921125409 765058146 834275998 963876051 997280930 373410007 114090068 722212387 461213752 78228595 536113476 239470000 712629222 688596628 32644238 747985416 767087966 881606634 855076797 600770183 883126188 670989236 789372855 540521488 971565739 62208502 249447974 700134033 789628816 674773908 951883781 440953701 425919174 976418299 909064136 993280285 825364330 156986639 967072564 921047451 698600929 246025170 544742802 37002231 344855499 910198785 985454613 658894585 363119744 962616287 843377845 134873718 780207347 888073834 862043498 312626821 149795387 956361023 921810521 920884076 989089205 626001529 334440244 951652776 860496738 173078980 878023692 928061099 132395615 694169758 241082260 716259818 785988616 343217621 675615566 685060129 875973035 372277966 787646308 216755873 789444953 479899095 703659588 165056046 801952652 22058674 413451695 787637875 588476752 927523294 103420075 23011935 374510313 395505802 908599622 676936749 602693633 362499705 670989236 195823653 726416388 670989236 402982087 143888223 214253208 108790078 643692994 125328970 987955425 901848896 933954282 87592544 976375023 979740567 930310135 862391790 874206239 474377206 129736277 979756099 784500261 416537482 670989236 729343418 529902890 926351134 957628978 728292271 906069413 551234631 720136962 500073756 60514369 996267865 494761134 241269747 770615278 793900816 468655971 25718228 719234878 799734033 884284333 727392248 784560075 137373352 499445923 802754037 857175500 284660733 429173129 281039204 16675406 511381635 801713643 861556756 956501185 775076614 344849536 205005280 561416818 776376212 819444031 839801140 763269247 699815789 767250081 713154010 24469138 923185936 741319138 859863419 425000732 694705271 851535875 374599076 841841123 670989236 203477553 703472255 699724861 314164856 776191065 903452484 974140342 914526644 944832638 926720305 820950205 827160483 192236275 135836304 380831216 5760958 608125259 813286145 806614642 815811410 655856552 381994790 683190628 417162431 827114529 961576041 718822474 356084530 701146535 420566380 926756361 392915650 950668280 38230857 670989236 454659823 742825128 401566619 804555530 2579966 504503604 761626272 846375514 832914309 158207466 36942100 767717237 475295433 904271595 471701188 757597775 540318980 917899579 793155499 813469621 583710721 941878747 221195652 389623485 991536356 123510028 578715663 777157388 310213178 436483361 564395896 927960056 989329672 180603013 839352385 27476514 329776503 486990243 875756615 951030625 676816614 108969273 59097779 670989236 671559982 678848176 350814815 331111887 935329400 412207794 891920005 682691398 699517418 808233748 16071210 950413634 660727306 138116657 934250477 284642955 747128017 116256454 452267508 990631754 12177692 720775315 167814810 213504223 636434051 31672789 676188458 394081475 42442426 66078657 937288159 894092425 832806402 670989236 732693724 238203605 945395653 465542545 157515533 647155595 670989236 682795531 262917261 932943974 81786806 202643130 655823726 886574669 867873165 235590764 451528648 906015287 690055614 929229608 735504266 917541227 44359934 689220286 274739646 193837684 837653031 323061449 733286543 808316671 656304035 681473017 930227821 56607161 731795967 743542247 670989236 779551742 38850346 968556597 166626358 730559649 100188686 261441343 768014853 936674789 347140622 913603896 990696302 462153891 892777818 3558653 96370007 680659493 922854948 982487848 608953376 454860344 966113545 769096704 955255934 618906638 921211218 832668390 707424136 708870621 17549299 738381992 885770681 975845556 61105698 948965823 706970698 367821838 738529244 666849011 926862693 866444108 551377274 335032163 103190077 99641419 61250605 311688361 990267823 280471860 831753759 418972627 919380309 82037488 605659571 411596004 22660421 604417383 490944982 617636506 585419403 871165667 683538475 318481721 933250660 695453810 680601839 826344441 906067037 731901501 207785114 129660936 778516922 46207039 793729907 909702270 911853097 262345783 854956478 827299709 751689309 72731651 862940706 922469065 693920949 596753330 622562486 841405357 258335108 231063945 851816709 189523411 612377077 695006377 290332970 852301072 722442033 381204365 103614826 875868370 933305460 953198037 819671688 24188973 614921059 580495056 875470228 883350921 600885821 220320673 927413340 412852530 813382580 727372635 591426925 152607314 951222364 576388638 788221290 820936249 114143109 557760670 147725160 814774140 943734348 763064694 168656431 720372915 290157530 825249725 106289404 840201093 902071275 813744104 670989236 857871116 790395336 125236997 679743501 878507037 878606358 797825480 926164691 998138660 138489305 850786634 250509417 337642913 891879109 552091396 913536519 707102107 540082190 958739256 437728044 444596776 47877714 393436863 319854867 230710998 289661044 861801012 603059120 991739614 670989236 854533059 107123636 121506737 807713054 337426477 6975821 797675253 949912538 949301740 491350 709041830 144259114 984056613 834910950 744589874 417745182 564455865 808825882 517437110 151867628 519607508 119617021 492835732 863645611 267117508 877523577 929091342 346225989 703697422 423304415 112342066 355527345 206384918 770602449 92402041 522749494 811839247 821118728 929207007 405876599 188127351 173908665 362557842 89538507 670989236 782250898 587498551 42964396 324727872 249890905 277743680 673622028 780613576 748025891 850540313 600076487 670737720 304006532 198413942 838091227 540698986 450330879 99900269 750416227 415876 666723454 915592500 942278214 743980151 576504606 755537209 18176578 280309840 502362841 216196325 606061350 742743609 569108660 731288726 404439196 15032572 660548328 940178270 614065097 226514598 175755720 796744498 847479479 833076305 964232999 717780184 236218153 887054186 539350545 738826 938213489 949179233 101582879 128031899 583137229 993039503 233160930 963369109 674687796 829722383 824530263 815016734 967863813 92820718 223951949 636506222 357642278 740507295 826907073 25881661 700026161 995897077 281011482 663935714 876734850 842848483 688986320 442576767 894420576 684140205 870152970 733573283 513769434 632842402 994868817 279643975 589336153 507563593 782678489 386871630 779086030 637952150 192448711 790187540 292980737 825446304 913366614 517085318 466503232 754610994 971537456 916515400 689344914 870513709 715088117 851893301 870058685 867401445 360557640 936647695 991377924 967126387 386928362 712892173 954144241 993568228 187680889 18825310 956332431 147175392 9633740 530220748 911794259 414612093 652897128 93410169 505196792 709707979 426602118 733001208 822233168 574296844 786749160 749180935 869376873 724822345 684198804 860530486 274952951 782427265 541423499 352071287 769051425 191879339 629504022 646290499 658428759 466545314 971288336 437002173 838028754 934695066 490924852 731041978 736377595 838181883 711529565 85211540 942447959 166772632 39770941 332478146 767333664 790084246 299637944 694422738 423149313 677497760 843407192 408635027 312738607 516249110 286383459 929523904 827224724 528923434 941587961 299000137 341532133 123916519 783215568 931344022 759695312 399627795 9838750 261013112 862360417 983844747 653234441 554104772 671598208 177495753 788464514 991093415 559894859 97544162 390752453 670989236 721532154 785369902 353813295 201496608 732229073 752883169 689050572 424987928 763219526 71723311 745357622 837982684 648098176 720755928 315362033 795622534 282760249 3391123 481714824 762424295 216081743 813236344 742078715 230505360 853676475 742777858 466286908 724931779 38403572 451141900 553113126 208945833 93987517 119950308 308352586 600349316 892776309 101606477 771782576 449286087 670989236 824404301 333789148 32919523 367115458 801285284 8856816 592463625 107140496 824061691 465820543 967134316 934198151 3501122 824530391 906291875 935344560 165457706 673684888 738214557 33931092 588074585 254625123 899607846 76601310 453244783 359057766 125269766 896584286 29461189 385417683 87201001 975952268 912257512 724951163 658941511 977851898 362374003 842545772 772494303 280557809 896369443 309911176 945070305 139861877 608581067 195976583 405523762 861264216 718149100 486995999 416153823 878802317 884556011 614660082 654844459 76627669 199494989 733489010 144666178 811128067 885476303 942278230 874417768 248531126 679269510 871511194 958545068 916598493 340747591 942471004 876002029 940872643 513418924 695816273 870501541 864364369 449332399 740154802 778048984 670989236 349360467 703060202 347232229 725203228 670989236 546036571 292462826 203348900 128329644 776702245 630383994 742215806 523430444 797136110 553780372 781303015 415313862 612797984 774359225 762542901 678036108 743495467 200662712 675836974 949851992 691737478 841454835 966258272 241194153 716516163 558327365 946858857 959670029 680951287 850213771 267355486 307077426 816597516 730770261 410538553 202309367 670989236 410878164 357472504 943101724 406159173 193675459 364139889 448475630 519119365 969376054 424278616 881821948 525834329 621714012 881930983 590267054 425253699 486428402 670989236 936832677 688155487 974765325 845687563 784656125 960669734 764323546 864057939 79573105 801505153 661618373 186436739 819708446 810735099 349708789 565954931 84440833 823626647 894692826 701810121 529628796 670989236 476655919 953967006 855185830 912791540 688795261 56416417 921116295 759773925 783322985 938495250 153216226 312610894 490125036 734701767 686877347 883755223 90588055 726338526 826069111 925212915 57166372 459942228 225886944 124451739 896922369 992134425 767143842 738629082 797134206 474384547 984564720 790099226 360014150 818900441 138052422 643461210 242318086 769973460 983876331 865899081 671065352 994452930 988361964 899260327 180228446 867643946 989624144 550614423 847489973 903787982 912499493 767725952 993442007 142188596 731322154 160325573 36832480 71496141 934416436 1703937 671834556 55977106 797684610 632137183 220603052 814122369 706312199 844927374 335859257 821476038 881422294 545649115 879782218 389200787 737139008 912932810 93308294 792610968 426125802 8156518 645253001 742268258 253622948 646777531 371987551 967230560 236625903 392480056 441148032 785230226 794698881 812150791 353272281 387953922 727825777 288508782 117129129 951606494 884008029 733424441 700185959 707819335 640626720 425507339 780302250 530767923 661616771 907752173 910642671 929006403 70724169 132032572 975830916 942605916 739922977 317525246 675670042 997471460 677780569 144690047 74909287 711524351 218577793 562527131 517796736 506337425 992542318 878352621 792068974 392155624 702472462 956578226 142628857 974915480 530358079 610203470 824733622 844748577 95715852 285197443 652312560 876388001 593301285 297070908 887493136 205988638 852358929 846935913 681048738 259899353 737766418 749337181 289895418 555045341 668016126 618256282 25150145 726289417 902216624 550175961 883409706 430938991 403035189 670989236 86103320 668769855 744811593 883106002 848909069 877275679 59211436 750341884 447461710 683958764 418053458 116277433 229549238 613298069 496686887 400276205 82556424 894499286 889014357 383628599 378029401 800581764 151606301 562591535 367289730 917824147 916776154 683563283 595078117 943921876 794551119 359125323 639276098 53628767 300012890 793325984 907193859 749821695 787860776 675251762 961188438 913320833 711553381 111166682 784434209 708914910 314619605 731382858 982461810 908709092 15627865 967227031 677436111 957236233 882114533 714479656 483108946 849172900 426815133 575080810 964303049 305605365 231776151 979300776 497625557 748172710 842334659 531805842 683963816 745952098 143099348 800612166 383084256 385976685 995176802 74158266 754098089 922168125 899718431 845707681 855868867 112275555 522520697 679381936 955890707 531512609 385304306 892310432 15631913 316435314 835538459 459744339 722906623 922645590 216991198 909836405 570019518 156559549 768503168 760880480 729885082 252688192 841240324 956422833 311000086 473227770 993542810 191930329 756871552 745550059 596671149 625603951 641138335 802016134 950221711 141771652 757445059 146660416 893282791 201267031 257527963 972120639 980563984 814489052 951174918 70567262 195353559 716112974 870670177 880700361 85999044 98279519 932216733 215664881 670989236 208893810 892301605 560687129 673713929 178321059 647362863 376919652 853684375 103375614 501874458 373781205 624044699 997599360 874433822 450197987 822294511 537741652 774370251 767855921 452126643 656604282 670989236 412066374 978898433 520431715 907506603 644056961 565055102 990437303 870842619 674727299 867553188 403652072 690261863 523432674 822360641 330974828 733802506 942600814 480249017 700381884 887184352 586661777 760703304 990533969 670989236 860112220 674847378 251428827 144020370 724681116 353784413 35513242 809206493 147732531 936932578 936769472 746132471 892137914 918836644 554084494 631485466 895195432 906665903 298621355 786401882 996734492 942041891 329998286 815368766 92462856 943654370 887137025 958796802 338518824 776493236 307880910 171420193 598669123 558395940 581794329 789095850 726359185 682068663 809749280 17463103 547015650 805532684 388610884 725769758 292248353 688162709 367304200 27647940 726096387 450484482 327329918 698840123 782143564 819201037 535667729 562754775 490991559 865727494 588954714 144706440 366691194 803729478 898007049 916008644 457440006 768404465 839552023 278277442 111994622 841135203 303629760 205783642 289069396 136345576 62617824 44025084 202539934 849853941 313036086 157661241 323358947 748473283 785686627 6974005 726303209 188094788 294802804 308187235 276140090 500611127 867604759 747465502 191588704 967710907 16945715 22446037 683471921 39625300 198509467 444663236 954059995 723194264 492728199 346707101 731592450 854443081 402844321 473903848 890432540 905401040 670989236 724873700 315571665 919604146 272131832 854704012 744723688 414036497 823869510 648837465 471362355 967080337 479631332 985667192 725865684 905762049 230941974 642489223 805020214 100795410 8239082 574531533 765546444 746816169 894660447 708293314 827608159 792076582 790522515 732496186 427008460 101656646 15220984 344517771 762102749 917622448 848311250 794652290 863166415 912816205 918358000 31812340 145111116 398662081 239915564 477072567 984930261 901746074 76858340 37541284 717676791 817533958 693895857 648067802 382233005 722679153 195904799 559163554 18619779 969150812 940780748 614349821 851311675 220239754 921876955 180180562 149587395 799010498 25509297 842491449 959952246 923740280 866186152 25186281 880889752 451041803 914904710 842252767 579572108 226271047 427350281 484281152 778611701 80880148 755264479 950808200 58608893 576325020 894099613 383290881 733819185 934366323 621800167 937324459 557257071 420122747 969046220 952917569 704135817 547143360 609885432 650705968 920966809 562451045 537471248 337776403 698971029 137712752 705236891 156680971 765825067 779453229 47432996 954506239 719309719 849417554 859406989 814684440 356935651 906418630 954366510 672232162 879621695 887947186 550611705 275808884 871307488 790202579 619078524 751283194 945642271 804709537 77451259 281306149 62160205 187087952 946204481 128481289 799746849 724726135 406728031 995820617 387053640 172120501 946668942 583455706 41633243 806697640 675483718 866998229 787673754 867452794 104176620 788057238 670989236 342941846 843681706 352202796 925844656 161941399 827804826 610645902 871647813 43745690 358840516 162094822 997230097 858558155 457442016 369320506 384700416 634911584 100329145 332934875 735101356 14005204 464147534 886882910 773579194 562447055 422630015 786718943 864779500 868010357 856972724 827284353 188175872 745093899 664657989 980675992 471535395 778901586 144062362 317190091 546893423 618734026 225345522 62532591 716283086 879470714 908679355 791026449 568719603 978330468 581526869 323455016 73886378 109919240 831303667 971185957 955101056 471690818 752902832 674049625 457371167 875378674 413708483 707154262 768649360 476062675 473795752 129358220 215130313 133716726 188621535 727443480 13317726 736156643 829634239 721678489 831753249 964572270 370855210 689388275 318322956 57174614 714976173 343112009 800613511 85903018 778731410 810849417 169496862 142899695 425215997 203865643 693265122 42335362 218043504 342891511 228202084 547382804 499799105 232286876 219895304 782764488 744298055 931381946 650183777 880322811 300439612 175538737 327656987 777435586 177526176 533870374 455257285 453121231 986644014 306215870 203942387 848317261 345003616 991129066 216216579 368239368 925881857 565323050 735176079 482016278 977160270 2745929 144366761 670989236 331747763 799044015 505445018 29693303 485501239 955157595 524611383 785356049 890414004 856965958 856543402 678105354 532404138 764694356 988512731 616014204 991462523 361515493 548417002 920310908 854980156 775766886 856890181 14271134 802903854 994122197 722445582 155300958 777099114 872570242 469695266 647699238 77641050 890963014 767432316 762047404 489122354 50115138 900892606 953861509 152376245 134733472 787330942 607761523 863471068 619400987 826092281 987154112 819991687 797314750 751812795 812237440 564996870 158027855 976998539 242143620 653100163 735021326 495140814 751512915 715648210 891977357 220471245 857904105 591180964 44332444 648023914 625235408 790352508 386340937 393599759 811869714 742260627 498420657 34117521 929302731 743849598 911396935 907192018 79047805 630550401 896657411 513480760 928792705 370929373 923913896 908766954 24578284 905104499 967974212 363175611 689105480 641310175 252823075 266895705 516946403 815998769 388592066 706295256 862543128 643151268 771927300 35688025 850009612 700847776 306093334 930044797 951767992 497201029 866854767 207131566 958991051 473230840 950822251 35331568 741800420 256512940 922651866 468505251 698135452 886285350 787984391 645878787 670989236 703247355 89954963 725091952 918864379 32165261 261581232 929469725 439786462 339478206 963148561 823942993 803052614 52821392 382848321 92416673 582521504 285862729 905711100 207119115 202297477 238146477 838822452 614434063 950407125 916258264 327483185 778774514 974261557 124023302 993178556 957259350 39912773 703197092 878458428 888211489 683744007 144748787 298646885 596010269 316279794 986801228 604625950 265944581 267500316 643720544 807358068 418006132 237942499 11565683 336746449 393157022 722446399 763546796 879570960 158612978 461324136 805295616 252073597 145851704 662476310 737041865 827747429 740900552 757504437 701365718 196865367 741599809 745186984 895425778 238474602 247049228 680129800 934092845 13501566 802704602 511654618 369407067 948820579 17013713 375407085 693237142 265474424 849893422 645931555 994256494 199454861 114482851 451173673 834938459 93836104 562306592 778530474 42425880 967629673 705470954 713859803 540174145 720390879 910204464 498510460 309742765 556300020 843707740 888923702 905578361 700138561 406609931 461630144 306282705 707441822 807140098 888540030 671553843 968959126 526743694 643015328 879104776 737302500 377211080 342521425 692386553 45751800 259712399 343603609 267952284 460852337 935611354 997905839 686569669 106893436 124183333 908106044 874181463 479733445 124751106 762730533 897318372 540560466 784429064 293665921 787297658 713138893 148960038 37913981 761583881 365451483 27653585 944404711 485045524 103724574 465560776 48970248 989897835 357089 519334808 298149102 66166716 743172349 955453829 969091317 977046039 756105975 396737884 706882153 586717668 749214774 138452128 636256966 998312528 801557530 331852233 402033574 215764515 999090485 176772837 937511265 649200232 120882661 766346257 806000676 948517771 397188461 253587462 264207710 469014243 737663861 998669434 692294909 748173346 985982552 798490113 693339986 338169615 673937615 799380112 808566098 655052639 161324616 752443884 644934245 177795934 315532035 759439763 366260393 444286536 765648822 446736695 206707995 744582275 452487751 823719731 267378669 36166679 991194001 726981525 923166563 776028595 351566333 840830084 972267411 385244587 365755375 777605232 741654896 723767454 965704551 426340865 990964623 883907508 746030326 489828554 386117214 849864349 78926800 342152887 300473948 848531968 316302483 822954720 670989236 252754023 316620713 282869739 195879432 495985739 855105149 860048889 755517628 712307227 984316215 849560527 966189793 597941080 745698971 918606399 699709551 784643893 664117974 168701232 813506493 848781986 892563775 39907488 972468142 313791044 245689016 558149941 846311041 866408265 680166217 423146502 54936122 12035542 576274186 871970990 370044034 826223742 433608561 948020885 872456718 71592140 48374708 436857186 424177576 257318557 884343707 27903591 548262358 744022210 788110294 801062534 455161255 822109873 561541092 670379714 200649832 782080047 162518241 929474349 998546761 246184516 162091322 650200734 544160304 825246756 690082189 868592282 941503842 247005747 692695978 758835188 789222245 667219805 670989236 888095908 723012333 49732810 788047644 882555094 789705377 165622436 431094453 832219171 570127269 297309062 242304387 661035464 709105419 857546055 815652563 944798039 992828055 417991719 743576860 905546101 998952319 198296207 792772838 838176335 858437496 980333943 583458727 312597055 827345139 985286942 997464142 819544560 701991957 758483401 500735499 283181674 781472915 30636351 880780469 617064899 367591316 401688646 830425529 668315617 886304698 82652620 873820542 551142538 39752231 452574837 87185109 999686703 111584477 752436725 895065174 789164862 503785531 32431568 836284806 892491962 811412807 829741472 315724616 940173918 865880765 926615444 766994681 196977784 784236092 680277316 697123485 937109029 121319587 966590502 606023625 877971789 183596509 18493354 344799707 370436553 591310852 499978415 194696969 289360456 973772860 780308187 396981602 375677656 882197016 659139111 828592136 505796495 428095495 557279329 47165613 698314622 670989236 732990635 941892548 861591370 886792543 890776279 347638705 939497868 970116551 429791027 497551152 975146719 423152620 808936828 858759968 179640863 198118990 149059120 515474463 920740119 931309728 145283899 890815545 112198373 719510840 851800389 702324946 725999733 100387472 890457550 39026855 937309361 997820717 876154527 936077410 830722059 822512238 856630312 452525094 999831027 131412753 724487560 376264881 187212265 936873022 363026679 569979636 654686452 865189092 104185303 498066008 378338163 738749687 956754876 823685779 248539748 325024049 72725349 834358180 683046844 383106505 278400410 792756533 47926741 857200593 782083215 712184603 99243071 860197802 711396041 822952013 221746255 819173575 919892942 304596947 762269871 572109499 141675648 301415863 41961275 372265273 14418302 111181073 304345503 525007203 85084331 132760386 594511477 353017394 97487631 678308367 275690087 445669068 966932874 286027049 445845662 346743677 956398205 900988101 770102470 670226596 743938585 884183781 948892577 748988603 545831973 331990094 918346373 708093984 768924548 793715748 958438521 690839389 355630682 692952089 935916718 902116885 886808058 731120851 189847555 291322943 334954401 698349043 685036719 735549420 702007262 31991533 352160135 138864060 66524712 452900076 966269052 201291451 236197875 724882668 434148629 676591890 771910112 675830172 772013444 967316557 390516499 459135555 786288023 946559653 768208664 898373100 182684857 408481736 882099791 220262876 986001742 574195785 140252935 458886508 8433444 275312987 855775405 755260288 905411523 461134501 595634149 191723306 981406727 769351832 418173366 862245651 929575495 605732665 154615536 311137763 1242946 125164236 783726898 473683022 670989236 369054206 691803628 786634906 152518652 682033975 734488741 313825935 733703568 865032640 425936487 680755298 816310485 670989236 235238301 855265060 800602534 759375911 495444441 237879102 847922813 800626740 422219175 862162063 222165517 910935323 806610930 570006822 62012324 551378470 732344342 267341685 339292543 40159363 395860463 735029357 255290960 495531628 492815240 564274418 969588809 72449645 204964040 831557501 217916364 876471922 377530138 849335845 735345601 860521806 156567758 504514389 582990874 519321683 17514094 526158905 988218884 705681826 918609874 923701198 538602452 432495976 708458847 996090285 152731616 840502211 416710827 429984405 108945552 149156125 502118945 123908449 525606932 423523223 293764100 830737375 289004662 231331782 471464947 364382064 804244431 839607323 351302057 589435261 973125494 812338702 603718475 739092329 944247593 743147072 992163365 937352664 152224957 928922321 625318369 761509418 408221785 859179462 168904774 715608427 250985075 84287466 805596345 595410149 768568758 856007757 329432278 992800185 487560236 656669550 128085818 179182675 717674392 114503441 905988270 7934612 823493201 316975062 181747202 965853339 524500649 707662220 688584622 316970669 539900458 847082757 821673427 680743106 773145039 124157060 139963019 908892128 243457630 146149821 238833769 756476745 749723634 577603604 764728908 751205542 879380465 964690037 944349015 497143908 706347954 921011474 419749995 877520374 629503092 838914349 839368098 811892424 391271232 870013852 113815294 932978994 805158911 79796216 826620808 989673684 85611540 861976456 751846027 7951074 5356733 671384357 280845847 449726386 812697844 841125574 76487861 12938236 666589170 632628155 973863841 595884178 589884737 722883308 744221608 812412856 796014095 237887285 443738808 922258261 660829679 160262653 2494907 56874552 622804229 824838660 943311355 846162548 548986878 387434420 639996488 656682964 670989236 414570751 839909523 299570023 861180890 415100309 671373031 458874528 862691193 925995239 315423172 557357260 954856891 668425287 844024449 458637496 706562568 416501101 381149289 925865243 735351196 380919489 929986258 722204926 673381593 133259939 233839313 329395823 133433314 692661838 117317351 207622555 628285217 996360012 868075589 865337627 918544067 860343101 719578929 296630593 329004156 960042409 963528973 455610036 684745899 130361752 765671842 119091569 959097904 308897982 546300929 856892813 895336210 238776949 80753433 179577111 266167537 765349728 602097055 705389426 579152933 659461119 412646568 203898940 210337022 849677758 671746833 823057934 461416567 848815445 513587746 501016115 287913834 726798857 937188755 333377391 201492811 105333750 82437340 859627409 59277279 312842759 75795168 762911971 789430203 977602653 871234764 100772123 184470194 936404728 564100536 327130805 836388608 846561252 818616988 502631191 940980815 797749014 955659614 226260057 707667121 391806075 102864263 985324701 422321096 885284844 383731985 359463821 953408409 953277711 892231699 798523525 810690602 161843734 733900629 741480218 930920059 729480089 806284171 510617214 181481956 71451650 962294774 43993569 76514990 749104234 894734200 898519715 691318016 972231798 312398981 766492829 692292265 381861994 883612101 76282551 757719645 48700773 178039129 560162724 63685420 776332500 740639375 583560804 758491710 569520272 703917858 124754676 837060032 669443917 333389265 261652627 857985711 653472586 31717033 954478972 789735597 798862065 272758784 700232990 391902483 189186811 999345978 78820675 676990875 202002724 659112018 577167041 546796508 279540242 670989236 927721922 497984727 611169926 917818692 145832168 812220120 673886718 257681765 685914056 181069818 773558385 934389404 931460944 271292223 351917096 727837656 735901062 704048881 932552538 75897937 773489877 925927467 52764664 698599272 485483372 335221758 486783589 99550501 979443803 823606660 994467527 109538419 145009554 51498738 714041296 996185270 611959861 915245389 886653344 652853196 837328354 293207793 271485800 785780181 944737347 669309059 6422443 949524670 70606771 580175892 817403238 143125124 827230548 645259120 115183082 670989236 112786236 112526997 582262312 800399383 733582128 926038317 141210459 789063177 205601920 674430447 989301272 842958288 873556417 76512077 445931337 582223986 597637976 746270387 513429858 777509418 717118901 50300490 499848570 694047536 655713357 886102780 671173472 796416138 508124640 822287381 385630292 559507543 848907640 941526635 124520563 730031276 687059097 869020267 779158323 262132353 953070699 644251672 792240461 819187625 669696438 906597826 264693536 392594728 802751608 227348130 994863806 351918175 358137233 992170623 822374027 750691205 32750350 978557675 892256661 783268553 385620412 218957463 500463629 471825611 292527178 384367056 218520453 216561736 847778632 248737991 984504202 882823715 836982513 660047401 652776891 982441686 319437382 727711648 781174519 530616468 864312029 377580297 156225273 663112274 693459614 454207079 777571304 202998966 308623182 515089684 283773562 886992132 670989236 427814766 444778163 129279725 800246773 176583079 487716905 324349572 875212606 738785079 265408541 482481039 86415135 860399486 872845392 155884677 675078574 480442727 869899964 657791683 804968597 985951127 978517779 17943440 691206561 772615738 698824002 151002263 659850892 673744357 818659290 975327294 627101698 703406410 900521129 849394935 143644856 670989236 865387879 859982509 939116723 96282878 954249091 323005624 960379641 793664289 756244615 960590107 813208176 734725437 277610097 474710840 74834425 518860785 169354738 679973967 648742339 631464465 306389622 275872159 485184438 34136574 955923373 33324325 684464283 517898959 972019139 59002091 530723469 491313013 748845103 928439917 999371661 673771366 239046864 401208030 749076841 470476944 932736860 731692518 631449574 240000961 748124187 748277565 899145334 920875805 191778490 740179682 803591806 101807538 930578750 957597307 710528873 462092553 865250786 754334363 147673351 490122902 755771340 816677651 308546965 89853636 670989236 159107336 515449113 666368930 890148364 939675916 190249673 790935437 836833731 813915544 155569470 775927244 192788139 810036682 285352059 101942347 87276059 453348016 40950573 900355404 752168778 781643166 220121452 694123761 679208376 366530172 588243326 917841765 503204752 328948124 798833397 979546749 754262786 995349037 972081589 789162771 14579041 133666354 959651521 143994243 361585654 992980741 787626708 875549884 978752219 533462724 329821209 815873915 994462826 706364558 826133102 662851230 943877836 786133601 969655299 506393148 595602316 824796496 637977142 526383231 866175660 801282387 706849271 732451513 910464529 514773128 1295353 395738849 915925891 856104988 197089377 527711809 734784379 291677960 882215087 958043229 735720790 788088899 380018361 702610266 601225489 213335871 751629222 569393924 290184038 907651244 941016100 818783698 833244227 107089187 921367084 978687505 33511854 106472396 726493014 754268898 463039313 734508057 876403305 524126064 24872145 363123902 771946238 788541003 458492175 770400487 144846239 785248014 668638338 881801465 174380494 131942865 629501400 940265777 891728346 713388613 694253163 899529716 718149380 165330459 994197442 807970318 902653125 238478660 220549724 906419692 849167548 853998172 973292097 885994377 925005426 810540458 670989236 802003289 155021669 785240653 504337534 469030480 741501478 579342986 428396233 697976186 710652211 998325441 202763392 261556500 358415184 962834819 958966192 304910204 845692544 391397484 233073774 699008259 572670049 23606607 78943169 97921409 951564708 745594730 927038247 896476267 813004449 969982580 577611881 747405275 603490468 38481011 549585777 867308075 971552722 682693139 971868830 959691902 363121335 845189725 739059855 365410506 670989236 768112052 295244302 863155661 742115379 751558007 810446908 367054309 236535574 886678914 735591185 679896683 334999526 693471428 215330680 359368800 855397701 685779908 936650090 386308394 176727506 843245917 838398420 896571797 219290961 464016532 44792622 869253305 885900199 670989236 101953327 581231385 705255448 204171579 83861121 676039919 670989236 550845538 457035096 208447003 638332438 981072070 436495557 143571354 780763425 65275111 904346956 824842650 877814585 488774112 519143783 547276282 834805916 932387409 747402852 870876802 23036394 926202234 701803865 752320942 949623157 467719908 906205312 114973116 963407132 398996604 808840404 768839732 995990012 41301111 918037063 33781752 552798556 420893757 687522741 99316794 122005004 783131351 662634997 844123930 681953795 767628130 724510195 531428207 899173422 157463226 8130815 338640742 761541801 22986072 644526918 787582928 288033414 889320812 582046805 793740392 458298788 802238873 372550885 908874534 945935858 574938291 696178366 966480684 418696921 611960200 763960623 300609197 443379843 878470116 670989236 258358272 323480795 614827093 817775388 785664020 436601719 888525564 946371929 331090066 510746891 693140652 974895452 900991404 717604292 198386978 270374780 346598127 991564239 691416786 174891524 611707779 641388555 824636696 903366369 906836234 775897290 352704426 576961786 88332941 313475786 859217245 931969834 797249819 829351459 221953704 880878846 418657800 507123943 937332212 189909420 484956825 832113830 275285614 767871047 831683729 677481501 666796743 427479147 492803493 502552654 465637491 888144720 277329323 910374332 786943536 882701935 894225665 480087085 17074832 908700435 191443987 656015770 974932376 941239078 743463017 896436645 778532982 996462718 114408043 736631459 784213687 96420360 856243219 872081076 842932764 136565299 528637460 764491242 317058226 497368907 261788923 798934613 692372020 971806385 844017203 123537993 937707645 217340089 756629675 908917298 566997540 527117619 359816784 694667232 435714516 762500846 649615684 341151989 747068334 697207889 824247980 912972731 801579080 370084709 526257070 670989236 920307910 387458618 218280054 79962115 813947889 728022298 167484834 110221826 764649233 150901922 349712130 806800062 609558703 670989236 103013062 301868574 639536911 857663373 901953948 755048617 516965024 58102247 912318333 701200252 604340866 848011958 772833442 24318648 884747669 905071658 572653294 133371610 605708250 864204432 851432640 719626152 636986888 836857140 476168269 809671629 115644356 678929582 214780197 611627523 816705174 819713074 902719668 967677718 288004626 773272518 674915433 690003395 222833524 993994763 768384524 713365665 670989236 938053769 384899461 423199884 48855179 815682144 798511195 730308261 201543516 681697884 577128535 50159869 737058625 828543101 890291280 84795228 871822208 289306751 630425554 837346907 890017293 969512897 614317381 404441726 985138263 339684158 685684417 745718573 211477345 670989236 844589047 11814814 906940895 740654080 710739784 67156748 641658813 744224104 381600470 847184271 776886774 166511684 753162226 131116452 836409403 674155796 74251325 67122531 97946092 780729501 773056209 855103622 462686106 718122312 369463947 757763681 791663174 721897042 870527723 468657088 521629011 906206299 26482391 714696260 311474107 811604440 684918356 351192833 409268428 959195031 332100093 998398864 757165197 725215484 909268077 43515979 921574787 911770615 725581009 928897947 174688633 805662618 929660749 880962158 895429816 950459219 890606671 809439022 847469318 350890715 992143811 892441207 69982112 777096067 959615964 997120852 811629188 843301365 269759909 340623541 224023311 7381054 798916496 716485649 561155284 950678452 266679440 749558214 716934921 811200024 838114963 338929954 441900341 713457659 794542844 268314878 830518140 625501695 670989236 609177354 777794923 268249582 863952851 438919534 784540398 931285077 199610546 472380466 908985936 284879988 636807178 744502962 709957019 357337116 935415229 775054857 192181546 818408250 946220026 950982464 795882297 993187398 893962497 802371777 54103499 996503141 976927335 689956523 42040619 336688785 849743145 54951315 9733802 759683529 170428334 741221575 405714881 875441591 784908578 215519073 621326873 334904589 127475961 48643327 812723631 989066372 962891925 772942724 842122345 230656623 697389036 493901052 962979306 222251564 905097708 208831237 768120399 717353475 298458175 875889967 823071122 64190729 567498399 974996759 799863667 756205007 105467812 670863641 991011109 264592124 995992659 689097880 819064104 446874963 541976348 152730050 874309235 947269924 926297085 433433767 916668024 771099727 790623068 521985064 747200028 497998659 915607549 905105352 697533928 279319396 828855297 345252091 937953160 835304935 483775295 807740964 776819530 269168933 998923515 624392270 319047021 629648285 856090259 974116222 993268730 930825160 51000637 932025363 867729757 947178971 864876719 493183690 684707347 886359983 880496696 674937010 458291123 854624462 910620838 953639023 797105430 164347258 343767373 709859607 300632658 841704486 677528554 318022668 472224569 285441120 222418653 440828817 778196005 384641585 183435439 916747634 123487065 894887117 254886322 355877982 416144044 401799421 861690163 993511846 155767343 691797171 28654091 76647214 676030221 824804472 198862812 386350732 106534869 451930915 898291045 968428653 548891825 683779984 913357820 246139060 422084332 504235448 628649658 448259976 884450130 814922815 593283657 871236265 697216181 681934108 376373956 677719157 431126054 893857130 854784761 941536454 822810073 577710560 577813415 80638962 17815786 123604934 980432345 737059575 849155508 828839370 214876121 515074921 368842180 703638335 626899153 400833383 691014908 944997161 1801099 201100370 165827120 500265248 597307564 611253992 484450342 919766631 731105097 406965283 648891 26251584 802694685 271473238 422785451 401029189 706395648 327879309 345118014 764324409 155555655 843765004 847368707 345599815 550942668 755893369 629309359 167216077 16804354 843111161 926991214 650657041 798502770 506410857 973895641 215553017 59800775 440364024 754296602 128240420 11015918 46119160 723053263 295022111 976689079 411044881 749928126 657272227 922518611 905948255 805115810 943439146 312818550 674357049 893355159 670989236 937325169 785393946 361399971 897195002 454083305 153827397 670533042 881800626 708648347 706368556 764455480 153431699 881342138 113473430 704264849 199535671 196994972 506151242 140042617 516759126 560030342 992572187 777640980 319749899 67478968 836548688 757430380 934005333 964983312 16130751 675893387 831859001 80577394 240420275 38287851 254435668 991050378 904871092 735376736 820679406 881338212 11773897 415914149 266291507 736196163 772723336 258324870 618317785 1661153 189452353 949706929 83297159 661693931 150070486 696390471 366268842 160252538 715172806 935890312 76198092 933468358 139937712 547116949 765745677 831454783 179001926 580686149 436591750 190713873 834636759 986918995 343785015 381032322 755506705 155914972 125859893 339258086 520490226 359468202 58683048 808206413 364134715 751440071 48313678 470030431 270293536 60168246 896745352 711334988 695818869 210883743 319315698 865143524 255728999 493450698 233826749 957679397 980622523 758334540 745377820 182129102 877604639 224940081 331136329 814992419 808346452 139515007 665708738 400732054 299500612 454464773 921838947 530156126 138658805 947191591 50446889 233915532 952592472 612847626 792399671 200644463 707901992 692463279 764102478 145092850 1628345 240374780 220443337 995735916 951323151 807566999 761136339 84011914 776201028 343875806 503456761 116296453 872047738 268778281 786761913 752203479 998404348 780170788 346649230 765659110 659863604 714302951 724841608 292305851 765239711 750483871 11713897 303962645 389299823 872841824 934314858 905680321 5126862 943436321 707135088 86523801 983241749 195043145 780697186 400354226 248617332 615858900 182814432 104189220 944606772 542779595 847934165 49661444 671146935 557419850 695446855 780977846 974945225 3995281 961633017 128126600 99931068 926562950 711854585 39067064 966466289 609296590 185515363 101481682 640565112 24177901 479930069 535267965 270575462 329591109 663656774 291238431 846971244 15163170 218152720 342662348 223432041 579130442 799200309 64955495 950837605 784984216 332431808 993799203 751315041 309118955 955242110 870885946 229102713 858757809 668277882 945440760 159170732 617910312 694260281 363685735 853926910 621087496 916207659 421985422 137021843 774295138 938177430 823060962 982976141 839561192 566203209 227068717 768941572 342764406 122598963 612190519 553070521 999018068 491141847 155679002 485558284 547465690 937008540 503493245 910641783 159960359 776008898 894890353 694839120 757828675 764040950 341347202 516120890 47221510 855111065 169019413 617237800 689481182 973282507 356670468 996225807 986190533 364177411 423521530 224512946 433168957 293911048 560292368 782102063 42550292 36343977 963489202 209719490 364368143 517824058 368163159 680386475 721143642 197531675 941545900 316783022 592793167 244651455 880534109 353959657 121163759 670989236 757491850 737100582 54160065 670989236 426960058 818550382 193364129 725306222 986623277 887330681 545030616 378720609 708239451 670989236 370943384 436632219 677801730 715516085 805631653 954874824 89065118 158621762 578625843 816859587 65805617 593872558 818121133 681975998 724747400 168775985 34517250 866095490 832557744 693800011 834471729 578391591 844246681 997865630 71007347 959393770 759487595 490912788 651905430 676535020 265729823 861578340 811398572 952181543 732141463 510486341 369754858 657591731 216562656 43644297 198006673 195757878 780749749 111345401 825823788 664210650 971072094 324918554 505923109 902110995 157172266 883038747 990637790 962144560 117556596 24906805 839720578 389822066 807539275 578771563 165832684 906323008 25908864 606975507 6140943 52841888 788963275 522360908 68007277 809972978 81910673 920301465 670989236 277718293 15250943 387534672 489154545 767432916 755236362 61745447 292739366 670989236 445449213 187007292 756328877 234917971 40309640 426459680 950598550 790913169 618601494 21235167 835022116 517641844 878077833 999137279 539029458 898986520 910354786 921732373 290804053 895202967 660229007 580101712 529062658 126960978 63934865 713478237 394730719 139861254 384690235 927525298 695159528 888058148 216022773 484136385 967015751 212361096 864801861 258629367 837642984 786673347 463127808 535566851 53572900 972028298 651147303 605805805 250838560 730265311 584608895 726842705 224250526 851164730 221211716 694334055 269015923 506461074 550590008 785938148 721348291 635309260 768541520 980866810 163210232 774101271 713329983 421113052 56929506 26441463 153169520 239760152 791913564 927147443 670989236 542984040 836462761 631674044 438476503 500948155 983950186 879554923 940135155 685057957 202293101 257419834 855443290 676148444 826765160 902852767 827348009 803090294 281068248 440589833 770094701 262385542 766258544 749120272 988217288 937862972 221176758 489325382 533409217 75631433 539403640 58048180 800388426 952395990 731786688 166937108 817808258 160837864 180804977 63237092 942404097 619671291 958385111 139919646 124285633 274554625 911058828 197115309 50393366 432400492 820897130 775313046 144085124 883786629 883131055 823231514 921655119 359006978 619164498 98046642 808738589 835244406 989366621 357247904 858323087 68183060 598353446 754901485 864600193 913647459 891919321 518927417 824077207 491979766 897800767 769962733 892901376 444427396 407731785 520871496 974160222 274053116 457901140 926990249 898166915 951522833 217567210 855225164 832907712 97544798 183066365 752026311 919449165 880932371 545735086 765018870 309213198 445390225 169680899 832547091 740904861 938685869 930084086 776533343 917645686 389504600 913255873 878047172 368824334 21937885 648440103 277408963 250759769 917577209 617362876 457087317 145886168 517408101 412323829 709609485 611282856 355650025 947373156 530850732 637240998 943461314 307448329 871598320 120202139 296011347 644374145 86634812 631026807 606754992 408084726 817328499 680350649 79867756 670989236 16177560 518661256 86140254 822809265 514830727 87299874 914625847 780159309 354875371 562064278 769375597 269119517 476484843 900372410 749562051 326780259 342157960 753474241 622668725 984099529 225795402 671057684 937830680 67536519 482845537 621625462 719625408 966256276 689970124 171460011 742643504 322805427 864859753 806101019 820209153 766096148 362403149 982626216 503117035 163318416 754592476 951757402 960688610 896413889 513630691 491136600 723116904 95624727 676973178 924365005 974812416 35126854 188813493 814873819 854513894 737413947 366570677 670989236 503075011 258112644 332204643 883644990 272258218 998423252 757360160 865472382 273421349 293291127 899523562 777331420 891358156 877368610 982406671 775821029 460915940 872590989 856403897 377293925 201906961 845797151 1805151 706198915 50437455 84218268 768310696 945157621 862978715 843972838 788193468 759140727 394693068 994588414 708034257 850467168 888969226 934772638 906910426 344354487 803187311 772004812 784160643 885128309 827886189 834095020 53201836 672913163 724947810 799614771 211975841 476221799 716318086 775768081 322882894 773820302 132338327 874137898 246938133 165347914 154681364 749771799 728555716 651172567 825568226 400987386 134970196 191916741 687952929 869068720 939515760 877134647 943806575 585127925 15443910 750576673 897027868 826025924 728167979 797864054 220920502 693579992 420325935 750253288 78378246 181488828 818975867 763217122 335938948 692837215 679104868 945280212 800893621 139526762 590556721 805386790 767163850 976158277 432584391 786804846 675333557 693373214 566879044 24655813 17668022 241883403 76178804 887248330 682673020 798985631 928790860 886821439 546549426 494918343 762319531 690655113 489084991 861656833 562627643 145085985 947227301 214655031 425292509 676040783 572660528 467498382 885161665 296663342 788137800 783643451 747859384 818499036 795308248 788543956 75376622 115360768 171562844 20622978 768719949 687039767 179440628 773410497 32004771 916684159 188437734 466457774 487635565 925874653 778207914 322453871 270614004 959882429 953711839 676900946 47170659 143723388 108875672 748353677 909497690 904159287 947938715 482632653 911275447 569012304 883915487 927333442 452004250 851194798 51674207 869490046 866054145 760195911 605781369 960472470 851129866 675729251 885463395 367808070 995970960 44654698 706823123 751678938 172676193 67625414 376036662 843548140 695225408 741609228 262078216 776461456 553969075 480313638 767723338 34052606 732037085 654204281 273464077 701709411 712251330 963589410 596030583 19468885 566037296 308090291 72949616 460035511 534013425 606058679 794548328 83609879 969715922 139518561 764910561 356721686 208593141 651813195 474520575 702568091 37031919 868755765 438208504 650131294 614388144 762039585 441850331 780968277 709178709 486623585 611040262 915838046 817909133 12826242 898022595 549487071 453105247 751038955 417632624 493996156 575967319 604680962 820010245 570472803 178305559 787561755 445202486 591190419 520580007 500597492 304713232 718712291 901001000 110024721 263205391 403238100 931011848 48228549 789648328 656988972 685361363 865699755 746802057 805284163 19961638 157607132 413797487 444294305 497981946 216919255 507132990 716917446 712348271 177951100 457666200 573569418 666538268 944747107 949079816 864661957 964516069 815077605 924250525 977109164 246633887 571833064 15870985 981822328 537075915 26151024 31707068 763852169 540671220 330500093 215019462 504119553 503736445 224079904 718856636 824085681 763689099 104685759 872766137 814763882 109438826 199314312 770537819 947147917 340881935 279436604 554911663 761019675 980592050 154435668 575677883 977554892 132977209 796055565 527359727 271424875 53914892 191376110 980026194 173739092 448560019 692752605 691804569 842978814 932947684 814321259 112266328 930247389 690877154 171281098 874532493 921144325 415305642 822158987 871555606 759927075 945515103 418511006 871732907 721321388 879888507 763255351 887790964 421177700 433127023 883867559 273602540 980386606 843379805 492136371 775420509 159804618 694973623 606561501 973115129 868120813 725472644 607496446 716729515 488048613 455404858 772922191 220704422 808724179 966899588 411653016 285475139 632933760 250019853 779827633 956163589 303186816 339082116 919659766 34985221 88768381 987364063 116050792 941446316 561989373 209151424 300952624 729975646 789335395 947014194 418900472 733098145 841327295 916040144 910359877 968433168 851579808 746390679 849539859 456160066 745141104 371318968 71505805 891820307 710244159 527181958 940605123 786167397 141503567 967036478 864416765 795457828 63760482 829898817 919167608 784262758 677309903 369995159 690150119 77745379 90846447 203605498 439995266 739880838 886686565 787858907 581723840 991013151 2104129 144455752 670989236 210255185 817805757 891633155 980691808 747319897 945989205 603987085 422970268 810483788 796437828 616216508 778382438 659071779 42531650 516893851 828055113 962556436 405141232 446916318 90077168 232301066 406910639 162840391 761054268 438082851 167840863 663673011 283537168 810228239 100871664 199639549 872583182 777938867 60069686 181855628 309068231 8814177 722640041 874192633 511268126 801662115 749603675 791681045 112477295 413010105 873604987 723586073 826758132 139270752 990377403 904777843 262704424 710947659 759625759 364562188 176522514 112959359 956049867 678863314 809608197 450261695 250609285 987487469 505565856 938612001 760762662 856847678 600771272 794697258 41383775 795977622 289291847 104957677 243341160 34311057 718786099 822979668 447680439 636466106 448722299 710868820 138030536 336419276 655432011 31177954 706334594 9793907 863862763 897888957 265028835 343419854 142141170 89573709 744132709 901231150 262379497 23753507 82070935 3787916 299311723 7762479 604814850 694223742 684469163 247997267 939136175 653881035 210544592 670989236 594893989 988810552 415613437 63254189 919060760 922819698 412007290 553939993 852348378 984766613 728344024 125030451 826467140 972073075 875577126 513177767 746585725 957763434 432390834 647756673 906025682 85759518 962706428 463906610 769203613 127065517 309879312 88927987 177026910 475860592 197963026 750871856 978603430 510269014 852238130 778079235 808545141 869215414 822690505 494748967 73374268 752728633 523191594 144651321 740762769 81541503 54668569 218207226 261558445 248610745 709901604 513422764 338694813 987341427 986569415 756474743 868394399 877477253 986025310 340327460 895739056 1032172 484786818 792608490 94332361 383226461 157051633 853530783 929664725 984917390 690782001 892777905 817402078 241944278 226039241 776078953 105893792 974940359 235492526 594828682 938618826 476092063 818799865 959512044 428194562 126128877 771903817 223181655 428348144 638801305 334918879 36808185 765322914 670747626 27329551 250762807 276878285 45841455 631388933 226529842 812619972 791678683 590167698 778056802 975970360 757940860 256815011 904425825 976130635 900929916 409685752 811991786 866404841 415143048 674595873 881619216 749348435 521577754 421628259 657975669 906485113 950461224 70633549 923812202 737985268 708354872 548501506 416931511 861462651 346673834 980721028 418298616 767612541 786089194 866742505 316897983 896082558 275535876 646843550 759439189 999190759 452226646 860378137 443801164 274533497 268331877 921919274 636562933 482666200 670989236 272556931 670989236 859224122 863354866 347185049 73853677 700142913 431546756 800843247 187829334 732301773 789965812 301630522 888187302 964389978 471283935 324779512 527176957 991014466 759005921 141284374 879502403 722921289 956654322 980502553 945743248 365600746 523006527 77047105 573691004 363030372 874864789 942999312 794669830 730028180 763344095 670989236 292943364 880731818 947363133 918752525 179157008 84925785 10452118 682012369 703678461 779490692 872297168 994153830 679841772 70905013 74640850 860966576 721391924 930077438 645244878 875054853 530498271 904441950 734307504 746087269 904957308 18175766 359150498 628852846 860544130 801749785 239480239 103096225 559272715 733484922 680575340 969251612 857731497 459872585 377517901 547588254 330147623 834769390 723550310 778691461 728646943 384910293 729591543 685408781 725318870 624913571 613803037 138895045 597564202 650102236 633821301 258321800 738586105 941303452 765796065 229538015 867475246 748893717 923288413 158242520 131999701 200808074 173521627 253388695 889575251 150144478 341096256 670989236 855991128 337818169 726909391 643088168 750630665 376663306 831963874 467269687 738787042 10546387 843762407 126677054 537804617 845060054 608747326 827065800 52472833 210838631 346469103 619856885 562234772 824979641 887119838 846925763 959929039 119525836 302671617 75997286 41789192 541675255 40047740 868372981 121251282 498702857 803277344 755695072 627247477 227989584 925106106 750520485 163728292 252300247 753695635 926590724 828762834 342327027 317741022 962552202 38715995 687083374 670989236 77718042 731935478 760349837 968383971 948751854 504727063 767771449 797148856 596388439 659876566 121863218 36837884 434886791 306168534 872008979 933099892 162627353 322513697 970471285 210796042 550967050 872905903 97246903 70496795 180286760 991234975 465206678 224314898 773868344 21841440 645444778 239108003 499043029 660698680 6384134 735173850 924803300 870011092 542703923 92588714 760463516 592431585 804158719 912452911 852952137 62651200 561409308 193053453 174175826 379384488 479641418 598133606 771156718 214571009 653531209 202665643 187193867 982216064 160566220 872537763 821369588 789070628 560572341 508178721 737525688 51360462 942416391 706168633 49650257 485017063 215774149 807928710 983647122 883751328 194469150 637309175 618135513 364452389 670989236 186099887 973812471 15610432 299864386 980094943 750210929 631304409 744800030 526695660 954952759 203563631 789567479 911190139 936873564 630425275 873729589 981260534 846126793 181772312 971369826 901324194 970097157 59724062 900953642 264435815 776555713 976710623 166923649 243097373 665459463 947943596 828278527 708499247 838482776 966130461 752924054 934029191 294205806 553274120 829117121 962284120 840712614 987088728 775898052 191482903 808454275 989535061 163518891 146861107 547083388 637078834 206049926 575372407 961228503 419502337 871330283 964728592 253239608 620089958 683067901 816640199 700375751 761227093 893329414 362001819 632879842 895919819 777384049 707976474 156598379 995811416 296119632 214170441 717029655 634725274 283523221 270870412 980241129 224730949 747307632 796633924 246988147 135104584 670989236 700135576 670989236 306070315 423634384 142722211 955426645 476159763 725727667 713417675 702062527 839191041 449910145 306450367 694892846 961271885 802290725 162397133 707765050 689794864 146936558 908029748 880647505 895140371 790770647 289373499 612956212 683204521 576161933 899115555 152250111 814957183 866424931 18495379 850193017 777156590 777529581 660995693 991817504 911905016 670493011 241023671 153384702 356758602 745426000 495180980 754055643 862174864 895756308 69953468 737883738 428052819 774432095 608765194 34819064 897941417 239080510 882017710 654524004 78604596 891966575 626266086 556330428 89916467 636435241 355842752 714427010 695239095 205567064 644948617 722472083 877671929 747392244 371615933 372582052 278012080 895767080 929351950 269048563 616304047 533485129 685960886 886364236 966643162 611823051 785178166 158657163 307781193 659463335 707223388 244162773 152383091 390387874 511878408 840179742 605256507 684952720 274187990 15434832 725927454 829861810 394187788 432058130 990635190 888468980 295046639 35623311 311156822 115856269 768959842 77675340 3311445 256902992 141282970 850153906 843682056 670989236 127856062 364560744 838750475 60143386 944303235 337353667 862870377 766176949 911160683 787508603 728512364 760971058 905448439 863928887 107343569 497383493 124961497 990929001 955172719 151623672 42599849 212071947 607362120 743610399 327280884 93823931 834757220 200838282 840664881 549252275 693091918 718415765 912390059 692900941 348019284 90095941 710996398 138172221 547524173 51687433 496455010 175139894 709401283 813793322 752839701 273121714 453722449 487425846 234997903 777103106 956376100 590098815 950744306 128642904 934830991 458808141 34028773 509496678 776875039 784586457 33511998 884771197 738377780 286672993 144596106 405672207 678504509 89783168 261336081 773248946 706108763 420175866 958754334 813897670 975815713 846734717 762799514 534629645 530304518 723631578 806316930 593461351 389608656 356148678 925332086 535070932 935617581 935346420 856449888 371266906 780990585 41742894 653837089 320230665 687718267 863547975 341910372 786705346 261708202 789471456 56216978 484895397 329816916 93745425 961392809 582984407 816476564 679004445 964971937 713267462 624039059 827546729 448338190 607863877 406282115 692548427 303082958 989839778 266735387 610650894 725468493 635558005 909885115 702214321 956989372 926453276 96133519 139148545 687266831 725312885 658684567 479862877 976383128 572540826 933336499 678295798 608437208 746704568 209427470 829260089 812205508 249420121 954277828 688608141 805286735 622153226 992452574 699344822 621835521 429156185 837344755 713485400 809336064 292806909 551668737 780687270 842576955 114871856 727826923 951073975 850952428 28203222 726153976 632330956 105226665 807466702 921853158 670989236 798600378 739849406 613990963 913232784 623065592 878569492 710853701 3283333 317133979 239631852 876176045 798649254 557614801 311464813 799273350 752837328 745387449 186984584 39225124 74954132 913783500 769719501 773465183 5817854 903487308 67515097 491790729 507469920 258198429 462045288 60037355 939523555 46651514 689043066 701909714 660016572 97470791 557493508 809622860 800912845 145137627 734732240 941224042 252616467 449695296 819240863 520420048 868328891 231823323 906434566 851916601 763540882 44244412 685429102 233985881 252057198 939577541 386537559 854280413 246369712 102279199 237407544 44358212 916300406 316655240 188613131 714310659 989264318 170151395 39421389 672808972 345636157 977417622 464788850 393098397 653731834 495748235 687228058 195888535 612265150 464115188 841477650 351816431 730718829 744116409 82697041 444992922 181931382 904818762 998995604 63482374 451514189 297206194 18278373 257548381 441416730 628244572 975627246 50316404 931649062 503697265 273574895 224023311 873237841 828497425 142577275 970920325 881223038 359239739 895501281 144278654 952497434 781497521 378200501 547571687 37719776 522025283 765547692 238710544 508905514 574410853 784913014 952728082 585158860 340067069 982724811 866457927 348135251 750444900 884733769 644666836 389440472 872618720 559201977 981292900 854310173 603957495 670989236 3712996 912072726 82644100 830361360 793499223 78509954 638011364 409717551 936064540 992015361 652584470 528817592 795855084 601221064 844517141 993672049 511752969 562105778 811188843 943929866 234831163 47904711 624154918 829133835 608231806 694486538 757963747 643655427 620872710 116069818 467296016 485499626 547269176 130469404 860477387 555615121 193619386 786347880 48749627 489528802 86982355 685198423 961175666 552706500 377531583 312438561 550346750 326135475 670989236 423921415 638963494 508458003 562982949 813673531 904513373 320555898 829208825 415053171 395423571 935432473 460517646 782447007 467272145 144758102 285561415 552453473 833966910 868284421 851816990 674095202 192308657 445865441 621310796 741937025 222519274 885273793 648363200 76572005 994854525 478077140 183589237 775424013 809529712 754240928 176431091 544077212 818084506 444048579 415032271 275056012 937366454 847832297 458573335 661490528 293826812 768532018 870496858 843553964 196321174 830699315 318192788 254396475 678998047 89389270 765209535 225336754 537270193 139130328 850872604 179276538 559911916 288149204 6237849 882585419 747408714 233716124 784423890 925235705 100674515 292556308 202553107 662497175 970751422 818483261 439152006 875109272 764618728 382255330 583152219 988041479 571970685 706057229 637796504 924979519 690689542 681285881 162684049 772268379 432041362 25409190 910309542 427181123 520023273 868989653 930574382 18331227 530357351 217248683 92505613 703667860 589245735 845832689 352629724 938079042 584791979 870071340 870976242 120707385 954094278 205864291 397170523 625536327 746661916 766922382 454525758 663160507 786484877 482279254 670989236 59163713 964363876 701852151 351400548 452873811 764104672 706635810 934907551 307827910 375281065 504760853 125661875 46640649 955621800 672699753 863649957 186756515 51287220 529778579 751006932 374426307 232672177 45856150 796302010 834822444 461039293 458711127 145720637 923262002 43286171 283596581 31912639 641406509 919337207 14081036 690362663 952632139 570416080 719083672 960044912 783084936 913255582 404015794 50044739 700553837 718266992 975917824 683879294 206680082 991891280 198837766 739102945 679043739 303436002 813649992 307232752 249913472 872502371 737870339 748263421 353271140 960817659 287215020 870589523 919382242 174090395 431851105 783443361 821997853 326251028 262137822 726179370 34753002 762074585 587244050 961505077 689957495 394210962 812381416 890470662 35888102 677270822 181492009 311550277 250080405 937783574 444493784 104068437 379976108 727335499 377374407 767907661 591594798 749708829 276236806 346237208 946303223 868681212 231354991 202498546 731791586 268629714 635942889 809837082 846618867 832945729 690228314 868875390 974544622 591104684 232997782 230979158 699272848 693165271 301131607 626628951 838938204 228083084 801750752 376206888 572946842 674016436 450506437 635972981 729682049 87556607 813538701 924333056 659523056 732928046 854308793 938321349 394402179 456915072 997328379 582408796 755005577 771617313 912201014 293634504 372395150 382862983 827927586 875039995 188356083 269763312 113588140 110331848 155580422 126176103 848121386 834749205 496435580 523504382 846532151 86971786 736989878 43144817 989588071 698115700 717933150 141714658 720259615 684801919 879370474 970992228 896929182 377437090 73124219 510604832 893085884 459768034 897305966 682437356 279679986 973733647 716500426 719311777 278987635 865175354 306356280 570859247 770406855 132330896 320828478 514585821 52048473 838119197 140591168 495888677 935278230 595109621 351647185 636314743 630152066 842593560 327245139 840572214 670989236 998258319 624755463 776000524 337455843 399888346 58070689 75029796 978996025 564778797 646690626 860587353 47940423 7646715 513621902 787007759 160045978 731845782 735127413 123739928 670989236 565178749 352832190 863549773 777268908 631064612 703847531 799869407 418345565 953778627 203021126 904749685 767184261 894016815 474578527 954981048 850815128 670989236 667325416 107990049 995343349 602430207 881486796 863254497 379436064 812541492 986534594 58942931 329805442 647660088 932819923 640080 618826087 582662728 854799822 870626345 879840880 620788159 128555778 619114253 693086135 503217958 225590589 429251003 733500244 231340350 741514640 688606366 821959941 5337780 78530145 944681456 693336426 520761174 833073004 603679384 80137370 152499827 910374418 746176185 272357250 368222598 973717031 650852504 966955650 558244587 707398517 762246101 780063489 960985395 749202547 892942433 904270272 393867051 247772028 630970784 436901633 904618497 367686782 886956454 884168302 712874156 330720405 624559724 69018683 734191458 846137633 821639013 420696855 239481900 859054455 155550799 497051799 15477350 779484686 59650912 241513313 961732447 946503231 670989236 670352542 933379938 947276202 738830614 948548529 403480205 410588751 662106291 711225510 789259926 955285148 116099340 743686035 332106953 821165525 836032375 882059762 965773481 943385036 504098181 789931581 761184072 75440869 943950295 982933893 353594651 55673537 349146403 835301334 133740020 727149385 787276989 881891064 773680413 175896470 346138541 778501968 759757939 334032573 43750210 655813451 910501443 569662052 830008737 757612492 980051514 882333308 99473887 896629589 712747387 219937514 512925356 324730532 951759802 485732794 784968187 77601648 144349845 520845946 74042385 14332309 673664733 866544330 924899645 751802266 289033923 932715242 286077274 953812238 83918671 184237814 959306627 661041186 863975129 748087704 868810848 311976816 615623002 752566079 205853855 33218797 621485704 990565699 804376780 192420112 804209144 579611933 913139358 769680085 137757940 898570847 386656739 981332599 753967287 159608135 991684228 533606984 924189498 700382389 961361037 425035078 195088768 787614413 236702254 922348575 985783425 349174379 255148802 938763327 578825276 608577086 704179013 940182366 995691258 836140436 974589038 784667651 289635318 790165424 974045765 347022262 169668792 357744162 287173371 748473384 618516022 831858161 670989236 155995573 31397810 980344654 714472193 638169460 298518571 528083358 506952527 587749047 9665283 576539380 845704681 451451473 331919226 442432209 428840061 55321672 853340751 289384582 88125339 795552036 510938262 888009922 129810849 419394334 63533092 856168799 445911048 196393711 364086686 48046182 842205074 516086424 108407219 253396203 882448976 497258331 310335950 710167247 725328005 206335709 964315615 398819007 954775556 691807823 517700839 917788185 178526316 828846629 201792550 766012878 842364779 665325125 191970163 862894330 853432432 891509710 538611772 748818873 44864052 733378687 856520795 327155587 132332862 834291847 430748137 940991106 905872017 365883296 777316190 588977547 839537803 628632849 657696424 820514080 160018076 869799528 463405787 757398053 28647246 925418906 624763502 946784026 900807162 223830482 844126784 849781302 58428141 519525549 118055984 938644810 256146284 751964694 842143311 546685021 801208866 260461832 807539857 873914415 54458845 781988952 658365415 949494971 697104963 722321832 831237608 594306995 484364604 450819537 711827440 762821328 856791403 162815543 198814121 586565543 906145640 670936989 196998495 775329217 580674340 901842561 767663832 701078856 640926706 727582257 954486263 747286259 896958425 574489267 593085151 642079924 625712750 94860095 852610548 828804654 827054412 726672297 32601616 884570596 90059382 8512626 571730065 813619413 773409053 738958559 315398659 274840735 356097612 396532948 4116425 168087550 964445460 781553034 498907699 815108584 777373022 677380532 735706992 673844234 718976835 825941260 730691690 881784974 771931741 356645516 53817149 499188041 393016581 260891592 761665423 898244439 128499360 718736913 878314418 920119757 107015759 254089974 881018721 830683539 719706968 865280390 812068423 508284089 102562523 682374789 377921352 841094162 603458702 91549270 785982354 777009544 205024736 545064226 854321484 977517016 425410009 952587292 51865305 486348835 873879371 829556969 36356626 933252168 632406897 870848912 422260672 396642013 895902856 295300993 989128660 704698036 285817600 670989236 523118248 503862721 993394958 532469272 491851718 593099220 893986610 206869985 869805616 357808126 652687235 569696586 720784049 30096612 978542502 884999600 764647236 76235541 974210804 259912015 247914774 121011759 776052323 449688639 639562289 776427531 600511452 389306477 458268189 38037565 344945956 958584633 936758188 497991976 717086672 791906254 783787563 766589215 228072553 733509345 933350503 950904100 821683338 825895491 926095706 786481030 842060940 965163741 899828049 526105601 539935165 715828210 104550065 969938866 856394965 280171547 315118991 935124788 182073909 769648773 708285515 779474159 803296949 470580054 670989236 369219528 23181448 90181412 779200253 424779593 394713593 567402909 807989929 346766662 670989236 820720955 868126309 717458633 289444552 902120173 768801056 270674414 713906004 299241938 124603486 804837719 707021880 209041444 972753271 687701341 56992373 674043818 445416173 903278 964380336 888530278 300966613 530700777 342226367 211558297 774657401 637129715 713265711 141473632 731623137 226361741 952519332 557389643 201787634 577871684 861350477 633838666 905215635 886220651 537412615 101282882 637786717 207275255 270694493 920980727 349937622 785282250 939007616 28804266 31341517 656532639 767973407 509334976 880397887 653819988 880882297 102003548 322370768 776310287 812907457 747599591 537481391 708153106 421202775 46467665 487383359 326436172 535561863 220623544 693941209 114679925 762616855 599722303 6965568 852784317 486164537 317092340 486128853 797453611 767667404 169739826 795819701 109137414 965963538 549348944 556721652 687271451 461152773 717604665 319524674 996973234 897209431 423103248 240518410 849370303 302315656 668770012 800273017 976129135 96959133 670989236 901894002 938191547 165361680 847124359 407519614 91698110 761771264 856732147 632563266 853150091 247240321 920166662 728948914 460490905 619684681 815656635 953693632 942927085 693238829 980262205 280405885 449570771 858135328 850323455 898973454 890610212 17502995 667541869 497479184 849894404 223114327 993241146 642304328 753376303 851556508 544437539 160730815 156393113 783468624 919080760 128182377 477005158 829013387 444669056 579992776 968374274 831189893 161583021 990152775 46302570 205839382 535568850 487096085 173279024 786052033 670989236 805764937 623639268 982276758 762076970 934072523 114537145 146999490 582817934 736871297 34791242 79803144 975001591 769715084 801028908 861476069 493876832 195633130 853309617 190557659 863647984 520149764 279337235 388915968 106045553 737999604 769739834 818317397 696843732 901193673 94749915 344696645 319628909 701449913 228822117 696464007 889161453 956371900 388199162 700038761 187156314 571827369 817616483 889680749 913086462 584470186 27658020 912033880 725887003 488878288 670989236 706430880 453708014 894880376 24870712 382860063 406461225 713311767 777450768 876179821 209974967 813557601 966044384 997625871 772953173 803006113 318447279 101792789 854998245 927238900 802365170 836477164 670989236 170766962 838464100 9200583 474512154 68074042 121776547 533380977 771203728 970815602 916044667 362533388 833022194 371021691 836992658 427037127 890398986 777036085 78208927 712903178 831916757 851324216 906441292 838895479 491678192 471797079 839826412 927837105 393071198 692922261 988607442 281932975 406868484 870934740 534462249 683914035 762808161 622937225 94130325 148448564 716722751 817663701 892399648 393337550 797202678 597038444 673667702 807831699 877998740 970413531 19634864 937452284 122186035 1364538 343121628 772024347 580510657 742531575 130429328 370583780 166055507 726882443 445682230 750416943 635923625 296367733 248900433 256011753 870583309 866384642 775103466 317720641 391912227 607191776 684600644 985193323 443442695 860140631 854991531 791975371 756929997 858036494 712438607 216466686 878878960 973963460 322266047 348903474 537805719 913201945 937025494 372578489 18573161 346646740 730259517 658961456 773918057 495822905 357031598 798878852 886160662 610094220 859365592 304018173 30960605 314009641 419476795 234017265 172004819 881217691 416797047 427370562 825891550 943190840 610329405 275333804 489380914 716445505 919942287 320383520 859166717 958772066 950632135 456474177 713010144 197318158 749096093 696630492 865528104 520145356 763380054 162383006 698592701 943013596 856466940 113724161 949586216 961771460 995242431 848497645 704106958 889434556 857680632 717407605 250915674 715090923 691913216 145293342 728768472 559237720 969573478 638245095 291790681 397874829 266354478 57863740 507799472 459332156 842142373 792451577 994047978 947848589 644959862 880745341 703080239 103102190 692823105 937670226 734891773 771922919 478846965 912662040 392111274 173410766 557824992 769283705 898761934 960862355 721135622 869517035 881712932 892823808 76392807 392560662 985478175 785859258 128327503 702767914 5739453 716013713 952423438 918618441 304201338 634752192 188054603 420877506 148802024 441477510 686216433 621466012 929075667 918060828 549818124 583660747 50372543 761850639 987651435 529622105 178300411 721719343 844750076 954620913 254179115 999083762 822822387 841032988 764556030 847775796 724496849 568863910 886751182 471373014 612225001 854579560 512239400 424954339 707344123 954672884 773416784 962329671 659225287 84535958 334624430 981836152 305377780 687879755 629753 984436527 134408612 670989236 793787057 989882404 842061345 345726335 813939188 916247788 918067065 711005444 916333733 999507651 317786244 462099339 636242991 651801793 869373447 96075104 440141941 860808374 670989236 934747497 677770073 347122743 676357381 947054681 753674080 527599046 565760518 71077720 348266168 29074092 95780690 815133498 991587584 699401256 590266119 695224879 801888903 847398860 910634569 62420677 768500692 408842735 499863951 761226741 592083687 530047144 153947405 381513760 758948201 80812165 709631618 559176697 848322897 49219881 184323457 291478082 50531319 545009976 868422558 226391011 551102624 210051027 880664067 725381072 893438227 229521766 121881980 772150641 953724907 330732619 610091225 748042208 772772059 812171790 272866427 802520828 681358404 54898232 465811340 756195153 781722973 993991032 17182834 184738674 854406652 936220342 624832295 240418633 810499688 807560677 914839131 125048288 861026496 15263155 370819993 399784138 956350647 386024537 219878945 333654459 855272248 57325431 304450483 187913155 936842244 826393987 694498305 182305952 960561348 148935214 969728283 635754978 162193045 409749526 330117481 503681228 871052081 76994918 201382054 285399681 822843742 492345227 799400931 701645345 856368 675345909 757788684 308879121 24071832 742292235 321773960 240892064 296076649 970238465 723305806 741790365 806851777 781019173 966284790 737134404 117682117 546984323 499904188 872793883 429055459 723302958 825432923 679374320 307752348 328760630 59215095 148522952 8302840 706437173 115866045 197312238 874871360 945368568 261744050 263861040 471465628 880974327 521443704 580066828 69852612 557842198 326747310 460873054 546728347 457023788 852182008 524983475 670989236 742148048 473274733 868266929 870828127 513843681 813400664 996003411 238602754 845131234 96895049 304384802 567991344 819327581 947681232 350239288 18729935 766423229 816433305 671882164 949119917 959589386 949117218 609221977 773777368 914068108 851935462 62198123 931306865 990330273 951552333 641008016 198027208 836612738 812343696 222778842 683151670 227457067 785418425 714136461 644096209 606571256 270451311 243292074 478436174 207655619 175923318 159240973 853624973 483189906 844813411 77441012 44790223 379148768 647776945 866315323 106419062 819073887 905785518 91420552 149599922 810857329 820584394 943463484 705838242 730727859 844179779 843310024 465005965 456037604 660708445 100233845 621629578 321244462 58886362 798491052 552588337 988112464 858486154 93452757 422818541 872562860 500859690 749761851 214748099 670989236 420981371 657024090 657182401 598224264 125027053 201194292 446042507 479073619 324006381 766935724 340850229 836612945 859125241 810457336 740561530 487858244 646620756 114478752 953131101 300469746 268624988 755753660 841664269 203958754 290076690 893405453 893821344 216852593 959924152 64229123 390976739 90430479 717329917 152987791 710042717 340172333 973148242 721959432 260391044 233304637 622457452 785915706 464555767 949805049 964316325 731253739 426838379 75929976 330300146 783701316 633930281 331036098 526679511 709394210 503014302 677827175 812815779 383211266 242537277 371871722 878691240 758598363 794256365 304460311 29813122 79500599 989860682 147317261 615284197 744594038 92093683 689255895 37420345 178772583 676917790 726582785 233102691 977049030 530582061 742319256 816941762 994413281 788696237 670989236 876410899 137159203 903064263 967850478 913526092 426186579 987904460 881683536 665132686 783461038 307459353 390349403 751470003 900034582 946691476 995402746 562786263 723935895 748093107 302751475 986106437 387622688 7026819 779907858 832253512 743234422 357503809 133938522 670989236 768863511 557597132 733207547 904695906 462082152 45034115 541417044 11175939 880678869 169304806 49157234 639827506 239187241 673965633 381414258 530613293 403972483 296108165 448862610 933602117 543633130 609371225 224245683 616760310 599254685 675973657 149249942 698460302 298873002 620634526 84053896 208427770 379640668 115092971 839805993 194353859 783579782 534950440 393102855 530608919 561909434 734332877 766306692 92947741 857653674 453978615 910422673 943508535 499136963 286890895 805044068 905022406 991071091 866510310 760494428 683449842 335963894 570135238 431019264 570078233 64890348 620939982 677898362 832211215 387504298 471997572 903549166 196449918 148868793 831173562 373337876 187080423 791583236 899727290 249758622 26064341 133286414 718186061 792494569 842981012 671087093 965573904 883191071 966331805 973302940 241150147 688827286 963933125 521115097 231019853 33794744 785085125 770366021 516335569 841425032 723716764 305079182 911409561 872065143 595546745 27317008 946749462 527964033 944527196 662757345 899718253 410030170 303662571 769189647 699388049 719992139 131377490 670989236 836482326 725506321 954190739 500182457 163432287 689102168 764786126 491416516 982710179 444834274 510995480 824404719 214389768 342185151 334367129 183910925 956523770 97802072 454480431 452115490 206203185 825378023 830862636 112175372 780553154 933677000 879159827 129143471 675363286 575268591 407768912 982266515 880559250 844771106 462269631 863954870 57151710 78258353 241770333 670989236 525432089 735209825 174993565 859685985 918501496 273725878 679019019 136570919 613937435 918726213 755906432 335816166 300216983 200513780 988416841 247180427 900420933 872495041 691375545 691607133 251752757 900767992 411364949 616764994 940074291 988870108 689182942 693462158 866651509 106990949 356924556 9141979 281042457 488174274 491189097 556898244 77064014 906243763 671838406 695114445 168078945 146749731 8418678 331464566 970860207 704829277 792712733 202453855 824937628 801439136 991341831 820027908 762980922 698115155 823884080 401471813 775929428 918889520 704108783 884736283 105897646 556157455 677256427 383865093 922448215 240489711 916447718 99540405 424438539 186776047 841280221 820481236 925600387 982747806 574195075 448659199 221423620 935717557 330817385 443829868 711232634 922139903 775989947 430576370 982326561 917174731 855879198 839627634 289334284 972589119 611386122 476047927 705530386 204859385 652008635 259992157 703924929 181054831 195524103 731581010 348346351 931374585 221294556 708794977 502173932 516341122 315389730 776580258 780056988 670989236 326548821 363656565 729205151 216118249 780127043 655940700 12378947 245689796 290120151 953265860 241291164 975146905 692307274 313990516 787567305 718117299 133237140 824498955 717928361 691980423 202969054 514055930 923467897 962466285 901499552 593802434 906290184 642872757 395276221 789960853 574658451 836632146 828697735 791006587 800951236 741017162 537186106 683991436 46339608 30883036 794023216 236225060 299049357 839020299 458217883 573653499 883155057 377169595 647412530 745029620 824738440 973826169 842828826 590552530 610294386 54453025 801907941 690943496 984693785 264017402 539669692 982304755 939466888 718396974 809399433 304929730 314788414 928911792 778507530 11012579 695010421 757280202 862854556 269894001 497454542 707310259 762947217 808737768 957135751 482269582 745822268 86245577 625561673 967077006 715261529 195933192 121592799 807056773 885291190 255638958 894841359 644085025 692272150 820009458 979580610 719476539 425333130 305501381 893754181 339640840 262440894 542780127 279313252 512749458 504581224 933989748 958223051 961389779 250868837 577672459 799087177 785347121 212158377 462136005 439399320 726860863 583398952 387814459 532117942 510070546 185387501 696691050 90886956 895533852 8428462 670989236 183587996 570681191 893890146 981499838 235191099 688373827 780990099 729962051 712012894 954633378 765613719 991904424 680163122 418103273 846555184 584941138 788867670 430034529 685811742 957979584 605136836 698205451 784929946 444378301 360697826 918082817 46677942 435339108 765397256 865972081 294458332 563756323 499085991 795761769 891770244 792477857 567066623 509963546 828482758 903030079 652461126 487341164 588039200 913377718 736916693 991137568 977167564 564441699 951859782 480842519 110360761 813301170 162817247 983031522 956762008 195082801 173678609 709892226 34721879 897746276 336780839 807343494 871020445 426210829 687970746 280440575 839278569 862588288 749710271 809449776 149927614 535695270 738014567 427790516 239255616 601938421 159407046 901326994 605887709 99044262 437299064 850280337 582449563 2843587 874206597 712030552 944212321 399202893 89999279 577290678 699511930 985822625 883802743 490388236 733743810 3741959 900582159 834620921 416771131 752804657 523500127 990204764 460053887 184372357 287234668 384834633 273780070 384668327 411887601 505464072 987143601 756304291 201076282 654091574 539837786 823971479 949700677 550914826 502198529 747349995 969824979 308377585 735287662 718275157 713390007 999491636 553848218 911865587 719855402 447642230 88398627 852409327 723093818 616713302 836985909 222866287 564241090 934226122 965907250 300604056 957201095 819908569 397886399 700242585 326293298 775857089 239288792 988892567 677846655 197476629 38207090 346037353 679757101 77091361 255397362 822208208 207564843 403778815 270383235 848947333 144816039 616510234 571464751 158128404 855350780 886147543 978683581 606210529 832866037 811638588 559436875 973667516 888928745 964953686 876701785 239725430 847203234 770724326 125946334 484177239 742970317 254600070 944508910 915884718 577010728 95674219 319202916 886481708 983986077 921242341 894878990 232944034 763025740 903164710 264375581 771508399 917880272 713694228 238164960 203048023 429990355 784121424 499368043 590655803 937300822 273185451 69175008 375471081 711731625 12406928 658649241 206075445 305561493 555959644 638691496 945460153 12644453 693629893 207907650 721940335 970961618 868354599 298090613 712468018 255129704 761427664 858734513 244336938 752164071 447773367 417487233 956873478 182687709 449221029 555463595 759735948 765446678 481799424 828133494 693137800 871647325 803262210 314396545 988203529 786846689 271571312 328885275 188582589 791076826 991274867 763792371 492171048 464242141 358205500 998924194 576419238 172702436 827947246 438581613 306016369 774848815 958817727 485321404 334980717 450507450 999947134 631553189 90961844 740966057 962836421 46690452 997138520 582948926 632710956 442191035 721840041 892086491 111724450 670989236 44583069 849342469 17021894 424750802 48424084 780541237 782244084 850245839 968747348 671868024 669062093 273562820 704338030 493897455 919801491 843571833 768715617 597230466 895170318 169691574 595679947 584965593 973488923 928634992 632338109 12774872 777404438 250058321 749886108 162244168 610204475 110418166 897802992 893198411 980080225 651819532 685875719 822071124 869408294 802594685 464160041 113087718 878889898 526992063 232370768 417043539 70732884 624404500 942694189 655090015 200988222 3628962 833327450 292866734 587213017 462655703 442634113 857616526 369552902 790082916 760860527 133683190 991974472 309899315 258564031 885122238 703689196 319871224 858217038 285274489 140539618 502989230 717594448 877502974 273735334 838827444 854198631 881690515 4923437 435308222 997459755 104313664 767080373 831434111 121801696 273179512 703725591 442917164 861000406 808757981 810516685 39619543 717562330 582705256 679226661 808876927 240706281 923253266 513061150 641368632 504746937 932673974 867605298 682013622 18608688 41176167 921051523 244403106 409625100 670989236 716736523 670989236 854470265 454168934 982503894 777616594 510549597 834464731 423196362 988210615 606650769 799792733 538317996 390034414 418414871 369491037 978284925 894696266 319646429 321667560 827747796 712988103 865901665 837480903 792370667 792359100 981926009 838996677 15713433 331098209 140136854 982229642 989459665 825526225 940417932 515492587 808248023 642896701 203345131 157668823 570667780 314967514 1718218 765100991 628466805 797250922 34951022 951098175 710248201 259438862 950586263 756624806 573289555 880759573 691799823 356072265 719788708 177174566 280248882 774300946 83836280 502670331 470159327 777649821 289323988 564837504 49300193 912327218 687743346 982404695 704678916 394725142 476417357 731027385 191027956 262003856 681835741 660765347 615888814 407248193 784041858 739852539 757271655 359829366 516203726 317277968 619280844 453279074 999733184 873817745 358009876 727951876 821574923 530464602 486955401 463330019 343440553 132362230 362662764 679195939 921941581 912761752 533073888 719549315 93616189 401886124 706419771 881449081 531427935 787431398 914129692 425987120 759168940 662845004 176248902 947724075 812001654 298346033 181631320 764411089 338743847 657510888 135227736 861529196 444990225 862412192 949462310 592381078 531812757 982920363 953218655 12368207 912054438 658153079 541967539 865033760 26658239 919612984 946221408 751289092 661429622 764239840 787831184 690535995 206065794 995664445 763670521 965105590 979440858 854583039 28390785 891485652 898757686 285552352 308821836 861448766 495120527 188072015 825289337 385950291 595022583 739037107 841462916 520971703 6624853 275114148 947550221 317710840 393532617 982329412 920956240 930327513 641603566 518957306 577235570 882860501 680213257 738032504 958401522 37030720 531340579 226719659 417572341 709566307 245225611 788667586 997531189 704892701 300020663 356164503 995822013 604873865 931438681 257530025 737963665 60487509 582338460 925023984 842420402 998793771 701220663 479286208 774686019 802142515 49516160 17951 899127147 696580682 725541375 50545324 676344112 92551842 927686338 460656302 769812446 174896378 212095410 987971364 158326667 972252172 81035994 989199445 170253683 377272106 4167462 621715081 730537942 913892513 437249449 729523897 232113099 566512934 772998901 978509745 486510811 144651868 773895276 656603080 412757374 849281363 729976849 736227573 522037559 854657005 17992014 241113883 107679390 433999622 130918983 953403432 473477247 985074423 771157608 831964657 23272479 811375202 117491590 826698479 930636308 615817865 31537798 854902581 785221115 159439235 235617924 91917552 60274682 532304920 201964776 943250012 509279871 250746383 972724912 786300735 360816987 422347264 814777338 169390839 693481566 859989455 222576575 883402120 124807800 867053926 199536066 665328620 478252780 742462150 930237364 196500245 81685953 124666345 994189040 878655167 599803204 898572221 772805520 465283989 283216508 736147557 20268627 627888295 436097752 637177567 32670009 603972527 514771050 969910328 928401345 642014897 146342610 733919717 688481097 439378024 11826453 718066150 898582250 758227872 476110566 931824103 792406475 69717404 938101332 167776944 907992863 829968659 670989236 548329337 477349653 752583570 823665618 920394694 574222065 900603788 713122163 364804858 192685791 785055838 875226472 777482019 110623392 951168972 719652676 744342297 956909653 468971377 725016952 763584856 236199871 392277976 207688109 281256324 849131343 765578070 400460247 281294086 408379652 650741996 363476462 234568111 365274812 827447455 727933920 320044729 940923673 844405427 521332728 31356962 631795446 423185366 313355516 555181240 958261497 247878735 338906308 474508930 993050157 579673082 303032810 687662570 871263144 830641512 115472695 46249962 838136681 554386127 528263586 234266901 867381319 751656095 670989236 514655592 849342943 241902731 991225681 291274495 579431416 830211694 704557089 374214163 679196332 730239303 301724589 956393211 882791384 718672387 269254987 122229795 285854690 690726166 769080566 858992433 454200364 644249924 718819053 449636025 974369654 773550303 776106228 596183250 150101153 915780932 242618429 703813755 591904331 371731946 905887400 766982831 905134658 524506814 806762065 898458441 800403896 684345986 754785984 724432322 892553203 879522037 14527023 163460733 670989236 383813397 902234796 969040190 832935010 381269414 907948903 779709358 270753356 167237409 826025753 879404896 942826359 844520006 711887058 834366293 8724681 48002582 70216969 89242275 423565124 911552243 733294544 289335701 586200623 377729593 452464590 147370050 114865409 562361208 542671401 899594838 885321246 654522437 897326695 277620768 692766931 11943054 861971965 292752374 212418622 603322344 275176439 226347876 954687007 599346129 753326930 843562252 278617125 446697773 617254246 486822461 914253786 745617490 900609949 48070641 159064537 762333024 411059737 902245484 787604615 390580349 515935002 2017123 571102402 722923445 854926129 904000596 275248975 57647837 670989236 776590393 920763540 693168695 784497084 979795883 712674325 37177453 968080640 646062325 13746740 63624044 825748391 843005853 175998395 112567788 139504117 436764847 709263721 853320546 213961013 982499647 521851680 815511826 735350328 850379251 817556389 670989236 651727861 275301218 657758088 759785054 777312327 900568134 444472708 856923517 336288019 65187318 856144090 781466818 878582638 670989236 300214706 877228302 666955217 895837794 818598352 419267483 998977126 942918524 735862845 276646787 769239524 163353132 771777935 30214109 629401426 764428142 911698630 696534523 534418919 736961751 682461544 887352240 650949923 888236317 568050460 495635645 36604471 357717450 249775886 59431757 529521325 756153673 696872042 891406066 888444825 625537928 396342359 686648914 630860822 180797561 866913310 772649040 447341406 407658061 847818255 702831498 693769444 268914225 800052145 267133127 707897971 37522433 784295499 21257806 887209828 701832177 703074700 990213055 625892953 372840461 804431854 776328864 722013395 598682805 574489537 992929020 428357746 923683825 244488391 359514336 468992250 800382152 143162760 141393043 198111881 436014905 943406704 891475261 2926959 660247142 566557996 7625800 907320981 769211564 606157529 447548731 735808409 804260294 98729008 53378066 929740876 215901043 829059768 932566034 952444261 782236307 810981408 237525516 703186729 981018297 787562357 987577467 782159633 510562072 670241233 558333826 824078697 644908305 768611465 909808860 765856747 263232234 708937048 686234942 908754927 894085028 149204152 718651439 605492145 945487334 810196208 294051408 773995456 824334439 770055089 999375928 744376607 91022487 653286050 469691014 581746105 781334660 335210039 210822738 800278417 286654696 343809537 100300206 756942853 716834741 748052331 832463403 754571355 823628412 945723863 929697833 525009660 524271420 685125452 665863963 752637559 809709241 670989236 469033464 623308033 645382311 457030419 305066794 25199354 863090412 250494183 906928899 715942448 824021230 923064398 465147700 878508648 319108762 20697904 811206735 674683209 224771211 806168588 670989236 731673190 879680211 730505827 485404799 103239385 928587122 592955907 836445897 16413981 340003103 791623472 777797203 698403315 650108491 289824323 205955802 859405187 88715937 562133452 762375650 921010264 867454218 646808825 953908006 602738791 554288606 742048295 797827605 218335654 959353825 790109287 319118128 824945995 742274798 274276645 788480643 907530199 286613383 163094374 920721061 749248654 158095783 984668209 977255081 980300794 635686086 194849890 999755255 975113622 849841600 715411165 262110507 782279834 866751110 679170321 831563836 859408307 904994657 642095831 48995654 6118853 891239184 194659946 332253056 731002365 62290488 891092763 675099600 911507334 481772652 78997312 92947204 698016794 817571876 340769107 945999919 775695656 903635999 714224881 480596085 439166575 79896476 771636981 359559075 551367695 964302384 238617841 375149846 996526495 777792306 308629757 836427059 967246365 211618160 900927692 671492317 804307775 867882257 831879295 206318286 612815263 441574865 707257827 779765255 670989236 773931490 408377909 455932719 966231816 782399245 127596785 989633327 458878038 429695468 715017522 201436774 17927575 181161851 805304902 219886565 317841074 550707046 907671246 797330259 233197029 859026823 829606096 141929620 363250224 36989080 856185017 710246393 153126965 187507502 62542552 792112105 913700045 979225221 646185419 878496030 38156742 855163231 984124502 539200425 802895402 873527213 828680035 144529192 762747128 500326063 487226427 162708223 903851186 968059034 837345534 107229795 845519676 706555212 953025450 840964577 647210228 919933672 650432167 438587124 760961411 964782141 268233855 903444582 517906000 721038129 643887637 775534749 826971261 428193335 731809868 920006780 430390499 709092185 854685921 880376915 378211439 905227333 896134767 82313557 576775634 916132654 680419768 84322475 733073199 910268639 491212882 796988872 751742314 134265032 247650371 257573742 85033903 22403684 290394087 858001833 803644357 877084445 613258152 68829250 891466080 167958468 689329369 726908851 947516015 356457805 751086940 603382711 670989236 793366333 761751420 651942518 79242901 871371354 68750823 482220781 162190717 635199788 718525817 508573398 777213065 925811829 670989236 722846447 786092145 864446842 4597639 764832032 531795594 974673328 942269722 729843684 933751290 44336315 689759335 398084710 770332800 750186597 568162518 295422091 175759360 734725538 693378834 149781191 717817091 506911963 145560707 235056128 793791111 911938857 239941679 134344775 319091274 626043919 127824333 682805446 939972609 611428485 685352509 509110416 708717775 189516457 422175801 894474375 194791904 543773310 21295346 170968786 691849011 439029239 346495423 59429331 818688710 697022468 158577188 716506652 919222011 842134461 943186527 734543933 932293117 770751306 847042212 888228201 104426506 349069518 911270268 442726353 141739071 670989236 968758374 670191491 466700358 901663321 863151988 367275867 267416921 333764934 965034110 388035147 769208035 742636737 403820694 533996022 667858821 968538855 18966396 745652414 680940371 2603863 36536309 925612725 625362440 123739221 275207740 909121324 335359906 708161530 673710442 960455110 704281262 724904074 244328901 640075015 933695898 470612320 163002393 748148225 759500482 175607174 902332166 91996056 521187760 919435387 216028793 771588987 843072527 611192284 202606644 515223950 818990605 637129236 567330940 466931649 716314758 135784344 604997147 851168571 563051590 96741915 796048068 939145813 85164020 318303266 673638083 890747375 118786237 876053859 576570774 859483317 360567337 505699462 765962712 233474347 646505852 839288738 586015537 711603948 731307198 454204004 712209482 437790321 819091392 287621723 921369243 670989236 826178629 678185415 659567981 823847611 206933345 288309721 443734513 683709144 924134298 129154182 668495279 316532507 935599891 919655024 565297118 694346216 679009799 231367020 830975709 6770055 857831559 722585522 655829267 354349647 908207311 579415728 270041583 884699219 524894763 266748415 896465998 695336112 510095908 925455450 975386599 858048777 148324844 216871865 789470789 4691786 797816752 655300130 282430054 759816034 989517238 725968305 535329187 462974202 299523698 691584530 686961945 446330329 30843866 653171984 449972023 817755492 81824507 761544032 973159953 806127078 855341957 750848608 881320288 900014567 905443056 804862588 881657148 763594946 597259939 99114650 875395182 511046709 956702729 537419212 848774523 777596066 320177319 246523661 768003785 414965413 881117122 569638176 503574524 840825451 283551743 531450967 527637429 55087957 694911326 219693881 85901918 364230766 381022518 293962064 287304530 343938909 546682439 558578155 741151117 608339318 946716576 860806353 223834699 741154653 134575355 888431432 99071214 103941745 75376608 119353544 649382543 627511265 878331760 875783712 662753610 866928602 9841081 443747730 624685860 975067038 430868218 442379994 503403018 961125413 50457675 285675785 155613657 917750412 701127920 575995280 4298296 651110731 889725507 884727249 976857169 543436344 884138095 694614436 506695823 171028215 858432054 738157229 20928672 808143590 69706659 887506706 845006777 961745794 361550762 468563791 173296842 253589934 829930799 428656915 955796087 906921052 638602059 793799650 699791972 627538551 275466466 497915308 933174912 613561473 716335142 434346950 401114107 782391520 785591601 673895685 861650857 174543402 345776109 308458055 538477780 247002612 963039128 293072851 621050514 954276485 134332575 395225126 150617021 975366278 695915753 952251976 631677261 124375616 761475199 489765244 839804433 842091801 25408902 760869306 992212248 707233036 609863952 905434943 139691977 970197784 957159017 913231634 572069162 689731683 248462069 588978556 397510975 495714200 152724013 128062844 319560065 777316373 803648332 877706427 400950252 520238714 508040913 630217597 89150177 208429935 873267957 918108594 800269156 186604410 683061301 924651776 401567544 670989236 119601352 704070402 981028717 949097834 582678365 923736424 735657444 977083615 58948733 866129662 853133841 190115003 780568281 510798614 691622605 807705993 962095498 934824300 52602133 399232228 655876193 961633505 488557739 937326518 646208482 964995623 117990687 967429431 703521419 80641087 199483816 462630972 302012785 828738674 688048871 946278965 138349019 670989236 695471890 92934484 738564076 246746990 963526595 403300767 443466966 996062964 309050187 764062930 722864967 515796832 865210201 837200714 740658872 916807702 73413315 809978393 827794220 829467040 984670403 583526908 762455497 710798300 768767984 953944802 893286575 215618793 907241755 663956255 937199607 858359909 112389294 582727763 642636995 427016524 440833442 110678407 155770501 69727183 893155358 723916568 670989236 841262821 692989479 738009146 92767503 217538164 795080753 296024995 49115700 520182299 971440314 845197659 688731980 683826337 841886865 357341960 716409237 702970464 472385012 603666375 854090330 9617456 166669218 203868723 928208169 328209532 468997990 155516893 709104267 822959 422693643 734387917 304807375 927118970 53489664 715127162 366263189 748081777 327556227 658018462 598122589 670989236 952728048 818662907 668376198 903643011 731483598 444609294 127318918 451934414 756462739 14085752 458253520 942114848 678064250 960236912 863762422 488671359 172151731 193545038 791070597 595946040 175509729 466989427 723114268 386462288 425762487 856261577 682270580 780575872 316808633 496141621 391116596 44135325 996355704 670989236 390859520 538138579 248089858 620841877 403077170 917904285 129138381 450486950 952461420 767455107 554253313 110864159 509597716 820390873 670989236 758956374 80893381 670989236 317145561 908196315 307124902 639160553 761552401 4479471 144548294 456285069 830296659 842622616 798168973 89312721 71434802 566952807 989559243 483400563 27754392 552173127 904776521 844391543 427445753 671090808 747415085 207861025 16566142 553824817 950752075 35333767 310675304 524264559 402611711 235993145 460685478 719715181 452217451 161058755 709034811 764456522 444314502 403518204 759540886 160224236 764245178 567605478 883512127 37155604 362107654 271007230 23417995 967459150 792297365 172388891 675161337 825310030 863535118 268271439 164734683 350122470 622436981 498910999 367827726 535926184 534418749 551705634 747720728 557472962 431174859 911230924 727176693 152750973 349535025 288346447 786549167 833231942 134607714 316827654 876321721 229274217 796533879 592496286 570960887 912836511 757561696 807101350 272466328 268345316 836630596 244137560 717473038 404018364 155751966 94227703 674396199 149727329 970082387 722064067 143425607 892217274 903954032 851169111 834435079 821977382 553603824 921098069 323241249 161939928 644126025 660110580 116819128 892998418 709250202 51967981 857697771 3423918 613411849 358913182 670989236 605231282 990316766 929638308 616524715 564507078 603022154 988346542 515673518 296813794 729243688 681667296 923329989 62011679 56709309 832147602 837291576 896496568 764336401 446013724 781232122 920461058 415844705 455846725 712064211 120718135 32239874 378201446 631593664 781667925 383234946 563322892 21296074 636859729 817361589 987945879 850807589 901436631 936415225 803917791 190794355 885121717 904175546 799328478 937666844 140802324 661011383 868211887 585546196 770327934 857014239 943252807 896519916 804677828 797944946 219700019 343686871 629654725 923034714 220905771 899890278 868501846 243550597 776808990 748516740 404184423 806666688 729990708 825304444 670989236 645639973 138706696 670989236 96885734 164259532 827606398 400332127 864948419 24292240 442907331 916268351 519707512 921745648 726889689 932413109 504871069 195377646 682423490 735574863 829997698 432069876 590875547 665128645 578216471 750239477 107068774 390705722 788713947 217219751 700275847 793160023 82903473 656552355 864386396 897329926 545160775 704634578 763504568 837808854 725442800 336191811 262265901 728744703 98124529 436144488 624431784 710598342 832957049 78173037 824714317 783736060 821074386 450212209 780001981 579862114 957094224 750801391 882642329 965768876 928406592 381195557 290679306 7153907 20823066 222946856 789493647 97634893 477461612 907628492 909347429 869655210 720431125 827683006 743751517 939908141 857579666 140303157 670989236 775089801 101196112 857293049 707013419 188491998 394302633 162414503 159668882 732126771 719002674 475189992 227267260 314597520 467260428 397616377 671974505 181829961 525647257 929601815 729123840 690758762 973261714 827212526 731694385 719218701 751020681 941331891 499804224 769343766 872717720 985318155 229098520 49661460 708296103 84727650 627149939 315502591 937908909 887973535 265610182 742048382 892313190 234074837 613891445 560019942 993553269 467737922 793289932 273428747 676905095 745383125 933561710 45342672 781178958 247942236 683297077 826681742 547299864 329938334 181854550 926036471 670989236 638975144 772515294 618755621 752481993 735121713 373273806 814518169 539091045 845208589 479172713 907471037 890430730 233082209 869299572 816377155 321122568 11657168 991727710 662906389 864840225 572029529 566550936 774346141 127847176 543199142 829624605 108103198 923371241 47180432 920952868 887202372 658482779 95264301 526862178 302943095 247596148 870220198 723631919 653841510 636983434 793305352 381480992 315329238 934625731 195978247 707401371 544612105 945042600 936209364 904495959 10483402 866007996 126306778 556804108 160964187 980486425 826731709 263161160 889752462 320289716 366817963 757492320 776705171 656586984 51723334 615105796 610729502 712459565 916218820 704110735 781086145 630530932 274861716 838359597 10517710 716804206 667462219 290318149 461369789 884102503 485116576 388915062 862968371 371127504 796101969 156249307 158413802 654715934 670989236 333149145 707454559 829325343 875833386 358495884 639800146 547336721 179838990 884532091 846647753 407810037 756266228 706246330 740783592 486865690 936713103 929098950 16568814 442230281 788181329 729488647 686914842 601305336 569826441 248560411 614280612 727979555 983545841 119751077 267350765 293213997 103927884 848090999 988507117 854282028 734760731 344965918 779922468 837617846 146010148 379806220 707581237 475891733 731629873 422281508 629817738 108973931 76383969 890878177 36629899 277569707 683458164 877781240 770826028 892805776 752702937 956329184 842096758 892491411 673985910 257228061 127562181 851241943 806237468 145802481 791685965 39231817 892582713 859933873 761971636 923701836 16063019 501238974 968137190 261266644 463824492 703407441 532714779 752559578 653182164 670989236 820376602 675286907 313993983 465266201 311735329 683250987 978665370 670895595 670989236 467923212 456414267 844312561 934920124 536962514 220123823 892650096 737927972 739806523 888827607 803770679 929037747 996874079 827311248 465952144 117904629 724115924 935989058 346013661 767176015 211457475 700861571 905812232 856424015 262247528 549479120 771231519 125648770 530369276 365379312 285392689 471235024 347304099 572410068 521382364 780178065 924724782 217991396 976969599 146740558 297254917 550098246 359444928 317733884 670989236 812043881 114419552 404173694 786420479 943270128 808810224 826475883 288306963 679107080 670989236 849719299 921946822 262781401 805988225 426785712 386574656 759845416 890499205 542359074 286970804 731014870 143371405 557610640 969361843 275236276 120683086 880458571 806683769 278643414 809060179 500211999 797729597 720470919 776226101 930981064 931589747 897076955 194552237 654475809 413621113 934505599 101213109 574103881 169631569 686993530 659580829 536583639 206087984 373473807 134847353 689817844 75661124 406002757 432369208 425815823 803160985 906983424 843314391 835654852 915026604 108932848 937991730 800646523 471171472 691556719 917489038 261470260 171445510 507613044 53737780 792025001 798036190 941853559 306404984 673150516 844315223 644841342 762824738 754341192 170049508 749985962 394161242 968612066 277182852 264836770 589569381 797400846 987266971 92115921 117481701 774107556 941076571 961577028 421996675 240740774 933335031 523344628 989042674 696515030 944169280 648759519 983629621 513568283 516717458 166524371 473491294 233913938 414355851 574080994 378037194 456598283 386969254 650219648 258540271 531499201 614963003 426138968 863725132 651257339 969254068 520834058 305464992 23620060 419869465 592398672 64072732 812102970 485791982 691875031 981368661 996721026 926268473 852511865 749307071 797879848 887541506 11568120 648581897 494763687 374196795 429746382 28137696 870242077 88590913 307296816 519067569 752575322 563447852 192914954 445631208 778077863 811504780 895435225 961972190 467301911 930009057 73259443 830951861 908720252 789558244 537311782 733383648 929163869 819900013 962098894 113461653 280935595 65664749 162696266 215321145 895635294 629785789 259447427 890037229 898470633 735675415 873167837 954665157 763740941 661619789 12711070 51736982 964538018 898954281 668087360 990217601 880706158 928542603 161881499 295362414 992329725 915846351 326050464 677162906 587771364 964776690 356328965 473179635 721123342 538771899 861715557 37764502 701307885 730227478 976996464 670989236 68679993 789661326 772952539 828311742 261633019 840974838 331510591 791920312 629850395 326882972 646598692 326181025 902273078 919010958 784251220 737397161 499518040 884650485 194788678 825617256 691662562 723384048 936217156 737185693 881638739 707221768 833591201 690143358 906412334 681617568 902948296 754546594 509434531 703288159 974898066 454533952 295076865 613038613 755506160 830084354 912635128 895667261 224450518 865522340 953118534 164407233 564347916 932398416 926152240 465411793 333583641 926158130 238171229 393389768 424636585 794451465 816369938 387844 813403181 924724707 775972520 247815898 501725385 375509200 826796995 229832883 959249944 124684154 62735529 608772281 952788751 560109268 842198514 457853127 785774529 126340310 548913882 409518831 822929687 884855142 291884241 108718797 881778174 783870204 811294762 818693924 706238038 722378741 726510200 990253310 169330979 907988919 755221271 912076471 393628087 963907075 802477632 808967085 857959754 753611870 498596321 977765101 625688512 783161249 764533970 147861168 881406701 863244539 643114401 161405033 184342746 952157103 364929510 631257421 206657746 496740046 756249883 935049439 458217535 947883598 745462508 37694294 361781563 240012069 25034236 337073119 771060177 852883402 710190675 869463584 994232176 854457174 340142735 491008448 111780321 793654277 664685941 697704261 981204886 484524956 931170205 131230471 487691130 690281810 455279530 111206006 634811576 55950656 670989236 766357293 706180548 516690176 852741796 623532031 286264519 186317509 844316582 68150596 743397299 86362301 977859876 406056230 776525799 940738059 293616649 848547882 797178585 116838475 854083224 698213579 967281601 171246988 766596149 730772133 743198297 570813185 827795464 149977974 954163082 222637428 141064720 940973834 327043074 781284491 945398237 524509003 125135320 635021227 866268455 782941573 574728134 314863922 22838750 261869939 670989236 871519508 945118571 934041688 732634923 598580469 495875131 576018185 175359871 997534721 868740964 112553304 573780441 800641398 729394071 34263306 25929418 621115876 784945970 837533886 776451089 809761726 574621587 903516060 930360421 928781824 793693551 868750974 923433736 795672153 824024203 681665686 264682015 902635650 884544814 738462398 821660902 705030581 357666699 670989236 772168662 409151393 306078690 767449807 166041942 299769174 803039927 745344031 670989236 608559034 465454581 650023538 687454110 765519259 617010521 252806028 98469917 603352283 315787019 400809571 715100078 886489674 710547976 850652512 17847761 643793091 581908891 670989236 440554356 814299360 237836940 988445442 277516681 673144030 865021047 806879343 687755325 718179157 399859461 721365104 868277432 919978721 343976765 610417687 971471741 829555270 190143332 850916250 351909192 680784857 720391888 771332762 45823189 953730180 647418845 843181237 255467663 801961088 733364628 444360147 709411862 748165281 203530925 693041445 999819520 745609090 835967542 995778686 440835889 964392176 935536754 501636525 811066835 867401122 116300050 795901800 146243960 731404216 555996318 691088990 324705261 678786873 677479620 790520158 898471725 777056103 980901372 206088625 149139248 351766456 392314404 170529268 379322870 237571856 379788835 627453497 132731921 774384059 145315547 971853984 942186429 316236900 511312143 670989236 679528763 711789129 968105021 546467153 706118577 187208281 3960714 72799662 963150879 330135596 911663251 414951155 181699502 611514277 948883025 393309818 518198978 975742539 381858380 911812281 688576420 683530601 621826503 830341617 573075307 953560568 265942742 476263267 781347191 754584192 236081214 480662945 824825918 832585509 423715582 151868263 969777962 848273396 317396509 28804455 273375985 789055322 376808704 507725629 573517352 652420794 839061344 426921240 906922770 756757765 831343663 208200209 889822687 716885351 295364776 497102225 915641868 12618766 829909604 942084484 267288362 266475802 856707561 999783471 807250721 279060111 345571999 687403201 229605093 851322665 692939235 604029509 646011443 553250937 292136008 510790729 794086415 667556652 238887327 531689737 912101228 294790868 427395369 658774990 144570169 902335018 26850818 174569783 155714482 125057214 441481402 755177584 881789594 292419858 602209188 883372953 831772250 907338966 788077680 944750513 439817143 418095907 254586868 652643765 189910727 809069614 15108659 929409747 698167676 973939974 778896963 767820411 669808360 991015384 477444476 776987101 9142329 5636067 731229387 127939149 787010226 749988286 727636160 787629553 785608459 561711411 551198766 456816573 23482498 13452899 855323253 670989236 685167754 207560547 664494938 892342072 58448336 670989236 994785385 466129452 894777445 451733193 366153196 784682408 654594864 954673178 627599213 910013110 898382801 508223005 565384443 60168037 808914529 406381869 78468874 811102859 234003817 974790674 683491667 870668616 59644570 371500716 89819401 917614419 224806632 690312321 351518529 928809073 744441855 997772544 852745410 666917818 963856789 594665965 811717092 803931245 893097403 897100471 214599032 91250829 857054132 413095776 600765627 843048077 939958618 851547767 355715460 532909280 351648547 811556825 262908007 579631879 726441430 943825624 153075373 787144845 994100981 841355738 685995170 9686350 670806077 677432067 936154568 254747338 802482346 420052340 963357796 697928040 784158995 105039341 346336106 431709703 436552905 890937598 95422097 527232063 263726542 140063149 899646898 388224643 409359731 291895670 443910111 993025317 757211672 96376023 83579259 482125966 443464788 394287533 215705893 869801981 325045454 907913460 922380148 982476240 906458601 121521938 682158414 390370266 386418032 78890270 987402238 232173572 694251450 590431080 126581741 440102184 670989236 889885326 78331485 707015560 887046117 576372171 440857251 10415610 758987090 524138860 461879964 351344840 530370537 109384027 894335011 959319452 59288202 628548522 567615718 670989236 401146564 973387187 36096728 814686013 894824611 732426542 371968230 577745119 203990455 336454504 296447229 796497310 520066046 794345126 299892213 952190181 421724933 204182170 512503357 907349090 250462904 945883411 806244621 525169912 765511344 168934547 37571507 766035172 604099598 24900410 683101689 186386502 876180660 57456190 28261084 395740675 434984484 61957039 33037952 80467826 982344680 151592303 294848750 153048420 267696598 903743609 962303541 96801681 935767950 781760326 857676592 307298114 145953665 107626457 840131151 795747602 49813240 17191267 223685357 353444005 529794982 342514437 579182756 36940459 662724007 670989236 674306470 802744238 744990950 721053636 202777447 705147222 272400381 254476476 515174954 240527345 746654082 889145570 679609225 336510581 958340224 769356631 689574760 407256794 568230948 101755735 937907353 666218237 774200940 877694416 814134369 486623245 265808300 405522867 885035592 829650107 292783235 737396074 880424754 150960485 720199796 153991957 713010592 570556662 368825382 953898394 746548472 759041497 804623844 744825264 730022513 900675695 588888642 882007435 744470465 724061981 275236021 756621998 614510403 317721161 241041521 184523027 495583949 399747472 380927363 855134452 814870737 416229719 252864440 121913932 535457703 828353830 607063997 895381140 649515371 790183148 117329215 902379490 361016329 476182888 235816258 288132810 408999579 408135069 453532669 914123605 405261978 107446114 670989236 962200194 152363097 304544229 968548622 65735234 685269320 861352091 630911926 659099182 319752653 972998385 585140262 819384155 763551489 254806592 770551316 786883416 968253985 758338200 281752986 401276112 55349095 764205210 22989777 148070262 724626251 854540103 363187295 538950816 305739935 774871297 920516789 902153446 435690591 270150908 960715462 708475369 918079147 475619282 210766749 936996412 679160908 117470111 178908006 922641933 39685655 171951734 718760366 896515196 528193263 580540399 541231309 752035528 952141982 72263314 801984436 789442070 200781939 848287774 309251944 891616935 854238100 564875767 869283326 927012314 430324979 952429472 6115024 100657317 27514830 922935676 792260306 762140868 369671443 562000032 772954046 802755110 355079141 517625060 626158287 943807217 825051810 95253506 226782423 688509642 948110689 59871217 986924649 325400536 766996416 660290228 995286963 547443572 577633730 183655936 906661736 441193732 216445832 723947275 335895811 950708657 785475189 738539465 914831556 341421821 209461088 705428742 520024274 758412695 998488082 853583570 819724851 784248345 788071850 785009276 828237051 842787328 873259976 1296223 838279117 756860342 997470256 435155116 242359548 760129786 515463607 387665081 900626056 877249468 898641419 974596235 787420756 831159693 840302073 830243748 908232560 928557009 913620445 107605851 257954568 201769521 443557449 748737574 454897325 277699367 429868300 595306594 941138796 395035954 751348652 980698021 700620475 10669248 664736038 932588208 697337097 776426664 781356040 402393987 345911005 503676906 497863072 180449570 259346386 376989188 550700211 776492681 950290481 885054701 78796997 125470878 920819985 229531097 643710286 598603348 623104785 764917090 507535133 266808025 831164247 577179032 813671905 566010969 940989391 834080749 968621389 884594008 915525580 51868026 969975164 978273339 317839302 736639643 626521406 295153428 698112966 331308634 381513487 452724412 817489219 776481635 511491185 550545164 757868363 789040055 90515442 972220055 443240850 764925266 842710790 457101418 298468267 106891738 723380443 904053148 779827927 623898533 958188693 991135508 802919159 904023234 137195960 973225640 884539148 622386017 384872447 363410295 835857915 893399912 724823339 78781519 981594946 558491129 813925938 197975341 796990964 679289874 921407829 754173349 452276544 801971074 209171094 919284855 689927187 634769421 654936017 500421003 987588691 594336017 826502530 344980360 703208850 698345203 400866341 798374128 748332491 941222050 205332031 844707431 706322826 697266541 648661178 936268285 965163805 986517610 284181167 910597710 920727060 937680186 198297755 547515333 906637847 312979955 384281025 372163442 300384405 738649946 51203167 283658911 788993957 337577664 70568010 382110130 823605282 569622330 871879449 577773229 640150002 395708490 179265802 796785526 700561543 480350818 660500497 358193237 746697247 241391020 837026419 670989236 983891604 676808944 110831142 778078686 35731813 969624750 853307288 629854083 462022300 683834269 872960559 771421327 299572371 682040540 673918441 511308597 200906281 965067020 548458485 794105570 689059403 901301846 178077320 333245034 765265621 243935771 16500905 188632936 127726899 715484520 852519326 776565630 314854805 933764979 794167923 817579858 791855157 570053117 670989236 50684988 221455284 541782660 702169864 948786939 116255656 844076141 279159045 836784351 726246953 681539666 374167682 337959846 983737759 763958290 842199959 907618115 684672678 504795717 480295167 765292008 40770104 860114130 703416782 224507794 458029156 979376006 238804897 97090084 383764566 138817261 961400044 480743054 446179663 244019092 359962363 466309339 91065126 259432847 669259970 914946397 535293228 333156990 861550798 824758659 581694397 923902811 524968615 384950915 916745617 702588182 931583776 814741545 839983396 254889091 221786919 989877146 641781552 670989236 670989236 977340347 597214640 821713450 715723949 447366361 378638106 963591045 972362487 868882413 27204370 986311425 663398300 877905038 312931166 529226492 591251296 807272032 869130365 794680883 771283811 616843083 571738160 752187282 961468905 760291513 839308030 128292695 509627824 773460678 291076147 463296748 620642022 708964703 245132881 841894259 670989236 701171787 724515742 637315586 851078892 926603088 279747805 973543175 206018423 210208992 746457776 911763209 825050365 766744363 456948866 184976045 710344890 798807648 474178735 797209374 314373292 878735653 670989236 3714738 197414000 670913951 171490275 238120189 990122494 674546568 865681520 535530666 736282485 541496714 351036406 873553715 356167052 886460172 410922844 968026043 743221850 208947456 117604170 797319696 615274559 50010042 849104937 716913916 39248208 306430524 86222522 285364058 912729627 826997122 916557322 36369595 354314450 670989236 876629689 832308641 211511333 524326126 285059755 982141575 983789533 407496073 980893437 950543715 693077135 700250110 749340399 880814810 802489050 250421546 429058752 308834753 549461142 552199433 349206294 267239308 739951971 581693028 797826515 694590047 676589814 823639309 818948966 5492897 538129515 348476549 644189555 573043043 107632665 962557380 868580340 747962763 932995188 691577364 973734166 987042650 389789118 573008500 388429874 788327820 427846838 813327473 338883910 670989236 296811024 563008296 604288777 504582748 444312116 35029435 749922679 859926971 176032529 982529480 315298458 955018994 693737695 118124948 953367394 273951688 853338957 708612207 959138148 488233943 796479177 931474591 884514720 987317628 37346316 199057428 169936939 544318306 136453676 320892710 312248697 582885338 303100836 847611319 67635444 870272525 319494149 199705470 64287343 598534365 501047280 859059828 804538163 407404398 447757977 688057789 724311062 710023895 881889763 729609112 673841114 834615001 711790172 697394376 672923914 194186338 381825135 474409701 789286598 633481820 500897434 923546525 888144674 565795128 688253914 434812648 66616151 754162287 251200752 987915800 527459568 797480566 761444708 699568468 36754661 550637989 111312789 997436944 426631590 502041804 113487196 345772449 746564079 436124856 603483747 114181343 613933768 984352317 896470153 904431465 980788532 39380280 168479338 864132489 799384953 487519306 669789348 308034058 264368808 433007484 304693885 542226563 413466724 829642515 670525158 857740321 224055700 918454867 368948457 358619643 942509545 548063202 868520029 810027616 753368504 87740682 843285954 919869245 646578123 895889848 347694884 848449912 660154194 122562254 824528478 833128342 712241672 576136736 853813675 932134309 216087422 61382794 507447623 841119025 477752432 177592674 498396543 998450183 788879085 724085062 819666328 954273317 788293788 638016428 781618460 297919960 159390105 632766701 458308199 667220583 90328393 771434070 585835312 606168593 645490242 510736287 605977235 562611128 157974423 924211197 784883897 192931811 482962173 150617588 993379045 603140949 955129692 877409117 45538170 268830751 36551403 523213187 723316930 407673418 198540778 877962322 931661871 194510681 682737810 23583645 780279839 696048879 675296296 715845536 782761644 312641925 811971587 157725203 301341768 670989236 874588040 844503987 636722564 873141378 553010986 950976462 612242926 526321688 502116804 741463878 566720315 152870805 856356810 718863800 639941865 973710924 868623885 926266813 269658586 983464094 126296198 752340766 104998328 310269629 835753113 732490539 328276096 113100388 902991559 558391273 771172154 783594895 877684383 374645186 594709492 658491791 357160883 803367625 689043141 379895940 973561798 548528985 800538146 636867934 919774391 385441870 544794975 320745039 690932404 723429975 924205799 997844380 730941915 792366747 529265770 979483660 714296566 688928832 165324995 806731517 233850394 840963213 888728219 305796279 675393019 801149907 667066573 321500772 303673201 920131033 898943753 7200428 12440922 21302970 977877866 730353981 930716453 685340601 819547179 310883917 984712259 753815859 388445114 700845896 645650910 232777154 22483506 670989236 682724184 265534173 779064859 329920912 687649029 344687423 379625799 915783102 812934202 192388812 792386014 130460166 260247434 314791141 352907503 26709740 878865454 869770818 760757841 843394031 357908958 714787195 382408388 302221906 773037857 705907321 722401632 925593128 105160345 847786927 12061374 296267761 824384095 438854987 30626009 979043814 839660899 866019807 227907188 806556637 721312217 534429984 510455218 343118751 507686871 131317667 691002043 153989547 670989236 734561217 81277133 973965734 626605444 276444785 799461601 838054357 865375665 270111932 714236180 819131314 721814157 264035747 133308192 274228668 304299452 888682889 967613830 887182801 731420318 397478842 652275843 101751444 454700191 659651056 232743191 710728533 280736161 243934373 635676899 342230038 864245050 711196041 746960421 880084795 218872555 291029092 164063663 101076801 279944241 697213879 860981685 445166050 782087682 631730826 505522781 788400719 33986852 622234075 372304466 478021297 262115567 679853579 936377858 284291516 383573001 162299251 186431788 971087320 463610757 703227990 836186927 210195112 272081323 704746898 739457541 826373911 110857498 918256811 780044193 956299989 547836658 983168949 835981257 820912080 582150531 14019940 194080439 685075198 974163357 396674912 544493751 896400000 422670491 384458913 207205963 191051100 359862361 749562745 710790008 929260658 677029077 869196899 503250766 924287069 624915120 786678048 459781355 806726001 171970555 598449098 552926670 865958212 794758888 907287619 391515325 661809006 708652144 670989236 726644417 670989236 457458456 261455807 195738 786191973 6945084 29212602 401165139 484066514 742063827 290592366 503167728 169067772 908944878 670732012 962221465 536819557 986104952 678784845 61584437 464296081 2249356 758695770 594913783 964549272 971210201 569785893 692218891 678060411 735777017 841863491 825842438 118188914 897575145 29032426 177783118 746050812 237670830 267041121 657172220 771966711 405881512 285245703 86558108 226843580 747193570 929901747 949050470 167962331 234074882 867644775 670989236 75841395 756920583 305909115 318630273 213164187 626288837 908842782 853173789 890860774 987806308 588386209 703072067 782947020 391225949 978326310 340587889 582302396 234454753 154665167 409728807 398954454 389892060 824272360 682971592 694129367 699033695 624462178 267725636 779454636 572877089 30791307 947554125 184784899 487778347 926904160 51753233 405805363 754650771 595562328 262418254 674217473 238960297 960096485 737827459 975582751 151814502 199814737 365724251 288194816 690843654 499954166 162534747 401319219 901886947 190450361 244981311 986547355 315535225 984323364 781374644 872368134 379875827 768648401 683301360 673137783 16795681 844438721 747551565 391191711 550250650 883646363 931869625 84217116 337601355 630461146 89335091 974014239 251605691 139348047 761442660 710316151 333787616 708425116 137441331 486420152 812240546 934873445 379973358 391649815 926743115 781096180 966250529 958911004 879419913 980874623 31082774 81413035 245799635 69624984 549931967 877943417 322633404 776789607 632636513 767276010 415688208 852707171 924607013 69470863 427487602 218315932 940170187 375675981 727355058 115094536 753107591 134566454 771348275 933484200 493684261 877827068 595730231 966426502 845272311 695796931 7011904 378791787 877939937 964466381 424196622 324173432 894246685 231324292 628428129 309226418 336672585 752083821 983686791 485071915 154855477 301347504 106257232 728619150 577328636 883969355 206544652 750429834 543967919 134620806 909576888 946424383 871110456 930801183 812948795 393641507 672045380 760068443 928381756 802748951 121727169 377822498 669145745 698705317 751941479 971563657 42025161 704423001 755674117 933876273 91552251 679773592 630592971 943335902 672813568 904051705 549330728 303225863 550014351 400520498 926261279 320743706 745346570 908136564 581339233 964141216 558272220 97806438 284283569 780165709 936205675 258510849 899259917 812702904 245553851 773027980 166838595 770070925 230653376 148152180 782542391 199297658 855309686 21831751 857369678 749362185 984257335 303000363 987236065 921966150 87597570 592182831 501425851 57171767 271187544 730915005 195527851 828415271 605513694 809886013 256206476 780446643 985472986 769177807 849334736 774541320 925245541 290707844 99777990 1711358 449090104 677426133 741709937 914649365 467848424 378103168 51942779 925319993 983985356 200568293 321433286 460015729 778180637 737633147 531774658 539896609 670989236 756017038 701370859 774302359 483546844 758313970 964144118 895173593 816668866 873836567 915440653 727083736 878141514 417749664 303966105 135207439 308416016 980611807 253193282 578825742 392696804 648010040 232680016 972522383 64351364 807465219 499655829 763369543 786843569 670989236 692992838 21611607 833833284 852649469 994296288 894495939 550118106 713914500 953386480 819191242 517894642 450654402 11826608 328007057 771250231 621294725 333638012 498287292 746790088 986264324 546562791 649282185 843020928 824134110 937777985 812756229 754086636 627239857 670989236 858369269 834659183 174301320 813792395 832920956 577907487 670989236 691342204 778651613 479986111 634155625 833270170 375510043 755862411 846292869 751765789 309003123 68602655 305284101 968977735 897604683 794968152 540759881 508905218 193330005 974102547 21409938 789796209 977108775 921894593 278113365 931050075 758079877 157064373 804186904 800324848 379293722 926617285 840681636 45488597 960094227 724397035 49310375 662341045 348085320 670989236 825193986 885875874 264273258 918452879 473116492 749101567 494515769 822985817 199939040 354781803 405593750 213544920 798776786 811404443 256993438 746322800 553766666 435822146 884334846 454675588 935929178 467634780 774716600 947381767 841197386 369980650 996400564 784552496 305781642 481666110 696597087 851552917 919302786 914050529 670989236 228104227 730381404 812185774 221501654 578117377 431963947 872395203 735798686 89726267 576906969 733593534 866275902 765093825 144696965 977825460 739724558 689553551 922694436 916267158 395357463 951346806 846276289 371242012 255968521 486746513 783116636 746977809 821176485 697734695 705938224 794736158 700050709 297708331 525830670 833263901 668753969 400884242 323119009 550552130 457380850 307888739 270060435 466319597 665793171 906183580 705819796 721471894 372956238 750833602 955340178 412675078 233469786 813388116 303965573 243811165 263051367 489360683 861766387 767311311 699002368 797168113 609627931 116709008 472516866 462372025 259028429 144914452 199135028 641417756 410681647 386593817 169705980 411132014 806326994 149535947 670989236 786556021 820810220 255835793 171346559 755352469 783241685 531268298 901936509 752459279 894030806 806098106 310292016 892641880 44652498 399530698 936228903 682066806 837116542 966176804 560159462 100080496 810963760 566388474 531215305 572116389 935669773 896558235 208324314 964890327 323010491 164488715 172091014 777804554 289180386 989504217 572976036 109251653 165837281 701665554 636592191 866989361 936872391 918392661 856919637 285991873 991498076 213429583 737852989 326384706 670989236 681412530 397807409 839988696 644503722 49435828 874321332 670989236 407962950 780621201 239929807 775412723 893646974 768665062 360906247 542879609 770894368 850585998 236430806 693032181 412644839 441583279 744632579 733971348 689800300 501691018 218504849 964787747 564441468 776082678 266021721 866850343 761896457 756961349 727885765 850642248 239806910 193360532 696231916 842904184 822966095 878027022 461590683 58134701 121095599 861341974 498914557 563713559 181974479 711770471 553210753 518448341 808821598 146298328 397859809 134289672 771728936 583216734 272347589 919148081 593275912 236846125 873387005 720812579 453307253 573919971 650807829 763016488 436074824 434282883 717613169 333644169 948674347 853773508 379413342 959707130 382647254 833390276 398069109 811028750 755607737 222367457 489912281 568707708 863796715 656918639 74516817 365012440 467009779 765420444 611808849 511875039 716229762 536377622 947376822 806311460 605016644 357205697 677020617 473905569 407948003 97874129 460886088 699336814 851974700 376719850 901291164 569464991 923313516 967882413 412939553 83723892 407652635 121218391 343509937 365850136 63969865 513535332 951004846 957145062 689883843 668078724 942396631 810786858 453363411 244084309 411273387 376810731 507087037 950926309 746162650 56944746 862397374 71840373 698322465 918776043 341864236 343641327 949255222 98832947 886603103 691554055 55852590 376096061 995341598 883601470 390423745 8561836 830454764 839589194 732927078 716473685 547255772 815621886 627343123 821829612 844999551 333996328 840725218 755273994 157888736 771135668 909142402 850280317 275866005 115066359 183682644 739903465 954368683 13956416 221919284 180943134 697048178 36241098 480730459 591891795 818835156 934170098 251550096 375705392 477135916 274240850 19360747 624857041 616700565 282882695 643781560 986947833 478629905 76094297 907138486 982631722 974622863 654468065 708555468 633413167 628580358 410620225 859192128 707813330 698649944 940425020 594644877 917175229 952178229 565211794 934584388 799713185 897692585 704592377 76872054 732387297 92599142 670989236 182321861 363722213 927479832 828267644 625892031 503138119 682279884 977179847 622769069 504644525 948347310 606193331 779766298 302347003 130400607 543460731 872895946 962035228 86957516 905884605 825247143 470296970 81841853 872150572 577397545 998744997 914523034 45220685 596300100 876796358 762451883 421843179 786737240 215759948 320600465 850709443 641570481 307115770 774422949 462169453 686198991 830410785 261983119 641689006 175548610 794872149 242178900 167542528 760451438 150167167 968551052 593217928 879925527 902101701 606315075 587900899 611897299 486238808 731975025 993343170 530621013 951134866 440711506 325492303 115282296 928895282 241749492 897129797 926210615 670989236 909564492 952973870 827756626 938218571 720641426 509904775 105047847 260739574 653963199 423632910 636780194 190237049 952774280 618014576 641279583 995564749 179512779 815839821 387881774 972843151 670669292 295736285 686420364 744960584 711411160 872782329 89288055 494659323 551268309 991085206 48792295 53109744 774839111 559648910 674476987 567739314 967654211 694793116 953707706 153479707 89465507 653905817 364875719 531797171 812142755 924006456 12980651 733500238 854942740 919772286 797298501 988799990 101528203 899683962 237400970 490467935 892625476 877724500 232191878 545684136 582031934 433386895 714251974 173098181 359634347 733238797 866769531 926665109 55222728 764184145 936620692 700619956 374235096 676274473 355876657 528103951 358755208 589622181 442534405 715556525 37506359 678917739 863873928 571820128 774715944 640971112 725611374 441122621 678654185 556297325 18927630 647447408 593477547 718586881 482094599 890265922 999295397 795615356 256127055 398096796 717511107 344826695 80678923 675465856 618787735 979780945 670989236 524753157 762036277 643373028 226900041 336028520 808351005 748672225 544800492 136337945 590637958 745377962 415002362 752229495 575271398 12085035 204894193 832068386 492903661 848561334 686371987 430331626 103821047 545284620 819738045 900800357 106129855 967669219 391813400 732746435 856641223 121082367 714020363 543245390 699471671 329500307 742747660 604363347 933451382 837357062 269440980 166950928 408522200 968997791 259471310 379479162 551116757 150669618 886558736 715146814 308099273 297190052 670989236 65476899 653999020 876131403 47549982 811288807 82062679 697804314 782700004 476235843 889328905 821994419 894322852 94587513 998727975 803089072 814370908 987433756 954723879 475465694 561690486 988221215 104357183 739429452 386709185 765139966 588914287 995023599 848306764 601043328 127504608 95314859 685008182 670989236 545227550 848428239 175010056 198638758 814228488 690003375 103199082 194646632 883745538 358982122 871646931 940219736 993537787 518642748 693061951 906547881 653665717 670989236 955894599 65376744 781357869 923289530 804467843 496413361 839990106 889329056 789978524 87072096 103218749 957160912 743708725 363680646 989951421 949017018 904784974 819841139 546586296 565306676 521219919 851930532 438707540 105145462 706251293 818341716 578236921 262354005 711667175 72487192 697928129 741719623 148531604 297792790 281545869 670989236 711281966 918835187 108177067 822195007 925105515 477215946 872720408 896895213 984811330 235511274 961741764 251574062 892297305 90918158 348764149 856625450 666719753 559509646 293673544 904002028 925978629 777554610 224691561 6325195 881077405 524265393 957610285 236441297 876485232 742059065 792707960 896799312 862148159 312647188 782742244 789305281 188961457 710416652 956730805 497235156 210119009 947105884 223038363 279326284 261825590 150840346 212650874 820915057 685139754 567752914 638305020 871513009 680109403 200442398 470119038 669564466 938976087 508452962 786571205 676029001 620613708 994939648 542034721 350501283 44308220 776027391 743395593 360176184 348565554 403214265 897635026 681579877 496921162 890471724 145942975 640825083 594044389 103299860 616277182 364759317 293835023 764606659 721571709 885143869 375029019 277982501 127484384 284706558 721862722 680029282 53718048 527663544 701773728 962477786 554775527 338665868 742988547 359324501 666506052 632824866 737680838 181611783 74374846 670989236 426127359 388953663 433786728 323800333 903128600 540602607 769664370 796883410 628478726 373302202 689140105 655633828 907473001 929862290 567153861 245790360 761770847 670989236 591455847 100547661 326387156 984760228 780248918 986819670 29237958 345163231 683210048 203331773 982962789 897614275 777280833 64522108 774582260 37762934 737917109 931738688 982859999 775996080 137156205 321991380 123010832 656930644 981768558 824830889 670989236 129949958 199356066 491763490 704100281 764846388 124428780 640464209 868578547 18589858 369539832 881628282 5668584 483574762 326047865 817261012 783136711 500104213 691505535 149947111 266942455 890588796 623583949 779144938 27967298 961308541 714281229 76263526 938365728 148203335 7137851 834150259 608684353 675531078 670989236 152105983 147020371 782838407 986660014 358794115 73580775 782041954 720464138 306813851 897431916 701205659 961402799 793622013 854968763 419873246 734127858 728475500 162856236 80381342 103572612 780980967 204393210 428015523 833227023 675489527 969789865 972992526 484799112 745711857 333706021 916164061 885506845 135303217 723525787 519002160 289161279 688306453 844272227 901135844 919187442 89509833 791347720 288888250 344220233 537453766 32921602 103498272 658846820 937719518 826826997 612024599 921839011 956010064 891569432 844184185 852784731 423401936 875408742 544241048 692143262 131526757 890684936 750166832 948360695 708488328 198447925 467179459 955681637 934975597 798340589 892820488 22118059 267244066 108171937 360371566 940811921 442225019 874791996 939921794 363159247 145875207 591701271 774990994 368882043 125523478 125278336 832051261 741509226 813821557 636173287 891497935 747308411 893335604 952261891 895238700 317945131 75451621 474493492 671630637 551243483 980267768 872387162 962874324 611130851 859516131 515093634 839623803 760899482 612479593 257757228 712281705 813626193 809973477 673349429 775445155 833001882 201764162 487014651 238793046 781834246 992393544 985583172 856985412 381333897 358361737 712323881 424968780 551295872 626295947 223214560 956207034 870777736 389464809 911147151 227113336 640034089 911840088 884917962 914664286 946076074 529581167 417814435 789265129 670989236 444929430 128657160 619987957 892267016 974621178 586271245 803915456 729760783 826890844 408958667 609932476 553275685 216908402 546139264 959391864 937636582 244684137 910142916 698011664 849461112 186065114 793018669 778315431 943182222 319520895 281625030 858637992 137000383 846685926 309515968 699795861 280496059 927705219 570844953 327657392 504647229 707434121 285014267 334715360 715548933 679734633 536867779 122095044 243964318 744465108 206151145 148195306 928953929 991499735 889187356 338453464 647701365 25667819 678788692 280160642 752057792 848674781 889174802 966034325 864838756 726856235 886345955 696830550 995512650 56062913 119496513 852760574 691890741 693800232 510474170 960606485 687014971 788658419 791460604 679989502 617255655 194602546 836643334 506388726 402036952 60635605 753916981 953603304 886821752 723479267 919535637 626548970 998594948 827841145 761504331 838725994 789359656 608941388 178343190 816547695 157785106 210745867 67187823 825191607 884057500 748721587 952222559 769525113 572080922 295880611 940414938 419419431 539146141 273048613 357209831 731101962 42831885 358600756 631181548 791446284 676466848 634679346 900740145 704302848 297866390 761574638 621836687 441766628 998792359 553150774 517800121 558635968 730981275 425415720 287299760 133789046 825909205 44018695 780277684 423311673 870198064 965509593 53942739 778131137 827717841 484332159 836350259 64254434 472713121 824302896 89871089 817264129 308987651 980428132 977533431 749960586 885484890 573097956 835427427 531407460 506746610 240478329 363608851 987634557 211514406 194399665 864099667 670989236 153309141 670989236 926924303 108918116 335636159 829103305 686211724 953451029 670989236 133188340 382200086 870984075 249957019 59242890 717134966 658479468 300216399 670989236 539648623 348161180 336933552 958147060 795369925 777808536 213250798 797017509 480231039 784472219 682082503 261420237 739403451 606282085 93247884 62345276 90275892 343456812 855338625 905766861 390995947 735700651 460932878 381956399 684565250 335332356 16821994 694796423 307924956 151807187 184680831 9365295 446229771 277392095 833909273 11054013 906471125 993382140 820256329 350028645 9515125 917617127 9522705 120528048 123352928 741812570 717619176 66613325 941074398 406857234 53104117 948860582 463943283 818524764 734033305 592547812 910107559 672505935 588511214 616802819 435477681 652860861 476207916 842416156 930037096 75550375 163957826 973206525 436244086 225793786 70448163 710491560 86353376 538601766 277551478 863944372 978923872 929922629 793976855 817121449 980103314 708657802 700045542 726786318 356997868 670989236 722831603 844255198 765422309 389334285 512755027 981378859 835116120 787756254 443975414 756539555 389898995 554898961 124161978 991580572 975292192 133509926 506955164 909977034 299655385 365942865 336305682 27957261 442917539 818830659 803748576 855332693 773709617 811098154 756618691 163246797 934676020 440037242 421463378 934533967 970341432 61298391 454520760 201894941 468096921 271035717 71524094 714405444 386477508 170006707 928515759 484370040 632564350 605894251 804048976 928598345 26913078 163963358 694466133 886076522 387458885 974888602 186208526 883843221 103264963 957150995 105981542 389461772 585560500 760722117 861694818 312363622 781438731 867217386 87831135 293539106 551856163 717745753 819228635 499521313 150494304 782634147 811850030 821380201 284823757 390505186 256092596 715934111 998957132 936820121 693484734 23115036 975432926 827814257 994219083 396278916 296724893 326333986 37123819 797717950 773243842 470539520 975646543 911575794 675780779 645378824 153893803 214355396 367515790 684816228 831127871 790115893 594963098 691614055 796094424 910630164 22965729 606016553 975929016 939884443 571868809 393445482 582847212 66986149 582684512 700884343 808391897 987981032 861068663 753891580 501093624 343441493 569786001 720099614 123761687 82006641 706173099 247448319 929831292 440581368 203747281 113701805 819406080 771210128 482586082 340034126 986111722 50567150 527600976 684789308 911801551 173439821 713622517 23903886 122468798 417670162 199336543 868662241 49667677 756531585 772449157 941319410 762258643 199828439 494364622 424296993 304449209 836398269 548794365 900593590 964104589 950624523 856731571 629410269 623807060 321385852 676161591 776238696 972989124 203072997 473924231 244987066 976093005 432803537 210580701 409406342 302917354 806584813 920441734 223146499 787963557 208090535 101917438 924826000 34430078 741571914 528644052 890287229 21775854 141699179 932769090 987215383 795632964 103130982 651245006 574265931 127278412 307896909 908054866 841769545 992913512 599356988 902281937 682608013 457823406 268172440 829341954 91708320 794860092 80279260 742507438 408510321 710318255 186672346 20855160 909699659 55850557 669799467 107495609 538507675 789761578 885398944 912127798 890825461 958589489 670989236 889164660 761486624 106252009 877493300 17506057 682848154 922648017 329558897 774176121 229478768 586611074 497179419 789403448 907130974 963718926 830946918 888619282 428549203 599784496 931641280 763048188 333873606 850474192 19454920 905847562 976553454 721703705 335377682 38771911 115079593 536317924 782397768 739586679 470781933 3141633 400295295 804423710 692559141 262941359 976138739 318072540 357477118 358407582 723191001 344437140 667381760 705576577 991778349 935958815 305217586 867994917 928492421 855420016 868728979 666577608 533696576 85154616 519801421 625872236 377973874 737543400 777919811 672131787 74069885 578351243 187490744 449380077 730332834 420165526 752790725 75574587 519743741 961246619 187332930 785603718 854206231 870320150 976145363 21834188 949108337 949769996 931614846 160186645 182861112 687162598 738726409 700397726 666427402 165439402 88575866 171613572 520447750 593341936 745338305 925369862 762083119 527446585 555829981 925924267 247764496 704231250 234531758 970832063 355281250 958832408 539993447 245716682 448272059 995876874 695851049 453834230 18428919 381608322 727886497 510533097 806326904 747398369 677340904 700266149 250290067 594809393 926551061 853880112 781160725 957488077 729064598 415630309 975890876 883578986 830439871 174361466 611943566 661073153 38861838 856495602 149677159 677969514 887862514 665218775 852564039 361511098 981813909 682384852 555196633 707917502 736995792 586314408 701184926 423697546 539534609 208018559 936145032 670816526 408375997 798834797 969491397 830029591 676611224 260619399 509469288 736407786 622209543 917430493 965879652 818228398 566996121 563529994 744408697 802438971 366150411 262612897 770686416 542006807 189766846 700322966 188671737 820523447 370768554 272686513 356991148 120126993 375591286 745756242 105290267 987085494 491950096 783372095 480783413 757723727 771300474 750319077 653068362 552709443 267248904 998230572 689872743 141657494 812662371 789006258 465818873 640920369 1138670 551967694 496315218 781186996 398519299 483995020 545170328 873351620 494297433 692008713 212501953 838121499 161188598 44227223 938789823 689855354 418421349 685366094 251012062 816263834 621348057 555977624 853740073 146433282 934025801 710082863 494942038 375962006 984916423 638290844 554264 616481833 368987308 885482839 731195194 893685325 51867690 786461715 227341889 882213788 913592300 753728220 636927372 18650738 820723943 958859620 612690191 923451805 76581127 941760852 841451276 462985033 731181689 675274054 13869702 798787229 978227793 876524972 753591629 687186111 481540724 416817549 825629803 399779976 660769636 289909895 667289367 603573173 763786127 864531360 990808299 796385155 275656231 865375339 715463329 719158501 303577418 784064762 168526298 84989668 244793764 858990145 817898287 861432248 738169453 857988305 405836337 152209091 372924451 827302733 318175045 765820295 879849540 82938669 807234627 595718878 980592006 873839245 1378033 757333217 931350198 86101500 888876697 777958900 993251529 513172144 959534422 852842760 974700316 980907327 511827175 883233353 722892629 196554383 982320489 645651919 165971765 163046173 839484065 953209801 870421300 905535773 464947804 965221287 992476080 693623187 525759905 941564211 815993496 722435194 342713471 378064670 677707636 64686486 872646730 114651840 315354550 926089278 545678989 382962766 116029308 969357887 433291778 724936611 852356121 391045243 10670860 797195311 946356100 257438162 148708314 989416954 757654612 356596825 898060095 839996152 761403359 666263727 899663981 396794457 930108170 477214841 813086186 655543465 674366987 882423738 510656313 778158955 268825228 828842698 918747165 545342954 405564914 920366134 619080431 888873023 438043676 168312252 450029003 691580229 115501139 806090725 559307420 93305440 712678809 612594523 599151423 848047582 706706145 672032831 973913374 935176331 280496789 330112391 345132382 950708058 274281606 685216043 192298180 943669382 653330771 260971905 818444418 849099830 257574606 413685554 910522920 946706372 838584239 123132862 794886023 742739665 65904107 494266753 835407894 50925374 908191999 702078199 987229665 44729304 910170731 281945406 299905338 172595245 715428334 223152827 991959042 670989236 696873887 705198651 230536237 772107014 991418992 714808634 877450182 732261399 948093102 400497764 285930681 637282428 44159739 366386218 185464569 786282505 474184905 950033742 435467907 294049709 40958592 404761067 956781615 870547854 954397138 30531676 445910194 268881011 761259383 463239700 102259019 787987369 130479493 940256200 792449436 457579423 313569159 725156691 855936986 774893399 596678426 818860699 992664493 29984120 730381977 76082970 553192633 258592489 518224092 10507652 86225826 717172674 775663420 845038555 315690967 33019811 174031689 231278691 10557720 464025249 54607725 870419669 470420703 841389279 990526763 587212297 732720785 732316958 108074786 316170224 160851341 640620151 487618590 867707509 990423733 670989236 693959408 547717774 760437276 846059996 97046626 465699236 431744883 857896258 509473077 900732092 593508921 787187550 744039672 393228649 500905730 530924304 140384022 628440936 769225095 634884137 10704423 670989236 941599531 894924395 364176829 410273079 124685265 495715229 654786142 674684377 267818069 653047258 983521778 21951891 877972706 753929327 955077339 868828871 670989236 556190161 623690760 802136536 323578377 947349396 481603314 850830278 698461906 725367455 881963553 111715547 910031160 641971943 690925709 883142878 739567267 964125745 986342770 703424912 830603874 783776873 774406973 982630488 649389977 818875831 902353345 546231917 625819390 919599247 843167304 926026114 670989236 728283884 822520255 800346475 934024114 970674792 438928531 326598989 912662209 442760341 129138057 973877203 772657616 351526439 517279794 207319366 15879062 441967151 205071756 447546806 153324881 35340461 670989236 43517910 154997367 941703812 677788204 898356365 982921168 533813625 683129847 705682683 272793525 819862496 970525006 588247865 431171636 950793069 786004241 900860668 865786539 779277738 682974911 414151832 791088420 25413026 348434676 78158028 993656783 152853671 837971753 786742585 199037734 65633893 682044977 974673640 902454959 572859970 373956438 436592365 997213770 925621982 166416168 741565279 134708831 414395855 909160521 881875850 36698922 114233891 798893431 818963698 670989236 574953143 790969202 731103359 897790828 784368245 762855782 843976636 194409148 578050939 872433466 967057718 905275239 166274644 891946698 337885624 391047818 865803849 805952605 884410917 950546105 257990413 859149998 96420541 764198666 113324523 840903549 515558131 859912182 866072684 883359983 960644907 586482336 703906117 986522773 853998170 794709560 899023710 752632368 119754338 168314719 706183609 682524538 8252076 670989236 817928487 54024593 691374258 920247318 866829445 564273122 237187198 774634538 710667901 802302868 848835166 720294097 990901340 929473761 749205666 114397455 822359093 530154737 862421133 672072307 919579494 459689755 76611441 783264180 964825230 825915626 489295796 376971772 829504201 265197632 416353753 793366703 362792550 146194814 827672542 374652780 747207200 383507174 934938078 654636857 704840989 452926986 296477044 616938858 343652754 733559416 34842738 618416909 702134784 607435812 201621155 798354135 668647434 972390753 761318872 770402426 444966497 93559386 120419746 706038100 838627910 177565973 268928050 794823620 36588451 523394440 748007352 376094567 762108284 628979597 905252924 361327560 670989236 574137349 389005289 907580437 981318184 150220122 984506805 715938413 684087114 596915533 240709445 918186860 743798863 255647867 856384640 256602336 313962157 929955520 32656239 545765049 15519442 252132320 412655608 413811265 799098034 337103128 74282296 16272163 842415142 350536053 357945423 864147619 233493506 702888303 531445721 313159105 367654775 392591917 515573222 983252119 706241983 984738466 15838054 630873175 863380998 346187746 931773459 227261418 825672840 920867781 482928075 197254422 826126759 119276686 813819787 166474802 691650826 582768954 727731814 555342411 186467834 630463453 229180610 375621218 750500837 280535090 692730554 691346973 146226261 390491832 800362898 879052563 53778855 997125076 206787507 286232446 888693971 908259136 204214135 831752591 405781030 991601289 734416191 364515819 935366422 954561908 469297777 385024564 275643867 724845368 739494734 873822299 104167220 884981313 175311349 234191375 416635760 952899054 711174101 617816662 344092303 990903044 875383478 852531026 791555516 808839026 402689918 246131105 660054188 211515044 244417962 723634601 455561754 198421399 65145317 82574872 880160528 515629540 380563364 490010149 391650926 921107329 286579208 472634684 865533839 573713534 158404719 445016216 369327436 829729901 42654298 729988349 656494570 298673737 771588208 393451961 729254021 8037794 239896625 544670083 400041643 574528625 243609617 367144243 871266293 670989236 883406974 670828177 800441715 234600911 233815199 818157860 802404944 294150905 983260027 908883818 63521712 90156530 421305036 693663810 830752898 471506304 102253554 691534865 862708033 856510243 572398999 49368836 490258921 58767567 551597635 913720840 936475424 388377213 779226361 910266315 125903898 730886416 506125186 913417191 699479557 547647925 84925618 836400274 744235058 684002446 477605630 864691639 491032206 371544208 934472968 844475671 125045307 65611033 797352928 911058098 936397563 624447028 952990729 656788158 396911994 882631098 394375478 90587017 673946947 936310558 919266326 851283144 422900789 819829202 964729511 670989236 490388200 378730112 621212289 354777620 129453689 968050349 499237666 582359723 321639717 954933930 804591750 981970327 819762206 166000045 40800637 247588390 522804707 362825967 116988576 856146116 669866597 649337659 149074612 794592832 863132731 904955004 993739710 952865082 384136980 881539288 345343236 795895377 661350070 254726242 88298071 560589063 793819217 239393170 604648810 617571515 378851190 977885938 752253155 901681421 955152753 163150521 848881737 777278104 450851521 862627875 433513697 415403975 991594731 777588318 780808333 717490371 543557085 875024042 946264281 798930054 449152609 729238761 331667031 727803545 942290784 175774956 716869797 534061644 353948728 916701486 302116117 744993350 385513525 763163381 794441674 741002282 316413813 967188854 378626775 670989236 88912752 21006472 998476735 983235894 656561707 988995384 38840252 232749831 28010664 972759311 874684181 954894269 675455946 115521216 927859084 861306377 211589106 346642260 752691345 994129129 771068606 745904452 832440702 938149763 920035300 832530235 762168800 25818633 948296873 254563060 902843134 363001719 698057356 963065597 804152640 772389738 925614750 996584649 85809386 290846519 961972659 900121204 620855815 651575823 836966151 142223583 72879292 727103866 899903901 948012786 854149097 442929114 700807135 771113281 234147782 996220418 212177653 785383484 932160886 63717891 178262209 614758225 578349342 739339429 495357059 58334397 746599936 770377135 268726611 703868833 878609328 22227337 872174764 734900497 516752130 249860278 691173131 361107028 218314583 184317180 610478352 519868743 789305628 456260357 482600031 730105446 866635735 529853196 137213456 869747892 686405885 999050699 780522395 814879567 955034723 450064202 700244422 795268912 670989236 199739200 890033014 670989236 559688732 683159720 276929761 774055105 883025221 101953935 641160383 26627328 906038841 47738914 558824376 333840316 728095484 710202404 539774479 379441084 963617932 821679044 753194031 641472752 520624434 218869263 926125997 348642880 624060664 950657259 900487132 924347225 153775056 623314752 412867625 935308016 263115403 432508240 50935809 88514167 132839324 361692600 907678175 712625263 161357261 25706478 735049309 867753335 167742284 464597101 800105417 136898132 60718505 774105228 687753040 713164356 888222839 842729113 130535947 506007119 678031282 420590157 105085656 744869407 490226190 409486667 414753428 892737998 163503029 666483771 223954514 333610454 825604384 726133244 834575301 799209058 397943501 187449032 687370193 590817681 27443164 796440219 800743393 806516263 973096292 930793007 146057060 613000772 215037323 819371161 724073749 555258070 179263984 117279841 793298456 779048890 864703383 533372924 803829711 990733989 663942384 554916178 503116231 819276229 8530149 973430679 987593330 819935045 973548981 871810670 24454704 986852994 760916560 793294168 905668033 711188749 781152960 87247020 121404662 370058586 429224617 924805915 424407052 851153766 834069324 508929832 48599458 872956558 795044595 883793522 144573885 983569725 902037717 972200344 894230163 826281663 756319758 44088746 683975725 745527629 665266124 366576538 329346095 990096821 531587419 781819498 703863077 756979013 807485505 871155113 941201192 387353032 6482243 772972913 799412599 378655332 310370369 533603653 223020745 438180521 823336677 981130050 487790183 100792888 93941780 658111067 88888347 238664086 848529707 294339072 915026148 608324621 820253156 689306192 383874407 700328292 771436044 286568209 998145619 728654039 178952081 992281535 906572230 833590716 464043742 97511119 527850688 246063680 850250723 735234382 417039605 100907425 433712716 44386437 147543516 39664168 715331604 961212822 253006817 915567294 893636252 895292420 586334507 405934217 803158452 666674158 948165764 20214562 789515628 853839374 845652052 568661665 204582759 118153230 675476343 760853558 177100589 124486822 969339103 970741204 224094206 291831441 763305943 951922680 782198097 956278515 937330508 740077579 571467998 322153077 785252037 864549207 931051005 804570826 931014197 809125127 721890856 716352398 846165714 397543309 613633949 436800536 233743634 681901466 920522667 908190596 754934924 919069163 80130247 129262942 769771943 95065793 931425887 932118179 697888134 44073683 957752147 427584141 941452421 780192904 97152940 937039056 934695628 443083290 715003052 867027818 601570928 722950037 777825967 960327150 226615120 803985049 671113470 916070456 590351760 8941071 530815608 275666078 675707877 3186778 827492887 318717506 957525085 253531920 357229358 950257920 228262349 670989236 820415021 574930186 909778595 718785695 648556753 361621560 912692565 875957874 923272709 457004563 679726907 319610883 291045840 911022632 966109095 131615799 526102045 933378155 700406126 9728304 716259208 55497135 173314219 279393035 26542627 127948735 322542827 407303204 632283123 10010693 205537785 306571378 353463848 574681293 696770656 729375506 831408408 755366168 757276592 666178274 697747115 41453045 255997781 629426661 622439105 423080865 770791293 350438270 936950162 670989236 502984186 934772683 665442685 638911269 535281605 180553520 778584801 738735588 463870694 726876197 819458752 695715123 848751797 375361784 479695454 297937723 980216032 680529164 896140168 568026300 533612349 820031999 308847943 274616606 940456302 956271922 230954355 136683480 902190595 159832619 562216224 670989236 51454177 670989236 579481116 476541575 370067022 549449165 701800581 746162991 437485147 22828764 682756082 557167554 852622314 264316787 817959741 477836250 10455653 222390313 833355089 138003339 770977320 297454267 331988781 420263845 584344751 987536886 998942245 160850131 933553244 910587741 980160068 930953942 709677779 320100076 903102226 582028146 440361006 809322938 992360916 940250757 362887459 997943604 650039877 314874368 72990289 551993640 862173420 317125818 734299043 594050145 285992298 315020495 955323550 405122549 91839630 475448061 755020263 853238229 173696008 519583536 100079464 111057325 970730718 569186939 200685059 800180101 296759221 989387866 381023081 807361112 433969192 929053222 923738029 753339083 413045617 862910335 744784555 689595506 773499312 670989236 465279874 982628599 913508398 414690386 12159031 743977038 687566032 966896599 966912430 936513493 948404952 260932961 449668972 886468206 828365736 770944852 921880934 81511054 553168063 891711106 443012747 577585807 669463386 634966459 761966574 545609238 236294169 955316281 607394686 414977413 568334406 23228297 471095633 877765631 573200853 670989236 700134131 948399985 62804789 778409944 592603381 811701024 852436697 923321508 949113844 49758260 7059432 441054369 215695817 924019957 28155653 950101201 753639027 520320480 892592686 263791873 527165857 283506726 597184845 744308789 986463647 943167758 780863812 880365967 100451021 111314313 411173247 905657481 799221650 551943939 12915897 847642244 447593969 414936367 746809209 813108486 867485256 56523697 418042537 740055794 766652916 800883661 233621633 814940807 56013408 102489347 304005717 502133461 899934334 137724346 363481785 990603877 980047986 716549948 870621057 165801521 608873613 807084288 817148332 947101997 330185468 573585029 535793198 713400985 735478054 642143647 190924992 900869876 959934668 915005078 857223953 666393171 559988320 910840346 949029411 754911156 995470747 718716631 408974466 671761942 764271034 934990332 235170675 444403145 901811443 204102822 251706285 76465197 700257465 868845365 714434699 822710788 547184564 923783604 687512527 475737893 636183316 758849864 697571016 805145804 764982056 246273673 494550341 176576468 707355480 338916095 211097297 443284104 757527283 753807628 851842450 50392197 994144369 976720260 786675095 623374238 295648027 86936512 849086573 513692077 89393356 398468638 58277165 712665258 778003245 531634214 704474207 806014495 888549403 692312659 47223898 841865618 872539082 201018332 179095951 606895632 800259359 716451446 941545812 639121289 659345017 801548676 864120578 660026634 439436565 778888461 848552521 324194971 498349308 271887702 765186975 809645197 748163939 670989236 911478249 706962005 391334659 428052803 348857518 445736219 841975966 721379755 746163423 683659691 575341631 656033586 263154519 540598004 670989236 207346856 997372281 856194437 451017731 837360151 166143119 548368301 378466688 852418389 251924012 712133416 966632658 843637681 550352186 819952364 555748070 256957735 952630283 87615353 837252524 333438197 715679217 506353350 728771255 172418872 679652659 882887241 112874321 353539367 824663525 268183063 52072268 943038006 18856812 861056576 980414674 602584752 294764034 984381337 485067593 557181675 53372685 916871740 951676418 157093352 961775802 941806647 289675977 353663040 689515502 888900988 820196684 949353650 24584749 978727354 821368766 853170717 701127266 756779724 334213103 748164938 651680398 936111397 829698654 620015802 473783682 14761352 215640860 45719178 15452805 36023274 848321498 173915985 753562379 422042255 730430306 732050957 809746011 708949182 218497842 728369089 802805154 237717131 417422021 782360369 989893639 792181228 228006817 735465227 297105250 178942864 930009440 791957318 713221136 125637562 416458673 980892533 549847366 940787513 711136777 511122599 997949384 541593341 806069458 528533090 281744461 754494406 175484934 514193522 48587102 597217559 213364165 787847547 979689405 891297856 155921446 846437221 796008094 738660646 326503610 696764224 791366560 959824052 261836261 849001724 516554136 53906557 965164656 788494493 522950709 75058393 983113347 561481269 357908770 877581314 209411047 27199341 92166914 871541593 646055989 579383607 568750074 888179000 29527342 800152964 924606049 777570710 12386742 133569907 689532696 779421980 527044015 458512033 192067978 227320099 245014762 838504675 730864060 946387570 282795650 732611224 842922946 971519807 84255954 658421519 864733435 963068497 723607137 946302916 324051325 419792507 77717254 448544031 849845587 879475741 38118274 127212163 346629211 802167945 860764563 274822445 599866491 807429868 778557688 535336332 927952048 496262817 838502427 988071231 923499313 635859697 386609975 839093501 36002827 345389671 500710642 837275448 914931755 612751248 970768376 472706125 848869671 970811442 691905152 200937218 438937297 919551411 704165252 487901680 175658965 142802044 126996706 818659586 146826982 940549488 680488412 107411914 211609960 995204172 476292848 38116448 498021854 175278266 779300931 517712258 197389320 917911589 512266273 564319584 670989236 92227493 546137611 739544622 6508079 843826631 441371084 801199024 900499161 209479975 693024731 703808317 448769333 921848272 508442932 173751118 682514526 729561771 530592004 728828002 19996990 169590572 867675661 936265108 808686783 676689475 319890647 480913346 611160018 432797631 471185593 898365298 900785044 7744298 766503739 496964208 22160225 353515416 133529474 746471828 896896126 623029407 623919718 364072619 999254468 207704163 851556007 729876049 92755094 669572649 396733158 713078924 973651926 908652953 815320807 889021706 538147837 947378984 612179399 821043197 691275117 230593181 497109863 182466217 937516808 367188247 814931491 546337020 795356975 888046892 285655886 443176422 748877981 769207249 891227573 468314291 214937015 953493427 963833211 189449282 960898338 691231400 808052517 934318917 254499255 607935346 370547401 935561233 545075606 387076436 482502689 875507610 954209862 961439811 669221733 883280359 557261779 254771525 976972649 679008818 947825565 983869265 682223743 783919257 323826611 774514249 802718651 278713587 996657691 486425792 957231177 182862024 881248061 569423996 268441686 684412041 233446822 393607876 784967265 441444460 682857315 854738660 722035234 693801514 825894910 58424465 54534964 780661938 918453273 31387100 57279085 483918620 431476200 507618330 813646818 676093721 858530437 252067394 220601296 462276081 971686713 837961520 653151704 670989236 389573937 654041924 440072065 446835922 728909622 667996897 213358073 292014689 939260285 183725618 842116421 994113175 370129634 690799742 274825826 404401699 647893212 380291264 708241740 712970135 952429243 965038479 634217644 452240416 141247880 250546843 965811869 937584530 683793982 403853149 462762360 174368537 628738713 691836576 807440767 603521154 435202397 286718397 982927385 20619608 676740652 928361826 240165905 840874049 206315298 44924361 591241355 320051485 670989236 805467214 324419290 174328143 696532927 308804260 538382744 1405001 59751482 767439077 38564024 322372515 39861172 536754673 283463407 836105357 645426822 948391700 404059555 882702519 673623521 851073253 23437176 836014865 207847642 999416811 982932240 894681070 670989236 317809470 117824716 851660154 273586482 697762779 254643805 244815495 764912720 884446751 112078366 787864811 921812042 247007667 71445443 152088811 210943436 913943761 588367510 686611773 26636961 824999885 818039790 684791419 851590532 946431748 844791147 927836836 597008687 714360591 817763253 4371922 412443324 976226274 250586272 412847633 337515975 758845636 749507156 58186235 973888618 730890058 932361001 966831328 770403101 994275086 751586567 677636110 940301118 441494660 409726596 687986027 939976221 796913670 6424350 257155309 247585657 253529272 813887973 670989236 360928079 560153739 745862450 768165888 422796548 437226865 198800674 834111825 871700426 127108568 951755280 559552629 998210135 716677555 415780273 83835982 852659838 764827348 365954314 450438483 758473010 730700328 96952516 154468498 852409984 746471200 780107473 256241086 793258307 897922937 996541028 707591101 615626069 113364997 755254255 915446555 913133006 986603972 285503367 399434373 64089014 900909147 467738205 221304905 420153933 733223254 850383870 900241768 513307150 601232553 54369048 797035169 81549137 183278057 504318396 198719894 992363322 995712304 738418063 953875013 964374842 274455949 949689613 627115365 10612406 867787982 3223869 828482903 905559328 587525776 353938853 330418717 2192041 755679954 175627595 626112446 270731433 16121355 889656220 210060929 986552838 740342629 996327549 452761471 682012026 738843222 587179408 93154746 887178369 918851142 366648106 955386399 670989236 873279729 965926163 905993973 901907564 246864496 545847958 801504509 54134270 713994163 461111182 188435683 981656122 697687451 500567753 562344154 465543184 126873954 773011541 789263906 951626708 93205108 598993626 363219365 812043505 75265837 781562159 391950751 303236926 549807067 785308766 912876463 263967073 769663925 62622548 94798909 483569484 851645223 782397901 299555738 14076249 896489842 919029340 65875320 263240734 878340262 732156952 151280332 3368924 569548993 844046880 439212771 741994593 921759249 713865006 714182521 420003909 239456515 788382769 495132290 264256998 826676191 718959433 468959046 370621658 434534905 567049216 126462681 636523039 273186891 836858767 632348672 196971418 310933638 14659818 176510583 873264331 713895117 10275391 173140441 978646312 323110122 712035622 553178654 646917592 435564750 56463574 914179210 288908529 586668090 782826703 670989236 885246112 994646210 826991905 734002413 723511467 136015226 929097223 421957799 895346228 894662890 793220072 932529167 293928881 416562850 702900872 390463725 924089787 963432246 936052447 333311943 154613686 783072676 551139204 328199112 945703114 768801960 895887925 691482927 444735829 128789327 135667535 405573079 569918306 929102649 703076971 787633251 893927119 500054458 618322367 970298226 134662619 347494972 899711502 780895252 646794156 460061887 816434501 907535681 687284129 731837931 449886564 957497499 393484194 820062888 541544733 735386989 830485316 223335966 916748729 791469050 91350789 700370645 967010315 476277504 360328900 478319594 140630104 459782102 554871678 956286610 983013954 670989236 742070388 687727386 135582762 272064162 309845325 482102990 670989236 768860162 848091716 87432084 182978269 729722116 565949757 499224132 793308708 855241919 647007524 948135195 829041475 781800921 607050995 514823212 288965218 174520504 876738483 994115332 765164308 931285770 892279660 527968288 900600895 529836668 769302011 712737104 811006725 433168865 374695828 906139972 693739070 240952715 298042955 937112251 201566985 805641385 918906325 713729630 150840034 989117390 519003961 930541966 639358958 101471303 904863878 933516288 678169242 763017255 139003410 457315900 433592443 525856046 182161337 989769810 233256183 868904532 287073659 477637349 250802352 76562456 866405017 631716246 864362004 586731043 289970041 283006779 516932495 893677195 506537294 323651798 108885896 729253114 781731938 721724822 781218844 160836308 539604502 625502295 74322102 819932638 986840446 151155965 381930184 375770476 146030223 227416199 593954000 680744644 557559312 721220224 135117679 947677926 142486510 835907454 978014207 433290661 489000673 670625138 759372443 706839130 981655814 318994297 414558069 273456659 749267245 468123283 832284215 193330990 747440057 228913032 681558261 739011339 801402595 56364380 563128375 872201952 714468122 37911921 23870587 825442447 990299888 289966407 680544897 556470339 911077888 110860372 525366909 471546048 864827344 772337262 683312950 890930021 580177651 627769717 804168755 820354435 937413128 692797801 294420799 326844516 497695762 230917067 698102533 50678196 809783449 777085319 841072550 344502799 680838715 586250300 869089282 909577007 821984704 691014919 401053452 280552078 851156960 168258249 497900509 928645325 757998448 243692866 494057233 272846019 780360899 782574805 903433468 727427817 6850905 555303752 57260218 882699492 113628590 670989236 986201329 809152436 733904247 245562595 673202746 842276179 177170659 173204305 251043756 578465367 744108368 789068826 558361850 714618298 690115906 942776845 593829164 566466635 644022979 932993412 842827377 875391539 865539126 217927210 754150055 592194953 141148949 900387622 854289433 912306222 897288639 803277550 777767617 880614599 341400704 306077578 184633745 592783314 30938284 708417516 43654991 949957300 806916138 605539971 946334644 100814622 543193727 453502519 948344315 842925184 45157615 772246515 81701195 970309850 990014234 986763678 807728559 775328596 562401902 754512638 744296684 228471452 969687370 298627615 967149675 812595866 923622793 709043800 367254160 816180140 837419072 484387620 40025665 741533052 997515918 334086597 273825579 980120884 962080426 29005868 135001035 404036521 857550274 730849828 805246665 909087988 895214095 840587674 819111724 817995293 796523248 982478764 787959451 670989236 474545589 680825233 213587081 851543919 580334210 80886476 503922512 782608677 872841462 947585768 279711810 792758540 428274559 421785595 303449714 940231893 806835366 984014865 703332148 613639217 875840096 584415916 880720088 874087956 946846919 434752827 822305797 553791765 490513079 104272188 15734830 880016566 48661278 902078121 165107190 666663130 968611313 920122873 472190282 406084226 291489414 224059684 118206466 584298309 935916017 112140739 820618198 724736241 51511170 218492404 13262049 292323566 392375648 811942525 800573048 165892717 740962002 887014985 172141758 858427776 504237075 745393023 348977691 299765172 100714180 448149729 994218382 588254132 351718080 107770429 962706799 770455524 802337103 726381816 127693889 869022634 251298065 833847751 613418109 915478299 683427425 854161819 851792644 565820941 339450649 55159698 589917703 342662645 780118505 840427055 574349712 935756108 856110945 547663225 920982249 170379384 511747539 188666590 158813040 668831212 913150692 216692253 116376724 401440646 440111575 52500913 91849082 670245974 419373783 981124137 458300562 56618230 903441921 898339464 523954691 181179417 889152847 263675317 220153034 494543971 266451333 762013397 614950079 974590424 764133121 674807110 783671024 14196450 811226065 838661153 720115314 573996949 733018356 265490422 326402594 84353319 839788913 481651869 256202348 969934927 836125160 918308266 750125475 442187772 40735495 745176516 52706829 76347200 670989236 949114731 184650053 539309137 967562338 572960874 990555234 472411753 930302204 971769892 823673805 639583678 986031076 476760716 775476483 76383705 845580524 660012762 897783015 620228272 293620760 878268422 972155780 452255712 786164303 638159173 251539539 974193123 754814544 899449144 30557780 819110749 422167512 667486267 541423994 936763510 574261943 567008371 825148376 646983388 514563708 880035730 919706861 51522348 842077689 389142546 499431230 699856871 641445721 183381056 925000880 414732785 904690760 20711436 369693916 957299293 259010958 818532659 506745893 101705576 724877351 674680463 302879739 847370230 366750375 459047357 162306438 6919966 756782999 612386288 562727838 706063731 216961187 701904623 309637281 312731605 228218316 760721891 147031666 712791815 966176537 656354916 760317211 790230521 106887711 982282784 178777092 16813364 376107139 921332307 410072749 488335393 810357677 332719457 385480390 904337838 693809736 65777003 55820164 313249878 929889574 670989236 623233655 132546371 714430246 648046597 291489905 699794237 255032759 306480246 172175341 696502769 408971854 523294982 262915392 390112442 896087967 953635045 724462867 978526326 314527950 801270209 708572336 460733603 266961447 926897432 727578770 715970816 729317629 538563752 676383180 423207199 355314129 21961333 60972989 331442568 397853201 738198085 831161333 845325742 670989236 171142741 678559567 933332870 708897264 863415463 688679118 881607336 384951384 217116717 921280087 257813488 596996321 907695352 738253690 674785229 951671628 911645512 356540042 697037723 927869493 112823632 818885849 328937832 267156351 787226451 774209483 755173106 338146824 191322573 216221817 262109855 471554397 511262960 670989236 436238145 850856244 898478068 920130935 691027456 772056501 812838877 780579576 782901054 897939172 206787522 914080862 929241722 236208209 747238883 863757049 371197388 939766964 765769422 909269386 422010666 70008496 174011500 956440001 365674004 968788946 872533116 927891696 356176924 806953015 272958708 803253662 686774273 617944054 268559084 890444233 912116971 584665628 289462855 540459369 770604281 676958680 118226538 716370155 871897677 126802495 914408832 524490507 878342170 7222182 643746792 833821601 818418577 496720642 458921449 3778276 905762327 555853048 798723536 699852845 980592335 123211146 687363388 154373893 688585644 450696578 730168986 35181201 859419150 919766731 943087954 488530038 931044749 891207569 532458348 865403202 441634559 493824697 760627471 166286003 545119614 670989236 829271584 984099436 63041109 322151169 824128711 772807938 775221516 452191630 774657263 46269650 709698604 741656967 578916927 12385674 817359478 756036138 70700554 670989236 209736993 855111256 359707432 145899561 50602455 676934313 183476137 500692166 817677548 784579864 903310002 266616908 811984119 86799144 375613538 542191978 94956197 898856291 879581178 717627536 597937927 123711152 406887405 830505910 157898723 527118887 28571464 866888323 937173753 628638872 275756544 228583686 807917690 163945868 675573543 266487933 437101401 698129167 826838883 755244981 340937336 847510941 344539336 928552869 277208281 889271621 757451761 767297339 988103934 845133626 983613337 670989236 44484860 780902639 762004497 756652260 151103585 980106600 696801049 607452408 519780529 113786369 546528650 993049731 776544630 696435752 639434604 803170571 898665911 148960478 154036780 433179461 887898932 267791007 904011192 700035259 594906594 111591944 984409375 156914768 878060463 670989236 32215380 555455589 27684957 670989236 511375580 362965076 287562778 193288234 979910553 795993280 568378929 486903579 939704811 566273980 834029253 967994221 271562773 191118983 282166350 688090293 599140782 920903360 38799549 784099563 402956800 364157053 243358412 858621673 161933426 97597082 677947225 867782731 776642408 645155961 763350443 203015781 681789509 797477016 816979141 266713993 314916806 820552115 589468758 706229524 508584922 755238142 830788339 62412829 350240376 565337484 530110043 307856305 670989236 762783169 788825821 695631277 171067097 432421806 293720576 382041387 924955217 437642444 287237884 201188080 858284410 880948542 187813579 725978721 757674388 911100155 662662035 963343093 883812280 721963344 531963516 410768587 176889610 915353753 121613198 863933213 381887936 146940839 998591599 813572126 952437029 133035592 570945864 468169804 300047599 342352951 993681352 619453976 759300522 545187689 983284914 625350363 838457355 699935875 206924516 760062119 653986473 798969256 478779873 426221552 113068830 226827788 939143752 797872918 376402279 996122133 923197185 487188264 114094924 41854508 851718967 123623081 437472251 530919179 703626617 468860477 26245322 722179537 800786376 744585403 843747555 845685227 506295182 192262914 413841774 795270074 710597534 672666153 154343152 479949381 486955075 956368396 714817883 784758986 307905995 330461052 450092980 289623980 50391154 220211982 773043914 780453271 83422445 851658461 895022896 797432196 915329608 428358231 707500471 815122277 608335389 891078214 739351532 933209622 92305275 943707503 702650602 670989236 145507604 312849055 840660833 365286416 722295603 864814497 439057591 704118857 565049378 654810969 794450438 736849765 638331772 526347995 909549703 676422503 864422016 288293173 204971987 846919143 505882801 970367247 492696506 17601130 773137266 73108945 720312781 998007213 573290439 699073762 421566566 768821663 839138726 795869246 704948894 513885257 710905036 222895688 614573591 201798977 18743881 249077226 505749752 307458673 768249449 578865862 910719500 932225876 162881367 811260386 488026346 864643656 910462214 908886952 803788621 969565217 933027512 819369698 675579655 425907118 375244654 548436701 675694661 110082216 778050327 889636704 551844588 94728694 670989236 218201754 181113385 736803666 764785063 203591498 292962312 796552316 763024075 795981586 528308060 57459668 794851823 811991151 987618144 859644076 709223532 525023101 979537182 458280395 117025816 933791750 462153039 870477645 670989236 677792281 922104540 367864737 549290198 143112079 792228439 613788881 782312102 830267577 468391412 813144386 779764214 840792276 116696464 632424642 808481361 799426787 890554561 917376807 323510122 815325304 793393508 236234697 609944344 763946058 968949123 939814464 998849582 442528318 930857390 615034764 734952076 733202844 587779017 451013610 19590564 597809131 263353112 996483407 977071661 108710779 537528655 240098736 993049631 132219799 998711577 180374195 902674356 919668777 20983535 936401621 763825121 712283256 667936483 40102936 784747911 902455954 328183190 776659551 570226480 962693195 893258069 750882583 378086131 43867425 909325306 893958567 866241131 986876060 474055458 648488183 840588537 164029499 322020308 138611542 862507771 412604302 514179198 797118883 783863014 871126855 551928774 820026319 808881591 327956108 901488984 889650982 117953998 941452208 670989236 910995957 511598766 346021584 508003981 895860621 709973111 906327208 176215136 570814362 849401553 261094457 560166683 998501398 393947962 817342973 747025310 5368078 670989236 831145104 25461951 205331783 699926732 677536302 872125359 703067375 670989236 559855979 979413590 971031588 796717035 576571360 922609400 969336133 910882018 277184058 844536369 687282793 95569136 648068542 779492852 842929299 310352336 658973391 697052604 38965487 113434330 915877469 983136625 873134559 165383613 48010081 836115975 704838948 685194404 254258541 65395885 816346310 211702894 615569828 257633676 68206175 630254507 466147373 799144412 572830104 245827120 969727352 463154694 281265907 744013948 351080255 561491031 244499102 75913651 474491447 346128946 72174597 639005187 426299157 311430071 92822689 911809427 717995328 584103755 930063893 587921331 694479847 929561424 117746984 682220832 467236576 671656151 149844195 779158344 155330727 657829993 616658265 258886840 812494024 940218031 562320930 738993021 763291717 789616170 793652943 609576306 794566570 898191492 700355706 838309471 911685343 590646555 675317505 821227653 517783000 735552037 208090467 976077885 283998961 956992402 641179808 345515409 296853241 828955770 351133072 583749942 810824918 642659304 921815966 851355334 846604571 339201079 470135128 649324780 798832153 353970127 732625363 279644592 804351376 783536564 322322925 410588139 55081543 864750843 871580602 478075954 843673586 509032511 79594134 670989236 382178050 692949698 809750814 161753671 897666048 325875063 610060876 329869786 780420444 32237830 195770029 792251913 769934559 987629976 246742325 80738788 587003339 650717185 970556558 172437228 912174730 211481590 302180697 103341405 56754716 128052548 952384370 441304025 766000355 1097724 481443653 439802503 686493594 724984378 670989236 272857197 828127625 467793422 947062347 111723030 687721887 736887692 273734774 972088384 980522542 924638177 890842769 377509769 96465924 691922260 883344167 783003584 775935763 848929801 500674083 785706900 977146803 112218314 692225094 709238561 882379366 96423411 823108395 163340361 802682910 616034234 647456382 639923514 551892167 957577433 1437596 443511747 978161480 859048957 384428262 762625326 952470117 937065457 767373215 986546114 705430772 292377394 447429383 644111394 347385524 977363788 811943132 110612896 767943161 392585678 859553233 714274053 703999909 958072162 975647400 583249099 822973318 600031450 477842759 696559971 824254290 944723856 991697642 840089112 331460299 688440190 375809296 343210928 629239168 361006283 50730597 876799660 924543344 893281499 8566974 115387370 122687678 157292678 678412174 978614270 306965990 33482234 911763410 97751462 498301846 411101840 169965615 596086737 854431973 896082861 854791363 512881588 710837575 54128884 160092239 321843431 882074999 982487365 916607168 375155367 876156691 750014504 847725845 135048860 894035239 415015870 7036407 236776742 997599621 855086459 104511265 397636556 380601226 829235798 893395213 800528319 312637050 335530313 258695474 617364683 182920839 965548426 555435251 173371915 11490865 99126583 863004514 985532109 306421865 50852407 502670943 691987733 919623982 199079134 780333703 891319575 617469167 251673986 227958879 831806062 808994663 596911399 269882418 867438711 391628842 946912148 392232051 769008941 537920967 848006020 863090498 404129663 889866173 744127029 700506072 670941459 612154989 744656760 586379719 797389636 940377082 726496100 297457379 275527445 30101327 773235320 780558164 345499208 490877401 93603659 154252169 813999084 974064189 186168959 763553744 203153210 921481737 777017417 884722338 856348873 636991046 762609769 639074491 392306389 639469627 806035092 217181468 922417699 376775056 832152906 457852196 63731188 213134211 621682328 630536722 276238530 849400747 84805087 266911942 557296460 653671334 436454922 680188929 680396809 538068870 288687518 330946409 465785119 941935085 812476960 539663471 851218520 851042492 53893139 991122588 460579877 299284992 269322250 436711112 989986283 811420185 767669869 381241153 150182428 985176472 298482308 812049853 914994845 708221801 915974857 840369070 107470173 964923318 708379497 22386435 656573764 463197898 759544446 668437406 770228317 171284021 737129042 906594497 672130869 422587521 619827752 503315691 175172908 327497040 670989236 996777803 659331151 10876511 693204749 337523326 25126443 160985719 799505825 890212380 541782125 574526671 580698213 137668889 964759927 613803120 417220789 210036722 369026183 457163183 241022885 994389851 95025484 820233703 523803711 834432574 742538067 681408794 58897136 911687516 808957767 619480043 716226471 404938285 823874397 875443752 684474344 467547418 127284642 641435805 974272742 917515930 315589474 174904820 574877111 615584623 99848781 833929499 84715230 678520245 444922874 712087949 265825447 789176601 726785808 955221490 346102467 809735364 594254685 914660415 168129741 199822419 986293267 724662090 589035178 664933585 765125100 168962196 694070947 427359945 742270903 58507738 65140705 115950259 806693890 473399448 7783481 926780423 199792997 249382598 275134796 508608285 702036788 282568564 685009194 780661787 255620334 122943832 122664522 979672587 360766249 277476024 494266308 548017024 923992662 551062242 767522129 853163149 861454776 948013839 983068138 877659756 905136674 328552543 819533351 794768458 845930752 778863072 898995455 386734858 961775603 494719407 54886895 133280550 895224521 714147496 69685734 670989236 761683725 209271537 703696880 688550105 344364669 846511521 805463479 914990757 708271189 873095486 178085300 283629704 879839778 888571736 622560518 803567812 979722629 792123775 718861896 687244722 430156533 418596155 805835166 988495494 879519427 876460789 657729333 816404595 517218293 670989236 172846224 142123592 870791146 982607789 581026381 352466123 953169116 156898766 949969862 725628496 640133186 236430319 868474684 6356204 718083432 849856825 937745538 793727379 689078498 490007403 320962978 438716363 651454569 493544710 433256004 920412715 130269037 961433281 653403732 924064245 842871762 944625791 679472979 387689702 683581964 653175532 713523254 270471249 376471830 211853232 888193930 986385054 461854097 290899702 735902437 839702596 653728841 40338490 841286530 188706467 371023009 124392363 39419496 837756319 968619742 576532421 892347132 723567229 423409104 835458874 252671101 897190792 814533739 535577965 914288540 557113843 670989236 836165323 490718110 21503986 97064194 954607828 984612189 252039423 149738558 647341643 542262918 769704087 684233645 923641997 564482881 838481049 801651008 444416530 720315043 453089514 84538904 999027125 754343776 954865557 801281242 681521917 205762492 189437500 723053458 786349240 497791877 288076346 402002647 698307123 908657482 22513055 843065019 191521647 903985313 709390415 127985693 711768449 779045370 694350051 672267271 445840036 947086360 239655013 811652547 670989236 658757873 551034656 378532905 828829729 918351701 34510620 886094373 756610946 152996696 534875608 866532103 290553147 540728717 613334778 547697648 877575960 682390212 23787526 62463500 978870139 852012389 2895453 317246869 815752695 931623391 327719602 687129438 939911423 569694126 769891408 689361919 973609199 849357345 638113993 24063133 587079680 860451796 682528034 795871047 97284406 990924127 194003963 266170524 435545192 611319219 3225234 340650947 948882490 948467893 146079305 952084586 967298910 181473124 585707464 872282394 749109918 331297412 94655485 42743681 304256704 107084524 670989236 548791751 596031641 597693328 681877623 943354241 786702515 395454444 664291056 922854351 741252369 745076257 559621199 764540491 719682611 593316947 886106188 170958368 649568582 459512909 639321928 989108620 232261238 339821182 749707265 968311558 251963731 379014697 755593702 113328953 921432381 86115888 327829333 42940727 714802561 706687522 688971656 123174835 170206333 825960578 7122439 419217801 719246342 486062148 856109370 790896402 641736719 962052188 889865465 997397898 198097097 967607963 979397507 162325864 247532897 877280111 877779020 687066438 725725531 364090187 844229140 935695497 354911834 473828846 751576270 943400911 178526011 173794296 825079181 473720498 952213450 415555340 442764150 147411776 732076889 479895460 33795640 161906876 831786970 296616273 327553312 562153472 52592292 442889431 708969083 950235554 583292798 840098709 831650072 647536086 914631763 988221143 467746519 590957960 670989236 945647483 299756351 175814629 325248346 986891311 754064267 987386713 94625744 13016816 175810229 554131471 965221760 853885753 720576664 848541605 584376291 447973786 468066707 51640666 970961227 628120901 891405984 16580337 782767611 893469479 217579490 476179460 658729785 49617539 179841812 908691286 209588835 928105152 968916760 317558181 544042419 656519866 694530871 843763002 860756693 647899083 504974800 611697597 50955700 701376213 366765414 71756880 329019100 124172622 114622589 792435379 827754125 139714431 982306810 145894582 733198492 837176074 797630288 710856856 41768500 16466877 993114288 204658987 930006604 573973053 392228922 670989236 776639282 448778693 715899062 238842851 717352900 304170096 741947013 678730609 767400139 963188910 194292137 358278350 17414818 544651704 957112604 670989236 203150931 761398617 419833673 722429047 514406464 913298420 779826484 319099815 90599433 666531493 18327893 692891769 812577415 620034127 890229994 749625138 377243365 774755462 289512332 660106568 687078028 360561224 455701437 218659865 498089666 580110186 145010618 839274559 861216527 470371377 462141955 718726392 868497539 543077618 916144926 930841046 40620414 891783397 555219401 553338469 598809649 142028369 915043247 585839305 846906895 895604892 960336910 765833961 341562434 539713982 608488438 884841820 114708835 918992030 989445154 337712509 322942914 214031731 602557069 256413909 224578185 602829302 264905464 196010518 976975745 795644835 7158997 935288040 295419152 854248501 214769810 635812218 714616235 739363136 209458640 941155090 368377919 695033549 695330471 846082302 814329597 753979959 736244341 777294899 790431822 64709304 975003220 774354007 715020827 815314926 745400576 546956567 980576416 31660101 426377078 632874092 878109415 670989236 364002694 996205733 733165776 927004766 61446060 824302387 713513852 289885528 248764039 870887503 853616287 853125757 677355228 676421303 683175059 330521914 985103962 732437006 407524647 860429445 671615328 372720733 858970962 524599516 362090132 224040923 784520263 660506528 33643798 978525814 979334499 821494288 426591038 68223474 687318760 231115491 270357778 872281812 669978057 801609803 585772417 719105476 748348599 893353491 740834218 400394273 258983984 385358599 730820581 256422597 798833803 828904227 274652683 758293728 718831371 291876559 966526545 468192771 132751238 894238342 602379768 911322308 670989236 820112795 984447710 796854335 521730669 361796948 715981013 684307273 13924888 751784825 622154752 217233288 773196793 269964098 418714377 782467502 945787061 156914675 526970155 305290269 661063988 803294034 707668650 453609892 744379202 475892300 25573611 759989026 602522421 759629991 132793983 643815877 190678862 742787123 762037640 243391414 671824743 248872552 16880994 173604372 737449993 189667829 739045023 345358378 130188954 478369524 156340696 821786036 820965165 187570721 364242557 919270674 780067312 900320052 445575475 332496942 346240532 868313488 966421412 410730705 78310562 320652205 811026186 720890038 476130812 456207459 238236764 24029130 496360390 435321869 705222041 617507941 409449645 854759274 109473495 845643979 899386923 84621338 683103472 774981302 899171446 208175653 44629501 919856723 633536123 519325395 268309346 324041367 428061449 357854126 517232539 622789874 918734994 591569209 876396654 50888656 803262279 763314935 617439086 592906038 375750151 877245939 881594907 920019567 876358609 939515175 620419345 564126502 848010039 832621847 463465175 683455038 798991515 898519365 800439396 753804786 91968434 931332610 750487151 938536489 722301192 707545965 873214996 815721722 840433773 868406995 749971782 181686390 855096549 895115074 388112558 368639526 774522560 245356034 791037681 682706654 822355816 829456598 444331129 740387945 877599634 971965807 30216213 542166650 689540936 947591108 363333542 883005206 952597341 812153347 52385923 609609896 745868405 913547647 577273853 192617122 595217501 694293871 187875845 662443557 764665859 393455941 809932080 338281039 203527173 462620314 520746574 560945084 775313352 511537624 874746872 933847731 256241138 241332501 12266304 767295267 814210150 687946278 834242564 374301121 282003684 940217384 870750857 730821242 834740172 824063675 216381348 755504226 399956146 186492069 124894166 877739102 651724722 679574492 502954528 816951743 739840540 889029232 672592096 34916478 730323711 498703484 840248795 851798105 886665788 507806389 333593739 268293088 347956045 998172650 115006633 803024605 595267637 718788281 168621793 606874051 283331906 211715884 841835994 509769296 805921639 763433011 834953980 986217487 631868785 842852202 179885135 916053831 306401061 30616950 784881259 216334158 462245191 614762289 602333193 836197227 795786436 929096106 111877638 817116067 898545312 902984745 284666060 284041153 694637016 179413993 129216120 941052082 895328078 745193011 760208225 337398794 376739500 808899158 938736905 186718998 416388945 791728043 265714682 543684265 155836545 503005505 978319523 959982589 135812243 990625064 227983933 709010763 502821201 961758337 958480333 116779057 98655936 947559344 394035901 918492600 804104070 588488851 412609938 679090863 760598686 524212608 844472192 667012484 933831449 604861318 34236024 31883130 784465785 34472676 947675603 286319051 943478671 523479906 763892595 750477605 792397588 55290859 718633865 221658664 690230801 768533996 861374826 120218219 534354557 76668962 287495724 498783928 920699721 817980857 885346018 359908754 169311658 814691062 540359706 965483524 870910094 748260742 923637816 970540114 722451662 908275227 993631859 781418140 870163418 35878396 903470899 890951533 372716154 736046454 815572433 958308348 391762906 685256623 235968308 888823981 331631164 306414316 896709000 420920583 771542748 209186581 667024108 876938658 946391665 884740755 414777246 693076348 343661222 904348826 934780643 901845689 803035634 783508419 841692921 162668918 898497550 65772199 33199532 338200564 875074906 112786633 736770874 78812572 129340214 417025104 603060531 975301211 852940550 105293682 924687739 940114612 974294247 711758659 651848924 238828605 83585595 914859233 23169760 961133500 865218210 119884017 373665410 420039254 268318159 770753899 715981797 131182123 95929724 588823112 29015715 867843946 487287474 944184025 737973478 912440223 309631721 245707475 767342259 856399884 922059512 172771044 136261464 595544183 253687427 941253627 131634642 371561142 675948591 151849917 822922175 836985525 827403856 811550820 2065745 764884946 757549234 695742891 32370342 951826819 850222170 546712796 491946999 586282014 784703333 903944296 759972006 96573954 983222269 572173815 790447194 466333706 140169158 548340213 32658098 590818838 957882246 296587710 658569262 286779490 965294058 744255413 858310291 586531233 329760897 753138321 215497914 628102502 254890905 697914249 518344955 142896697 739992656 533798856 131768822 969236388 744817753 286874024 379940429 913868761 807838503 934593806 367103021 974317389 364868080 45480092 443115782 112404652 321152928 377764098 796456493 718337835 757870780 492182555 949688089 784963011 969056323 856299840 575303075 928975875 518722943 569905034 744753413 884548279 574672499 83921885 441339180 6272047 591348941 768684999 745148278 878689508 48299016 312240042 344166832 728813512 86101828 521401105 196198250 962858664 830596669 655394541 895636078 773764862 794861243 639264305 741484645 789836095 268479042 793629083 729232139 632439354 426490376 280159596 494153178 281578299 654614650 29914257 984917150 205468967 757145176 830565720 944133217 757781896 153994795 957245878 915963463 750329221 828873642 789701557 675052276 826741073 723569204 124759914 983061046 421409406 90531552 850690276 813154190 936335501 207369478 531931300 388318326 698582455 524980867 706458399 557493588 252964259 539319404 66649653 49112076 247543271 258709672 983219475 770658811 868029785 990740474 856240293 312402471 975565363 821854786 739697788 698004081 905650777 59073961 749276316 908010794 146781234 606669734 954034552 835058094 504766332 816614327 991370223 276432186 951493336 566897283 685607616 614068649 213340915 881814028 2540415 980535162 188236679 741087005 965367502 442921344 329877327 206937738 770691234 827712288 111529849 670989236 503644548 711228786 68910922 115816049 454015748 636897521 902962536 434391420 845886341 740761592 899285376 897291865 256689119 631034563 764673345 930417770 869917146 983390113 712674068 700167095 135028728 68762682 939629244 571770534 768138046 897897637 680269952 863016478 859757816 459429552 77787443 461730139 389225456 763166674 395601786 891433243 760512207 392011212 573992445 13578069 910895264 653903595 449154323 919814285 368314008 318480504 648038766 20009098 498165644 542298524 817261374 519548551 754308836 967942165 995865720 813853423 997852540 689238773 455732137 748223001 987090881 890571321 770378429 849799220 820324415 921329643 679802910 963355092 890389359 99789081 589352431 344046075 826608054 705373691 88195398 859160978 9309871 703537790 754596648 952624560 175897904 701402474 990454915 8206015 269325095 148703541 774381114 158159590 844254049 19695805 713853364 808605805 488571134 882716715 981958032 179388057 40115753 135343043 553270696 797283518 697069605 128394231 132774372 670989236 899888923 354389753 117797416 148481031 463423872 494608693 812893861 441856020 606557904 496802775 880346546 894330904 511031478 937222429 11114045 250349421 794736792 915835372 420784605 977837212 482697723 828664820 778259951 829438185 4373479 157559712 823323518 232991726 560862297 666462366 678856774 713970756 679413504 271828263 313435411 278237849 400975358 922334204 947362991 926543594 238502363 746378771 282781760 463999783 934627388 990913867 442116782 51823208 858354656 706795340 801140338 291024693 982490262 981596106 738350275 258656609 784008054 710604636 885912408 731423903 697642072 753739138 670989236 329154061 809410523 924464147 936362215 938310425 651952258 906627422 523447387 344559392 221023456 942409646 692266853 649496501 824604413 873642929 291548555 352622637 818449352 986877523 678180109 696477890 691775511 380389214 361306421 975338684 947670541 944549187 752587418 964848188 820521165 441439438 837073221 728799775 875582849 713975408 718600675 143303330 945955790 817513678 879756145 926429318 93884571 986189622 260368813 789548683 705392611 251996449 815323648 526575488 802934256 958473324 892881439 958763169 43784602 700806087 801859736 522345799 898594779 703097979 960393378 931561953 203839192 649101038 299487802 875829589 215222522 554566537 218210511 684021885 877172467 989618194 927042349 670989236 855168219 113359375 336302259 720483152 296894968 993999287 675464484 697779377 243352405 972494922 578298134 408113939 786249639 219827583 731017300 728839122 546234673 847037352 165793519 776446024 514011250 780328836 965336666 278994019 993704204 710698221 757328989 189711887 816776700 408914834 843313261 903696882 990224327 701031365 913738134 721686147 208649830 667650986 750506680 66146610 700626383 830609109 490839931 2695120 762085922 582303102 414634844 716066546 833820216 952521019 250434967 712488757 770644366 437688469 388408540 931976482 42520075 734560738 704609637 269047916 992347302 40086028 717639917 963145719 793171485 963757900 942311413 874215400 609424372 168848042 750531835 594941352 487217087 995932320 78759263 686266132 685508363 242004989 994624434 321264141 328931403 730063536 881630952 285220589 696365726 139862532 730569270 593557136 912710350 399079998 518991202 575276697 449689665 654512792 883213706 928291094 318949498 361122596 605691801 978563183 796031566 715007256 674716548 828588568 159779030 535519237 36852785 939061058 810510375 88111703 668054232 424910279 105607926 707363950 220172150 963894468 855352246 688038798 985910732 647442429 423037668 984958797 369772483 756311208 253586191 972426569 422804777 765042730 842011603 930852013 692164330 243968930 167282461 999598968 959883898 230097921 692676953 253702504 30075947 877965881 689055898 871672198 628420890 954990561 908996654 14941905 745655384 936948815 68077887 298479064 847261160 825102816 822351671 20105827 675413210 62552332 994152053 348590398 350856143 649791030 475972778 538298136 490803899 870626300 42722580 114008523 14564034 734991944 792726900 180510308 289488506 675480891 176776601 753229448 26673316 812665251 63897123 853685434 356038530 445289060 467050585 535482776 496915155 847653773 509993431 324128411 337325011 248368897 926450551 330401798 400466207 880496981 870030495 433737056 998003658 403619294 914734663 907102695 125959255 714305804 578732553 225813674 274613516 670989236 812086168 224545820 179834244 872986414 304223925 694986330 736791177 249882185 840179146 394554103 709422239 926917856 673411859 866984254 272822150 792259763 658754656 202782895 191581270 633511135 456075773 582096300 479955754 968051057 530860364 766456578 845649299 794251581 825813634 719204266 549821032 796625192 873844860 881851893 430960900 890172932 703578993 266677015 929219546 201127109 967991053 823746602 726563440 69563667 713015089 247169768 839606054 158858686 162257147 4416850 953863705 222114411 952774576 688377550 159866562 935350062 823092342 284183981 670989236 548077289 795765694 672424476 959088286 823141257 772978643 727909962 793702028 230576506 670989236 370234424 901892750 468766262 749688879 767119977 822034026 501859569 996334099 216793155 545749473 553601159 528415763 985313800 984751945 845452236 261201810 807100578 710324230 826828367 750063558 753522452 485900560 627965600 616628137 590885240 995783476 886258770 129296724 678516974 398325578 803925395 369929877 951261811 681041943 602608985 988761616 777021465 763248249 798354483 10836728 875313769 871665837 378954137 175374403 875690715 946508961 934908632 745300261 686280071 720539114 712950640 838008414 670989236 430191402 743031396 639129061 886595601 899809428 859161522 990415835 924339060 677556690 25099818 712393638 914123456 869838762 848786700 714118449 789459323 916589877 159501755 268734529 659257598 90565233 873821876 831548892 634776029 308495641 716916198 821375140 700028087 898981871 723848252 870942151 814142303 909418465 510236555 754375132 922230018 15197456 710868548 657639308 973173606 612109963 906203961 705763938 711648395 82618806 22111530 969831221 283235868 74890339 868614663 599343727 347745417 257029789 700543442 907724769 707576437 996319034 806589427 80846615 951858153 825192767 49196216 369349370 816446782 335864598 22585423 685032170 935741932 549820383 352966353 780391098 870687177 827350499 758917244 422534156 775321013 778984073 100086922 241202677 100979900 896829091 594065794 841441352 881482574 524826819 983770816 670989236 776575411 256029939 709989379 938821365 67324561 825660509 19151285 224877984 993912695 963570089 103538164 616774961 416359589 626789268 720237037 885135532 719466597 874210910 864632921 927284720 657310255 414234619 165080207 682965969 503143014 695182674 939240687 773374999 670989236 19198003 111628073 832267916 714932972 729165902 873609374 141962258 689228258 688082937 124791082 969985201 814126911 883033010 825475660 843630755 785720089 840895426 652005803 338325110 709324957 216326905 603430442 108866731 676564170 110294911 65977305 887575032 277371259 43739008 618313393 807725505 701733280 711015257 518270256 950010646 574343105 593686739 962135373 996687976 717804687 605385064 501147486 979825376 551104395 969719665 525192977 481435178 114877245 83793869 354627910 828409067 775640943 767749621 716925266 983622775 185772880 888427287 857364779 422654614 743140905 797502352 560764676 892694948 797565277 873243409 503059269 408290456 688270592 808602506 723998520 970985928 351162989 38050389 459351567 57924063 768510190 888610338 145465668 670989236 102533228 71871413 96351149 330014758 749130133 124099581 56779674 989416534 782485851 540984681 66992119 612564638 45161639 558620304 896096766 499511001 153433696 384188714 95880671 694168888 171219373 586102149 289844212 709532509 700312532 88511679 162516912 691515201 870812964 847234267 695945017 439929792 939030242 802604002 670989236 37974211 896611802 937292994 876013734 133472156 947601632 868809640 701751950 587392906 177340957 232592906 402332679 687144660 468316205 16147924 421313761 764815496 385340631 599252960 379520500 457878709 716034127 593664472 887982983 894235170 591313473 21255955 438051973 759073072 396931399 716740689 712628152 138063119 955453813 377582358 657960387 918504634 331048433 500137418 877673523 533587512 234288249 951267403 932593291 182915809 987129152 375082751 14928193 712344400 202172184 594442019 423484209 754524676 912907829 128939632 57024050 79255897 626252684 672431571 530550254 632505332 572242980 128979577 777778032 195839908 839883301 670989236 905010923 735170728 670989236 680257567 774544456 717609038 849838856 884938801 171809271 236015568 537189216 920003578 329108390 729506543 561396209 800551100 999156941 848639409 671557471 177131552 690352056 727263196 822438183 683060812 79971511 107369104 985134219 686783171 453653398 722512761 677520517 689096377 429875896 706650709 800006017 190883152 959004065 924892752 394536976 775358703 842942831 851305441 795873019 790508715 762409167 999203131 548955932 390731832 788647147 198411927 952953029 89625024 100995505 274522385 82112000 950687764 714416586 742878352 973138600 419421743 737030268 830635696 983555880 777361778 767654501 496390899 677056796 562516473 830909390 667651158 546211100 334520434 941990246 438727296 387755578 655169223 57580767 992532185 797025109 640219146 551114225 271024978 130898030 802012879 575332239 345301531 720573935 950470944 816519880 895339188 66070059 494083764 8123341 589810151 871924744 795883052 185823474 420882394 799290768 579672918 232012712 183979114 68302203 107730407 489664623 407285832 446746381 440528369 690571483 518088863 579149473 529171996 702011610 263897543 880160527 843149450 769832867 182344735 851091619 765464029 967962616 933435678 109098732 756941711 664051567 755948667 781259627 185192025 354140817 293677775 376182304 488474847 900766980 774115418 272110676 679443618 557263168 409745848 18798789 705080714 427949743 431948826 484550135 826608161 629512791 959676344 925112987 58780437 231114863 915819665 406200057 659910129 474693244 996770850 972508298 185561517 823773405 916838162 903299264 687077784 325640015 759592642 928832552 201390249 856263326 194853625 959118663 492939127 802500147 885371907 665806885 924875071 875124889 35208852 942624819 759145114 144310580 729246035 251359755 754214791 833402225 34675709 962882792 810373981 960090585 149712571 161003789 973968810 957061690 116168302 745105044 724074241 566163092 761351378 795676444 81675022 186478109 776246966 92021509 809292663 939288650 188041781 898323894 254970340 537738538 497643533 856775898 907312587 705978121 176263252 466986147 375761479 887507416 66388040 459260164 901592060 51071709 505681930 116642166 843114846 245863457 817799907 844207635 291701942 427485250 969737276 861221193 623882037 965840034 915068913 714146711 123090510 457967490 926971262 236486406 712693701 838036067 191031374 605964457 95173165 795248122 660133855 319700423 130400356 940777525 523032013 830734536 303976205 405985612 931904943 401242899 867620404 988936191 310145683 749230582 475863066 482165780 670989236 934593648 856704442 939979783 629137371 919744051 930824753 753852840 481318618 173844719 43014410 830597708 846659376 749292661 3422342 954029948 750614627 415811262 702846118 482543718 563625486 68814885 717499162 787993754 933498127 621001403 322555620 479896971 319070771 521863288 578117820 748568343 918297884 53652640 95911537 287491558 472405065 567542951 702935373 922114790 990812164 238628845 821388423 731770382 781213606 727753215 189129998 378116657 192879526 671165323 667376108 691103601 431111931 279946417 556194678 432870591 809738024 869539662 520350641 128869317 743754505 497609669 812640513 288859470 502876570 438476132 307826693 718858315 312729704 861312616 979599887 14257202 362922302 617340405 956988399 705461764 356595174 995689555 129711290 827391506 374035787 723950506 947514286 733054248 950194272 521187333 711600440 786525657 382030566 678645838 190190145 876505519 424829706 322605817 182994638 670989236 692455220 751642722 441361115 655521609 663588600 110877986 714316151 787770331 470900096 115096098 975247881 844790158 636982788 971927164 817353657 394570976 384153112 993577764 124941117 114307272 689686813 860177335 947930744 762890115 405543079 10455772 920726009 16033043 789538439 306417118 381140074 870387562 107084218 975700310 381506776 133130498 577932347 812852777 446422822 321804453 596135646 991082865 279247884 869114480 526916694 223794525 598138744 280967776 906924989 881017703 334100178 676770240 814490793 156198087 595973637 662049775 226481636 980627493 524811781 11837581 966287256 517381640 701314417 920848894 231152838 927822668 15218613 33663820 195749442 777464657 907440926 146098647 532823525 679678662 892647946 527194615 545440641 629778810 274228487 478480860 468385632 982805244 843012571 899458194 477682189 24040595 845721059 310674899 92204899 797630341 386255336 582407382 584990935 949990695 192891738 469984126 827523685 840596606 838646373 783616677 850324321 217012917 429727687 915409428 624253543 686003206 42492885 588263093 805572181 721836187 697765325 526028272 673511562 719772479 924947657 737745142 790386154 36258255 604168843 840769918 636454319 557184177 925784173 857939015 594547788 28559477 667744739 132424280 899936495 958767446 695888829 517195565 16790478 876120219 72965619 17893748 687377508 20066038 218304985 941769962 448993634 316898537 695147402 109669073 226370562 419081170 273847140 885423461 641674467 778522861 401878110 402863855 676831405 240606185 470191433 710060226 312896626 854185620 193586081 383561157 455753027 875047960 35730342 592267705 190472670 699829362 912515293 599185192 841820813 906007561 927258719 28397598 853272985 864017172 678698157 528207116 422084000 140241229 259611873 699199867 685643619 633217137 471096315 855394164 233038035 787087752 742525544 46110309 538772354 558212685 717227026 55164388 409707841 709661975 989492589 817381900 369285895 283996051 640394517 862389388 184139992 8316260 668326298 673261983 930902101 936049870 574174579 799542786 125873567 150170487 861989020 378676110 919066357 985781919 406624962 18314780 32459844 558420489 767193651 133828791 868951862 817033201 617001384 911689050 840640186 879715193 75885453 735977149 678396840 986575356 757781202 225249352 251027786 986385736 718536017 891138119 834117704 772943774 918546144 494652278 750332427 797188140 761647459 618748757 460856622 202978350 350109420 232220462 783087638 900505483 73298618 775803674 218285072 317102182 942910843 794141427 213417137 670989236 254685991 587410897 29206087 887935199 366025301 734625176 269039988 918484501 164283682 540467123 244148534 871924513 715868421 880901530 555991009 976083671 685426998 514229095 993239339 393960938 539745905 793577056 539670841 317588817 953336286 790299524 979513570 923850856 777499879 693021655 406498992 940618329 805803875 176067741 303575057 191311751 864774416 734892580 366008878 833607926 955266483 802747261 811829005 747317082 763190546 914792958 473723425 728929431 59966380 878911419 882265143 422913513 880734982 945443856 450448667 279830377 915965841 687019522 224582143 133240270 900973400 686115324 389332134 989190476 818490010 783269975 764892576 453720977 98956764 154128777 696520718 292327514 63720681 671355333 446295608 946739837 244003109 297498966 654090781 865077561 529353368 900419663 934138403 282897719 670989236 705333342 752981632 690659153 771891917 985518241 728722099 589815880 468284843 382443358 977804655 484348739 252711882 518788639 718876222 650200675 805548245 195858118 526222589 804680892 974697364 716137765 110196042 886758125 872930619 766134776 33299618 170109993 400988061 937354520 975643217 679406136 954839421 138410612 961242724 639346082 695248216 329501879 472395233 739079561 263662508 161066721 797954026 886338555 793140837 356331741 501078742 977388568 759735073 431207779 427838963 233707063 882749008 666264736 30989570 381621246 133260613 218712093 840120932 753227261 979265228 744636797 843351821 563904304 986075024 670989236 91247120 529201637 413235523 533560241 584790315 888191689 367382416 458370657 687427761 642041493 919279792 232644991 434228654 782643802 211644456 754181918 919478576 174270572 702155935 471357351 965090730 959254573 428054560 860735166 338704173 169848574 296780006 774353506 160451698 846798311 425997035 792885775 823022058 206262186 819418075 709913997 72044068 577344483 43820309 830156282 184756398 226038202 171124375 738214176 412537117 392543886 302795588 150041028 821131792 314342223 679509540 918903081 781669077 413150510 67565849 231604715 680941485 302959457 812638367 650596622 809950326 942212457 735054646 611056660 84312340 458475439 918274958 881376121 324421839 721251621 491888145 907452609 364182935 955132299 25329785 694951512 489116441 487892052 605215729 157699407 920621967 620403279 634743877 693715475 116251179 822321017 68345517 226329446 946615476 917692570 171233547 85941917 523801898 360248378 615197710 756352118 943402762 555434959 497363999 171552677 843814785 671072981 274191789 209445606 719121469 978895999 781842002 435065505 129728049 571971750 725115834 179580301 736569 282640021 36594690 757157324 8975918 305421536 9901356 164441291 956397598 449336035 988366848 477442728 973026514 44985189 236602558 759977993 5968203 827024758 2309807 900236640 304941163 488520388 177013870 670989236 200797677 273572584 35191259 801545150 820223641 841628014 709267129 910686376 912776282 35242870 270582604 729353164 145010559 964168458 722770057 932922839 709775287 419842092 804033698 732306367 979533905 885921234 604107545 337617305 512493433 670989236 680816830 965287647 315373879 665149278 466609030 961850180 820541154 138227474 35624035 482287948 999509490 575143653 900861047 988170648 391054243 196976606 713963873 771179029 511180303 883030292 978110583 347599407 739745343 407588399 714753331 521089899 867613110 614422916 571616854 476758101 705068541 825372783 115423542 843066900 114188246 457638122 71101598 711966858 842667061 290967200 929333420 328853115 109525038 325118859 283036755 200994377 176727121 840756827 567233755 989879963 12858835 892864258 689088235 8724110 801365034 799782549 527770390 351384769 355613279 711608076 557041749 673417559 996147586 752111557 821991815 56451586 390849541 257343584 822011966 646922950 865696289 893015213 802470002 107236650 514702685 440380004 242988341 900898590 81157215 571407225 595298338 827245306 67950939 467745005 766423445 193245492 608821864 744164192 806283546 302248597 920639835 787351423 700530807 765064351 977450679 654762949 667887953 119715334 824154078 160311001 612292403 670989236 603248926 289980047 616807178 881225546 514706395 714899173 881278485 814006039 736132290 334993199 920915850 254231479 117005353 275060872 863183248 769822328 350552046 865684621 218104282 640606422 946025573 763007887 659469430 478161792 703689926 970870525 670989236 889989760 884197219 494652225 565074198 728302944 644267061 784082843 210901890 967256287 413057551 389064016 801308206 705285535 499889075 428974383 929904432 896313113 561078065 836954472 709799107 129242529 201484207 908189687 147595757 908836141 342573893 686230533 836748929 35615161 885048732 894908177 210341580 707879312 910940085 840412866 41145853 3643426 160921887 737834001 835695467 304731779 476691296 62269004 758969383 905686344 103248892 849654637 936583789 250300935 52425060 570594471 225965601 692505236 524235298 835202824 820707941 732085595 670989236 940317151 251511347 365899365 78369529 262877885 754509771 226344862 689473085 649092116 589216629 771422009 879084674 274551576 681897639 679026651 171862329 476280531 519624344 306581371 836447229 629356379 956019988 224253030 817660954 690386939 722665580 323782329 122746477 19609868 469344785 965846608 990031300 483855164 496744340 795885957 498080709 888262588 150698648 880125461 224803794 415715775 973183794 596265456 390343003 731649996 722833562 597889578 364658451 500585852 312771781 189845035 998240224 720603202 649619626 176988602 847090560 196733393 461219487 555036668 675648638 828260376 746073174 502997429 973023703 663056210 795293378 948466854 354972836 497344365 851026014 824085689 870182334 55103862 600192842 206180168 838995503 970048241 591850421 403621514 218977173 288687283 635814103 791472074 629466204 335209506 925487141 670801166 964070758 680188052 845999908 801071936 469550109 682302507 810410930 748274013 669117690 61786737 155125181 138451738 327235965 819993676 989699128 182754202 183803154 766727147 370695680 971446698 235420639 388307002 755659028 649001999 919421253 821711911 751861757 763029150 458965835 374251877 542449060 815397283 152979438 197330634 227783917 744524800 130680702 370198740 501927469 492998675 613920609 754795528 981125834 383711153 143090133 468744753 996021250 309212307 858166966 705223514 451174163 859541381 954543171 33021158 341379970 550936677 706595958 688761599 622175882 878322705 895007432 533263660 992434778 553565155 652232793 670041125 749185800 759537406 818676337 905450787 708200412 482539597 288332203 615293724 703931417 515919825 195715425 480733738 845786557 686207435 939245106 98379949 274329523 104723444 680472225 950036829 484487988 852163931 825516356 586297045 660128096 986050402 577450631 949896493 902000974 701737673 197176972 779032043 884364007 569744907 832896125 756599976 739163174 755920875 714970365 927431284 705267294 148255929 865414299 387548076 653546019 852356136 271930145 907905466 213008700 980949906 952486762 851012230 917491274 202347814 691900748 810767498 734081780 835554026 985010898 338908254 522394449 441082318 999632187 948840803 816301661 391395468 673118642 781652333 163656409 710194716 569888439 670989236 381777277 782793466 894335524 670989236 208697962 116060379 784431870 956285613 876567711 800583924 991447791 861201084 248534207 695833257 769399810 423659473 634688237 829251892 44570354 742265778 278751497 839745527 554798786 257308237 733273758 749940674 271851296 866895075 361877684 808524329 992717972 671685074 68467258 861334282 506761336 771759909 729544931 842649587 943864044 962710644 850685598 849054464 714477601 51727463 91376258 919428051 59418910 288644335 197440683 790807046 621182939 891911296 948348215 590235816 894863921 941666626 872005866 17642998 130984988 860908622 219195295 681860608 38354414 128018908 138353519 783124162 737428887 877050690 589723987 594813319 883384424 170023735 244662980 608041654 696162309 977897575 279215192 176877716 590723377 904959469 390358826 889963662 713598542 728011592 992571869 111072674 127199714 833332179 799689055 833257354 839124638 376146783 228379960 178485020 154382048 755706465 267466758 660825508 575893756 16488429 929102313 24794473 534625597 873262331 990429524 708745496 807027743 517575550 746487597 462507039 552816259 447909578 788325551 687424690 795289057 764275483 413440242 742136445 731556766 149415586 641379632 176695059 429776955 550306226 762237204 835245855 994979610 302857126 148889393 944664983 681006131 778409935 150444103 410633800 848237174 249386340 46725957 884514390 532199929 770368586 632839663 890770107 473299988 13030444 696189392 745534740 224747400 193803106 840503237 932860215 549193756 857157169 562978627 721002459 799729857 764255089 373874222 487854933 589323831 730421104 601823397 601933390 872860287 247413736 429742928 118673036 772448812 946094765 228064996 930328012 407488822 474242581 381076416 87164467 673495848 88844850 690785372 888130614 131169295 970059038 168962650 670989236 336433309 670989236 262612277 163855713 38168346 249458075 450212741 678459227 176247119 844553525 181653821 994958467 851680936 438409183 879270531 567956204 841457209 856157165 693079349 810809252 270575708 56214002 182723049 6636715 270463475 967915510 594628467 796043080 220454431 639652064 923099671 806683255 170930367 620391511 747839262 708895954 400510237 465922862 9458376 779087531 357136119 130096101 502498305 689994030 729253136 321294639 371845893 313907869 745813706 730239548 703962406 435672756 689384387 669786294 580389958 977890624 897965217 777659787 517632459 942989917 842202324 670352548 909676877 847486436 691649757 770385783 807823152 176694598 758809564 173112986 949299955 798193509 590739017 880805581 606414419 833329341 541392566 835928481 854080296 780132425 802059202 723939303 970503709 107744453 379172625 777536845 800518186 855856818 381829444 260722316 910935690 800173150 385265648 881888010 157664895 242755255 791303293 950251334 957570867 115140258 706137686 227588767 539547584 156549665 885413917 721271771 808440041 691047947 284658860 981300790 550917589 649485625 990405937 794200002 806993904 608878221 186909752 939968504 581666104 373517866 408865443 897151669 773328939 686729532 686777791 284693625 958604058 747270097 960539186 324458247 157342143 308363263 537509492 406570717 788551339 85447406 744114747 679107128 502954888 80871131 867126186 455698964 973218131 338719595 519511178 708609046 719112615 150465550 923136792 311639961 675435800 149956171 670989236 928102466 62765186 687492786 843097771 996985713 218917553 484598107 115360636 987209975 86873340 920853937 868169482 385340703 374495341 265343545 970624599 506490675 57009565 918370855 198581095 715869167 857643283 958859968 147600536 608307853 775205682 945377289 731144583 18352079 385946724 37493286 745050184 532796620 828074202 216829159 521492811 806266617 860996369 619681196 176673298 891920395 822546440 698891331 688436148 21567878 704140067 624059902 663733747 999304817 783425905 862277904 957935381 185406009 364246268 472913021 760183945 832346746 268536795 727950775 784554034 670989236 717665267 997800227 457577927 757894217 101493566 798883148 253674049 714909088 808771004 745061651 458110713 135100611 747847852 915006462 134107531 679677224 767292143 973212020 541251087 976781626 400118119 50885042 4624603 870146986 258447664 771458536 720802797 373290887 363274078 180540770 797753584 942888943 449318453 984065776 253388638 28989603 880298443 41692163 817899579 624574433 689311150 951189625 138988772 944117389 924965684 846448729 879188592 523652394 995509471 462223282 133045403 478698709 855791572 716596395 701587875 57463188 811754148 674669653 978638786 646858780 741835215 321847389 574496771 843095678 600993555 809600305 976311854 286557731 788620112 137524187 414448972 719021062 143712208 45203571 622707810 829654593 318642650 35665352 695825226 881520125 694825912 594034791 955477334 801075956 199501802 932827861 900063234 811113421 403680487 892655738 251226787 802855572 675881652 490291319 384335093 28321426 888739639 283240035 102036518 795615189 132402773 650812222 242005180 121196349 716997991 921757141 897819583 947764390 977479868 837160198 872067916 464370783 798850027 99084710 23175935 185184084 764402643 814187795 820182135 670989236 932841385 143969627 536392030 873257597 452758206 972761275 127046180 670989236 746995839 821489949 585100625 677791080 881951612 792782092 268727042 582733983 988904953 928798538 901772312 224161749 766481570 783842698 829073356 882253121 379013705 390298430 233315847 766592914 587220981 340063327 593992766 753118409 334697729 838821671 701751984 284852901 152012115 127782842 877998254 960198594 86586523 306459753 675604492 62427284 873093596 864454895 612459562 182972170 833004157 235622028 496773593 493638486 483009540 830387879 522314705 280902946 896284996 71963703 777703434 24910299 592800030 698006321 734028450 420908029 158052044 894348307 336478416 705320139 682781428 197401701 408633198 797322718 533493904 929105604 988830334 910936411 181950038 667194721 76384040 691577214 797935676 190022893 875539067 300684115 793941137 846713050 668459764 591470845 765962099 979787767 714142623 620778711 909802363 3712796 695738356 378753671 976405735 699358972 670989236 955312828 463000145 881294247 197977058 713399112 118682910 243155494 764687054 871591161 991872439 675885946 398506799 979887936 780465079 911470720 504175858 970108446 245671525 676782935 975887867 153464259 844520744 226792355 929845909 756665340 64503346 971531879 68937017 410937103 199467593 71773389 155631615 463031422 278657144 736320152 282452051 568318880 566001119 970266044 269669388 761185553 107806689 882240216 819482117 813283137 849428631 185529624 450562455 625636427 612991621 709281121 256866108 512572923 190918272 978588903 380137960 560055407 718644627 197966982 111514437 888884342 516856987 148592249 220286242 92209470 580469922 227229504 938852019 719158408 532586243 892773138 892962645 13198887 60453252 108471024 720265405 962871875 923517009 697864703 434741013 161893345 948012571 499207635 232125824 585297276 670989236 36698818 868783997 254843137 49393080 662333293 463205361 864148430 823165803 259497764 631923000 249316296 42998616 922199841 862425463 738264136 718468740 204340984 435022921 652468770 610414779 730417383 784071824 830476753 530070116 505703795 982770282 277582571 498321370 94205398 772915663 263146438 479447057 928772073 306210200 717191381 817607708 489736890 763939700 823265911 910790950 158340870 803493100 272949305 227963936 937251008 775544740 735352883 954179095 436806174 960951438 987500066 472406438 193612977 670989236 865074462 973504660 972748494 170566279 846415093 228024662 219600706 705566576 351568806 319960806 126123814 626727905 316737492 555836577 989311500 766043559 778589513 738372055 688437055 242174838 790499192 89051843 699474196 755385816 765524041 658297163 227054284 939079600 800724439 629007020 615998360 701986995 511211652 392785084 529883872 132429666 382212651 492352783 809414564 546166129 160757576 413507643 363235965 853417639 375232047 529368416 695196134 626709810 93172021 806449639 997207624 347263861 153239589 719587631 887267851 832436198 263733986 957635050 104475454 52045534 404575765 801503395 935765770 360006612 138501931 758192485 808713434 705938918 128835061 402811684 730950417 888940705 992647295 991719038 542792081 614464994 952479728 809549988 161086406 845793260 403577156 988369725 743951760 555915034 486195098 972311029 707840482 516490777 5712953 813054828 92190666 806031593 198531040 853115668 422492661 428099665 670989236 952826742 25824418 536766833 644006061 520285174 891890159 971825044 474102465 655548193 230025758 871062983 139259028 971046190 132959953 590687812 487668997 538554453 671016105 818508802 705285487 847080400 147514419 911088316 452980110 72125826 203996149 6096279 804412731 287230640 856291761 687660540 911582547 973584732 430790180 256124109 984392193 116108410 731392641 686294578 814665624 93105915 200216997 472507942 637128897 850233132 258355885 915844764 449061523 712627123 239948837 211305917 784314219 970206204 284283325 773862502 375636561 73341065 878188350 722005879 552034299 277379722 605254925 719465989 664786612 13399930 128211468 788134712 106419514 930457916 775936825 785326523 913159450 282725671 935978111 653535416 742523058 119180073 530607054 409318438 226356182 451867639 823664494 698001896 705204169 323473385 123125433 673397850 391799718 858251486 785246033 57879350 699680114 723036819 379624666 858762760 831436002 79124674 978527981 822490470 966763592 987087710 925775416 320908295 369419741 779467291 763282913 998310825 883936624 771288312 950739091 232560272 820751561 904055641 536862891 805861458 40741443 53989423 681749610 997402564 259119214 688496736 820504542 158222180 459400779 973305031 150780862 886556984 633538572 516460025 666107633 222938648 825767203 867986839 422104855 486378469 374907058 140262735 660320659 190405306 803048490 128505827 89100005 673838424 827148735 695188280 614665039 870139109 622265292 153980762 712477530 764973591 244722144 686437906 713200845 77335029 757324792 647770609 258400513 862871238 128248003 768064913 811414332 141470127 754405053 85950118 859944905 77498822 742927529 765551626 660200427 986957566 461278277 532658713 245958272 264565479 461976509 953824195 630045156 961531978 17445685 516851221 750347836 993037347 639079306 238355310 732566359 2929745 766018772 306988471 279213979 763455561 721955377 441358314 961102944 762886862 466665916 859255814 670989236 110841763 789274093 302428038 884656761 413225049 962337092 840598727 516203163 235053643 473413864 33742023 932132721 125800997 744179944 284569656 496078880 970225552 918605981 795069073 585135226 804609887 866215685 575920237 304004619 762585280 528786086 727948775 191761587 828871179 740270895 753044201 962554039 951816696 878159684 670989236 631310643 776429037 183362070 256077322 685644467 957960178 590219332 883722299 622327039 296302461 961593807 255245764 426678292 112177888 857602733 858975954 548615370 589515247 741314131 723848010 284275431 893057067 729825752 197048329 197779672 479971056 67940532 931151249 975911373 463561076 423079322 26863923 574694853 936822947 951242633 726983297 759599877 769318746 843990193 976270836 785220554 698819089 975798463 266376824 104010648 678613825 997308297 286291138 513501106 206651507 406113979 963702111 722003060 88960025 839117441 11347337 295531537 878827811 236038253 210504094 870510089 615382031 225188904 432204129 834991182 449293136 713412956 315588489 672737963 198185492 953280015 995035946 95195756 685620995 348822711 893346479 233770861 367528912 953178531 917530834 651855659 208407671 241235606 384930574 838428623 83275851 827357963 170845286 862708105 358126738 734494740 912463726 726324086 303318023 33940441 868253807 325653749 182467944 922761823 4325926 129045336 982152190 957600565 950498799 671067327 735281809 911914310 469592960 725027706 692348064 276511776 906206866 432625866 389314171 859912649 270775667 58101918 808661335 587909799 846275911 928477250 477480675 893198526 291404215 798332749 132842240 928566532 490745141 683516765 710763753 949088453 499958047 710947955 256162650 184558270 116859945 768745328 494917722 60688068 932285912 826385697 930718981 278877301 938845720 883504852 163600540 924864888 515585269 82772848 923317423 259791643 875632592 781319474 40255248 813960444 738852555 234942990 804988373 424298041 454049310 721741495 63416965 867189546 822511520 213131763 535459843 417424269 121173784 19511384 733919450 766631360 959100708 887368329 133501199 750099439 36943346 871406320 749959007 824914843 778525578 732281091 850768260 814272854 756395831 788965844 698053400 112994044 851921865 733475175 698831385 830440231 521635472 931121197 755240325 741676061 903550408 711201408 130677869 691380659 807459691 112039526 323242093 445758335 401172636 856354991 25029938 326649338 828737063 834792071 117433586 940592500 10750568 764234246 772631079 898897258 361811110 715401412 899245963 537991116 670989236 985255132 742188869 751336772 46701072 832814496 287986660 879654892 158913800 55884380 597774638 71636606 198696028 202467446 955145475 22061031 541080927 258228268 920726898 455669896 194636234 711905448 309846954 995963852 694849272 800351886 211639222 219573988 101203802 289578858 355893872 249701730 797356771 566962557 708825703 600551745 898963838 709403318 258223613 390423696 688989959 749931351 437113213 863003026 342474347 442462012 683978869 150661751 66079282 917505768 678220805 739969710 887599048 858992265 787139900 415994194 321922574 184384447 715787091 634912278 811293500 675670829 235237552 914260584 981887797 82023790 336385836 255851421 489988027 56346679 450503259 372103630 472775821 679437950 340004205 590170939 718659100 28914092 843442933 892551617 448675731 49456107 52199357 115467544 704999026 223490721 716734607 537075131 991300996 603018657 858945851 742662816 801230114 692119014 152447420 841725838 663092269 378088078 561889226 909778421 706541773 789025394 926150572 755093896 567922640 173112211 318082594 602802973 424516495 239140010 736899641 95724823 11653077 11675366 465382827 746825880 133665259 357345185 405861793 891037709 847546108 803764428 934833003 798106068 943130583 33838581 936544998 606902189 513477398 622413338 507047044 787905170 267841469 647543668 588471629 535406963 734536634 744906497 517235843 199978351 694922535 872638241 819804327 822418150 222306701 670103651 136161902 905301355 150045305 89701084 818023076 755669279 875557097 829787259 557834049 890681174 839220149 857412971 730968624 675168216 419938319 894761341 776073961 353571604 741928759 10881162 848401720 981979773 201726175 670989236 821777053 865957813 835883607 751025672 927594996 556012703 964967611 824005409 462298630 13289378 854717372 274265445 72659969 30334072 110895473 184462145 814469438 877152669 515716872 980129758 165029281 229968750 341247648 620481406 980447242 263458395 907358382 799016766 412264859 111809301 903550354 62622171 404489094 607480044 963408195 36286153 726736079 140125879 869432374 891936166 841182904 68804907 881899438 648701366 910934336 831645092 579200045 604967290 373910219 19867121 936953735 517641448 416217007 748808334 994675550 612593375 889383944 252667985 969405818 928978473 973292901 670989236 567612057 455495218 163685285 794300908 940010158 794635778 889237926 884316047 871525498 721939731 862749651 93106456 980644220 992690923 891867331 125648466 750307460 204819138 921998677 821186748 778351459 570723139 769287974 401431241 753543028 780347688 920454846 856025094 99857782 774059203 832087669 364336630 566843220 274155696 926204460 643503725 893661398 716094597 588616214 389163721 109491698 538536424 388907725 597649564 852365922 617227108 375870762 354588746 675498853 775245410 390723496 180828098 242889752 196758806 137296171 946731076 456622929 864755899 375160546 283617233 799623250 671496392 187288343 222963771 265308063 426998074 553550408 699071380 987612049 674407152 145998306 689232680 645386960 159223149 631067206 609944710 163761863 35590159 992386541 511896172 699065423 814283510 245373082 326273282 521280903 213895429 487812330 974400379 69551913 761196390 620097276 194679563 377559370 670989236 765692770 684777528 670989236 681065099 688679173 668138653 863566621 896778349 869033837 221285212 845970494 252900626 971643648 81994624 662906787 784160555 908994410 375956229 978508534 960896297 947017957 349412430 993757558 567175127 543980625 861546128 848252722 705432059 486494366 672923732 561231302 888704286 654037802 26157971 831207504 952943516 15545862 752863322 181460797 673420810 80891030 725086045 54628310 670989236 795836647 225905035 848969643 324741552 473525061 78590515 730172665 452958664 527715259 577115837 937025501 676321477 398651163 322949502 939003274 696964747 910934774 549155348 92129458 875044764 789111483 854790492 847833505 811540878 996172356 855750603 480541739 848319960 494668999 420456783 511591949 751914780 969075968 168423242 670989236 882569838 988881198 813855157 788690131 519432019 259656801 717770254 981110366 394801929 778391200 445633581 530645935 344989173 276891110 843491446 708084397 704236050 841945778 159888469 762065961 361633613 890114919 796803325 870551913 726327180 873947367 962570440 123367579 864633686 982185204 963967305 905977434 661298173 897715597 606292332 16437938 796020506 987841864 867615371 934295577 226717970 587499422 892782138 682587932 548234586 714933211 667005522 644447338 663011974 286534283 967216861 741914999 890963527 651982294 808285328 765364440 70624085 504544182 374219115 657652598 638004097 748141406 682451340 359103729 710648321 714559392 226684245 731677701 676950803 430604676 930861191 806563929 744266585 670989236 944685401 75003288 708581609 527789598 366069284 409443906 84293974 830237906 954314442 158284980 639982193 204764261 382891988 730200841 759911307 687331881 248632705 75722001 846216142 692187385 944769828 730781056 691955383 31770997 827510029 141123096 223589418 742772136 76359948 863765415 833255022 780178158 175172960 281129185 622658374 991454919 495181024 46005501 52017598 156637996 622082289 684085505 993082261 832148932 228127040 748923029 384042401 397794318 76830862 565520857 72965106 756717397 792572701 286585013 401984937 710740430 109432026 470461518 675614413 980917054 885963883 353985577 721868518 146827217 58335208 783733554 856187971 975549413 719667602 122412632 334246063 489247809 643534896 517953762 137695898 212199462 472722870 778573912 778149296 701177978 155945632 108235725 107790210 670989236 462374164 129323487 883140516 460022073 464453959 525925697 434318518 29218797 123218855 79838568 786339900 731272527 772175182 611221757 821054440 546821109 519011866 669226280 784501037 469075013 312259742 727614269 6262539 278809701 597515180 689803784 468385518 490363117 329339303 714428850 605910253 793613547 481542347 384596183 8134646 818385148 785540501 638131483 708097718 18217241 972657358 869145812 526151085 142459546 883767157 255603892 258764135 557358375 824963466 724016173 479052413 143287017 709825771 676337678 75455253 428914633 709386564 765501750 3895834 837956056 168355967 525217616 722286675 921101970 708430513 740935216 993537671 152027890 106994881 271227696 123351745 19268929 364512079 885510297 307714049 3186791 268946573 815337603 145076054 6462403 424195016 933703384 881565916 7768748 885855661 257590937 555361005 34183242 523847195 815158150 890226266 123487432 408936746 654487847 659839560 867874670 225729509 758563855 799468723 34093642 794840061 655804541 679511968 621362121 462122175 779427043 315276471 748231095 586922008 955089911 796862570 314361470 783364493 445611391 36296484 468066786 856138859 926958926 174148368 727054180 986882274 731281825 522632211 55509026 688569854 874182303 71104074 949502014 74546348 862123899 55530609 178588922 663293576 196647262 541824163 967295148 755056204 705417423 786314685 883947074 776462335 238758052 211034520 167728251 266565071 171643797 193182635 715520119 585887776 221671368 468940301 758855503 938442426 930632473 922953580 998936068 331053872 591627493 554923836 662627723 883150977 6553382 670989236 951482482 490844250 631444399 400881476 185188248 69259423 684510765 215227622 517936903 745415015 984317680 670989236 7683557 848335671 70453475 693489814 815415890 475402878 341762676 435910900 407372063 219689049 44041429 427753818 111116986 837007301 473240798 805743515 653323344 224058049 896918661 261404672 486940248 702942367 414290489 798427536 790185666 832872197 629526424 400872570 852057917 826159697 584820683 992629199 242744466 765801960 975661783 820883540 715221660 187973753 191704412 88842094 240863382 689928251 979035636 935304919 274094072 674631973 531013229 986517264 833733562 854411027 838026932 683959586 682599476 494599214 739806557 845759186 240719590 628120909 792052940 557482702 194233470 505961233 881124248 315262943 557252578 866303787 538133549 334667998 842550385 184201048 36059913 512967936 750363814 748543978 987251670 799072356 748527426 161250507 91379906 704708517 306550450 733856901 368134694 809488812 820325862 731479403 593635255 892998435 732037914 594822739 670989236 653954955 774711703 716989122 633832992 317721016 279411851 334321407 687526281 872448982 903257927 719947454 691648786 674383325 724291236 871045737 185868673 580405382 795157465 92943699 686444431 219517393 805627907 684325385 470216171 353400822 883653043 726383173 858397142 743629319 99470942 866624108 771066854 968401626 288052222 949327627 944790164 890371782 349061050 499331372 430175831 396903389 797025251 821919822 920479891 524508360 585307168 178732064 239988794 961335574 943927643 796428249 504587637 814825898 391047478 793078671 921231224 776382748 795758625 557947238 891057786 940270063 151679285 234699749 167048673 149516235 902715159 14232356 861805833 457747991 878590215 807355218 85478818 734572069 281936751 70575319 695709562 585967202 836212525 402314435 716749989 549099879 570891220 783531833 990690833 808636097 20892234 225403485 510167600 798100526 953685027 695214218 482892153 701454033 13089998 854677002 148410386 840259019 983632903 514246700 158591935 523046918 244518911 621819727 878606706 628379531 975958161 391866896 421995687 531215236 817857390 689313349 110038658 982291905 967816646 221369143 187812110 943266804 454856158 612751212 758524915 430635703 141730539 564187127 942237317 860788165 958520081 914951885 962479518 391593265 662392191 975709972 406591511 626109193 731227437 480941754 158453835 631107189 480644040 935897354 823294997 821974926 205009980 801009117 363628008 670989236 891790042 920619279 588905255 923570528 539251334 563603930 895020745 966181678 222335014 628631861 529795854 955142756 296900264 443839065 885437246 941941755 731141039 599265534 155048365 994633685 280694696 656440910 556170870 576590039 595091792 412179643 327080864 210563681 890627109 882693412 864229410 769095647 212913815 866078189 389252592 859348717 298005931 251410722 542793469 333187110 853753467 916802594 801690583 874368246 800576880 710937079 911932213 549797544 83849893 773902767 488174297 288939379 485261741 42614192 102357488 297968277 242853506 194182574 620270418 131328113 827444636 988484298 734504052 862893315 839860639 784757257 677100543 802923312 942773306 260656612 158769766 983381356 84938876 113792096 882378454 897224199 228468044 475098818 231552088 363659862 494213772 833445095 266902028 919969113 922385148 853796112 13300717 939397906 265083380 598683891 119044222 797114847 756666845 996576220 287638616 388420588 303533815 181635933 709959629 993912749 838976122 734651029 850499302 999423297 294621247 964221307 973776228 605812319 198807057 141971559 464723958 531836169 765399073 920579868 805954079 993259193 725445411 660093560 974547564 367568003 268272316 177687376 829293745 669156444 239200222 866405231 857836293 490343778 902314374 481997545 835609660 482421426 261289931 803003110 674234600 472122263 775278433 266149454 766130340 625786986 784530693 855960963 673146758 239781830 126033320 462623148 184704333 7034113 86626447 177476129 940744313 553466212 577723472 505465717 976162291 676497140 384747891 316203606 324382354 213849068 983403431 670989236 670989236 823390060 923020763 723627706 806227479 879099178 971600096 289165102 917176231 590923326 730321706 724497588 632642304 761146563 604096431 121173909 896389054 165236334 882199845 252389843 796889999 926003208 768345394 989720086 708409603 655246124 582792307 877179106 852117038 81123870 464414091 301397137 25616728 746886129 595481280 818437117 485887329 685560331 583948629 115429037 582635226 509216411 786367979 959329472 32852352 748849081 913119194 421374510 628000641 225639542 831971607 945173370 420979380 931071933 298792302 505604565 964978109 697716312 434983494 871911113 777112261 769104799 504332662 815646869 580216287 464769662 969679711 470823168 892052044 668854996 943192735 21627234 874254321 850996900 411885501 614591552 644730625 616779469 842622333 838266857 824637469 822310743 627075234 25706662 262271452 770676187 903240756 703703763 854098724 903157580 907686374 480180488 565020995 492210799 184761358 816120837 750091222 55567435 757683352 970749472 436622968 996096687 938305420 978118961 484463565 231085098 995849696 612052507 714811093 608275817 894361093 906552563 769715622 630089944 914851242 632551075 120128470 684956805 146669687 751009443 934458718 336248623 893930872 913124613 231726228 992203034 76655371 24982107 99830312 826998288 207535970 851187345 908803331 945181316 831333741 781549595 626978637 658116820 323198691 91659164 982408259 577462297 609669922 867584478 291930863 96814650 778487426 749432330 670989236 41158374 542265129 843280611 176286870 986322194 220287523 894203028 229227242 252639809 719117834 494770313 108809183 693043089 737572198 394847854 599385828 947030562 658930445 380805186 115713796 196679884 26554211 557732803 496224516 171452945 162164939 884374410 953811512 323195604 230733147 27571594 314146094 918023966 730233658 996585313 772356836 247365751 297951513 201708614 766169901 167087365 966353510 955637837 702419621 294073976 359638034 142540372 882289138 515156194 839874603 670989236 874284414 206378312 709770539 550829970 791805198 914121012 974843106 133835364 963045996 587214847 969497790 717416552 176092616 898506159 473326231 687253863 41452862 538812598 552518006 873399902 25019095 696393948 810602991 776954446 678730209 811757112 605878393 982357939 860723971 100242410 973122522 148114303 995177617 261605774 258836869 904404739 518071144 622970050 693944854 527698703 794400092 275022832 915307128 897413536 675350571 628841916 849865567 181989558 828346112 188720280 834848656 719031370 843139161 674141702 383044716 910247745 685133986 618889259 201085217 670989236 777757331 783546899 323263081 420911922 276390128 452968572 362298014 909305425 434604323 900613490 48300987 917257706 695924077 842155148 590242727 805057447 224324042 763900206 553551422 980988026 42930214 151326886 752804011 623674655 488332633 449271769 916450022 477456669 389385795 310738246 885593510 754269941 902467819 778521537 799729479 537848732 394616922 490791046 237929912 167917661 20036350 96112576 725339631 504415385 715013569 770536923 762557429 171624432 902126008 809237124 865953139 472184199 886235997 744187270 758744643 322854084 754571277 723828650 534322912 889834628 295565553 107793884 796320607 781653914 788512056 24184354 765391039 554953256 44337554 997692080 552039849 902449497 686360893 915423906 962300820 8518409 377945529 81406337 47345360 953039035 640919411 560880646 84859742 155386271 854578212 182508193 917391292 146640000 162617317 843623872 470009696 606389770 835785985 780682043 873181855 674655228 212103918 94359872 904927542 244838378 276151702 536760275 766637302 907996295 867599729 950847473 926985727 978015960 976883173 882794162 883854418 503890839 540039686 481247235 401011453 762390368 709873846 252833394 722785393 832074513 360932513 253604500 200341498 746590462 89477615 700798064 660034100 42570935 307433753 956560570 855668787 582610327 569674160 11107673 180524559 494879917 748929282 74772652 995248958 6840503 396825092 872179184 777606877 371325043 817052172 361393939 227748442 878364014 603779084 183784178 83205582 651277529 964904203 665388857 237963354 704780207 928411570 910348869 677298810 714168910 57730235 857310964 445768916 578807380 252542893 446815585 636925873 828974086 161242284 795905296 44604869 22201656 737797607 621045677 544311385 679132329 639004843 181234016 694323229 531976718 756868930 415097949 642916730 253409020 290655747 729250982 984427820 226185201 933664792 736612541 629295737 885650534 114445857 729252094 187175240 807668471 994735632 941503120 866976120 991032375 800859749 759887694 716525750 734052916 293731761 21617081 982544791 173078368 292385111 703419644 210610249 992975228 909399779 670989236 167473054 504237503 235098090 977021238 269356803 678262100 756986754 815951293 799388818 396322724 56999196 115232229 855190442 619370656 950250722 754750223 695061037 929878108 573412936 709125610 818825084 665037757 506859861 483611291 815026497 702407233 498691951 334817596 951195122 706249370 699098205 652143066 706592503 354889105 184072167 976780847 829229563 207771412 922612573 974057293 252196348 191358912 861601535 831191310 323695987 845508769 480631105 454848869 894819803 211326250 727407931 833485525 396229061 266329319 676161455 820959468 744887478 801728571 919956429 922297494 753508436 147839029 796626313 762128623 940773534 162535350 986423525 144768064 186120367 893774256 704560893 3997591 607050617 659027231 675483532 165910267 402872135 438111324 623123151 934967213 771933163 186411886 356810029 364133589 790540834 155290879 851056716 633228044 459633186 795264779 670904253 859602002 662557695 860323414 494699581 197699478 859115267 900760849 618720560 678094536 562552376 746802336 856790356 908914695 902286105 824047909 346505118 481835180 699014633 947965095 831694341 341250405 259595872 896111306 250090360 786969204 972997928 133503978 712200027 127724764 532105112 601887359 427481287 282405700 865217826 964269178 150821960 700307127 739153752 955002148 579422023 276468835 670989236 374933405 737259790 845138852 218224540 411273092 160887920 840782237 901879625 703858353 241810193 983948501 921791579 945069837 528964359 162209659 583982621 846341718 676096068 404003091 996190400 551723932 875516305 977481306 423742004 96297093 972390594 901046978 680993321 302101285 399488131 693190093 447868852 667798447 850504202 991028150 66739190 502852049 801079561 877309134 274073391 890513082 787172857 638850621 999658501 762455408 147617837 64025605 684372058 342242032 893316072 738888365 93217986 239593302 277895704 885540744 905927581 427811751 751444906 521566488 280739640 354030052 747928987 280603823 339779311 151931499 865460777 790246511 97643621 820474251 468421553 919656624 259862219 619620351 935318278 454308762 555532999 21178356 373002729 80420778 28695798 961587913 898308906 87871817 141947161 422727080 775636005 528891247 932862229 993392041 994122184 924647491 683824357 756090364 470205734 433595280 436074107 508437846 191050721 670989236 623275500 874103256 925461406 985293476 294033430 30374975 449005808 234842890 44434353 785495102 378370715 292102323 255837967 708802299 855647367 959764734 353693611 670989236 812688184 987540430 865618343 476094804 842692967 874910764 453026446 884686645 303400872 311406671 816960704 796304246 946792458 476537530 971705103 300696425 155331048 775410367 500823654 505582553 703805577 398840331 816696949 768235324 183339845 879191207 810086170 973000838 44286705 878849178 942513834 696618059 647159752 674447946 133001372 213471117 557611469 175914892 853725486 757329395 170761855 233796839 925357379 236325511 141687227 799246765 519951729 581593413 311350956 699588022 979169446 429370192 726062719 334165335 888351614 915335040 157252938 469321441 230952533 103022360 718719868 294673377 737535962 753156244 95057351 826603713 772424365 318005115 679199172 34874505 909381583 991216520 987595046 89455922 612664175 144784189 745882530 649000612 640801394 258636729 711224213 818266009 754167319 593558214 747976784 950956850 406148525 772422206 767940941 787267010 142322100 892799359 920421742 980969973 12024633 720099666 936103920 157462791 867451692 167377083 183655532 717499703 703077693 349890295 353509206 530858057 777984494 753349579 667782009 785205755 880445418 953697087 350294592 771118295 792167453 687802143 627445198 382254700 879243915 990357160 828375002 793107571 871863946 943229173 320878001 700800539 561467081 168243473 876738150 753477424 801472568 87302984 187569493 14076233 867899210 894430331 753127008 704145903 10118486 697064642 294233873 980195387 536962302 227211376 698442312 82417648 59094932 829409181 213898622 651732736 728086015 413607374 39980890 545249323 456378624 125214842 694470551 667515521 281082302 353817909 766622649 747387804 689198848 22457998 182758159 758258079 789899668 776463256 139892531 341764384 545629633 222171968 840224902 339815610 178780210 624504803 857887921 505291731 840007245 846682016 729241578 323924151 816637800 677323119 661704144 354702244 661798758 785412736 873341204 385157385 144097405 784963311 675296350 506840520 949540820 902030311 850117722 224052448 956057876 621185273 974868189 668972683 950737499 828298606 956099135 445174918 358506115 870964121 859209126 909257316 252538366 881044776 935966851 432472062 106732255 670989236 653545697 657161058 817506467 702726405 668964849 433814646 444830276 155937815 694354140 795953543 301379003 698655103 696396210 946555701 114350788 981015177 286601625 994847301 801410956 723451494 91537995 905835114 759234176 674220855 865308147 873027779 987524558 957412133 441857721 215838331 536740997 759553607 751386520 677958311 812494289 713429935 901363823 970467804 4733412 896862839 300849238 882460936 634659815 999119889 748738551 330022865 744602912 187999242 930330924 837456111 968446317 60067556 736729882 267466415 979497683 393258957 114722703 979152949 361369485 793844772 265473866 301858476 858249821 443887487 80045936 962255666 505195508 661690081 679733478 134293733 880795499 918002277 802838368 219010531 859167068 772512541 510238581 754536846 937527030 236211342 529830343 479849653 767782203 152597702 804494366 259836470 75455226 818905792 78524254 748171034 880581917 767831670 364334193 636107561 876014011 690369802 569361412 303808942 927352627 931691790 963920925 944850040 814729474 760168876 223810747 424511863 523634790 849815250 832080047 942355442 673756605 91265018 841194975 998516464 982230630 884530226 966685616 749040740 434615982 975449467 723027900 724188696 866224209 482133047 762223372 951996020 218395250 791044324 626884397 356032547 773540706 991801515 718114571 553950794 934906481 809577182 780805821 552085272 683033473 619349665 422927586 851224144 670989236 641136679 513277427 672978483 852936347 583188423 263881190 977581007 83987369 149160216 639555012 17004275 934549932 877730447 512489486 979426796 66993878 885393333 939716828 586394113 409466269 644725537 953727106 929726900 818805554 232575142 69224288 915219472 68228001 474994534 403686389 175139591 142007611 765793584 424439637 35836105 36242101 829232402 685586978 324034686 869013317 400876875 835091259 950669354 888782368 466988239 425059099 730235986 743044686 840169968 954681813 676747772 999030091 992226630 985404225 951405071 631902464 408193081 800976906 330700862 690042385 724838078 794915586 835846811 744667655 237966438 2551347 880636349 675060598 763871003 313164379 844323452 50093925 912494755 81341606 838888947 724514282 766002131 16925309 810392980 284784945 922640600 531265288 344445805 908930811 894284111 480615870 775977010 754277418 297797279 787785488 60687137 156684948 78936462 104026892 664182954 684522435 812804153 358891111 686316972 446226141 822418123 253876779 934098088 799924228 570869651 857501027 480215240 752806611 862659727 371338427 670989236 786202725 182504597 841888019 333958981 837857965 689028569 814465876 981219269 716686340 762217296 432741874 74342550 488228943 218852326 347780291 951978070 788936563 668746964 287698364 689199405 502252636 670276513 17050817 759977745 314243093 972008963 267908691 691168734 522675463 759450844 675640691 591338532 971535122 708382412 322807220 657817807 224037838 894311848 896880103 761648918 405531573 87720158 765930433 99782748 388204571 747001914 720710440 870410139 41597218 820100005 670989236 737435382 979352758 800510662 686604305 973567538 567386910 423313987 795027586 631703770 712916051 56325299 941093321 764223446 678875955 434680582 340813965 135204074 311737859 488312985 670989236 909952110 827693583 715027790 879585071 867890759 216718411 849145940 11113144 962151855 997675265 428737819 200110308 992152566 720258932 372062088 775160334 187787890 439257666 408652211 667113566 148552232 154329179 943235459 909747359 482582137 852001525 467970767 457514630 527957067 99879546 558813658 74353599 640737105 938363291 832235281 209306038 958054956 932833176 974825227 153615967 827224136 752503613 155125826 475752880 336998361 799869958 414445364 987459668 277029742 367338443 173416219 820757455 619657727 532279207 684320547 645377441 684566551 759532862 787153246 326130008 284663088 704486717 232251554 752679370 786434426 483143541 215735615 744183539 923962459 383455532 557626934 769613100 890591578 504938577 163669287 148816904 456125324 260001668 786770511 499095937 484997473 906481610 155549225 918985234 700865366 709579918 618430090 610881730 327626166 111573727 477385192 130209788 329520612 863063917 923999527 89246017 569955531 248719454 716425355 251838153 973318797 823228131 833398634 3384551 781539879 889908927 886347833 907974806 972557500 731584586 229384734 7932153 696043975 514640955 986667992 797857747 91301584 661985661 961579273 115995057 732349040 502167542 725351349 750968283 811185471 670989236 97576422 824245656 430796424 24124877 822445430 350568779 252157607 276828535 379311193 670989236 903176878 694301690 90331819 954491003 661449367 174227562 943790968 318294756 886731741 691006954 794259077 89080795 901055863 698768077 720112028 885331117 527646791 178091003 673821903 838592045 937843789 811250384 810566454 780719446 894888501 393639571 915526974 773241941 998620388 74816633 505692509 139723053 712045568 618655368 709580743 724805687 796580230 76248831 9656248 90314103 758939176 384910292 877754557 203888943 741150701 922639217 788609951 759954652 817156100 743240260 950494445 737357065 997525978 944430284 966952670 670989236 722086161 967149185 899545755 578653183 579556687 448364802 260500053 955004251 125649771 679947281 869565924 671405864 752668356 741367167 532308969 839890138 94939914 46878605 836957993 124370053 790989001 159277891 21028276 932166985 814568649 746940771 246315975 686316261 713446683 971467650 945152026 704137445 840679255 772770971 595963375 892353376 573563128 711707234 869021746 802011894 593539009 355483038 482488059 610953977 764035233 849358484 809262202 577112336 111310869 194545292 782648266 789212315 424007835 504377620 406807788 755477129 831843817 885309318 943086800 460087697 905096670 882588264 800685451 236808469 651684147 119871640 239263973 225287467 571647818 866344331 998408859 418205426 413589041 137451201 167680504 438480792 263126602 20276872 209396580 992558263 194335366 761090839 731634618 219697609 480695406 652418667 309872600 752975322 175975035 329728214 564122755 940632277 531255133 430795290 870617218 315867320 539785482 646361748 900602131 141643219 535599765 895211111 486921498 966330221 670989236 742051547 670989236 532370324 852747381 361957249 275533345 991612126 670989236 749326027 70061776 174716643 833833303 605256530 707056821 971314550 846194736 694189391 932984333 890576245 545186254 980790232 843985292 753831129 636670888 583982881 934140000 868709289 875784107 43145187 747118082 947909160 836822959 75220228 548161463 599957218 288262627 891088928 246146086 992034791 686745173 196432352 274741456 422706603 763846545 594142528 670989236 403915460 587303916 995971928 936338286 386376637 806961598 216594732 217797934 88568880 692213065 177033625 510807450 824130853 907698620 520811535 429704823 844154848 253832600 269226657 915537957 93500261 402182088 919104077 781244427 70892960 911083882 435022470 362601006 792337628 663942248 757580242 842850772 315958722 461612262 520207644 299764094 685266805 882898851 157163527 525851645 799822434 742990301 238902913 670989236 844719193 182305664 920970752 516043017 571428372 123244692 15943282 800514861 243835631 767511697 647580364 672277084 823509282 975199225 416026853 868884091 311281528 762438522 286068750 442957380 506927290 695709504 829408923 817643037 573913276 890789858 615070252 819044440 608717511 203372976 843307124 670989236 825430301 831775566 821812550 303760600 532365662 880696615 763847549 596261373 121675990 13088137 436951627 280491301 220115925 848166478 281222863 54236452 645566852 196484162 688344485 764998126 730820983 207591727 871473755 667351187 898731049 633091058 219721552 505614431 761357731 44358250 380722929 820450647 841037841 909705085 715878831 731014618 648994785 681208337 825973899 389019504 520166733 603458994 194044844 132224379 766535799 987209047 483297200 864216903 678618324 873466368 319490201 576517171 834003846 613399678 958156372 838529283 707938502 188059586 169458317 574383666 406957180 885359372 890750411 499069889 720897920 818405403 63078537 786547942 141759980 816021113 152890390 752910873 716818874 452731573 726895153 699569847 701114691 112982798 69496999 1061006 823760541 905412859 765471829 700235250 857967384 838826081 953235041 761051318 270512450 543257208 754042500 230682414 817951062 754926513 486824562 791146306 992061172 719397367 700877354 906728166 388663864 580921688 936434409 329511227 330568090 594270468 454680362 424330392 17813060 723529557 745729528 178957007 911816295 49561648 702654582 729079741 611270881 615559508 590346359 826694608 439206090 298965684 320361653 191333508 313724141 750599010 436031196 908617804 530593945 341758614 962410620 299020075 868998214 449023800 533338842 775176051 89977835 378827203 964017350 749487008 727247829 585951380 405508426 147747159 652613469 104002941 887011497 848136954 90982241 877341226 705151412 885652976 575792893 670373445 325093971 591882438 728939272 515293935 191957044 895550556 696936834 737555186 734748596 612007167 94623905 630220130 739381161 15621597 797537618 595952820 931875660 761433780 371610143 153258602 177383139 209115298 933240159 687444218 644138409 879318910 314811351 304061295 491718573 785598030 403353217 383728655 762610678 962485192 801480247 631661033 699004045 4832890 790519336 190357898 982331218 951115079 960227690 515608627 104051160 614218595 380146474 671239338 899553212 63009314 768387107 993256220 828348324 503624017 547508320 419818820 708941939 725251128 783009284 81033240 906581030 899525806 548078310 266948321 831497318 963469098 953898423 149623378 97806885 509812815 929084046 760110138 838517337 341470302 673660903 856165012 307849985 822870376 36802977 611531796 452350423 307210968 543511014 120944220 745754826 745953901 588430055 659651353 955985047 340323171 13173063 956408992 703082903 670989236 765236078 874246010 356646275 141846153 140770789 900396522 159219240 11206065 624292186 46255324 245537241 65288952 622876250 926374226 901649105 334913709 801848996 712438463 303058239 376637645 313142887 857795281 833923427 964079738 186261435 100675949 417911511 188410630 670989236 875480243 89002494 845005070 584764192 845093552 721877824 202897603 271053255 42133700 894550250 717499678 714385811 903570548 166085895 394217372 512275045 657299287 869925888 873849144 373172041 325145859 86157850 34415438 496519587 162390026 807079758 677794873 703072798 767902771 310627735 577095325 642118390 853634665 702828051 932025299 796916018 413859433 563472047 547076103 934038244 872395047 920780526 870216757 723205435 74513732 752450821 699047098 498518465 134387080 866776986 880893751 805064666 944615744 276721805 770000879 705161246 567719446 725079149 40858937 922991883 225178530 72062539 295828403 532117911 227228437 765925233 274025511 468778059 706647692 330349309 784907240 901569500 839133099 795392529 693692015 479771470 463093374 697102799 932904020 484420922 207579540 910476024 778117221 723621809 698655208 177138921 829635775 389375151 730034993 29888184 511047809 925677530 565930066 743716553 400267324 903100845 108584815 802731968 788763805 871053885 697404063 882415754 900853153 778627895 536274368 711226559 91519468 243180676 895761661 268525271 926479298 46019886 815337834 463574566 819431231 851216411 913371745 801928173 836442981 491096818 129828522 827505013 652000838 984866722 224487484 10171614 340108288 101673187 725072838 597538000 699126065 420887039 426261616 737868581 346782501 265347536 833285198 634504576 350382480 291851355 943382775 697498246 798063506 120898593 578392380 316345666 755000692 103958808 755090025 43829346 882281720 736376119 952236538 803490119 672034333 839291296 279599350 51396202 194879145 727704066 147824183 170079085 610365568 8487053 890052628 246038001 615203442 896615358 921328659 579339119 32929723 295526226 833285863 334581696 320397880 980779102 640600812 152752923 791143979 932351619 218356079 218066246 690795852 782873859 929319674 547542239 936186411 593470567 157457459 617153782 863620993 97416110 958450047 750459700 94799413 825742854 965559204 146426306 680194689 234108217 403362462 76302844 689968559 212132708 172277215 91559936 969700689 921264309 674831447 977614655 695516397 246477251 448924856 952625169 717015471 758791449 840737799 863905617 821209487 891572177 704352850 638617519 456795028 792323136 835465789 71746906 737515789 874181886 411552962 162222682 478644812 497388997 995285932 581372230 528269975 156502518 971108587 633670144 303103547 381759152 922381510 651537897 704275319 536725034 864666316 348049734 828294066 670989236 437103296 893318271 90126289 729408611 28316914 872514328 340495242 681841433 242947857 881674118 743460393 624458568 917655268 745940881 269958655 712671075 20886057 909749201 836969952 410404119 106870249 942131647 754796676 800109229 671933152 232629427 494374053 469062992 796442799 720071072 119777904 697189750 153143877 377680551 974621343 810581355 28674209 353824406 910910855 92404646 302144294 317969355 308642678 230285387 974582647 861942692 344291626 439088061 564811414 775278719 204660809 162049002 795833807 972897460 646155064 814524113 62392273 825193990 472534578 258798097 180073681 596794976 417017790 220393530 912101174 546371500 895662527 330902741 104328035 943959865 460998859 923031084 257245855 491391903 47910073 93235392 394984838 91354511 689987376 670989236 719672111 80697070 838236751 540096188 221212551 833383191 630751405 324034349 584715418 52414059 425515519 189931154 931755646 122648759 963612026 827576313 242964377 387822692 645175596 870327404 782241267 520165909 544110341 315843478 349748211 387600092 212777359 758573512 762900038 336449452 951733890 696513401 965039400 731396330 147175712 584431107 44360580 381378307 20451699 179291437 955526079 724372670 695358245 681230494 10481501 789505610 130396233 416050766 926426587 660188230 387558055 856338301 186979485 886243721 808339717 226450141 911265077 922493194 273101209 979658130 10103437 955797298 391776822 928087687 582642053 730059619 24985528 101609418 637927548 605727958 72315563 378529402 733888127 931293572 425083178 81094467 306887793 984717941 674799554 94945689 22875648 164254164 528722839 387852288 665856286 301621544 5098152 476724887 831486139 546695796 884467435 600816339 834042210 473169120 432294068 252471503 673900010 525187963 517930147 230199221 812697021 884571307 97264153 241634544 736791594 855299490 141136698 662167946 649046484 696986464 928411456 795197375 142802167 867856539 484194326 860597563 839904044 858755748 506075535 855045722 757590074 462207807 852732617 677193883 506931789 986293310 764281590 245874131 781238562 207662974 345913545 309521428 223126810 576856905 793730388 988469801 135301585 902633712 282852006 363372404 304850382 369456862 836953260 745449514 247356689 39857080 663325256 963834837 82945053 7231846 958271234 935729375 878499636 892755133 526362733 715521672 803217026 975059672 287665030 434708011 208620458 166143682 844825140 941242783 386020788 987053631 754287199 947225811 633680944 928277301 681397505 456069768 698984792 204595100 935439567 989111906 806079095 852171541 712935673 841056126 11964124 161068221 123428419 826775480 690362101 622645235 103201699 200191838 182343439 216736279 7630574 931258338 718770798 392901146 88028907 659032700 479922217 305537991 409854554 605507634 20263438 636469933 797425929 82135673 867955373 735361631 756024439 815322892 368601135 298092820 195013263 837139992 786332134 746301868 40473901 633446268 906555779 708187593 588954881 80224060 477485274 872986260 441742931 891845426 706043108 925006963 762240257 122108207 164687899 513084620 670989236 757799231 744439046 942462504 800058833 895293937 924198225 619673861 829449552 703320340 957614335 643850509 220988674 671775638 437181990 190852976 449435824 571125681 447871541 52765963 817226424 533086926 860108608 228114294 549358434 789629431 847231492 22234951 881854700 209520524 210894253 707150921 801695987 815672775 972678046 897181634 683093047 125853747 159780209 215127591 806696411 882212822 392273759 156183145 135782908 66052029 662688997 333193388 791473472 293948292 846601559 940310525 322385075 687887917 259687605 537646575 770331658 757539783 714579708 998471347 686618375 519052632 262663228 62381547 580249285 792433418 810459607 818639865 821599090 728413409 871297642 759071647 503716678 373916453 298554235 755081759 530045620 950975883 977118856 40482395 547112551 691955049 987033511 888796386 980354632 2929014 644405617 670989236 477120284 2875265 924022255 769106678 947633091 178008656 958378628 959754970 749449227 463825465 756803326 660859353 874384697 762731819 822504916 271793101 974803955 868106068 389281629 431817427 390934946 634207426 407274764 376994028 670989236 990159822 700640052 211570618 851473366 352045303 502046963 691463298 932465492 738528100 685083048 775026266 68915138 940661178 689671541 259083127 866073482 803657768 388992307 333994974 730457196 451543275 261463921 924792559 720919544 741107922 657387781 765355354 736107477 912072317 709933505 670989236 175385865 838528313 4839905 774465379 929917676 909340592 174593498 148188973 211455217 461793012 695918238 328852680 305079098 487582303 127746719 624291382 849832072 509526447 601844723 766953267 805275652 92645302 915245301 713725658 856995264 785003810 692536579 765519903 967054218 519569398 728313056 915162998 746772193 889137824 687950617 944389341 712627484 835793343 803904250 690417075 695374989 640029030 895494541 462740306 714192796 254888859 520295970 274252096 885185302 427754357 79906669 17463826 409233809 180466212 381259360 418999822 146447094 947598121 941075244 461779344 820271569 486083179 185236043 547616482 278826704 834208654 963767288 977048992 797983388 968453940 705350649 854593574 48891402 45881921 676746011 742796769 840091844 612792165 821905835 937546326 981314635 616689759 704131350 777158242 255380131 992417402 289507246 548857321 820963193 84911025 343247492 653710439 861794208 844819048 243718995 611686781 926321635 699739687 676687927 619562404 443415535 6252392 504118180 829741653 723585797 835170531 245172855 747060194 47406359 585519504 331183203 697929067 587779584 769150301 557880504 17957132 130510216 490650329 975517166 341901717 157326292 252419029 850451687 18154429 823643101 525647929 617382101 715340750 993410120 708980679 47694749 255139325 101087037 671252317 540912926 367061572 248611773 375899299 162941865 556020258 908161166 842655563 739690225 522167033 645854443 373744859 37463169 715728504 914964049 875359847 799033037 562589443 823426114 121735611 368344855 860953943 153463247 306078136 777000728 882375811 402685991 848941966 845529915 804998297 15963975 739515340 100008318 844818310 760822924 677015165 147952244 869978165 117534636 897187044 773856474 966007172 102203773 269786082 498535190 554147421 821172415 670989236 2294134 741343612 846195310 92428069 233797380 968701848 586481370 813466591 710096054 175194687 110802372 743410385 939576062 189077292 925942815 123013340 330708614 233127042 476471837 670989236 204717618 818354121 810850543 316364591 535411144 772336944 924606906 55830092 703623078 400863651 567185244 965159932 109771883 787083419 327883422 99162973 616602207 919379586 686160873 171950044 62828484 312242298 723692805 460218532 760448029 674308519 163060037 449799510 539970488 464223898 825523775 499762892 982643928 72687941 801275941 90786029 693501972 201152839 639707069 78170213 804860041 152306833 218660753 552297748 12920049 940854147 570452992 902643007 151821132 848150307 319557091 793629412 676173336 678748134 992671549 879827448 798372227 257916427 514905309 355519551 515778151 413536582 986377484 613751375 900255902 17368980 204828594 979595698 500765658 934600830 705725477 258208408 776239199 703446982 532913453 281672342 379571692 845172560 702016585 148305393 991717326 681142624 939021031 807662257 952810127 1910782 244476666 747857905 1003813 569081409 172188646 878771320 67353458 737482591 883286107 85840823 891442743 985480902 719237995 245767149 409317135 482604700 780017839 142921265 323401228 864477415 879023902 876162246 810811622 670989236 723307482 564909677 314757646 802686481 795716426 113623543 792788313 27237113 476875377 341548591 703159753 703946899 341951315 435528393 956975296 699762929 786857362 167960468 985801556 890415794 821401537 795493260 722807993 256449645 387977279 830617623 910395755 246525192 670989236 630873213 174058663 920784025 425563303 634324563 2779307 808420866 2824088 760828902 793590663 639107654 104051726 944883727 674242358 264511413 113210516 670989236 404720927 57146853 989900607 815918970 193934943 80413746 830920459 670989236 680560753 278001456 998999553 212930582 807479791 396942870 95925893 847853667 320095526 39706872 389659292 376347997 644325210 459523780 824404175 930602085 676868305 477159899 908208993 975333092 664615420 362114111 433626401 768556018 852010437 943149878 822862582 131028500 34836260 149403175 670989236 755457438 716211504 1041879 744600426 830488885 799767157 696354866 560301601 913815525 999463213 334071442 735225741 684946836 347398512 397639526 745321519 457349759 947965591 995385597 674173472 727484959 173691531 83897613 672596335 389303961 91730666 400254729 889681487 197654528 906150912 674365297 190014586 508567466 416989364 733112394 810766231 753420316 967440663 917680353 328502424 210864513 916386790 363738654 12675116 347106252 676653198 739131227 949348995 748698420 504510730 918103268 887388960 663493315 364786613 388131000 682670363 869484092 175141620 293846408 764413102 22665590 611163495 693549413 364996713 70136127 126267684 370709323 813434168 622499271 121545094 742806307 684233771 581612372 774787955 982086617 898423521 848435228 842341049 569412185 141968403 354597992 644098835 947841826 794758066 767976139 899723336 772710434 487211615 614474680 445504192 801829633 750931634 933236927 873057840 772935345 18260349 810186590 756701509 734780223 424099085 817550275 117782474 710142397 485175276 787475674 769448654 783090175 461185298 862399949 927379695 890960346 902295345 993037241 410462201 699096226 5605562 890316598 257000763 837724033 471829881 208636565 915772475 926147321 724933388 765313959 870465901 994406527 928267935 466185549 529935081 968720894 521984912 224062404 961985665 611806389 721947819 268325846 912937279 697913876 754474087 345275159 947129479 670989236 334617967 737965720 553120224 704406073 220034370 807507172 101034238 814682494 897675156 978388448 135791569 60114269 795891356 774365295 337128537 498396897 179988386 738331119 365771555 670989236 800658303 622183129 197020048 660104681 633429872 272232452 655960591 169674251 755964317 505561611 388816474 338929064 933561807 89927986 476478005 469613563 308064343 310525919 8289366 55785441 689652869 931982596 867566420 38208507 503541862 802105305 725999014 990170966 987411190 906823185 266467065 293122602 998762007 670989236 799873921 689045094 563420809 992433114 668413314 191365474 655186892 642647063 753766306 884684768 563024963 957084479 918202093 754101725 189980802 392229192 776426193 267391101 780860688 479354421 737584393 394700390 873294846 739206349 835544132 107834343 643072958 709267611 780693091 368254118 835308428 856682145 975072637 975261843 615157351 86392393 42582658 242533108 787132295 374975866 250933414 750727466 749297547 502840043 365596883 670989236 951370162 747644957 605724462 948323250 315457887 738908452 889756444 941350646 908149888 817857333 890068823 55039658 679850332 902367033 753068381 37202610 288824543 570574226 806318164 537136086 573498509 10398344 58913896 706208949 80741614 355855875 737681778 849634 674574513 786949371 953043436 898740160 558744700 487319496 401445892 675580028 248764947 742361748 513738879 543923466 822439867 794687029 507453699 899751920 656433557 572492585 231898462 715331808 977529179 370138177 838832629 895069257 807170097 670989236 437113270 842781059 503103280 309947650 874573145 772639405 836668585 311566754 526607642 695996027 746616139 236352759 955534231 887141328 876014190 151309073 787504844 595016485 972480031 348526013 993192060 969485204 331197659 434240184 655257145 159027460 677420313 539039130 926147836 900018289 52809772 692411951 348524477 519478989 707663579 302479353 936594875 860381213 736640682 679165275 884616909 31923207 829727746 168806753 706790264 670989236 977186105 694166929 468841603 250556617 524206114 948126943 804203883 907456746 556597172 30889789 879810751 292210223 256661603 94591499 651836050 866810197 510337641 279018812 216265581 466367057 722064077 174795344 360806945 837582101 973353467 670989236 755680380 430218552 378309282 949830015 856827661 675494282 790545183 288879639 959900577 407564820 976470640 262390036 176808013 956424550 742392964 488289751 470441247 975152548 964226557 925724401 660043282 660647203 317213464 827091853 942806378 670989236 775152397 50985787 987830521 620071667 799771007 914614768 538541839 754591093 955469694 226021634 675718846 307904024 807763014 972959030 937826603 871881847 717704017 3733718 582599572 774730039 765202370 228899792 315239441 926480218 897643686 22902999 671395383 690309037 144541939 352869397 514904958 229694789 562170459 540418654 208799879 670989236 117242687 120412200 694562381 378319136 125953384 343054933 506971118 456774182 25108484 807808620 68096592 94308568 992913463 822478538 976516025 76411879 238708344 330672002 831828827 888715852 724701726 189174825 178081511 521274155 833420614 499668727 939646387 53870408 662732426 541049828 591572036 755593068 954843312 750100025 908445060 370866715 747473025 576471448 118118110 893955647 14091717 525012458 967942550 696019644 696448878 238501872 839658187 358587511 1554023 989189406 835443656 409840314 811029252 578736715 720733426 834925495 741880832 45883104 432559578 182768673 763457468 115090968 580133474 548400166 823151996 12512664 613927730 784413899 18944967 992533921 966944212 962036744 716425647 491803366 455265786 115621120 117151938 96696333 528345872 425129883 753450778 972489602 509151536 742608655 333048853 697345157 84494494 797127152 982956771 670989236 881166700 114368173 191983564 674383761 813905514 635368117 902227541 942050765 896686600 259806725 985069907 867075518 202234339 883312554 257229601 897287947 906451489 203696868 226796379 85972388 847686670 272647887 134562720 710337012 680839890 326132441 797646945 306814434 633481955 850385107 105770188 942334678 470662714 817484248 989236234 830360934 344354712 818319807 910750584 730287163 414925814 963689949 15612893 808238241 160069142 646124175 133650009 294393492 144910719 906455997 767305529 972063327 612987488 831395908 484538066 728505104 744796688 772990302 507249928 590634910 860671790 685814149 928561306 670989236 784792098 893151975 700452393 826186329 585676917 77727756 228739866 925561146 419794686 356166784 229537463 884354706 153109155 752099334 973717120 741481128 959455666 696338048 75725562 303851457 376153142 617895835 144983966 479024908 22562544 246899249 502624874 484530643 995729105 748100351 752558398 964400236 308516367 22520423 500488956 861027880 444543354 865032764 388051404 353194073 352341989 446266304 266775573 894517777 839814163 914249010 798907805 486802227 856007819 744716493 998041211 673902257 703890914 978144054 233049260 120161265 850523681 338992221 592734481 730870339 735348679 284018432 971841101 180236315 370921672 995709395 956936867 732145979 176420236 475022492 223437172 813757103 19224778 5023205 573917900 983062165 924678694 767891500 617194554 414814473 872056565 697182910 223507389 961327367 722193441 120922849 139784176 663002264 907329297 991464871 129430353 881637909 974544245 869142172 857335284 894978739 830916852 402054382 936420513 323454023 282341999 24363903 517389936 281146115 971126456 813901629 831784581 106193046 230075815 253509735 714972358 852855870 786305326 892637797 224687982 647539317 435072772 462531948 160651351 881886502 763376752 974762042 879678964 189869798 966007369 476521966 513367668 758273258 973790417 670989236 642688717 134335700 967085434 747587862 59345283 641555403 918530727 625205859 104792218 761257555 499685131 803277371 987015572 389917534 537961330 982866845 955695071 823498148 670989236 675242698 627822191 80255015 863151775 85482440 692006678 127775022 776196122 684324969 903517962 284800934 955881888 856103075 242832352 661906999 714418927 872156471 894570689 953272627 287007496 409350925 51201828 881488847 992209607 202822217 931671212 475644685 160671996 228318313 248587601 335206417 590909485 425495933 670989236 894337011 525902535 497548917 939235280 882288120 615037525 139541893 926179027 620473913 763052360 593895180 557244045 360134584 658203186 873767185 225364196 596786231 932930120 266537661 983994456 123739181 837319245 729517903 651188181 885586183 941118910 514706003 762741987 434203532 706518974 495395896 13078757 688001258 829636075 876879351 710752393 767540138 504534581 166027649 958163383 141750428 142730221 497899086 727103117 276293574 887085536 762747606 63253157 281332294 992126438 66635028 274552894 520735455 880755953 338416529 196539039 57393759 440441137 888405800 42923476 386573597 311603202 68241414 791620333 812777510 286855463 817643693 689772762 334347594 710824718 745959612 758182239 474666237 569523637 14683648 742907144 419051571 320226302 687602957 282726007 89995070 929466944 838123266 985264692 902387849 775032206 842249629 924181319 745762398 788478393 670989236 939012303 460658132 630476399 989827672 972275868 993362717 463384573 878963844 859560051 516887743 583717170 254167432 723235659 770319487 525887345 611474586 51635327 693713896 953785500 996093932 286528410 628904713 716225783 674359540 784851112 985778815 126132997 285087897 21355307 499982443 113788759 768621366 21353665 910828519 68307333 882366733 410550778 494605928 552026053 467559764 511535410 258439208 223305071 295348350 420360070 357522405 488770039 882948242 218895274 947651883 859984454 594827420 725241821 472802340 321156457 397939312 913340156 168462406 821856493 36304955 220998479 670989236 105701486 545621968 836826373 273643858 745239240 864350043 224741628 285975552 204925965 761693723 551235409 178501922 33601805 977973256 701621204 215003726 902925805 837008370 861752145 670989236 504254334 749091671 738087706 901230291 31654564 188321522 884567792 27238745 611189189 822202713 361396715 851665952 819082446 751625445 3942666 893724451 643638665 851068763 713014982 239230888 708670738 188490684 380759554 829827390 41058431 475226233 200919596 861268681 887526347 884997697 670989236 651784092 93465440 990266160 181507307 754688197 812982057 984268369 166049296 666743043 886246288 288607959 861558125 486592844 3622667 980869529 347522591 18734762 142043334 683212717 181550319 51808229 270715587 957239070 908755167 841739491 426433494 962457869 433621397 945174129 127602614 502118554 568484943 670989236 703056103 838852668 672163459 424438231 363327769 463725128 980906536 391902992 535059960 706637556 89245319 858878803 952093657 762792958 42584567 677805828 670989236 588082116 117025010 995049362 980302928 282710623 686524890 678864907 239163253 834040870 34836483 799890161 323845546 552342016 741275216 758443107 385996243 269651426 734142109 945186962 43672769 944793777 420754266 365312617 795545210 495518477 763783494 720974184 94468704 83555563 422627189 811304196 195160704 670989236 562011870 853503739 663930438 986620822 293668268 76706053 501492582 886960580 558793878 88937437 840944244 816804234 724421450 792624492 91733578 776497957 913399507 511770118 712211668 861412175 624263099 738431643 670989236 768317739 250197909 901716394 899826190 741952326 140464571 377324824 525021082 957294073 261727932 494171424 771897559 857085242 923207467 30290397 285159597 135948606 293873934 37619166 741895358 942302496 241789466 686289349 97748263 757837116 455547061 203793943 139530414 437469178 282696661 84104146 778623991 912729157 379706990 45054154 696433154 689081681 390627969 591842665 844126686 874811067 527034626 110637274 64378866 979152481 713097595 75184680 744397882 545467787 674212815 570554953 464250724 332110476 128845139 274230189 382442201 669307282 830013750 784546406 736713807 707981986 819819744 959901130 449267138 972984530 626113133 368885947 974374833 593093954 985717399 44176748 975555027 789132846 541355630 787694379 806537293 977189241 331259653 673471736 809866788 500189085 846556462 866012256 620880303 910050318 20808746 328761742 771035473 591562901 677601005 974245103 808629476 950397334 786537249 231304370 78389486 564707990 823034262 765423695 885516991 853682934 415373753 924842983 766218000 459397753 670989236 976502403 505132891 189122374 422556815 596456550 549381113 854764755 913334116 33020097 728906335 286126902 779815397 856314237 276097204 686459899 435180382 34458136 609382738 973483544 383487566 289637569 201632490 245018898 598346618 798912513 418705435 477735387 161076328 173867320 769189920 922092023 978864817 279800520 625841695 799810963 810335956 865831802 670989236 240043032 833381639 789620155 952242807 922383912 822069162 803489531 139880973 533044443 686303895 695811478 738491539 983770883 817692648 891774819 670273140 977815036 909165468 921765522 893405899 985044537 55238730 277900757 666612702 986433184 723083666 898718995 17658656 15160533 821962346 8511344 881261128 945338201 905076617 581959616 451996651 834349831 689440470 973384835 731597197 898435101 342357048 906426837 700710147 720492356 337602897 678453663 208876233 705440052 947814657 710385389 622915286 757147253 310642679 834231868 971382988 610004566 712119294 312750572 321544319 34515505 987925701 988746127 786203795 477669338 763034093 591323308 656034331 971978144 53424376 5440293 989007243 546384298 912288254 425156595 523222680 916261661 683357899 698663111 724611589 400515547 262082275 945219628 459837219 947761661 902139067 315439920 744994257 676376303 720946656 769001412 957544903 194126022 604494883 432939638 781222944 756766008 824610167 710639433 763076913 818731753 807148685 719572667 452674860 736937168 138449349 740190960 871620910 108921846 981048282 494024329 806667453 877618287 605662201 42679493 978419847 743102733 724139930 731651336 125191298 726009675 343645924 611968718 144824026 302923753 739105260 115089410 670989236 849729138 3971051 8891776 791030121 783609061 651649353 757225447 547069609 2959469 599158351 77393218 335613381 800038702 733173209 541069160 857903689 468714816 794318265 530686862 792221249 50229482 106449868 406453698 772375306 861808023 895877518 557878491 351134602 164760576 96748746 339464739 724657383 736965545 665726071 282423409 644286478 770920964 670921648 811429585 499218783 715328998 839971534 703090253 845077183 750696191 919358943 973799048 438825533 115749883 983552908 646028299 758070162 909681914 626797164 559494749 608974272 909385862 821853575 984762033 557739539 763777345 944095461 939887378 535254934 215621349 373887587 784489539 994851087 736324582 10197603 790190458 286223280 906334532 897458520 89446615 392043137 295839491 276241 847596555 173282587 244730273 816785030 693981467 716956271 498937202 173948288 770781567 225135259 613755446 240116398 985965756 182636721 119525317 957022588 345177731 233995566 992401676 50508981 923262363 74810609 904804482 203432996 863348784 971119860 772541369 691839599 5899313 747411935 211891359 910516868 924770451 277705385 162265486 728724041 670989236 409383447 991093937 689066675 122614728 813309869 670989236 719288521 404228628 805996332 960589928 436364506 679768868 696699971 901690555 332419971 395401222 290539060 974694465 605262259 395095810 810087866 360738633 690895979 924707040 849357135 746087239 937858202 614676934 685261493 947069948 939391880 564899206 145316232 978904636 660139564 945119924 41298791 632230753 762084958 543135218 332615959 999194813 692617569 469487712 353024173 63959423 512703261 55875883 443886428 104758918 738834265 704717928 167535620 10685713 770351768 682110748 184676219 891207387 798759649 425790951 255428664 972343356 144552962 275704052 150268499 887268631 670989236 305398389 854707902 107000708 877237418 70123070 129236935 119150571 646020 798504031 145681976 648060887 811370655 686540653 865324705 629655959 352847686 202060716 302177504 723616536 770534347 6413535 787467282 904474652 611824401 48177906 664458854 940785569 404217881 631617696 14177740 330785492 738375951 807393323 657958559 531835665 45355783 447372795 548117793 391149377 766229563 788013359 534552158 287802647 257152410 597216923 347009074 887132163 221671068 73954311 648141013 970147103 679091232 957762705 680279871 875203002 233719732 848995076 529125062 313790730 158466900 982222939 995289406 86286228 3808574 773833124 695232981 208623851 160159579 555404530 966009331 860322886 85762964 680895082 159396828 953246152 153172386 432604573 352744979 983968607 239732786 107446191 388316813 873408108 426124576 127845952 120778126 834485202 616125944 382156766 916182196 278112903 863009033 670989236 291472063 393208036 734809689 510555720 378527275 5279421 292571157 668636787 819534963 858998941 793362248 739695986 956058373 813055156 774008955 534031322 932174391 819125867 805276943 901350701 754147273 242884136 956926101 85270118 624221513 478220220 507770635 707737756 776631476 108614130 694925437 515814951 924599076 386643577 939424763 702110742 825328243 250531669 960920380 849721729 432653175 224694819 6961612 444232539 742263757 727610615 218366322 342575985 692076687 102072421 231272838 802966837 733789332 842743202 731206092 325607645 704480795 775002480 987579781 313450929 423986329 428524594 424598819 579052117 970929533 940456798 684981711 118688716 697457355 884814201 455271994 326140136 168640090 940282323 816034502 666418434 288551357 879548799 768957287 470047600 194925766 899040374 865928449 305410150 738147366 8142748 956867141 972581020 480692667 926141075 349282808 903476733 923256856 151847028 941175683 751959900 833972949 647838236 745942291 753383835 810397461 844930309 113139897 281308813 502343245 959708245 746218408 973842957 884424827 857667054 123720138 130640933 149054765 870017521 670989236 575161112 534294283 285913880 716554909 934440997 658460757 410525844 970907316 899113838 913455971 892864046 485284960 800824142 501156881 892976117 683417544 763976060 194110916 95597536 553064283 659965921 927280005 209824974 682683832 260939033 815140791 756863235 437102493 783816023 574485411 420275383 574435544 178738211 500056161 580468552 162749489 914049161 374637948 717429688 175016700 317712460 853251974 959675619 299680495 257140024 299406476 662886203 48067080 972311866 617195255 788558756 314403294 480345008 160113033 342328349 934521743 134408785 239294599 528671258 995529587 679097797 573417127 737026467 926578954 160503420 737867683 572327984 723599698 732270629 607852956 879149464 85019560 240952275 185177236 173933191 638744883 38774352 377315478 238804527 614661192 356228809 531880738 985897359 643420451 279873200 368669102 2067261 862435291 950977203 326389175 738960966 699712659 719095500 196281431 936366968 192217787 131615023 957668242 137785366 453150941 735573922 4336993 688021586 634075601 806296304 857082828 436683034 808313648 60687490 926088155 314473748 835860210 962806028 566587596 787224190 183661753 371055010 967658584 873821473 523834105 147288698 316998319 168927984 938410196 233028107 877397934 810139503 608396443 842909377 772351892 187869137 100350548 864945496 931647950 607607319 535787595 935632888 881369415 48362053 189983271 398526376 114102382 770577705 88772669 689296071 536360163 866334470 661077233 71932639 338862171 740761856 181489328 236222062 582340748 402368642 87318135 385499201 481499765 33884418 142685867 573982407 844932679 781453991 847317812 747797259 857070433 692672548 867451308 557267419 947384524 362978484 593436932 708123523 690529940 995494666 726931429 856732842 987764414 985773453 803139458 86643875 907745828 452087551 776652413 727973740 658192793 458411314 584054262 888859745 167925609 692627146 600868039 975656727 518320489 756742139 673649105 737292271 987746079 454228961 185778842 504630611 15597755 600911385 84437790 895919748 879536353 937870746 949921313 992225019 224320739 692256119 860478606 39772394 577080134 586413371 684678164 379200079 789707436 644726157 495958002 817601990 455054936 788786462 763258057 670989236 870569288 388067948 944944450 615627487 837170574 936360237 867320366 558366095 174206991 884416313 33127711 727858006 913404749 907087528 694033009 260929203 118960019 748037697 720913112 699025956 710538014 848579602 790402139 68698896 701720137 409194351 727592630 879628949 847965225 753771491 935751669 793839013 239855202 874811341 465106016 899344811 852182819 288245095 96476133 205009973 125678121 10210898 785191354 891406400 160436077 160266156 686298953 797958750 376595322 193140015 892509151 20893577 290992469 758826743 49561212 718692844 804110978 616267384 943063633 354740362 73575932 552938058 370467897 215653199 751174244 181140056 693692857 324115160 74556232 379051982 624264351 620821540 118229808 359590130 670989236 887000537 118175533 156901382 331980825 431225870 243278187 425036332 92570781 583528100 565542599 206423604 747087221 709253092 473451463 977525093 914508022 631981407 695916088 214270778 942418002 185211438 258383495 531993218 899294378 499565889 673668002 468921702 201125607 40659805 865080505 693939471 671176057 77670957 985174200 167393351 921516880 796645361 868922151 698546511 437821742 934291206 919730952 109042499 742907216 885261429 729234012 434539654 920404913 665070307 620625085 461338179 462264180 603618703 670005471 808625211 672635683 734256995 816591640 673519983 269755387 46462366 129323854 405579892 439641639 934209406 725281419 332553572 334150128 21761980 356712003 330806289 133298829 491426619 566668394 507852903 572874725 864707463 773899977 72203949 658461450 894200881 984253343 322929914 883564197 693737655 996913714 268862584 550539044 537619084 483749868 849506520 328322756 749030331 723974946 253596165 533731097 954905485 494054344 723146537 401666989 144085596 818697841 239902962 899922322 40379687 813710369 736108931 992061680 755567701 110152230 945355639 939674346 709108495 690863859 21109942 756411904 986455570 350537280 704040731 45159703 775607047 164529454 408270026 479443488 101126721 914586631 794432205 926966553 402067791 468631900 163310132 119435980 224903447 576218878 20238283 153620024 919797120 429329164 705831336 859636381 98403475 715719364 850732476 858210915 883517403 951804420 651035854 329838058 848240615 73866508 849300367 236489932 345940935 682034172 908551744 22755761 935252043 706268905 849531004 80773138 544849591 800715167 530194820 793362330 913458154 987844442 800659092 725110988 302930478 397682170 692847299 620237613 353440997 670989236 838460256 270537820 677685042 319794271 826515715 744354015 621584821 469687903 992602691 521262371 301007623 969266741 464666148 838881286 967389592 558718569 390299285 914818173 460738924 597121406 500402086 12138471 874158825 985440375 516902647 582615590 667841746 137260184 899592550 823673105 192993165 43711000 535110462 49238339 162912068 640357695 768286570 470557091 463506542 809767748 830869452 832360530 445088313 902516075 602411293 443506041 670989236 941074710 591157778 877593290 807650274 37533960 824047388 228315421 144016900 909597151 275571787 846834136 894380078 751280837 891595146 830812599 91392457 944848902 111753352 907936501 429124853 827233255 261400597 502321814 634059191 173804270 373166271 927894558 77241729 808666738 74936737 578330358 824365170 28061193 540097733 92935361 447533799 865205143 261047223 810417358 2737272 231811082 669225724 43630666 377696980 911306639 790636416 345592473 149780700 619911069 994715261 959618918 178314319 438336000 647985602 893484234 505613742 724875744 919265976 582917581 150751579 976424061 180709543 292428838 950788086 344765013 954982579 931274463 677801671 15171071 801880783 785274495 190583113 735066006 926617901 505659672 757741078 730114204 930729890 822602691 219699489 530520430 309734058 563304887 681378784 738153617 900887450 6356266 378298419 849744579 457935830 964827722 603008824 739764042 386752575 87778101 390655751 452694578 493607774 209499536 976321486 239081247 324014977 359443040 711098579 964892588 349151324 140482616 93430708 14791522 208605222 195401291 642143670 333584355 571765212 487012249 791738372 578145458 774086107 727598811 204302999 27465976 16279499 872520134 497817544 670989236 671932772 361084728 299126176 368201148 606012398 170750447 895742453 319745046 463831348 332179910 681781342 130820385 907676186 411281939 969963285 711590031 535898926 596729635 822839054 900850198 730342383 941932109 880806798 864494005 965263631 963971026 710651549 416364335 722031399 366164156 9655285 693291798 184015019 878841486 351816712 990357379 509366022 237364961 99814532 289955399 704436969 795532745 169102545 932683533 881692764 668376117 885515756 744649465 983104072 778150961 834374490 848179986 950496256 601032022 663962081 640451765 485876938 839619724 972970375 369459946 634265531 370747933 938668362 670989236 972000531 677915190 841618005 221392452 488716389 30303399 968396975 674374184 84298937 869558489 42103877 252411559 741355348 899404686 676821777 619912107 283404953 807929156 593613022 311787070 290098948 22440559 226315057 633429541 826625173 512411250 265086085 572160623 821376125 769160502 901562921 29177967 721706480 228739319 806938470 901164220 321893889 187952133 451808253 175503900 664815408 839657955 905717280 978592940 437496487 554833248 989850746 451769091 769578336 918824127 757440626 950541210 194739484 833794154 734484591 692558000 592860872 218242189 623306605 973457803 677915511 858865435 246786422 711856707 719198739 789128190 734605545 786636271 147303762 586970539 654023565 737403431 975911500 742932306 89740513 585585872 396947772 677721450 751310301 130612343 526926304 862179595 400281366 670989236 436151012 906699184 487023843 755016524 345740690 243499101 482109341 712431776 550223535 897189891 906499142 980065200 186116085 558084362 700908947 801029481 392828320 833638103 338595090 715854364 254681430 915731896 224375449 434559987 779222743 828662275 153715157 825873547 333823422 970736578 811324199 935498945 882908252 897065221 893614908 460933978 793496962 529799251 674486811 570341897 948711613 131552330 753164919 392040536 959063205 944772097 164293938 793516175 881260609 2465728 671384885 797089810 989169501 124982918 523706565 725548568 416675433 691330208 338666810 688715053 670989236 753542557 815992027 625062805 531472543 578061831 670989236 596533023 478296280 186193770 745394993 990302971 654084294 909845081 856458027 591004979 721305260 963907600 173564939 376222502 74702993 835909143 788923474 916206556 364872628 32977571 164731289 538268474 951049424 609061472 687166708 686935611 787289456 673344583 891030019 910804409 462783300 902173357 924627766 566246121 652848823 205050561 765739521 750856896 468838188 833813388 6597445 377041105 727120660 684913070 282333481 579954 316654847 759838752 628365824 601063010 904958536 999999554 996493468 266754532 848925419 889573575 306894254 910753799 970667131 837901327 734715016 934824942 394601323 455363453 686475214 981283471 229706707 417697935 800627584 905531529 945352919 528495136 310054371 681580046 870205758 864452885 117711124 138229965 954358040 424733129 189719494 190279522 548629411 530822771 700051815 373185373 194717995 935149496 572945176 186814090 283170668 357165626 216817416 668330075 958325790 718004159 215011072 933396571 856534646 91680700 332670117 552595523 426284718 895044779 514447525 866181892 347052970 14005516 327755423 761999650 305870022 685831572 995839408 283455143 886200787 727158013 975976134 670989236 199187808 779169484 292002214 879045313 676436540 787199375 708769139 622719681 383256411 753045748 746502911 855761255 460634070 999886649 735991709 86645431 857658582 987142391 686033509 677461788 638752474 120724485 714898864 640383052 493365019 284610536 903414772 749552833 482204483 299727904 404378296 500660771 208757712 901499098 941878796 675002683 927069566 991524127 650791030 8768556 234608061 511677178 988389494 968098585 940681669 192128752 236398240 295823662 343960287 222933855 707815758 677377688 924639357 439357935 82205209 811660506 175691737 120135938 653502112 920448341 968250986 421344330 657340474 959688752 820544526 897592434 950304456 780630009 994518608 936856475 381003777 218327017 964060675 934534588 2171742 314134829 141505301 951533250 436902414 933089610 905183829 742547550 482171183 523777510 209621131 722963159 888259569 743439652 309050237 472412367 722971083 90705001 272543942 6214118 785042783 978213825 438639885 458520205 751594379 851687810 968040268 205992399 647939053 706228477 85557075 395372846 950918611 303750636 789901825 801190576 84612634 857469308 730142783 635432161 268244243 984559804 111368463 467876656 951340234 480073727 276803597 22079781 660148141 174662775 98087861 699699036 450201723 767698154 808362175 809288923 602992526 674553475 457756527 795618323 148492010 388573862 604708142 501602000 951927814 654812548 863693360 226960003 61465403 241137813 294568680 556389276 776320627 801421499 744754674 756491274 231574461 880410948 824426356 713793600 921645122 377368330 169064251 479426824 639170749 911624042 776830012 51236855 973964327 762232551 670989236 701411903 692247792 853144606 568043942 390411379 951858532 955339744 751085341 944774351 841431887 936123933 739791639 707251855 954324288 790980888 532013648 933271812 844064322 466074152 694496805 474513312 934414626 113449940 570304377 706359789 228878227 620116507 312982303 962851948 305027704 944065803 830594758 193601990 317079409 683925660 912296921 843178601 976753135 908213270 754855178 153829322 672654747 83113613 134301170 833408254 233458077 495916327 992327555 609063061 962582497 267622428 881459035 884343302 784095925 479829488 28635317 373258421 880951701 639973041 644274015 937206043 702383540 942730200 842403086 457936743 735685119 265727479 821224001 760414653 981447532 991065049 40895564 797717373 975770802 111238477 670588150 658093658 361121252 965975786 171981821 707044462 959210827 912709043 900045292 264181435 483368674 720857493 349391272 341043921 685679513 550075028 620262226 558990285 384525622 692560786 245617142 896369686 669426356 360241017 279247365 930315026 992661467 504662275 22046563 332270403 314586565 670989236 600540266 996169180 775672022 644666728 976970207 2498072 139898208 282019441 734728983 414282666 494505883 639641063 468827630 347383653 525935929 63189348 779769568 910265159 607069763 956973671 862976452 531243029 14210457 816532797 384795372 545298797 957078885 670989236 777773517 151821026 924468779 319083959 275275587 687664918 701879252 674900279 564773674 928103391 535028662 462012035 757052810 600055897 698663383 868365750 885994089 880080321 550231540 633381121 942977791 594588876 967480857 921328450 634175372 7147685 70276888 567528536 588727475 760679420 449209680 155763971 959710616 510547512 522323999 892540780 319823351 692427217 61876526 612673089 900210497 125381086 711880379 925113332 178422558 560817498 372456463 155916664 965266374 471001466 674465996 692652648 85722152 197030645 395484472 162485428 697373368 560240331 901298602 205348622 752342556 438457508 10549461 694235330 351236477 895682328 68163592 910630311 862915976 765050339 203126654 355677217 908127477 775254883 85791400 451277512 849918900 41891580 461461363 882678036 745135313 349869162 55208281 125374912 118983909 999394306 944370931 808511052 202247032 295514194 776114183 743433726 965645039 911822482 277688588 410753453 51428274 534646657 681619173 690439082 400120327 937884181 407485427 994236419 553010570 281869350 40006714 676052980 551447629 460357849 788581852 852044238 841456304 783090954 978465990 316159177 520733535 566041077 150311269 998471302 594677117 671361656 953111145 164610785 329131902 936423851 899456237 653426121 18512905 745131451 794046680 880153961 699993187 101037621 615081112 839517613 900765566 34653683 356437074 180692754 343784444 154147300 957859756 976516891 670989236 938213457 633789494 851808058 793709330 484475582 470154973 753081546 709581054 983419118 249144063 551076986 806519121 756347219 682838806 668659260 519015265 836299883 760757286 545231368 493701390 825465977 674055243 83991496 297490093 372771626 329777978 172418400 3174463 49989480 703464460 908046015 970519392 978251104 927118533 556994895 792215215 789962489 362664832 878410251 931318666 859150198 700301935 784433218 336154861 729041340 389489315 961550572 38914164 964684631 803873845 982122155 625714361 325430295 719254183 865118583 314171795 898660594 714129620 641416787 66257743 802047823 758555851 933655291 686492458 282535659 32066119 998861284 672386058 839509197 729444830 867299376 157062465 988995977 745643613 400829401 651725496 283834504 408742623 417194240 153938981 589670499 80016589 136343787 493010150 997499358 845423946 519341750 564546819 253885077 979660608 889743706 887127232 257012306 672015769 707864355 813396567 991524628 615542308 124217881 771796108 427315443 718192776 813925044 924467456 858266894 394736675 892352037 595258361 576379810 88190554 431791144 114235570 879148974 952997000 233613550 329518826 293216400 652711041 903206355 260528226 751580884 550331413 908946455 674743680 36304345 698654313 899713573 690706513 952454663 5009113 253730452 785098776 796600769 8139368 503746052 421577061 266517637 772239445 726923682 704236049 431400586 561430688 877941077 969534453 534860283 693262566 18269929 58409808 846209891 313819372 763250991 153737533 886017456 518309584 864577808 917529933 50775112 526224660 726806214 121223306 671996051 501019614 557700963 609803639 552601503 354655873 796952882 796960280 312408505 898559308 955584322 527650311 573036584 348460286 754837391 149416933 252315883 802363284 949372736 131305572 983798463 639985228 255083804 20542240 802566682 721361613 122794016 390991938 984025840 593386315 820365944 32949342 453349754 820379406 18712938 868550678 993474831 616696674 196883527 893511274 863389034 625922557 364739651 699457263 29296923 712842739 111238768 435603326 950752057 905608980 870450526 994154288 724315602 993821239 943227238 324209133 805084004 759179154 921410497 735978683 627769655 994920277 971999308 919831283 686371068 566897952 584210374 626537219 129870016 523762732 429351704 146090152 55834251 523196302 605583063 758446608 326045053 68918508 830160603 994794261 785182527 431722600 31579601 835236571 777546274 411651413 239165534 841879707 72050304 951635435 772460328 370065405 759438714 892380774 632642909 708208144 910937440 348237912 697063915 607390215 500623829 987768825 777311154 272045723 689814425 577064367 638398629 288902158 765715778 200486843 703300664 336581019 337454047 913603599 769706451 378755191 816361524 733619054 82414336 924640329 973315532 122045832 182549806 30096287 835186480 868098597 827873432 693728901 171716185 697903692 715278473 692536619 910078171 913819389 811546838 573234980 717520801 670989236 499073400 945728559 671649737 934637628 636040358 930094718 439184493 455113221 904621405 794751120 41633059 671564449 102141656 649462573 218452607 74890766 530402069 32054890 40442544 536706553 748018747 902213522 438876965 738775226 246574311 549948990 115301776 55607174 138825685 14061800 714427440 947110970 747739358 945075311 815513344 877910345 518592958 573610557 876665829 988910669 810199408 872889233 917358051 721824016 586107955 581545613 919312188 305044789 13498714 214312967 104420116 860409936 554872748 806463226 218685717 31662067 120220179 829845182 388737811 726444245 473693505 375191171 430703715 554876584 973584108 752730857 281971724 594036369 492205452 971675873 632938139 133621162 466489394 761461322 905381870 103819508 189566773 951396647 207232656 861421505 585404719 895679934 675287695 404958058 717130556 653205072 595984171 298765007 205430183 341346272 740600141 905126961 492485030 808986833 551878560 920647574 774405955 795914858 873204391 844023811 800152423 858166463 508243300 76532709 17919206 356865268 852867855 972928611 965881740 496145270 945091017 468888188 52321459 755650559 544138182 687497573 923054230 240032254 37538267 666500105 747782873 210400991 791684264 67299744 842960746 370945322 221167491 951068012 148396731 794306060 67431391 627893137 390713738 586260235 175087620 911973095 843024385 667946207 783362952 329884074 469297909 155891114 490637635 819281315 153800998 918168704 571049102 565425167 457124325 435992626 877488571 48095953 844073543 162960206 586211229 187247645 565907746 997314906 661274820 864991400 898201150 468495002 183051816 431486552 554054534 277517729 538065505 846021462 17399271 102821149 222667679 985652213 931618752 315408794 577432863 619446208 9149173 841912224 673991680 349250693 857422595 580310883 867307692 770304096 553238185 961304281 976786700 934246494 470123711 975378675 751820023 699434400 264679400 775685245 868132637 616541007 989735631 808532554 699339376 616830558 717762414 434448204 689918387 225033714 408655659 335647861 391424960 378234982 861372470 157800881 327998097 471075066 142749921 960842785 512046713 470713941 24708759 801204944 925009077 54823265 789931777 561392459 616219730 779229576 896482463 444765687 930887302 159174035 455382328 591115337 599261411 135973083 490721601 958515674 836367016 760476887 533570242 508001147 695619719 75649376 35577259 49253984 331661618 905886762 739827929 725759298 516020211 59125041 969880863 934182716 380612625 969358957 679919421 804986950 608683158 781105790 826162692 5063041 558679023 894276069 432072853 981139609 930119916 108237960 190001540 497537831 891724669 523762007 900057598 719136335 404869025 247568610 892792821 57146754 847585537 893117461 472506426 368792330 982256362 366009815 654473504 736733028 699859796 641369794 880910882 29781962 317602595 896243995 125593540 283405785 43569382 115834728 286227222 672946054 135044738 5545140 393315078 336392475 457534678 777651988 910122058 417697199 343417231 484364693 139265416 43225280 784758849 418256058 117993136 182649771 968020563 627045903 789857232 716069041 738617885 8455445 670989236 178469859 836988398 980376383 494129522 353308225 696885536 613000747 905194119 619533626 974277181 576299350 941832964 904119884 768727290 316639666 27072778 901217008 478240641 728845411 691904682 515238640 922892657 717996011 184047606 678458869 556814084 322319490 987593619 797254175 897484867 530136305 557432401 514831724 902214566 996165153 967680298 917868332 510211482 721492923 420390750 39273777 904228246 462950011 834801022 424975884 494697770 986944826 354977784 883809070 379080708 530605796 768511510 699776257 727032457 808582682 481109407 707474054 742623261 837537919 778452277 73642918 349794917 838703283 207295151 622493781 744009762 492730503 708192738 729027069 654496574 751918851 347403062 286184654 798482136 707973284 866561656 717429293 625161153 990890660 262633349 511803559 903369313 951114530 387788843 722212101 980201523 817236264 537397382 772460806 950570932 119776159 675855539 918333220 131383988 841614579 741569447 804231238 720380924 138574434 805872804 436692576 278021394 989497816 765266282 872634163 828431005 812554990 800472446 920031861 569353845 302784945 746176328 685014245 692973846 798296588 600902682 752783562 356360270 736772412 670989236 488442673 914620489 983848213 102470804 964256269 625700717 324577144 818734427 694794726 707305491 716444664 649810047 219799444 163463228 796799002 680088479 226578898 471093283 922303585 705769831 645956065 789267587 724940845 434474329 528874232 216236785 203678474 715707310 787053129 86582962 28787009 509097135 464348855 586779118 745479664 993843383 912829442 67567891 941925088 918924953 951951809 784814278 527133915 703765692 846486984 535074381 272655937 109928246 169063360 977532111 432234712 308300124 950902427 596220150 719151398 912178407 971029339 762509783 686427855 549668528 627493131 721542419 160901521 678957097 811099150 933326404 244842762 891098789 142882432 722413050 586038152 454944688 477138381 663315011 681776908 907253750 795655630 118794413 752067060 669205850 827066326 809911894 982972469 773871758 633581901 961300661 244088841 300227267 304078734 484209701 692437477 115475021 185167363 926873558 309466404 790049537 971329999 184108981 50422115 543585174 987641900 948244588 755135776 897656393 922807122 166687349 714405704 909655807 440526596 598917498 848567056 807286022 533757440 107152624 984915386 326299092 671486345 236816945 808330693 882377460 619336097 704737585 742356363 40628074 987047750 868794804 206716607 211747478 630399941 294015735 681669290 46566353 370154812 564750001 833046923 265966203 858699514 696214465 561783541 370064776 370179277 814060876 990468533 960094925 449899689 303697299 670722358 727343665 415897644 179945140 723538912 560184845 348662355 781768631 881272828 537553399 341175914 894564778 167300877 853507130 488960133 278822013 93804691 864229303 963514924 14346178 990118340 696123645 376474957 739570580 575616301 785538475 179633505 737159986 695679505 689236 603801116 283892857 545407323 796592735 248651642 170619054 859176831 719064894 929368194 884011443 817997624 839525521 864956026 956822758 934378496 746322151 939189486 668968477 888314353 399725988 192248886 781099943 697874278 378913801 942673318 347204329 285064632 42403272 876683461 723971953 760778234 999053094 894904645 109794563 205413148 452779619 834116628 255580696 254402080 908184011 379667004 26697502 233464554 422214698 822869838 637621157 887614353 558259449 730226887 622724717 736312203 78880812 11652990 512094025 188031096 742511803 285418674 250228532 875032393 391109554 964364227 957810281 814167868 861157892 294569059 716031577 670989236 466418279 9868316 866104262 971938621 482108285 794440217 338389660 161776520 728667870 762617084 999174913 395533807 535588754 52824643 894661204 391399487 59435030 883812521 560477767 250905911 534948684 864199501 702080177 664143085 678230854 787940744 780650413 988326772 589216522 109460540 421839677 723047091 797080484 171475257 364005339 951362990 916982170 224364091 952354518 939902676 718954178 669826868 73757788 193639300 822040075 751442767 628065271 977674343 137328806 767312450 146050251 449663233 125765926 26592759 183429588 133268417 862238914 695951793 585520828 911834059 92399261 228558171 147013020 381218315 546826129 653683299 827875751 875307443 931210073 767818598 283922236 499595162 453472693 8888304 251095126 855545847 828361960 679556178 746327269 986902876 626049432 872105343 194779271 921879713 886187889 645623290 708581802 175772871 881942089 350082405 350053828 872099406 227217332 704831055 755947102 594319012 876532741 39892845 59048414 621322694 673617257 711828114 449484337 949448247 147097833 498706350 594817962 182417969 788238001 885296749 990407341 998828725 640268722 711465447 778344572 699282723 467707928 912707462 667717927 291986745 387646496 653168645 744468286 617534063 720502822 439007312 971850225 635658533 907992346 670989236 858334276 839621783 845099193 882524461 362857202 873449959 108976616 952363717 926436325 66760023 491191643 648284033 240173167 708268697 839193970 293510749 725789305 641516480 948560766 353733100 400523819 982292733 200796744 374286560 63744319 880779506 751808705 950391711 738044121 965054683 488508459 830307818 421562596 857037747 721262648 890394447 386181370 597657419 807307755 109400312 272856043 849125188 511221515 775263256 29589725 304422754 125411749 981542875 846657500 681131200 769745755 669389756 457279380 645230520 991202277 641241240 619464337 871196644 160820800 894728823 766693230 776545055 200129219 783062157 805281781 610742509 982120294 64731012 624002740 889997995 311765152 19311952 443747186 543592968 887484875 602296384 431752453 959407072 833808023 733776153 965727456 864908167 925259440 676797572 54064010 450624223 327652247 965668161 734770229 869071852 714378844 49544107 994386106 83810138 324391061 825758012 304172747 953879924 838796140 871395622 928860656 949921581 703196808 978145554 696995536 711526916 23610888 948642154 51447117 446988776 796419259 807962675 520218490 62344808 558569529 450350523 670989236 147014154 670989236 707238135 303882405 386595716 352246209 105961725 140894019 968306724 153861906 315329324 670989236 121209234 158598294 74781982 768371014 659918855 6671327 68047685 611219393 813702577 725277969 953530539 841574473 239804648 953212100 322847676 797800056 743434256 882696966 474610545 276121776 985066868 848766637 80611212 273273645 720687681 796342500 775188728 38396319 829165801 670989236 268063121 576315685 854435777 241887683 74333867 163746820 954650100 231325224 506969433 64640824 609631299 796953925 117010570 839655377 620327167 956954667 386326660 181449240 110322756 911189887 845746312 717210015 300952486 358359212 893456575 242978437 419285810 954824823 250838773 781245094 917077999 288625569 783112284 857824267 973254246 71162495 666803463 731842382 851837075 803003155 749310832 797856647 258580614 852865452 788319663 207708191 697722702 404539754 855994694 99910983 726296515 754988227 677073277 965854608 996217840 910894439 845326170 306700484 26011012 686810698 798556163 873835257 711654356 512410910 652669950 679131024 98859432 656296511 513112746 504283786 433498773 995194563 272339281 997818191 767776666 670989236 244378455 183260605 911471826 192971721 762539762 393420669 863886567 560962979 910017674 211677625 930140390 437825992 302368683 297290301 264404710 445966860 853878094 562254296 949121892 610834825 825485316 478160745 404784362 845247218 460310229 42395426 116949506 193650131 553633276 767877764 157211192 708754143 594306483 431776624 746323705 961017202 707843520 111878035 893406162 843271410 404393147 751071394 343101260 675264033 418480402 169924707 922920738 953260287 986045123 836188252 919736541 824838826 874714074 813445463 818014261 929383053 230380831 850145531 297975481 914182088 164184256 801260262 90412886 457810506 365405991 395858787 755411722 939201267 718110792 118178156 935706907 997017353 906498977 670989236 905354018 775108055 765826259 935710084 680630948 469064398 414895469 679317317 337154570 52511389 999456746 944988081 92180127 863819574 631462875 756386087 470408072 842878153 723385128 759194236 746914507 641749168 63348974 952354372 275986859 461148654 48678680 542948458 806979998 748130056 703388494 653435498 211084819 71353352 917019432 27448354 866224222 833353769 270022730 417818762 348063995 393842517 937523840 972297042 911181511 342470348 670994834 817842623 305113775 707815206 735223822 213722841 569723482 131065492 673682057 962089653 850933557 323157345 45691289 117716857 172533863 375178559 403856588 482248251 925081184 688031081 180470185 804836101 794416482 957734448 893662527 853969189 788357937 949110548 692345454 950313657 895930092 453531993 335022290 722438349 228978293 996497353 272443463 38593780 858149816 579434236 116601728 670989236 307321891 684521761 994906621 714619816 941219633 856829782 798294846 701949857 145837685 736296162 671740914 869522082 729770968 733266631 455212266 684941908 789665297 743474158 657790331 699512005 602825777 786241650 720539918 620529700 814755830 129427307 150855158 845124569 63810487 95322463 936695431 984334307 968364875 324726403 512441340 871125985 363890448 796955684 803476627 913249277 726004429 946153286 656069894 77555771 409599332 671611304 975681577 780344282 679316419 915783550 696606488 817179187 910959796 758125408 923721023 869250638 766309881 690296827 993585078 58357736 933619634 938889153 956163816 136028613 672114498 864042618 208349204 149812260 423789169 402743549 87293484 249141719 789359790 723614898 749141551 932941621 72280268 105183130 634879808 645402134 566096516 938553999 814640316 884480354 698142371 272273941 595748636 730986506 914763099 574983362 765089536 289352388 898960595 178853209 776170216 799417117 863532779 738091919 577856196 584371150 673800396 224753361 703217586 750968094 286366872 470647867 96101395 511336358 686693735 689513138 46797413 474885261 83008356 712847091 986002922 825901719 798427705 888170427 3778199 622744711 670989236 584461714 547851607 958672815 480861282 535864214 339029219 421359859 670989236 83454805 718122990 923400354 948269096 260338928 449958889 212289974 935389619 776211610 944702055 787424016 208060051 737000716 988794303 657977706 267359282 277932037 494474481 811729944 771908359 345426864 913354000 745277829 883071884 495676893 877462721 735373436 57105973 465214772 805349121 792191997 801989508 584048677 843187055 777945048 742212508 216214082 688550179 20519085 660423939 395363257 352464721 917073829 393546074 843555341 282606534 508193399 708853101 529309035 812025409 709486348 466542419 670989236 453522224 822074249 819854184 910765444 981146861 327086657 275885097 871244483 603806509 944252776 994255833 224183912 63322928 819550189 834451437 923278650 846174636 370423314 418752962 461354988 344614601 706381379 954137243 613218032 946570384 670989236 501882469 740197028 536792852 454929362 712992147 346633614 351011370 720998523 920332456 819214157 254544176 742739975 539765327 797989857 784548962 604761971 670989236 882870098 924011587 679313864 540939535 70292315 40524624 925628678 713625720 324363420 840707013 682426967 607435320 831408991 30271438 246286033 453820779 743905508 642113934 72066443 973159251 81705309 555246308 393190246 233512896 743170972 543594539 442594435 636796765 39213617 679816598 825344485 720368162 595791199 668630428 822197787 670989236 818603580 815081990 732392617 767838732 786834539 699494434 56065800 993905663 399524030 435018145 177515371 64807012 670989236 878294253 758131051 951689149 49101368 140936918 306491965 724984331 944597264 64059644 974074853 831092459 517133127 987875305 673914796 936800042 823851659 75629778 897665780 437593284 743622438 963306608 913683924 377072588 191859445 867036015 515545547 513046252 913484018 581668279 253810288 869761132 703659006 787930513 922847468 409999677 864323246 772687043 794333301 223499924 561093316 208530046 349556560 344702082 976287710 82071622 681036434 319654846 290861011 530842009 810609979 447719116 266880149 565458235 398415178 781694728 745421506 919597310 136305595 742696078 927256596 224701717 754957643 967635431 482704815 670989236 380897804 707626572 493185481 682135900 646309673 690843842 948899393 885795350 853543672 993372886 853437015 890107103 827075929 965194286 772737079 525043020 673661101 269563392 733145912 999652289 640404115 145766345 968006826 146004119 539782239 447981530 128920875 190739582 580390440 91855035 547127231 411785615 686785318 424227382 619524933 932735052 639071041 948600150 327941761 213482458 777419501 663194356 665984396 791222416 920610580 96142321 804465274 670989236 738015980 753953217 643940599 159188954 771541756 966476022 294702583 770241252 895719941 975927956 356997526 997963235 326757262 177421727 403401212 797955287 963266680 587161024 221143970 700178968 666261054 567322493 702778943 943316423 977441542 840227896 828768112 69429560 754528654 891694184 946322423 807962610 642097491 573762950 478320823 798299577 898922482 847985007 984083006 953407414 556143552 627777177 421585107 279427084 220385336 737361087 915597432 761422101 741834749 422378100 696290826 95139694 25263113 909495838 816311072 158664247 604749340 921735642 672288815 370576850 160584653 824481533 581038242 659169324 882643967 484447930 746044697 562808803 524362203 386583435 613228701 745085147 996550789 86430939 938559778 397886048 471651667 544107113 820939708 908609423 711157242 670989236 913934839 864069889 507367151 804147343 27144546 762094182 888289271 257768789 998359542 782162625 14164307 274498028 93614959 693210610 438215852 893287354 480194084 736963720 685070271 686522142 949550511 877840614 373580242 534897641 408367980 76434800 669932275 937162204 37136494 90227880 373520212 211675619 970377246 93748151 909224126 509126854 670989236 760977639 31611191 670989236 530927418 25619937 305852265 964730195 961538026 978004291 584350130 698467511 378593429 864266305 819749157 873520593 668934264 810673116 844951409 316621243 204615771 879689126 674473289 826711563 209285119 143743975 721971674 693495384 269180740 659796330 351892687 862202157 733782145 554167072 798455679 186781378 722083666 345509615 833581191 74830291 544560136 434933791 150942123 499246228 721673571 795981242 708957755 82539292 722908827 232962204 957805717 446028715 338407452 230838630 715166316 820179873 962155783 624741043 396973180 295932985 871463533 900166982 734426127 693459080 844317346 856029957 789376763 198477643 767102378 567443963 843288923 677028398 616972248 984005257 481069224 489061230 983306675 789641117 799256803 988118382 122232157 148602864 407447014 213850192 373525980 979711349 840103072 263038455 832880753 857468827 311842858 673203193 823970141 103207920 811844131 90183021 42239084 441646476 657717276 707585382 260279581 268194390 439699222 715232611 739451660 716508696 702514366 414923436 842564180 815677699 171103162 299117915 742493812 797736855 160513581 892817779 273200382 454346864 762255110 332811569 849013417 785998974 450135597 906786267 405192071 408893219 291120847 277691529 53752762 890789201 932569532 926191473 304386166 84486383 319105582 186875180 827344742 954385428 862555694 924041946 880210372 884860588 941141066 703067017 865523534 366102649 465035742 755401514 282263500 287594858 411403715 114643945 770437568 140675608 890981507 518067091 354017562 647204336 716763264 845030308 920172716 516203754 833546898 348193534 200859742 691827501 610234533 794416053 972810023 712468198 688381737 828425485 182836056 516722561 825218617 936786779 534530881 437885882 8184468 179569100 25059123 892747763 146406074 396269257 753221162 797905649 759353028 514125515 941848794 306156554 475628582 183639884 524822563 811140899 489124459 611691470 730965406 661322117 917251007 988237429 919272333 760588251 137002726 234108859 800187176 656716382 293052214 439938537 985609091 970230553 981342105 831571627 262302704 740462017 698333844 505240743 981575519 459175731 894621704 233154884 719273585 272491214 637294988 356032437 347993077 670989236 471362402 875008671 786213471 673766426 463421511 748526924 874858534 605262221 886673053 969736322 922652598 627694580 996138437 200608711 718777351 485579854 85149727 812557055 431059778 671401189 819731482 830926114 863428450 615172545 48675970 879552741 861780645 931944354 464129617 931794617 903923492 446094025 207578964 726834391 974062283 507173437 62707086 570637796 943478046 865879513 113851848 949469667 381503720 631995927 158436148 781151355 987219664 324814903 666523569 878791419 700760686 716051856 954534836 673977136 930065935 885767416 714825096 979806575 671417957 787008402 786266026 640163110 524216751 764594152 925581344 887195043 204856848 868621142 859982833 809469639 845461630 253881384 687265964 936870132 429670442 397530084 19487087 589732178 949353366 918464137 736773611 395653494 834539983 752292971 685260624 154880905 34553540 211332778 600933059 606581449 779503822 730752029 960861347 446375289 847430381 425889737 863688212 719647632 853603838 536086656 962409647 300735289 952955384 653383479 967007541 294759414 157429924 871084538 491248138 14932352 810199341 98872520 809317986 679815587 828432114 700013530 452123864 535307884 32027201 864077788 978342281 972116971 842896765 48554836 417957499 153355354 876350496 791256098 202602396 628748374 675039336 978178764 902067124 403785358 177866357 34042401 347140248 848818990 200444446 723270004 30360135 939688057 29213394 182823669 818014066 784638689 772429850 705001432 983331586 772694113 987776230 94257264 654503255 730066917 873383092 785405607 732163752 872563323 566125676 852132813 331105751 157307324 495817531 846172437 890745808 781757369 92926663 5251726 154962070 750030745 207099401 746406116 706755289 820826286 889706248 699845710 717100491 994173955 669256493 172476439 872460493 769828641 925712406 726835029 970748768 157754359 688093177 734014388 674942292 818716792 447898946 246173846 589008767 960952679 274480632 936040753 225424150 707281419 392766580 788585999 717786448 406665727 304309290 287834966 750668917 969056611 281041278 600177963 478020124 790235844 954742995 676636583 972228977 512726249 734532419 5372242 813263366 800160487 236145718 871577711 858534973 210287263 764470455 408269073 962213836 110400902 33113070 917753437 432154355 103784980 771685588 246947743 174433461 765367842 561309541 777995183 941699144 673882575 552868093 101049036 74680548 235916203 528375569 671563289 765240240 684412710 599306842 758463207 872224740 986285057 973802402 719713216 670989236 85433346 47723279 907498128 171407235 81928984 132315507 499910151 336785016 983787127 842486417 879808473 539165731 370800996 677946038 279645725 670989236 815127538 664128256 332518542 97551104 73806118 285052301 846093273 683265694 975785428 997566284 319927401 387426720 230805665 938879295 600650890 762554969 828321265 797476690 595789089 879928850 904590197 693858154 66937808 444549305 438404066 670989236 680666033 929480232 963543536 935403423 906071180 794069865 890698455 866216551 891426787 967753640 448658040 192584321 458158028 460554528 970945689 474642717 925899190 559445304 87216572 605414165 725410339 877081545 482630268 698272695 965897139 193292604 872512573 796714895 328037762 706887849 904409729 655471390 880719633 385230368 129872897 515811972 857397456 45637500 227272854 826443284 797681801 112012355 726041411 303051914 997790436 757580907 563495600 604244807 455430529 690131552 766666719 390901866 945705690 805477350 503329705 949769929 841012801 941668463 817899270 483491031 703132002 401984777 991842495 758992786 532280563 803132328 31586472 220024370 23248310 705218030 723616851 851541447 707850315 594689563 918892534 830574655 812846504 517271922 938408374 849008674 399767259 589995094 889005213 782043703 535170588 935908361 494690700 37875464 225134742 763725469 414667891 645987385 714090566 145231258 319652346 731022563 86371873 963493279 956035860 632738234 897970572 27574212 851146033 882524236 942040891 940451025 453474568 189959119 543524322 873415080 604907707 679554697 687662776 413227555 462518313 563431736 510149408 16021552 499675237 798111241 133868325 537861119 424384310 677369801 912724367 434966830 718511035 696727355 827425377 217551093 676922795 337125789 664022217 845070152 313955427 171104443 311932272 764147647 683561122 245158961 889594306 129775408 991456467 858019245 844488939 504168879 248638358 76855978 500860294 518454324 906245479 772468685 951250468 697808499 365878229 519716961 64387024 518947855 870277438 704977995 929912994 919884386 263983310 673777626 678511586 170667238 765649049 597971735 484114125 695662119 61028907 853123925 717241657 515030403 404354227 320148592 735012408 670989236 904020174 452578578 63885093 954081121 987960050 852746412 542804882 836952012 970731156 596459808 757868188 727856647 267443070 691248187 786619245 298254623 207762866 715033166 975240525 912353041 291056532 771954597 970644652 861448450 705107877 737813675 797754889 886929247 362453697 740579561 12206630 69640114 264720046 373907933 177019547 131753373 582448683 604562942 875125893 670989236 996501769 758626395 523539819 317486197 987077619 181693801 368122603 187151467 289153504 615584242 741054450 587711300 901094498 846891263 601729866 733006692 359175692 124926911 75858562 203067286 68081725 35200303 28566478 570623811 844578173 370862160 953863250 463723412 837046262 623781527 525987970 153872922 681718022 392221708 983714577 154905457 917645926 902286917 364363609 718903490 381824751 753812487 825349859 862579794 631769317 379141254 888977388 136172209 927163057 208634845 241822990 162505368 933519232 913380262 540321248 140800322 827184202 756205849 110557762 116740731 661028986 293329992 291340068 754168234 300548753 38173090 554605293 717903386 974964947 713151739 715909510 217778382 948041566 985413009 405941678 712573077 386253541 169328016 516794408 722749893 776312775 915685877 186199544 547276935 652441570 786408684 620335336 101713990 833364019 670989236 706307912 318892840 101464615 800386405 790762634 981811382 995281163 344407957 99757957 758420254 671914917 653512844 407692973 400600789 958923322 872805282 931018525 447866638 938090330 175027430 759114888 716701985 979757748 174110575 797939098 620112223 725224129 858196400 397977246 551018268 505590928 989405544 874786577 963870979 166360910 850512557 509325877 693792574 846462422 107195349 832632578 597480771 896400734 299020613 386672242 117886834 367504662 128809175 886252668 935318099 932777151 672163653 928132723 542405032 269262711 816972859 895259632 417096469 966373205 520163696 683889418 847751022 542422463 835451830 704757416 926898625 244319659 677306093 96284219 904244880 7026424 61194231 889087177 218487814 16830456 858056221 3292096 614463659 375502422 563936278 670989236 331737896 920924143 216625965 739554967 71795337 786231499 753064247 697940672 909604077 819478096 785173655 402112931 175152390 570661802 13694731 762074086 679397000 264135071 889414147 102286432 328366242 871566406 902927000 846720212 855782796 190142853 992346617 824525950 233005439 814307723 836329748 175354581 740766356 717715179 832001425 411888123 801568114 134813863 43968181 164173917 424528840 248292102 797901156 455606552 355399205 847278095 778962315 865659638 931104715 598759403 31323658 698258910 548497998 899511880 6292438 784230979 666825842 777662762 76557543 254655535 424653053 804177907 761104167 492265907 88358042 434833718 856778999 111812950 866790817 519465929 44389626 766270015 438011805 999890233 33996429 687751945 253198436 232385090 987091307 80657005 387208492 651592784 574777102 745501373 290874964 829154750 900761190 669535476 483740087 485804183 687154632 572746576 340378872 441793363 901196203 610748455 776875799 575430537 144596508 142609855 802284834 893399783 131210868 812817011 242155973 146534999 689979664 814284389 698269997 997026449 946048666 865819830 945341146 476548939 778100472 278749104 385151257 911160631 747574727 812967696 819390240 818264054 950860270 197031622 116950481 600065078 809843015 674170029 819457625 760780811 992360972 969102684 978789290 76559493 794606898 925530711 748190653 345590642 966848099 448274670 255176207 328659210 248568258 908148832 761879538 722779247 806383515 84147776 368026530 24962138 997682561 311111914 90222531 585696552 834209306 322593252 714923615 193824427 49913401 21287145 661534313 735590462 835618382 290354813 239634294 338474480 795449128 950598700 514045524 983012772 86395070 962275684 725060901 883108220 870105694 531350484 314139773 456310400 492883465 738567457 749054546 509799537 863374768 755619311 28165716 923282783 449207204 961560789 53060476 288504068 968619324 174058736 874950411 770883804 76792922 145845700 516327414 298115163 522123589 535770443 935203341 971109375 890143983 616625359 380181909 765518390 627008828 978919573 907799304 966020897 702591538 703360388 795917761 170687829 716262851 395709591 710793645 914270211 836089882 770700623 164809813 783373304 943836302 940757829 241805716 788585850 80955579 61521878 129841352 880408334 755186769 680654254 569811933 53241530 172329046 927469387 728614861 283236435 360629441 666171360 890808526 735497621 84023315 930581127 440455855 107949882 522429407 954843502 960910726 179636284 132460547 292475458 26815596 956138236 510049724 88311975 660382170 755655134 630463666 894092490 277277377 653053898 596148176 279382566 231710366 103901100 720804860 591048319 955609442 757531844 547139380 462566417 131166790 123004034 823038952 585545234 934581390 727799004 576580559 670989236 902820819 826320946 858459581 608378227 907994098 637012388 625725700 306332429 985543854 411654079 24363337 380223656 852467123 449296564 22224676 989266750 435223469 206429340 791967024 809999693 296084733 454348533 244518695 815558789 461121455 919837698 524542792 665995825 113830750 771677088 200136155 345015390 234954159 620671826 750953964 149242287 859596260 900476129 953452078 377737450 931697561 798597249 433070046 227430275 561651098 890425592 468029850 800116397 291549978 472859563 819355844 221466439 234399059 940581287 903202408 740449569 607318601 603173717 886034493 224749009 907897559 694513922 786719414 131155933 280676410 237366399 233535061 583218816 306615855 604913464 572692769 841305006 611973258 991942420 546002306 764115553 464163614 193673340 731008644 583805436 687685700 852541360 353254817 90639285 737793604 186980050 539654169 661104359 305750667 573078621 157415864 232973651 940768686 282693934 793361185 130134513 545587670 857943308 777722615 824549411 833209197 813731534 993797429 716519959 80075070 198951979 986478435 556396728 791471809 918895216 153482359 116461248 907156081 632609435 917624427 719225587 929603988 971785435 620969415 675046137 224781884 831236774 864382803 710180192 894121447 726834531 296083565 738228444 662740138 714986556 148797354 557776004 290774584 252878770 968716523 225606964 74879448 689095483 266089741 45898718 961328021 570575883 229542438 515485171 531319414 830025313 260838140 893977138 741538558 949426528 985349839 619680538 817018241 443247673 899873986 505924648 566827227 270404433 126473920 243584364 715766954 158244888 35359920 27197791 142591268 713475122 368804367 274776892 745758458 498031172 254208213 261442137 888030144 522658681 48208412 226721375 939010051 943939037 648629165 94481851 196240778 780920071 701179344 321355228 870720378 690377283 716117216 580113338 839239626 705374733 911832046 474352973 355177380 848067745 701743603 891453566 427437019 760366274 322022906 968870800 949165678 243933945 334066951 977087468 894678589 32245329 838897588 748278364 545422840 907628724 227973513 730028342 889955398 823096040 137638923 440368233 29817817 882509154 471666721 987609262 982744624 311536800 221943038 172978392 906166610 433237222 104355148 969398271 385082508 182102933 921835645 673411503 873348528 320937818 798030683 568316957 629792888 675546610 622157940 987621113 76587940 830867106 807712447 913567632 992594161 893261722 967475980 618415163 907604673 854460891 659906099 167890312 462602276 699663215 994797954 837156047 944172137 800885888 575603641 411489623 940441736 306252998 857471776 626146926 358921387 690136713 957974207 787851391 932440120 89594782 592443525 228216781 970261966 400211040 296565585 894483201 768546940 466213683 763131221 741855898 35837181 398535768 129709628 898715089 741263659 579172146 915879021 906212007 997173659 564443281 254127292 291746930 806963175 182179379 2991796 923941687 830643769 597653536 526185475 708408233 981194705 926117990 848701543 380395326 93670902 89088712 137457515 906869888 954918755 690353694 663301377 340331964 95271833 846698609 883047133 973492020 581729447 850292484 466909977 705180682 591230771 634292024 994880125 878224395 589228613 686148508 532249320 669918760 364020655 818516506 713196264 155626476 608306585 482899324 113819620 339948992 843990194 820624651 135093003 659352139 723051367 728046595 681258497 870956663 934361280 738281258 270037837 588265510 64687275 179229137 234782745 168240920 387639009 810815988 462664280 544057586 472982318 837118783 451647478 985218792 118756134 331082542 817396524 588169188 620641444 692503933 775487475 380025101 189616646 350906074 613431597 826502271 564213250 638570371 404887298 717496216 859073679 715990760 564461226 61080854 687161728 955982789 670989236 918720796 97922183 999524169 319355596 32298256 804153020 888783745 708923488 719304664 964861903 246535157 796230529 977957893 157754159 481301338 357986647 436672634 927148413 894800276 479973452 841194118 269889358 333132020 614714654 339078968 221381526 947309866 933483126 398397162 947909593 325458755 27215271 874692170 303724010 337194343 875777663 737876543 509884453 782401759 937674863 608716003 991086856 970996507 510062255 512658118 763870159 522312355 70821062 214160123 837880889 671256560 968482401 986643194 794812748 57284891 771409001 493380481 254794500 246854242 771909226 500336981 627535839 63173820 367591308 516910300 769002916 806962501 210661724 463753534 492420128 81323452 649549206 328740816 591918186 680227507 670989236 600610645 691897149 658687624 151643612 124170313 670989236 162251081 604529695 551219531 748958462 804774813 640189529 94508048 699833619 944889799 902601998 313858133 155207325 160076102 365862015 988042817 286201395 426039137 415671625 779203007 75765859 93618861 858205955 514934747 30378413 599578822 660164292 524542659 518180295 990618903 423129273 208999779 635201463 412797537 866681951 949412255 956859843 520517402 894579135 631757496 186574334 687015346 468831810 407983101 207021546 860169085 982385606 677160103 444591135 240249619 209489778 815547567 771846491 718665223 14104163 736030658 12368707 900359483 271307691 147672074 598244962 925583544 935896034 846494955 743196036 747206244 892576424 940011176 794577237 788763807 849277912 785300177 993902800 561438256 175682310 753569483 821740059 792403065 236248852 337422364 797166078 518249035 755328809 971998406 165885678 902333855 542636308 629518476 533947321 740680750 867563815 698986374 876278961 268474689 863648875 150481508 766576449 422688790 782004209 430517692 645575507 591948622 52702219 708349374 673098896 398365185 810485163 105942116 887572891 294248450 692178424 161739715 237318192 774038134 643930078 206789476 922463513 310159219 842366903 910491475 504964871 774004381 221267420 522341509 916233670 811951406 529074400 65371848 125760135 693710809 948187037 921491538 614816214 439642395 771287744 591473214 423460913 655947690 803428569 999131110 861894952 833713513 944936320 552741585 651170567 888771199 716299495 670989236 289751585 633465884 403890060 162010036 783837776 327039239 219639142 933523843 889878481 901632342 708971230 108148634 414077611 373795041 717530233 264244605 512256046 917653583 824646410 942246801 84015219 738136005 870634110 990532171 489592048 785502239 656996300 597210794 834724448 253136726 600507969 293001174 964569056 670989236 127181331 801795254 690310098 554175501 543722800 911989147 590409274 897737587 982760186 431139577 61673370 990593181 38729195 243235948 381392837 453092821 862016061 198907782 782085227 918753896 179783653 855575803 793728827 883304820 161464418 32641350 809033178 998615924 846838683 803284240 510323089 695112656 945107333 709347768 654962699 975877359 904070966 770132213 721065496 674002564 6866596 115483498 917720641 120109577 393881002 67730400 696143292 234479586 928277366 196077286 113672269 535310886 709936201 49032708 396865296 800952983 154050309 374109453 875080365 926243257 49326778 923744488 949917464 900348096 925471522 218377950 374493251 732885779 474694711 769674086 359410647 126210950 335346118 305959740 939295968 262061524 567569427 776710455 769514512 344098047 620078662 957380727 143301353 786002703 802019037 926398858 599734542 924119310 672613931 433071960 191867242 886568794 290939658 62174734 476771797 963424644 319509431 794864920 681996654 881554247 945253759 547475084 581737948 329988216 851510113 950733610 977570790 704004130 448061301 564432296 784436741 507210380 55669943 863290944 121076072 928094215 829785633 584344226 783047898 527312947 670989236 433974193 850283559 592713722 431383066 903597289 927014815 456333220 871141884 983304610 619961626 316128255 701619901 929602282 41420525 56528640 142429679 358638844 459483168 894825631 451619819 295222773 45496613 118208621 670989236 51202859 718762808 364492055 286153122 695096287 573769191 341993737 166893802 102865296 943972739 853671703 682167549 622507383 843386377 575151205 738081596 101214567 199131929 488980685 188724775 575176543 967948184 951879935 772255654 958271144 827191477 982135848 451443132 703596262 914958645 543798386 33333545 824112545 983090817 995024835 759836227 891201430 221671590 133521460 806629569 72446708 423825462 555983881 497331612 520491659 904805026 613919263 568551205 331387287 417974447 998170938 843570457 341598137 749741266 540368097 136355766 754871179 992639683 848586003 525052603 966689354 306041538 886227586 950726849 380928644 765278008 422534909 809919385 912154820 517950935 676957067 294188607 158187353 800015859 710737068 998184779 680440340 95429138 795107627 919830276 516818395 524483080 685114136 157726441 769979967 410750127 141451695 350463880 273937090 247055256 788568746 708149167 184825834 524172558 596191323 870293242 355459304 927088377 772142545 956215511 793804860 399634491 581092668 880828580 899122203 577207158 787959871 773568956 440572714 773406487 679202011 447932834 403204047 853205898 229562762 239068599 34700508 990287124 732483081 86262446 815275294 327958300 582685957 255867383 721955613 548573893 20630070 485341872 450979012 926425501 930002448 745953030 109360423 866080666 496550298 664975411 917734561 337288708 214336335 268878845 647105146 734065763 88850277 887789123 786447192 838376821 770588553 682276122 776712015 736529054 880834731 859496508 178309726 368013091 917481906 221176177 416582207 773674977 614014654 262678464 998962010 977988232 27598520 43923380 692126115 947866853 796988725 865308401 817257909 402045598 961645134 253082989 777617089 697367337 90876200 118352203 830900001 282976921 913774035 868270843 175671603 675029923 590437279 557571301 535254700 591606746 636945440 56425895 848234489 792718090 857939063 725466353 591469660 785677116 131903625 828661693 189314927 650773525 68659787 579557063 810480430 360363046 215627653 34459864 535243237 827038429 828784308 690440000 860727493 484220021 896535664 980531489 170076928 965253425 937827691 907738813 890924633 860759836 440963455 670989236 635630931 15459205 427980859 525896640 544643201 818167006 830162762 602504292 960351878 719448905 684923743 50217359 257296161 973308126 453486293 652464554 772609836 660866995 300424479 645909597 535422564 786710535 899745449 961741553 835082495 620702673 539484498 848543746 529315754 670989236 828984063 244028066 529761142 525405562 972427329 682287997 829749697 315021811 11770115 249368356 997730479 521662180 819748149 997918186 877062502 991573904 858294290 314248911 943984237 420966389 32707345 270946348 994881855 793521192 750830745 937592424 642308936 731457678 62652415 103514576 164808183 72138378 625303995 982522257 765591350 413586149 299207593 876578233 919899618 162233456 349706347 671456276 939629029 729777954 648078402 770124586 982654981 930998134 313248532 346620050 942318180 224931829 340965445 835596286 740810792 818500610 451232838 748546813 229615444 154316505 682791932 295449034 223449658 12568291 840240434 317205675 71596739 818720718 933684387 628639829 201170960 966892507 789337468 547515285 355367900 309880173 703078888 118700885 874520359 614811073 990464968 839129760 556138182 598369237 596357890 694334445 743776144 722752950 138417678 770546406 792380336 884249764 727642533 824148461 219631111 307248272 752798053 805357207 851353655 725208878 827738163 685931293 682036409 843860454 767945699 448744192 317442672 966421680 96152416 92487076 895709522 629801664 821221464 308869624 306945996 992254697 510087425 850137354 647765044 783648449 776631319 315752514 510696562 501324676 132870578 368085397 701731992 586755154 375164547 753360592 448923195 6790592 992724913 826486126 680633994 323862556 315960940 80553190 842018787 608148969 259981322 622516725 165110307 790327616 214106846 800096046 265124920 578904815 804288683 500599357 749712348 972705680 458846575 961488758 816107369 869788176 699895799 965795954 321683863 638653357 106751863 854270464 95632930 592347094 832787172 177235478 847248150 926508769 610355224 949409426 327556229 873292632 874691628 657798892 680588228 984550129 943583984 686649332 999959635 975976616 695128932 844130793 404575119 761017300 825638960 872740172 672530061 327729373 759866843 18735771 358494344 115900710 797671483 809596568 768619318 920322122 530408500 992557699 324923896 786713205 775652217 73790226 885439326 702387170 564175875 866835219 673954733 62231603 378084199 695625399 731856086 279024176 733588043 893744444 785311299 900470664 644447344 838140995 410605119 995547736 633451793 836104422 323336736 345789927 875205724 891074553 700089628 712880316 729126886 759226605 869872742 920940567 303916352 98644235 989987930 710962892 759690749 508645179 702598960 425736309 714651696 226923846 436506010 676239111 961566982 761122450 130617146 900220449 739326920 368913278 737523409 190015714 844438959 792407473 832037903 302705187 965364599 199575132 413220839 207473218 803925724 346891139 782349288 126106041 852931697 866891049 884328781 201627515 988021493 979720577 869692617 62288236 955989487 607554333 723649913 732169343 162826617 935628658 324680768 238782652 731092641 754657532 415596408 704317292 712245099 758635714 439322930 866882923 817468252 939179182 878943728 728444960 869583863 950094176 579306425 695550586 752979866 220232380 137512370 73469097 724103301 85493073 89592228 980601959 735939101 801331266 684112577 404517536 979914065 699848060 897147617 844980982 311777129 825892007 844956404 710210361 894747866 155630985 702313636 155579938 740400569 610542609 801590298 814160922 882007844 50278954 652499325 812488721 731905523 62275711 709535255 504528343 715297908 481332686 646556810 475755989 832881746 95505312 202816222 189286325 533286024 673678658 253274117 491901777 594461879 744597711 904260116 606875354 273625484 240842192 899155476 907529496 733484050 293955462 752047420 874017679 765701523 806720029 242838333 602963776 127100793 659355298 185091136 680366386 968557069 671326351 311596734 241446748 831153535 728292665 872905144 640894056 585197719 182377498 173314008 378099170 589386300 723040452 305351041 968591378 734971433 30797191 409254679 175866912 234511233 591083678 387340960 927124952 614016936 822480391 989268568 401726967 269013039 263260342 576502294 327574764 683864344 292859269 238978430 536332109 823859269 789572026 169286758 268380875 875266212 958909433 705161800 332776666 354060336 395777285 337115552 320600350 393274777 879416663 394252796 414678982 840844557 969005092 702907049 578193185 995376728 490253179 511351437 8436839 673987665 392289164 513687237 599060956 140174821 192778298 697184358 670989236 766068513 615259942 725756968 965655554 764981561 838453515 741876106 701688712 319753246 186500902 696356467 321008704 301704538 429013332 360118923 929861573 178870173 862756781 251196291 599017906 967083388 567336119 804207834 803412980 731496106 433869270 430977788 804116902 902283703 735270013 873790762 323370933 865561142 404389697 952945985 227985457 921622564 523578691 918280598 364396166 407076223 951925586 919760511 858396043 101650108 398862346 135102082 927855521 867261228 218972191 506284195 578437748 900004752 350763786 888047964 785207012 371672096 406627753 693365568 707865166 905716708 469498423 582658469 803565626 880052641 349270310 23179719 510389148 96632956 956687096 799050050 917647337 163371986 927324657 718220572 15211293 819827725 350794270 123588728 285538060 924272837 936715885 376628465 683513784 872631831 158724582 274351369 945533030 906496064 949847599 859544463 301677222 416598254 430571530 197460298 843091024 105693141 858248245 653475458 995797320 721148487 983871025 400492495 642136074 711836609 996936129 732167411 347917933 828421674 229052532 917676911 891750520 629212712 765074406 663506116 416083765 530863551 576819259 928306690 846536460 573643896 919254985 197960437 19159858 923504658 16030497 951851423 626915739 863653005 807926940 913757565 960517773 961689700 965131715 842884161 617291063 369674710 147810625 895394267 996010350 407870339 913522783 869164820 761714498 472324630 663976625 293622433 168272285 695284681 342049621 995893386 670989236 101106188 472708954 220980248 90339864 978060277 651576779 73802945 56293372 728483186 357265643 502374820 499142524 235265515 971826315 416581617 720387020 846687730 810116834 763032802 846417114 759221876 575743714 802175564 781743941 136764562 910321992 34847526 871192460 44273168 152098684 304030473 23029872 663460027 245355007 598638976 825242009 672459287 216160710 526320232 374500868 651918333 987334038 701303072 301432965 621168091 475876832 895120520 218313915 172492685 196692736 901173410 120187666 556990907 136844768 170283111 785221816 317312381 294169295 789908289 68886066 984612297 117783772 892604540 670989236 116790851 736057877 147493593 194831968 638855291 696334744 817212021 866288479 794857992 89207465 385214668 980950910 906769946 381834806 620729644 829531221 746074142 682056055 892368706 710065390 644355162 704666494 730658635 267176195 924512958 273419342 765852327 882943824 466029523 874973742 908039901 974175504 828976843 725799251 817540560 612254126 690756350 832744306 35660364 681753113 670989236 940165333 846258430 786191297 554494920 906757415 727134039 573156678 70337556 27732517 29089977 177993715 50747207 829296044 805618325 627470808 176779510 248560083 637958403 855116237 394577807 238463145 90982662 613566429 670989236 812334107 436221704 324704937 646347662 31960652 242873324 257879146 938425454 190755811 751509274 331224037 829207794 393284072 29169862 427395261 657291823 770821352 429087079 997087316 714896222 681350802 897477171 335368943 641002983 726334891 99936393 82295788 698355103 763794543 771413789 888094797 522356606 976093865 746989510 969075226 965141350 255125542 908751604 383061017 954835470 435125325 285507209 897632610 659997124 795218343 886927320 723061499 922032537 182594401 931852166 731283316 14394326 269117645 601591732 650118914 760973117 632643801 840357928 687760394 378292680 230718398 430931101 844140107 221700162 970224235 802850745 849858070 119401392 288344806 690099854 703732590 777000296 680471044 951403583 45234386 613776862 564567923 982314164 809030901 562963381 70453062 606127465 368956891 145888360 935738039 766076017 561155860 989589714 860837871 916254510 736349077 192248606 483329212 115061989 675971764 238873955 799378736 271647002 990854827 980488126 313836269 306282575 985637093 721298163 72584771 36546067 670989236 774560967 974702651 741616917 730016103 920462185 612630913 983440785 65819698 883883648 868995529 427472575 60991586 767709478 941177701 449672710 839339411 889136069 670989236 712276327 221798611 934013435 240856971 670989236 215887423 105318015 837413297 388330735 813920808 326093083 957108411 860639952 191790218 805574592 670989236 172303148 318460580 383121293 690191626 983047825 336714798 670989236 588991632 321901585 974631604 696364964 857501080 555390352 769351091 853502860 942642445 36447205 542772362 835568106 719634419 671434292 970240359 799132172 635549993 692306568 354197097 991446008 103535466 754101573 58627148 511783108 824054528 738217446 781848996 932570576 600401525 400086865 926579696 173324793 772294883 670989236 620978 698112877 208203128 587857354 356132138 540187494 327159907 651373346 182551908 866206825 994814231 40112794 79597252 312372069 671474318 998758843 723641891 818847389 99674912 194932597 547834416 702992477 679403427 618340072 829001756 982967321 878582628 817808320 691401966 290265024 929212344 829215490 251783165 829439145 359798460 852934567 305238055 259606498 917496319 389506506 757213722 401494736 441526141 197633574 321625680 995645189 670989236 355512787 758387407 734612244 873065147 407821418 28710287 757258844 626262211 131853090 362806719 911541100 692521745 415545632 681446347 769657057 918744700 665468509 159352652 840235300 667119161 845137536 36561616 925022072 624496574 712979074 254681096 658840788 251357017 989158099 505940315 843377548 985999854 441184249 630430748 844152340 971712217 863708202 592644505 807270215 816439232 56469712 897186057 492310113 502359208 731711230 693190873 815507922 36192618 547670858 173845672 543582052 662628862 276302452 672693239 203004960 967046003 870924600 972601657 803297999 856010301 114031496 200655152 306948041 210883493 731500616 868904602 741689032 352921678 369751623 675156780 790213267 687027412 835245404 860001536 540448406 5233082 29573792 838802523 397911832 929652893 405606007 977586749 863854491 849623301 741607096 714468318 473606685 245069284 789885375 87260403 332424150 771692316 948116398 880817566 447182273 199458795 787105986 702247211 236600210 40703062 378439504 994285082 680866727 834900765 348013433 632377860 19522591 899345031 373419737 540288582 759498747 260157262 938574919 242869454 479996782 913911364 434373717 768740202 132809892 863574298 427277368 746856709 169790767 170888232 614478478 906410296 525061400 904131036 561612126 49418254 22723548 903145456 80318178 115439169 283522098 898942883 730958549 802158563 915743777 911321141 873755254 990399849 428787874 965954240 356828037 513816938 489343643 857899866 334811471 998082745 413407620 894043533 774310565 809879122 974467463 922877411 267877488 575959889 187396910 43190141 77311156 881066470 881540336 92225557 606963988 604545095 755031917 319520669 849139317 990529845 336652230 45667287 78807052 91260704 959752823 670989236 733745228 380578752 711680000 429527265 491474457 313147714 482981394 694446718 404093050 132686679 905122985 563680538 563014122 320056172 834681854 361456388 827218639 135284176 929846905 9837895 708944017 894211809 962889394 775628355 827874185 427663050 923777976 946607613 670989236 985879977 885353886 690712534 864685171 754951742 772888669 773463419 912649023 621137813 70266348 471761873 982699873 76279676 205687299 892394556 730836152 993873000 738445322 383052203 299323118 562225997 962187850 676978344 912326111 799212867 724792193 944403914 678646021 641564216 379609601 40020042 835061547 823294156 461484883 840394901 238228832 334034087 608467097 139606561 630197272 24258153 825441501 324752423 721808664 745876909 69567605 657381222 789313896 153241848 665767721 50080932 436696781 894936907 671102088 340763321 876494092 239549209 992235216 828131906 354969454 376003045 431416722 743201064 524680222 452791912 99132861 475060971 568747558 898441353 828933694 670989236 894482434 842937618 990099118 509338232 365446043 461282211 998821745 298968645 192021154 186099692 317617745 88368478 706305471 550155600 559977749 923921481 383856256 58385020 811946155 214657914 806361377 447695113 977831315 749842712 688818168 955646896 797010489 510774202 681627087 688861896 819009361 402418901 640634555 937671978 686601460 916985990 968611966 395718546 712089068 348027494 85113112 771788946 737064174 668583166 784755004 972607815 819801970 933600874 279134173 239218168 766389225 963154124 775467556 927808822 832638386 554223732 798851631 877324465 795138102 985629140 380906043 166882525 262609475 833697926 969050175 941426182 860758292 923822865 450922662 254108061 382581169 715231947 102354 954746302 573654654 794846944 835874931 392787902 351013365 262736842 252727494 448152760 791521769 149358670 382127095 504974278 871437280 962390009 232184420 763243641 109705113 767993151 797682667 950765694 771954439 789745469 579288321 136018025 670989236 410499592 712013567 628264973 878763976 848613450 200939296 602352779 777154605 290008012 206572068 720238916 466435347 756485376 420468941 814757760 972141147 310726467 650127411 298635571 619230216 844681386 683722821 925280964 642630377 878266491 976114578 94511016 966944456 786744934 424298109 941902310 242012419 323169097 932026636 957024020 101822435 665796312 738986662 248809490 425008224 408057053 592326276 603239131 884316604 702717830 831711462 435299555 677496266 998536638 908952954 538472925 765358962 470410807 680938244 912346378 926406130 329156517 970523187 747356203 726098176 277297445 917170829 691232934 909156324 292553745 686327839 599052544 511563946 390388623 528284938 873068160 215105743 618059761 631327890 906312114 674908696 700756237 764271291 719870566 761159812 608934042 994631451 804607837 850150415 344105926 796071121 268287893 938967675 370770074 786669159 896998845 215338560 496733535 747966632 914525306 641251172 527238722 374384392 49557983 760195381 855318922 803238571 352089913 242089961 252237110 594951168 777536527 369694849 999184620 265336145 181148761 859796739 695501375 139621048 363448683 211776149 51338713 670989236 694731933 182035756 922852919 317219849 876414127 245201416 964947277 573522237 416271409 510323941 686913238 904376783 163136015 35119696 889976151 963746172 898687058 142788454 876006811 642923210 790409367 114682284 442828590 191825981 120708867 225103724 725549322 560564035 501968095 555442667 591039191 93698960 314185639 913979417 725133204 239145958 849434284 535803147 886115114 562393143 598486356 759646674 829675580 684300620 201646022 952644621 298432756 722338667 173481890 124602724 473650381 129141978 670989236 749948983 494544704 640824801 627854901 912158448 779232443 746042596 233813312 476948048 983259630 980573913 112976367 727186367 270604260 563004489 800484575 870332929 572272241 959670951 107127873 153289904 988564444 978674930 761737627 413793443 158015989 385732536 122631094 712241383 945648144 806259411 643806618 714226006 27251377 854345756 162603443 33027919 728977917 109585566 670989236 643378663 331515180 876682135 738212731 307458509 218150290 819878813 772826841 876673353 933452591 539868103 939651213 872681949 408924252 377990630 42020971 953730828 887613470 579177733 239929166 995923116 912911023 762875977 950424982 886898118 577476162 127265020 48685811 703305350 556832724 740630880 889899660 895097824 826137012 998398962 490253921 723981667 784739126 762182724 141065363 87461549 810790328 850813461 182539899 870044316 111556358 32160249 925788152 133673728 876877153 689666484 325401878 375102923 357711198 887282310 411741823 251038993 745200524 868030535 125618640 444059606 554388320 699034577 954949260 790268110 636655559 769734814 742473919 82462134 919994058 631152361 65687293 179449925 944521545 400055235 957338918 974939066 330695832 324749722 330571800 813827726 208813105 890777919 880481862 597282486 800684297 62620802 495693938 389284956 793781945 957846227 61184097 135288130 366471331 354809363 781367784 73463160 692624057 868100027 952792017 919183925 453685688 787706780 483573617 296018023 175170021 688830985 881903706 545493231 721380439 431383587 485352691 800006841 455194401 947873337 771507929 780204100 812784464 121227263 851539267 389087600 169339158 592624915 400539394 793788962 919194617 458383467 156205760 264581044 781321095 764007911 7105908 665525743 87967659 8623191 815505870 785812890 459871288 917418243 262434710 119006444 586564931 909910986 612815990 843255813 305796116 745887428 968493543 124532379 187283242 793235544 3428922 670989236 417924575 283180787 31845986 155221487 292080884 762771183 672943068 93418764 722423904 805487094 676676943 199613316 289444896 192651933 711939788 771326214 311341727 944118594 41501946 805418524 470792328 965188293 798265487 310456567 900006935 101487004 767080799 503073156 898551310 114163884 944340457 44209773 971591675 534707272 556458111 619608254 500929215 51488527 823124775 581327691 683361155 175088888 665023187 883836387 796322761 27501359 549657237 883895429 939427605 704047847 753253712 423589087 164782288 70682719 502502024 149523240 96397196 787538886 194371195 863313929 827032349 223925501 146908362 722142325 872350935 74190101 998172872 992472424 169027318 232744700 777693331 670989236 935138635 846796985 605116930 839431240 348036334 285015335 417721869 841620599 822808018 516079402 423682675 227907060 928478476 3779829 998386187 408502217 521926206 943295190 753180388 751059343 701680818 604744858 953909072 970161026 673649055 830132199 206984054 166869821 321712247 117218052 450081526 837750579 972537639 417737024 992126632 966385507 827643820 615424864 432966661 867349538 266194903 466516637 648390136 599240092 871663810 871653085 271287360 763449642 498846124 518906304 641830254 816285966 275951772 310324124 622299863 662346561 593325595 967836197 198309548 596191602 296050411 851391536 690701312 939302856 703259992 863431108 689328530 818028851 598529990 557492964 686288004 488323079 930881575 949731317 940005159 360045113 349209588 468300231 125568306 105981416 521414255 847188290 394202648 381050066 398187450 547051630 759213556 630933428 873934023 492526220 354533251 334965332 237776767 46906625 774020484 867707868 60420519 256532843 894970780 891066326 572050191 152847895 945958381 161008177 687070562 861933980 412814900 996778970 783292794 726638704 831063298 435674299 926933487 36180614 668301097 873805044 347676834 845003398 765953505 99422694 560861694 983018155 217116030 756069103 42775389 709622041 574720255 350326390 388213441 832672249 746325876 520290656 908227031 458308690 182041957 748420685 119400012 249316780 294249278 447850132 557143590 297831653 822742574 302675558 819617410 967409179 706341737 294378778 386261835 692808259 532628710 67634632 670989236 185301244 716336487 316878533 772382536 652107803 876256933 744735074 858123204 100143249 745835780 809243529 334976278 394828454 991578202 750879903 269933284 229758035 594701799 270800534 310237763 991483952 401240485 598145722 110322055 497406420 825945709 732284890 952821007 385795930 745421229 955278933 448107333 565938056 933888346 776937202 200473520 664075697 518231220 531064794 100626970 900296633 873006901 88694144 3405313 710178792 585832231 154473709 351255315 725475763 974413722 181848402 597769531 896644368 111845775 548367856 841244851 905400786 214007925 777119217 89612609 113637527 900215931 339736885 455914395 726541622 472414912 786971804 376945174 158126404 357841139 563581465 71246815 466364320 801409968 783494666 700470150 529641206 808818959 95885762 850090144 402482262 921722480 205999828 204322866 33684303 995930 967743212 507076187 982600711 510608721 70291513 991801292 712090444 36084069 498558548 387845821 682132291 844128797 920894314 842203502 180467729 689410648 570945856 424674084 337575890 141205155 561337344 314765011 873418636 989123573 863363155 826193825 790303924 676634420 887309364 796140098 991934104 696882173 710008808 866328729 871123978 450336922 805746717 6668528 950461990 821987087 778591945 168173141 883853294 284737578 885049233 883819171 824228317 66329691 986984315 813350777 75625649 672607539 889087076 898919520 178268622 842254784 851084261 309254769 684285586 610154563 803161197 318504199 457696915 753215168 812501965 511927240 120449546 910906907 162895960 567231876 414790395 941566916 6628394 703601710 444935645 296197737 86995445 979234776 701791980 444084624 743540968 258470847 354609793 93697801 670989236 995938654 873348182 13691312 203913591 663478968 515249280 73632489 336271600 768018118 25319154 857931315 858625122 879806036 803413014 978641989 926755661 872923575 852788132 712131729 918134171 694314271 11531699 808021327 736255541 414609222 716957172 735166241 867981795 128528372 976533934 840628668 955247854 56913815 558667874 15928558 679543340 750003038 700943650 971811097 773226194 79649742 789865052 984030206 61821924 829992093 38049191 874554302 227186326 739825742 730556158 128047644 763564792 348067034 648242179 507948770 922235152 19083201 279973612 871602103 706463566 670989236 676790172 958152291 876229266 966504269 801991716 33150443 979285906 684417590 45342170 244242676 907649746 55402243 770782334 209483824 63305598 926914734 817474511 757414954 686011331 418359438 906212357 676290245 855796208 155712319 93952435 893252366 489625542 754041842 966067381 823130685 29637270 795608462 895552808 703907467 890780024 448929818 795018534 926727225 399276284 951495198 827924742 117393376 767520316 728284411 623980134 64204344 371759197 498032638 856417654 829953378 907875217 282015306 447041421 981213581 382663362 804439452 930897247 777704175 658861751 894962152 766187343 917186921 587445539 289102146 670989236 711038135 940909451 677253486 894923151 295367779 227216555 750943232 512107731 508433024 432793163 865460174 732055988 796127060 162789909 825702090 386760028 101989320 405741457 705690752 675150022 735478566 7766954 894933735 704073835 919776083 898331623 57578550 593595744 607338097 309263614 381564720 11071717 635697946 145419748 682949026 719780531 382304113 597568162 607887817 419298126 321225796 924334281 548342162 972194476 325708537 672609921 478637423 498417395 772076008 980353145 286901634 557342828 670989236 886497349 115500766 911956934 244424339 732093865 633571419 883871355 603030054 500974547 809173071 486479398 659722930 388185551 769126862 198817032 673729029 378316191 916053838 920195391 18413309 532459248 459506706 862008280 164575423 391356588 995090942 245682111 340404732 589802990 907094625 379910101 738528277 295148460 280508065 96736747 976535068 83592264 25692879 672487708 783121062 930985989 215529111 896058341 912985201 663590918 988390605 40106013 481595891 487770530 767884885 577059719 836565077 815335025 803841258 486292066 945473813 880747085 580208049 606980821 556356233 602728498 194179222 968069640 296785070 950857858 68967532 125552720 916919059 541124720 915427493 530585228 257233056 957978530 38242993 335931234 857180904 804614795 416719587 932048324 68569271 790263901 736323491 742831282 834535003 896562190 59245403 886390720 528009115 534105802 115715099 602068329 590580722 434937629 411445701 870270847 581293621 963840957 845242262 852656665 952514708 580383411 610962012 833978514 338770444 174760563 756871560 881113474 99139880 259843983 838473772 958751489 531340496 861253963 78343968 153079117 747040699 324950044 56553556 102765802 451224098 363127429 711159669 611520725 48254006 727011139 822642700 626018466 940520429 882272507 748574924 636004052 67196830 466840122 718356158 686562002 297061147 659999087 822506357 491049502 414122335 302097418 47539568 583373472 301865035 385010955 394712153 354999961 111350751 894594431 45999792 318135262 628542108 681849058 138393930 735585061 822217646 888725539 122428657 717156553 998031543 655625988 809414287 655702822 337430185 562481705 997601428 203788138 441387470 216128663 196191263 123931131 177375280 166011157 842299462 995038792 967228879 730530059 4168550 238503753 868525818 480379082 845499488 860102191 542712160 24024526 110936029 496433542 857871239 409256211 248330031 888628470 648314657 976069668 758878234 379370787 242472258 568728735 977489373 899697115 377732350 285716840 407172884 888569338 780846530 219478274 778638701 728408379 171803301 832692512 269856490 962696616 517877926 141401438 958651231 111298627 609373266 922882354 903119370 435445294 736184938 686858253 854190186 866670385 905613428 22600756 119773886 828093989 987398556 119121560 870997621 924063127 827385452 21246166 670989236 635126787 739465530 274711914 677398080 358929388 235238538 172732954 557735372 84449624 297635790 724134703 643441993 872443546 692594496 685201342 869832221 256920099 948127085 848092620 769091894 690876202 569608630 443481420 90978040 363204529 895425239 218096067 511277868 28208358 940958492 717684401 48933350 31582273 400801445 881501591 988913766 756663072 90368040 495510869 267948012 977703770 928341218 989424314 375074988 460968256 828854019 908404073 720741317 233501364 37919720 668176833 194520767 172206886 233049907 841791939 814109118 960454028 8817441 401184263 585437208 531506861 204421824 716747495 749664681 581969183 730100337 448628291 814956267 746880141 213364455 39786005 643799041 201126395 856307436 590630813 638664431 230069092 872948477 140345087 276843057 898040442 838521993 121735679 670989236 580046811 577618808 4268194 712760459 736369038 10667240 977632104 919238683 549718507 634521946 752370093 833733930 779926492 595962500 600756345 798884249 995495942 399871614 864747450 432329067 86996766 716915556 751811844 762807024 477251507 948579709 644301630 380151546 835910009 815442982 898964771 693960119 486612027 157550764 725574961 789862117 45157009 916109483 18559807 825090729 507972737 900019812 954131704 472765091 893578414 118465126 765913279 728030568 847067650 795185850 910988660 525539580 978222143 974417458 772612880 461915435 840932190 944122329 657569193 91701167 673369282 915462066 560138390 681379764 304669155 670989236 761361076 293509609 882884337 683637348 792387291 165796868 761199051 142512915 745563099 709182203 758554242 561838096 744315817 299287782 893254725 541390374 219527938 810917380 709225440 373046717 159119174 935134651 861826254 558625484 309274499 423133857 316573351 904081459 23546537 806134316 292864044 110488124 298633948 780327393 180334041 318465167 605412633 993432841 590401470 277830178 715793911 329255187 760022217 965792819 875120149 753952755 320525640 766952110 670989236 724805254 526117521 739918839 339057994 847359514 917566299 275455860 848556439 876307013 729816748 764088215 750497267 588843955 862755489 752532249 628805803 118291490 16088286 821650364 910131999 409402872 941325375 421701962 706722811 280384812 287075299 40183299 631515734 792986210 902629514 145412339 113614733 268719161 401098121 993824326 88843706 925389952 906616540 443227330 989801145 691279236 814368963 473890378 778204989 935720295 733942863 622981997 585428757 386019663 670989236 442563309 20375610 716074137 725387972 901268140 307796502 653261539 314205173 732612858 907197158 499474889 683155078 775964019 713001624 762033232 344867345 820332461 617598577 888934346 608718067 550184570 399580847 748289553 491847899 993956509 925806106 794838959 370826396 675481902 851445460 310821916 729709153 537415896 937552965 59814828 334923951 441958699 854401819 269511847 905402361 281483538 555521582 676168721 273389558 893583165 817703878 588766345 916484472 435623177 762351739 188023501 159992591 847938516 751998488 733235173 808462724 24532820 717068582 134369204 977135050 864740403 972258516 790228065 116897305 538426795 530865279 718585225 915314658 939790461 949132858 484208578 186972647 522626278 854024416 284544599 269021113 786148970 984246962 243647649 681771992 814806682 877428215 280793182 670989236 907825832 840073791 610679304 505539749 713756160 911640183 164670219 404030992 675330215 971919284 153632592 672606087 775975999 733865645 726994919 3407146 504112295 752498297 957399567 350641904 24331016 164150497 162410369 341247437 999652207 598856763 58164039 712796797 705352602 712058523 15747309 764432492 437738549 698516577 956569446 330800147 491005828 616223197 855663628 234923109 401187574 549103331 190693440 451850825 417578673 737837481 376730422 715577934 975146802 958794593 103747492 272865944 344769421 260909275 462867058 666771032 324848608 903721452 635720031 813307374 347110658 895899449 897310447 700097149 868977641 139947845 947235267 112398089 163717807 863967493 193886396 891214635 562956412 916712490 900339788 728217480 865879331 82320 183068006 68954002 409497899 48266440 884523824 857121860 696355660 842703648 113443085 654950420 966949560 815820025 970607317 717507990 472163846 628182417 903577730 332152806 163393875 792341919 982903722 670989236 684194378 712211263 897175639 890730094 817413758 353292265 911831426 518052933 720829390 730534137 861811654 648273065 843346213 5736257 525723818 571219973 940885504 667908022 889437776 106507258 641232623 574119245 130117417 323011008 268215172 973927191 951316644 707310846 88647133 507860708 107216852 643613877 436894121 469342963 670989236 155077639 952401985 755732613 546753975 697600929 567495412 492216139 745064880 935578653 505785905 312223866 323469209 766043205 687682785 276381703 986027936 924897378 720028051 72370595 250838875 391254809 676259389 606850889 650395022 405250439 675653716 965867983 513548839 876353282 643441271 110089060 925146696 703900774 536526996 465777040 966309145 299299554 720085644 897971584 719367723 397980124 133355218 625030047 302682064 446187282 87999959 452040301 316028623 404137935 321912557 918149719 210581954 153640197 311806957 98894866 853372519 881114732 67141017 148696655 475466646 532875632 320128302 686428223 908039165 532937524 145312102 889353894 541967131 453736234 779586857 232369730 431412858 278172477 284363669 798092282 391863170 155135148 879960635 669398143 125468722 171947284 992491963 568710754 703468968 373524912 903579415 691652681 809412299 381163205 953742047 793594470 971153309 491857900 171703652 628596063 893416213 224167004 123566393 721995054 322163024 895625465 670535733 566071069 845953308 384898261 895897099 910755441 234822895 708297419 832189116 424915094 485329020 40474323 143074439 922663740 547443704 13735968 677739121 759477737 986050449 669055253 65840968 905508246 10825317 990988696 430345532 487724190 998483567 239826620 420839124 511939926 822663778 52167371 49148771 930733819 842982332 567084851 917318453 602711689 360826950 703288796 68150267 15950633 906664199 222822809 538103797 359235751 772760880 807807500 754282674 757120923 820403107 839271926 340246504 45484779 457897992 531428625 629687647 334762820 334589250 582922912 802921385 3437364 661559427 738669719 893922814 797753210 176577877 55069414 723185671 261765765 984339532 100480846 801292378 271968305 698766849 628209421 352552421 772177443 441730430 937594983 776292439 784439671 920873702 900144360 634521027 791133710 759144047 429239678 31712953 198235302 710067386 717066342 143476774 976519781 92733072 62532360 255250951 917381195 872779134 820246725 162701563 751856383 45124584 788748232 679452947 35224835 997352660 973426624 696220597 821439279 241987105 793470428 450430331 903475466 698057652 329797683 895878047 936669459 811872330 964957749 914860286 836334511 859258742 670989236 385002330 197996397 755550569 47289795 586080354 780579064 735170554 267858882 806557370 533695517 410686164 964762577 16630648 168345041 707041630 922337525 90547028 599820252 289707922 810112833 866572566 129593545 225073417 962937634 204316028 491431112 228178092 890932213 94905519 479561524 631458873 19509123 902166160 85177918 691919210 377892320 80000899 790122537 847159730 630799677 702156136 608725530 333579571 873994362 621642063 569268735 610039319 896669323 205825973 945373227 215991208 733141676 557323621 694528869 544339280 646172662 346909077 253019103 530933618 620498021 507461990 434458540 200819695 46555687 716592158 932709621 728264808 739688985 687930697 666558150 825000741 851215455 928178461 499116357 718033496 381000275 834718263 631516167 856902907 938163631 967098760 630567635 933166509 670989236 710288204 961032178 310879714 150371183 523953505 831004604 422601827 738305858 782655616 142795637 670989236 304425827 949872293 872407752 958080808 930636422 793948220 920105494 790743975 601867158 536756989 754811523 795918332 150938762 553338277 975630642 901463149 92714716 270680241 414425089 941706484 151825309 793906294 481648556 7256828 723721584 122843205 224474104 791778298 347956169 670989236 904390449 230341745 687107050 824499211 670989236 498010636 649586524 799629591 110322886 926615023 428117987 509183113 869581400 676163924 66936329 906503056 690813638 586679930 224220060 228938592 891489870 718337958 356454215 709430238 822554639 988557373 829292788 585087117 711211654 844785405 230600437 162710875 511816264 274360560 858927850 670975102 181748474 418867293 803989660 767676570 312763043 615867999 573549494 959276549 695539195 964204250 299186743 593507888 504496471 577572087 684969873 790396252 712975596 641335283 832634394 320042365 12268072 869788940 804640707 693643835 824596273 835668997 804448177 656230321 908863670 293231122 866884206 477996412 8033576 872281354 311985641 225921951 805725144 418238376 987799543 523615195 792486987 671244406 948427216 796438080 977714972 800731186 747588567 877351441 490013443 433748127 740652965 746352457 711708630 779220978 670989236 610878543 469947265 899460287 99945480 34830726 865628780 450013550 105624316 419033841 931820076 826354835 672661800 560018070 312291754 891871268 991983495 709037576 870613927 466369932 894660909 845158594 144976755 927886469 373650410 580879347 734609234 296572833 882494338 771963508 873573150 113389025 156802709 829383911 514578062 628095648 328562838 638628558 838552802 229571836 999455027 164914027 115825862 745232506 686712013 280685878 919233481 540702716 940420487 944754476 123859285 774032127 153458504 59714605 184452813 902843299 888927777 272342220 895859012 670989236 753148640 396120585 897777532 124778831 32283176 844912393 294355090 763925291 727188172 646780623 809621492 765446904 481919265 540156269 687378812 700716042 823667374 396065089 785760000 763162918 785385183 294329868 681742303 593313004 287780168 598312322 854316437 655321106 184065104 897043363 857380673 193539688 259308434 296344628 685307399 482306975 927557911 689770473 663868355 156015044 869161138 757283912 440174036 470275528 169832438 337915705 231007371 846377397 853789536 941293820 314292611 835904779 415952069 77190265 991358647 158441690 782281154 856877450 305512262 968695909 730624902 109636918 634077475 704312759 127456435 902249182 300116739 501945923 596571034 400043354 780105712 399255948 531431373 786037279 959615748 687190758 810230694 160689567 272767068 847701423 911826857 222230694 596484306 258573304 418566322 403594921 148502281 154555500 356645290 941673682 546902942 769080222 767332664 275834952 389103659 42968634 916005421 899209659 278258728 145899570 683109605 222382256 33794822 455358116 857183304 785522314 479698942 974018328 729698320 555155261 583298781 992963937 847260153 901096108 339581574 862515256 334090750 792640615 342047222 170185922 288722001 80385050 813844873 544595227 259836256 713421478 964538607 891726639 116104087 994726663 891845845 153338214 84002571 531532383 303616916 245669956 252217966 123101618 809762234 696760556 11266812 206652233 979495442 991072433 828181817 471749603 784493036 972938199 603785576 149230246 308780233 689132200 665313283 97377991 730569168 75599400 436584828 952105832 515148599 135044825 536688934 123408191 265814494 108915747 184705470 671299845 706056535 696704639 752049546 482611856 657540588 859208196 942753885 760212829 930691234 717290536 467869795 950973892 739693884 456016050 252624169 469629319 15217034 101419250 584086587 711427746 798833300 86192159 929377467 900134433 681525913 591539552 781971113 793424050 383908360 951130753 250611749 955331964 947002112 523436265 647435838 879992454 733848568 759786472 79617413 737684204 774155168 921228777 86274949 902623217 598935605 398853285 682107093 659699464 411802753 431237756 166910115 285287026 770997734 355212486 949558201 922979488 585992451 479285382 826585733 864624270 197659685 848638062 950083212 811681373 491819565 641448336 647537193 967819811 209714809 697634637 152770299 784273657 924538554 595244530 755759567 114135302 847927019 665492245 934359300 279526147 203826639 834362629 175916207 788599940 707868418 679410111 982183190 979000102 243695365 113790543 162847509 888871341 534389002 557313515 886965975 48845215 89445837 748817442 979389213 526847751 697900826 418663723 535918277 63262892 914719239 981220339 766357730 534178858 254504475 654569427 677040371 270510658 269751734 269507716 675631753 256057326 701525236 108185955 775052688 870131282 89862521 382876869 656520315 279040940 938376697 857495792 501294686 618273831 709680205 537652203 774060271 262168995 836026358 886600071 437931195 338736176 634006229 703345018 916188119 980640451 202865231 607153126 353576904 428342282 738237168 963898040 686309517 963515040 13300173 104015168 695138881 310556774 539429331 200916932 223352750 929996735 458250804 209630770 23487115 72356184 184459791 29051665 869677673 196849103 108031055 42566846 867733313 65863205 793511518 953744534 893152149 808556206 679639228 770588897 255497343 310226208 699039102 806690543 290504251 742013887 389530736 202041592 417302965 881759083 706344782 606859003 280589263 899833445 1503079 251477462 224220341 907871399 578164263 186200563 94507886 964586030 106933626 999430727 316371716 959799798 759568470 670989236 309922387 569852630 649305516 913850514 85875904 839728571 251225827 656845531 588818611 443881539 95275774 749465955 995989599 454256032 501499429 245664556 825146955 189018882 714324701 163928134 502204759 153594612 748930578 454723329 530386351 985439878 228319836 7469710 843163433 993850796 651052170 713232172 981992146 909589837 398504783 51861227 964350672 797490478 198785281 986713582 382938994 891966697 926615627 941028619 897020913 74965169 953185684 892113703 151878957 545658687 625178342 557347195 765520904 922334719 320073837 231231489 903875772 713427495 204200865 652142736 839259115 794463762 732096874 769177832 903385209 721919634 81661753 651830492 213235638 361576095 865332793 780458645 159447099 927508892 831353217 409202595 750263929 208595976 230198671 182880717 21192554 962830280 133856635 772783734 836626136 310152266 656451654 548203701 683944104 556020049 870944852 100613076 762947474 950559719 812489312 153310235 675983312 951376783 448461262 395249767 415769696 961868662 178601642 700849660 1281384 670989236 21665858 968176388 505249289 670989236 885303579 528210080 888222978 925172141 468848300 62660297 424235645 619232952 567592574 305253387 928644304 670989236 978402482 923168313 96445714 867680519 881483641 418285179 714913317 5316753 944904036 252090743 137918169 680248874 196997615 703806285 591283075 542207110 781539761 355665160 961772342 859217270 701262174 292288337 289614118 774313650 830883523 725900987 159692921 201010912 59307864 393718012 139794479 345236217 944616316 567031757 114284578 904401170 727079090 158451787 421943026 722789180 963754022 98991306 851109033 180287300 932650727 934707861 792134261 344168351 664008992 195376101 241352577 426926516 881888940 13386091 850332784 739672300 957850418 997593748 209525469 439422120 946981801 560898853 819894583 423457378 908025599 887021921 808480166 94250326 653395445 947898214 998626496 973753172 459883594 895600405 848568067 670434786 332398547 691673396 774104554 169369818 615125730 9583747 512744727 111798688 729226911 558483691 688310891 236517685 240803666 799038924 670989236 116007025 261592717 702612116 690034870 325759541 765726165 345338647 514512145 772884280 16994941 679622702 961473359 926926612 956229495 510616638 576640287 503735916 823589013 345265167 251221151 426085783 970546504 567164453 93282507 254631041 690802789 463678287 62451945 280448866 216247841 969295282 896544161 540225243 865159503 540394577 398223610 832033676 783796158 761173483 418882415 275755021 956457368 490051783 293906948 381605473 872919886 670989236 231367162 811514448 340959276 647108113 134463358 904625094 840288116 933103028 259366422 973759681 905733988 449229232 998014557 808648312 483831482 330594760 395434868 766659695 966215621 721656323 285484461 756895368 882978971 291702549 343990498 191723007 545570370 930926049 869997939 951808697 540259256 840023355 263654105 737987759 938978949 482379254 871092623 720004761 390575374 798777063 260444299 684043211 582109779 733029810 505748714 451960776 349987833 927867156 4886008 417720103 287303510 950288011 773379575 510516945 966034652 972210734 946326473 967601579 691442669 901207260 677642698 763999199 908150849 924729727 894925365 721321952 905245949 32457845 597909110 511230343 696147949 712039889 418798456 890567418 536893489 748026024 283271192 221305217 700470743 884470010 246508269 6783459 637630771 47347845 645807925 140901866 954348126 841590407 848374869 852738319 454757573 374796261 389485272 452949996 788301271 775831508 673163014 712222222 264948046 703949316 945974999 514826427 999113501 375018937 966928221 596852509 95385934 856068114 737459506 613601616 859395518 965482362 873563840 732205167 804173965 911666967 485639868 249062565 417516407 111572422 278414511 469118070 900738855 681595103 344750016 670989236 73661901 118443035 776234996 78256475 450697330 121617061 636675136 935803043 856652607 310525858 589269324 346128546 86124508 324816830 912879467 391543073 882871575 926016609 386579310 489200015 463627113 639961746 711137809 906889212 576960900 457484572 202134977 329815609 229364968 188466501 648706791 494065139 697979102 679648017 328200008 452620365 392137653 195598286 104431813 708570444 425564426 853589874 589185993 397334181 333532589 464927700 553743739 983993456 838220502 748938461 492080254 565909210 893087673 875575738 117096844 489515180 429919028 921907484 185724806 775038683 755317261 306719467 655430150 424720667 918867522 990036988 422026871 900696062 309524290 707049198 832980733 599177389 721943799 379927793 875957006 823901954 948769171 937222719 67644293 274573404 375833023 264904798 778761440 822263118 305017560 726308899 597322837 843894310 215268654 384856984 670989236 883548145 723112591 489100111 887274151 956729536 996479953 144351408 489650927 882869412 16222781 443170901 506462792 742254619 118557698 393085388 620487453 310529197 30314981 955211586 50878202 900581898 16651693 670989236 718721727 923977405 286684587 282417061 421097030 511697130 935938753 322170059 930600020 833557088 78032400 345929730 873229084 231857548 225288477 623005594 767655625 745031666 192460584 265733123 711802903 438620128 854383055 534717530 826896122 670989236 695448936 906561445 116844629 666601097 826146892 565886357 589708314 567718536 876089659 268009613 934333576 781589516 324348737 375267545 863189747 852967384 115439106 216692265 611613140 727771217 79185562 773473970 424064089 850568547 180182943 289551303 809302738 619251254 301764926 859437918 817692099 66918505 453186369 735262949 172329639 508195514 708391128 999923817 763421077 583883867 979358978 939421561 891666303 517901876 82235231 814713779 639736615 934775817 311855183 495322833 755950910 893340103 285167999 993740764 882921307 594386981 375326761 138863082 979833457 906881150 556241900 270533055 670989236 507018841 35638327 987368966 654380422 567362866 46362784 776810851 810143950 964099573 912516470 376130193 962697101 739467699 188003741 804358897 926546445 241641955 624994599 446946291 252763812 531058650 243536921 985746763 861293890 996249715 869352328 774583203 690131189 242839183 219728027 286519165 960605996 448846297 979151757 718546852 759960435 464225635 364782048 191622525 817380178 777430152 246503874 393504121 975504002 301214169 990708607 683544601 454713231 386158041 209329164 943690838 911114740 313435193 897758620 494121222 115450307 127371428 953066198 624793894 319303192 607403613 901167555 25180080 978852862 952715537 594174805 829436566 127890111 524460727 770188185 222748566 518565897 326192865 698034443 839174201 769871575 815555493 217557974 915664226 88761247 94260422 116521786 807757402 331667469 110715342 932105904 866121456 606242192 193885470 290051177 318870767 867787745 818301341 389146614 771860474 916918126 617442217 153699358 725508352 790432067 626466331 414671639 479877767 384758711 170759683 798181304 894961325 971856223 618007831 968960576 430302175 903299085 523052109 670989236 925514395 772351273 779407605 897607359 486847369 737871635 370207399 724171579 774730720 931370077 398016249 910487328 714493666 865869578 324663197 248617719 243422405 362969005 912042428 703056277 858943590 421313700 772723809 404738855 334748032 311749668 442863785 156764469 146691870 765599850 309595140 56160137 796281063 1986540 89540311 932622624 147837018 313187267 32412692 922789152 950091104 777036508 147636914 69495333 464747175 896176399 916440704 320702350 67677276 238230613 782155585 41398341 681423322 271446214 569095036 742792446 59500824 227071719 495623881 745569708 589905695 301297544 957606113 144614686 959668267 799971865 952872585 451973955 965855746 447582549 774093486 179904885 912112348 554096463 689510741 675544730 833320308 851211999 381227016 923660984 362521677 725876437 867420451 897514284 966156624 774486007 77456964 802035403 357901281 725835700 704340081 454939360 285910496 56436951 469131195 793277518 131234946 703539034 295007578 244325643 862210417 771497131 982571635 460881607 954887515 892005438 858397716 753016083 653308035 986570376 671708786 251485433 348435518 291934370 136222194 834275220 853564514 7148347 886326871 881218188 924888903 879691825 874728737 867042854 767418114 903589811 890070997 951737335 760062037 443890330 698019945 104305061 948242290 810956021 962134903 689247670 540850150 247177443 747723716 411260345 978805059 824094221 899390633 233631802 870967225 670989236 498776161 214022315 563813468 330163130 670989236 390755724 898611871 921884222 913464872 781742826 118421345 212877263 488878384 910656415 710458497 126914745 328056359 989558416 761012120 285410619 967648776 526712942 856072602 847040546 709182330 351760004 549947370 716415203 49253701 166982896 831311223 103334563 890070449 645955205 905577622 45619133 385962313 188497039 184110720 661553501 985415880 49517803 724555543 951487207 450839475 745731538 697782283 871840654 799488969 757930143 757799630 767080679 863250020 821767535 907404077 878888116 461733142 270787982 698827298 854158686 717090448 142735649 873998236 560488196 934168865 466507522 47937356 680645366 60876498 835336320 107866063 648435047 737702494 218126553 72257157 981024270 350956462 599277693 92778105 965937954 13390984 231268248 928034587 161928832 226354149 53867182 670989236 934606066 245627884 678904576 889719804 495373951 710513426 902909126 500981985 765459922 877234396 338160886 744955893 273617661 372085451 989064101 826922234 334835761 819663651 230019959 252975950 185304459 684838117 936427142 726899033 16164632 902994759 667241767 279882144 345204093 807135887 406146580 491570092 768060114 500913344 615579572 88291559 583049836 882809383 226789209 734957275 608889978 710070341 920403012 975462980 60510471 515126025 798059233 712452927 589931636 907479624 718621943 557589153 328825500 740279232 780813937 474284496 812120492 981468114 448339429 986647181 643345184 991903956 757968780 82503244 811544190 985785332 289518923 656001260 562792835 917274358 747847475 962341831 803657379 74242192 931393906 374059822 591996099 316312712 490289604 235895044 9666200 805168131 843523532 31845499 989941227 174683268 910779756 732478736 403349475 375931741 295201708 164574693 120254270 885344045 332693858 921968101 338369154 641076346 410162406 815400318 928472506 776633131 765490518 703779599 670989236 543330866 433828500 601183722 987061650 673608319 783203026 590586045 48382829 831241310 214059961 695997715 621332151 570127236 714872884 991100214 906287800 237792191 410102963 954227364 228280762 502980270 740851652 598356231 71185567 46316690 999620089 945697611 401756973 933563591 163496974 855464389 785967786 947160040 421201114 624265192 443400923 852886160 789791808 669976825 135011316 881517464 943306071 343845012 710624117 901912247 260922844 862352989 58407047 754400752 154669544 922388490 851074376 808602997 183174882 327545031 778525107 740673044 29418522 764600264 896490096 386515558 8184998 722605006 872030231 440953452 917831967 114464357 237777948 665628426 42882702 6204830 777067626 794973435 781197952 784282682 721588267 710916200 854818971 945931770 64765590 948458571 80450675 144435485 953377393 853951659 876956400 720012319 511838761 489097864 263336249 968427225 445622485 25881639 400406864 201368244 640512046 547387268 759365912 910423950 651625262 442505157 804908433 10088837 750984784 463243521 302612563 741060287 898279236 973043656 840281041 901393811 256041301 716382268 235049508 670989236 106704031 400245925 350325258 453869757 112150093 678698485 670989236 944835019 148075834 372279602 918891508 772283151 560920488 950891965 700045723 756213360 926542774 372747276 413319160 888343865 767644012 895119656 883653665 844864635 698944377 702737954 587180161 63062119 984323432 168630032 730528044 960236376 828821938 479921063 654970422 827183724 657753430 417529142 841114090 379354855 609619961 851614748 472602485 278798462 299199226 579018663 545939237 989572981 896554563 298241026 724078743 676182250 901265360 850174216 859913635 876054343 878697424 974301258 881880046 641604409 920886549 950590612 309973745 770238324 680647345 266211759 612755704 780123027 913776153 837137040 984666626 921781035 701969451 884654652 9791146 535386546 409439817 129520694 182665194 789610981 973328273 899114013 549443980 192272926 914157914 233786976 40487958 806324261 279670812 701901707 80388386 998071897 297755318 944119921 686593615 764643896 610728113 260616089 260117507 821936214 915285500 231816441 636806959 708244601 652565159 774339510 80416931 584924802 705945696 125049458 942410930 769627410 419821432 500664600 327393107 732686017 523823135 587924993 92041291 711102104 726539856 995140015 497016327 412678796 150330158 213584895 101893423 478056104 306225848 858540815 311721077 907487935 846352757 421056125 120193572 368210158 937428347 784105172 741974752 648864293 309346427 236146539 524904335 230602269 899206896 611564538 358162136 149244858 721075658 341116370 878454777 676758927 345655749 689545382 737465093 874458167 471131013 997557308 996661611 935028735 759648486 969377630 624559263 800878682 34339127 838723551 236380060 670989236 645783352 492284346 436529897 992960155 154556320 725114502 503380404 444561524 442838184 830662329 338196138 844409563 256375946 897639654 849416731 447540524 983088741 439761192 747094493 465458723 287928754 772340350 971897521 589577099 651734436 812543419 88196965 282676882 122447602 95363036 956913578 838615934 183425352 440892753 663673212 765357172 850901237 882591912 6490930 426177709 972439243 123320395 570632311 968408511 41859622 362603890 816889808 757619847 783320299 6603154 914434511 996475212 493779125 527572111 888794488 994947725 913300798 350334858 935469593 535391182 807806424 637286942 443267333 671001673 895576638 842168002 546167028 760915754 229594127 799817766 504795889 693433253 804628230 893865062 790986018 261747221 959004142 707875814 44693029 84195574 307130394 249146042 270408932 28668918 747154244 158220801 410432140 106419764 958895198 706525203 671972721 30779783 4924855 564898961 648042389 890939820 575557394 888105194 710189372 62412121 411005905 451759482 944927691 357638798 853518146 324499856 778520668 921282919 502807380 216029475 933236072 872133412 512061436 796107389 857074299 506024754 996439150 917555637 468615562 843312278 139920093 428143080 727830185 981595996 293189498 645263282 742185527 77522528 824877088 888053303 780022792 977498515 794533670 279777244 192483952 821169847 952635866 989712970 788661097 80047930 451883406 994161928 347419684 884462294 732758249 180651583 421033954 823357028 563222596 649175656 406631937 553731722 902726116 228049409 403499423 42145479 952163650 291679906 486284916 931673439 616521394 971370619 280242117 683714167 907999617 783811520 700484518 509232521 984610395 875807648 559940022 630123450 867210620 78933845 295894394 224957184 877591000 909084647 122840760 677341374 756625886 574496693 216853271 286005593 977384394 214666710 755183239 114473746 36533438 827713767 446340380 670989236 751122512 973555764 165953967 810167199 551722198 56955338 155679300 281100956 847358 462976053 208457911 741282864 866832835 773731342 780757370 995944239 424592758 957879362 451972216 823169064 670989236 404180517 720923227 71906299 148935884 375339364 581666335 646289739 728895183 649906533 680831037 817447428 428423200 930941397 242377617 714001033 46865378 125702015 796666153 365360429 239851951 59361447 749745134 851141911 758632898 859545930 89306489 864928288 285264814 766028520 45097660 670989236 744373653 512899662 547714357 603934652 801087183 590247322 503016262 791409980 177453106 269896733 493600488 107198254 572572144 501521742 999506480 396857148 93366880 427571986 90744645 866170180 809015515 859286121 764278327 386872465 981491568 677242992 435101632 110522282 88247514 820610743 190375818 301282943 830097200 997100173 670989236 116163730 936014038 507347858 949069805 856629135 565208669 649988474 420315134 677084926 701343161 151598428 295409045 789369608 669373859 510966612 541111333 708425934 214556701 681773927 694723003 542439227 711447253 900626535 855778467 352707146 789198226 888901350 242477261 166618087 104808620 993388630 615686872 731745228 867985418 235329376 703759112 741180933 899618190 279955327 712407913 837585829 722047310 764529792 546901343 405481939 817343046 361361497 469736568 438048135 971718726 297974954 173961202 839262238 820113744 382243727 779433150 184449341 964959245 141526925 455091586 143163063 947875342 809829853 956292759 778629424 861477335 711309457 503930766 446573063 821623714 574292153 34672004 877822575 836515277 371819123 593738900 23152806 670989236 814824308 328402098 911784641 794984132 992174455 770358321 980619356 979929161 734723601 957050695 769745806 721351929 777885813 242084120 47366616 435071388 690151536 704863908 466150055 726650552 675389696 312553548 968614952 994404215 435390861 314885482 34510164 234107117 696865318 306440127 50200302 741415905 244501842 694202880 580588579 851337449 529388386 379443886 548315529 727755046 57849793 164101331 703409817 889941881 539067875 608363294 546523581 303917878 890821218 967995555 961127336 736669544 747954150 922998180 932042794 482320160 181484746 204244728 651549050 791426408 799884626 789076033 176635872 262702463 588777591 580124175 870748830 877054016 352282359 717001093 774030090 141628407 518409679 872765560 96345225 601657617 769971836 100856624 846961046 551770798 222081604 810607517 789841855 66369318 845019960 543718306 905976211 582015505 526974007 906771138 859952227 416276540 899043936 670989236 958705153 713297045 132514087 517277141 808310152 241112902 460486611 893533361 898518338 744585606 844696731 236447113 93267577 680211480 906727818 419237075 566111506 708796519 889627254 830910380 476665651 471994050 958416566 738567282 412201190 840269311 531636805 461496677 64036305 643388971 826542967 393372311 520606732 122185846 164262709 932474544 896115737 116972573 851615055 344978221 770286771 470959712 123110025 873027128 143190900 894571216 755174922 38306890 541812721 512446576 413750446 717476138 842064139 563791453 331353696 115648920 929810596 814110359 482035574 845045822 214807667 967783993 825291763 637336659 32311855 919241978 675276508 953638558 718970086 944364577 852764297 478081854 773506910 494789367 48853333 12799097 670989236 831424085 802583622 860742980 948717820 208364400 562704063 484956149 95246438 347692189 619911878 884969537 174067717 897894608 592478351 667043148 979040070 303751643 212543896 766396662 940387668 956256214 90694843 835476193 898803745 654762797 15717770 531297630 588316082 411308707 167560535 209027051 693836277 823965391 739234808 466955623 820285697 861969014 803730226 766554108 621837371 949914071 377232166 926980561 800943367 971604812 877057829 573473943 143316833 430638771 133474380 829417839 944508752 992830122 731612069 893463859 112565623 894196044 513795130 255097034 389007344 6156486 749776443 152793095 208794435 488754388 843643360 701994039 477733988 465299928 808226726 350589516 179395827 975200203 715365329 331837645 752680385 169430606 262179512 739941967 407998291 855524703 22463541 49467164 217654374 198990887 48868605 949623394 671814210 699705114 808293993 745822822 554554550 676054520 778410106 319890633 193794961 970305653 792361847 713238982 955373359 785670486 274382645 740715318 870848643 164047423 879217419 988930957 578563976 261235136 112555070 964644137 948060958 475871362 148194691 876555301 585690562 851658746 539763945 906648404 248748279 817201331 376904594 863549299 701442685 663357828 988437062 990528460 835375781 702400949 740162023 27357497 108127719 826979969 965779193 255924877 798219819 22248110 988270311 918483477 219334471 819834629 373015435 490631220 372810685 290008991 746669116 891718036 602807827 528811939 794295082 795120506 871790833 554433697 464871498 707559735 974754150 749772835 635073928 742158665 176497264 714903587 601925438 49599111 9426934 312423506 670989236 796103391 344315801 821775705 892073454 525642060 942010032 495995765 692783660 242280599 126169771 706960964 898803071 443419082 197390639 861582768 918027791 446530621 89914107 670989236 6122340 26155443 473664137 794736423 919571395 350058078 310471771 191651109 663238706 857654509 554595943 900255655 144599080 367523976 145650777 130613500 677203051 12845162 65821733 745749231 207707043 958483001 103498736 731714595 259531592 589704355 799002670 321938103 143017819 696099329 214832379 796392381 649463908 886754332 734762278 919625968 366636358 243460391 826879817 380150434 828128439 328649228 303736267 561663168 561930783 937152466 14555949 852960775 532988956 258892304 955968027 917462013 963393911 874046797 610641665 744463614 126799273 904754801 229908164 957156277 655149781 34714667 184405865 707916012 575471016 314081285 891632026 60673504 944956896 218241669 692471145 684229234 925177342 693903891 807403481 877817082 21973466 988288854 62290773 608521079 634428363 159669266 820034976 273539920 682039895 703327155 703450469 557270668 302543362 811139040 891664355 222049711 84377546 633794782 195948709 329214399 204032981 153403731 275790380 87191354 963428862 960605 856594652 702748331 699723225 58685584 463082799 530628509 985178444 752560027 317727695 712729702 898190325 848502657 978179696 149549036 922151160 100668642 159835353 322308935 75677965 894387719 666533923 347438923 268675855 615380447 700059230 198903764 783761549 391699917 176424722 416319545 937135913 777310174 315027492 516255217 670989236 228299508 956438480 738428629 502368727 170774160 856194958 373498395 995131313 160962724 670989236 641433281 122060249 887321698 737121951 697806111 579849186 982520071 933714119 96201024 811782788 69405333 544424434 864449165 902452867 765958098 988256347 34390673 202796991 853071330 869591504 915220376 731241757 603192813 82420885 139084354 934093929 709298031 812343353 823467606 155988780 969254407 798248974 172322199 419666954 845160439 362174675 778311030 764402702 673847061 918184053 893875731 854036808 532664796 219159443 720101574 840878819 779445645 759806508 462279466 583187749 409991350 297581833 838870024 827476565 547046293 925591260 482409681 733073515 257174958 104586408 198049202 316846122 540569372 599047876 481437329 296369302 729804359 774074405 320710899 138214885 470825128 966862682 572396361 931565313 940905810 709198725 253548933 907766441 680795174 654226235 781284136 203518430 996120554 925976786 828125288 621199864 30504666 912433758 925226728 403564727 820664883 995843469 482721269 982842480 406395586 786324745 371953313 120110282 205028479 364869878 742870435 740581935 288829387 784514588 704781003 754923512 954008461 333172969 50607951 473093256 950149872 898474783 264144277 126893264 376629439 861488497 723781140 751403867 235004955 743607392 735078168 70838603 344879919 747540260 732933969 588719332 991480867 807809526 208788839 320481650 950473536 94808409 743175618 375664656 881608980 30192160 68213379 379009755 341289077 703743861 643426989 998651706 992161087 601521816 494900694 932179048 982002056 19369045 757556237 893858367 732626192 379374788 742466446 964456332 656293525 902917674 579750816 810216912 542921047 941168376 750786277 546188814 437048031 69215140 227880071 158294518 916321755 686302088 382092725 481992264 730966509 976954330 965035394 214118945 960308432 643672636 604182497 944330242 432698310 35201903 85984118 250473890 31683279 873523902 949253807 478433579 671093421 439332261 60352063 203978618 545461190 777754360 264120612 930160662 840327372 451794780 697435283 980806282 305505353 809806227 821433259 686600781 985802945 420558597 779463890 755682549 768354114 169230218 969098484 846276259 875580818 541365414 785506308 802971795 538867016 498866657 221566721 959815263 183249760 970404005 398090168 354668465 1605607 889659029 953822836 753116576 505730992 558257311 283489395 900972716 898629111 763065625 108665408 679930176 130649351 334162643 603818132 39373487 941228921 659822633 732012637 678630865 768801793 469859892 365219505 266765434 530684126 842107725 183758667 783678878 404544598 775028790 763628677 832168975 697762790 363549183 269266602 455664615 140907111 737833994 796516003 781215700 737744904 753099611 253194997 703618756 218790140 571163454 368306407 994931352 692886036 166475622 261748105 803156033 498265400 807710699 811804425 670989236 374987106 506767308 683510097 956156231 993460789 360181798 916889214 450397303 602496276 597949946 19567302 133432459 533951313 836098555 88054956 71185915 971497407 470436078 946724905 852505895 13367078 16660745 906320488 700466947 547852339 733420785 524553253 668117176 25056333 684109641 33955754 829782752 958266832 670989236 618565146 427640889 602950444 81624653 830496333 233423492 859512921 806782607 749586120 504016633 416399419 885220687 783485265 811283524 850058748 950194940 198086394 849132513 704769176 163993000 956775590 649990994 757321163 119415219 429513433 836980787 832120675 684846087 331070369 567938383 499634696 829796937 749893800 393575676 321675874 695475444 947975208 514530889 141290230 585537776 695271459 330280417 710030548 843988800 683835794 939558955 30310464 744715997 170622110 685709751 415302671 127377236 890291299 695514862 782675971 789401429 168970854 900391936 690052417 926857528 759664897 580846103 77321136 515839503 934377267 156071376 912471758 406216409 992294795 647917152 743583848 677637068 468718938 785901081 968376332 830262107 818391772 909371655 662031064 216671441 945990024 458999728 134225634 134780025 675902905 849270360 585850630 722457968 876257871 985140914 725067132 916640082 153291820 797052431 56688033 850024599 817381994 891882912 809445036 853044336 955170664 763702514 704506573 189731922 838811108 995069060 445556867 260263106 804306618 485474323 819694305 559426943 889856409 33718183 994868174 346412910 174529088 937925245 851647906 153575791 337394469 704484208 387760776 933412978 308333353 967825711 944889190 683499295 621955642 994675336 198970134 946433326 898604409 752933994 27907920 22194701 771968845 960643931 332456539 482058351 302306354 575277775 517274515 458878898 546226677 704935755 63522382 390925319 910162860 199195386 414462531 545897189 521259277 674429220 982220974 979800982 552855030 769166765 198615201 555592134 823584403 835081157 253879872 682250430 931700772 517557250 866968830 714717268 471260863 779972149 86192247 670989236 390751662 468801420 979205302 840489591 320598089 26291351 755525593 760906179 602865008 751430688 765127244 694227677 674980067 531100457 900175019 792895125 356221805 904253440 252909522 236481027 818950029 786777422 877738056 475647662 757653655 518073878 739541406 670989236 96523425 789864556 759145173 823737808 20396461 344800003 776952301 710780628 796307426 851918853 776939901 76766482 959607794 386231013 756071628 706928429 482563712 918829744 685492135 169301645 887487041 484002455 173356947 752787891 551325963 908774969 26799721 712177068 345062721 483200898 17712902 936132496 904317738 886574829 796835148 953457605 406957672 999893525 399976370 577808212 720605348 956669350 813969528 445489926 941535016 735542312 629858236 911975080 993317320 217287671 798984582 405165716 88127717 961863511 911636289 745341143 371087158 891040619 722767951 531775551 888811098 857222901 101172556 672162009 696222512 317521745 213664289 420202773 365561843 14199518 125936580 655111450 779952118 779836133 745748267 827304944 803703014 802821848 129107915 865680619 521124259 170603345 265714582 777091034 670989236 869088929 165445987 697024332 204968220 908529624 962009056 22288111 651778437 759686206 810330879 717521974 710656188 662712355 398905087 907066010 809129472 987267653 682382401 310712320 973601324 897509196 718731762 304572826 740464132 376549827 277119005 298375503 120112166 624247452 969958755 905042624 954885074 838096117 294598661 877124609 415283652 670989236 757565637 696963626 845250756 727481685 886182772 729638668 950807805 450292917 697299567 232870092 914855024 913579967 498847584 60992318 59262883 703986554 384584162 542158242 129111511 609283010 846842836 692402422 460210828 203772667 247611704 288742023 790229501 820814008 181583698 880106189 817612871 794299987 622243932 11870472 791031743 325520563 356639326 780453487 4249413 82298524 752332570 397725449 379612626 403617945 852043583 814860036 602228448 191120829 968035589 727521568 34554674 450282730 699373209 153599096 143460416 568129393 204049879 69139148 817026237 714736900 894456554 476053032 820356145 392571651 401032250 164350935 29970133 744391144 189638380 884305259 957442830 189453673 833966160 439857297 996671725 97588638 62984259 409080888 275184622 291553059 156596565 670989236 951134094 731238678 279300625 438832146 892993062 989687318 149422488 711603530 131652515 746543108 842853256 955826640 862466498 8638141 749124357 250842308 802769404 588841805 488192207 112288401 543503265 351248329 311966273 964660639 763950527 522523884 910629311 690498563 54377811 675525543 888367288 198901107 906821501 94907379 113958309 52833854 551739115 973872516 850406154 627956103 300279872 819218974 568790026 582073593 983330832 301551118 402477791 998680484 178375338 249915557 507904317 761133864 639791477 172347454 890878905 307585225 866283966 372663066 40192715 873887162 840583175 50370948 196523973 196256116 186525092 72975051 245560030 463084464 852096986 874254326 835756777 126400350 248819521 971727333 167409666 995089469 29312919 782451502 957079455 792734448 186323392 811540255 122577050 452200309 297850864 718898759 580769740 354896477 950177892 111947783 620282135 2008721 899264685 880525860 675102869 783455046 802253947 940652398 37860697 171123703 699866238 779558438 775139519 476512628 991490106 719821156 383326000 808145401 903184478 640692115 436378701 185170914 377790578 165841516 154462740 670989236 858453372 403707594 431737230 414760968 688391983 770632513 974321389 271204181 677953317 963238666 593280153 76697262 981692742 147524233 642680733 392556849 390844314 900892550 720961632 835457399 436946091 630930579 218374291 422402567 312628304 770289830 963451500 356882291 993328641 752609092 509594093 833416122 810781464 554141351 42707322 491459613 234806151 310811022 692213178 518002197 662521777 894376094 977305466 854727713 733585544 222003511 954144648 145279943 673377113 82652151 474200309 827695997 788323757 632412013 744067176 974353502 95073831 682848275 407992331 723014192 747149036 318874005 692502028 966464691 540062508 758883010 858026397 58549187 887412244 718077342 978531081 593647859 809206351 155262229 510627688 512054396 936668628 603138679 944222613 458200561 541875759 707356373 248774775 946220511 878289696 918134580 192208927 39366657 418963632 696412875 696377541 140066284 786124869 786198803 188021809 913808770 520091027 911721811 176558167 184305229 982003312 941019890 595455253 829393282 704308994 28053704 55876162 179794129 762675480 993081544 526319917 973548862 825554280 833434208 744892178 948461235 561445272 860841495 965646987 749239552 971200892 750849233 680481975 868138455 502415795 235079377 507476172 120844102 868890041 839408565 44515242 929669753 270877380 888658531 734815335 736202615 810540674 858174927 671659328 969468654 935110124 767631711 847859132 495259632 87513436 919780754 683000945 966122816 999349797 595229256 744731933 631818995 167428689 517800649 37910884 857681525 257139654 565066884 371785777 969299309 802267316 872617990 305271960 653517017 136802046 842508776 903635051 581077041 425174599 199878630 747237257 966680656 783778408 86396257 568717352 322433457 913931481 729551247 867520232 944379592 78326890 718554746 338677423 793115845 788589477 802787905 463576465 544837842 956250699 807091391 791131690 297562099 539336748 577503053 437464866 705569688 71400505 916380583 126118291 398577454 496836368 84257568 702259434 452203634 752644914 751730181 787686009 519205362 430210966 940203127 202743787 822869018 994674430 509989899 285229411 820770708 615825417 117009084 183833585 217039345 934324718 622601613 716985328 670989236 700191374 677647394 519503833 932269795 862796228 536126708 838384016 814313723 469481515 788735342 218230916 961139128 169158411 656847160 307541776 909755662 44071113 163295319 822080741 285383943 855761828 990694154 74060213 596816845 262203925 531157721 466017869 544352931 768979217 286202077 712407881 862588297 824311658 866052018 985243963 767673601 518353160 903581639 328355240 982428264 511988847 682561595 662263796 27561237 870601503 528819030 242524768 89917750 711213563 488208813 726277772 842023312 696437367 954217818 416958485 699315807 546187405 792077249 212080664 122602969 26968522 703435040 762251621 209807905 35621266 497109820 573845757 384851303 630279700 812092587 695707214 664688095 956510724 999250639 957308998 225322036 954153939 929106953 441109363 379321516 173934373 816133282 911637574 620403303 699230416 176106522 984950840 901229734 660748977 939825294 207572846 57790998 921035622 749109701 844531359 823377642 680522555 404882693 779209946 901937547 144481449 363824175 762390366 177209450 852282312 745386595 6486828 818082940 860376209 127719402 361710071 728640889 212153448 905512793 861700395 418864684 760471439 945521901 692760448 803132215 629733709 621673002 294934217 561306993 472846403 798519305 769177990 691709555 728976367 863169653 670989236 177098366 923704642 93855530 760841239 684983404 681187905 49181451 576788289 564711687 743263874 756165314 928555924 832406056 986354797 899005200 767672646 302070780 118499457 30259712 804092693 705438881 522145061 824616863 748317366 314265653 374523696 955610931 959401526 185330082 833332372 870514329 127849112 230873463 525654733 302674936 421847997 731820068 458135026 648980747 921369395 7060512 595208408 975901138 963832697 616365567 980210448 560130783 696441048 859893946 581136631 661309072 866503427 276740799 711920002 561980287 696922686 543651152 456920598 910022930 150693595 443404925 388359966 763259725 730869909 856590502 947961969 793572826 346948475 842409016 82895323 234324350 826744907 930360703 893421389 105681128 217072528 921545522 966681197 975100994 293048220 865586537 689062648 701233560 734869452 790126447 993389726 944683637 61143324 364693226 663894319 652194349 25018792 286958491 6775333 670149863 952783413 853789760 95799354 701506941 315567641 359036414 330802795 235557544 979531305 827815414 743471074 534711163 276581761 637578706 378821161 949124440 760450417 304839705 766200211 461894614 833768147 5522316 796026862 835291727 369263082 787724806 15262542 789669639 996861219 691786394 883796330 600267850 566885101 320296501 704361341 63955933 79221656 920479076 220946163 882204992 343841486 112611945 670989236 916739914 910112717 689043114 781493966 204855645 240796137 960025132 861752929 87617553 642520113 833484374 993941581 959223566 224519171 54627405 549789807 931002033 839464699 682544935 393691439 794612786 640206785 661008310 636770995 706452590 215604975 925703093 841906494 560137335 376814051 35238969 17761627 28107834 933853544 471537806 847008039 80380173 827158600 871575644 656867317 413920719 127702913 912744560 973965394 734687690 710477696 938820605 850484324 783382317 491310502 290357472 699144403 365532424 872969121 727266489 878911193 904599904 994146343 711557217 161116269 883474085 355889076 712639591 707879607 670989236 658868634 527093109 369593564 951835657 124920956 949612728 620963691 411688874 210658126 229018192 395209430 178518506 87904449 117189999 390093477 459128954 193083795 872193673 786107858 475625393 737007464 999126722 866323985 140719923 881481802 821404540 302235709 863063275 968062769 108479262 126678765 378083269 906280276 807046515 978452943 763069331 894478482 111048538 881655512 602627621 517631861 184388715 969046244 875643744 969360920 864031394 928291705 845462528 843836897 950360391 292940596 711903631 542421089 897998674 612091118 824681566 486630726 845913376 957964556 171008246 625285228 295210334 428600999 352968161 36870743 373526330 907441003 640310592 701994100 888255202 327122057 341062888 228212172 535145164 175230081 226602385 777501148 661206470 849006244 949005756 403090494 436791346 200575148 893367573 228847158 890191658 661682773 415489832 557565373 896264536 38569063 670989236 921495224 309112877 820080631 675650606 955421695 599189440 586581699 840110345 755175180 786233841 212070289 544562568 42883499 741185217 240733593 727265107 540908124 421298832 963762616 797222278 709294419 87314533 146658528 839994944 915163426 591476660 811228137 634732815 844168350 243212880 451100202 517582647 17012898 702832644 677844445 446492846 552166219 847048029 818316039 651275001 899542782 149058441 929386338 954284566 152645512 676534499 481559567 108056482 924350010 689708012 346292158 148569012 739475272 875298699 707928616 809261727 259916140 751183238 864251154 808706987 925442534 451727113 773564612 927838806 592716882 112425682 409723931 654405741 833785113 99967680 704651600 195374005 510564874 860582470 927672715 432130220 301428941 206236797 677088993 656731234 193761567 660416715 929054452 612570356 118000877 583797290 548066543 167921099 912765065 287896951 567843633 583589772 625334113 689679004 195243400 932794206 340432685 646141218 345364864 479842737 275835887 423827830 374136330 904996594 560787906 701822056 414543997 791786201 749767746 197336318 51885984 907703769 79061701 549864579 216924118 613792011 787920748 546045386 646678197 714129007 725750835 413378672 741644030 623268318 789357675 641007448 853749539 647578942 623607781 686878390 748191238 920912484 796134486 580558342 772152019 830396798 715325235 57989644 301457823 887630916 639603453 800147292 646368174 513289886 446247707 694319861 791668174 733970915 222947218 723608602 994968249 95444050 945627388 454769123 528264082 516500178 196043739 838399106 363412249 755453663 160391736 812907432 898145739 741616862 716200382 501973295 815112437 823747410 876839109 828094236 933697370 48794581 854829489 514243287 402287793 951365774 530936150 674365735 237794895 948682496 820874564 802614787 533530589 863300033 763795329 582417872 640312533 918564372 834998561 917717778 487749603 10726721 93678958 775437146 195037751 266380686 67016909 715030469 238199724 962122206 397007147 350459302 895930196 549950937 709330594 548945705 763482034 375050890 334481154 435947324 948234144 802695407 636990039 788690712 471284732 680863510 381512117 504457765 793152811 638067908 291818034 838228435 349951907 172262094 448524318 202279541 962674521 880102037 704293709 493396172 404414918 855163171 263451858 26809115 804713690 934739671 833986422 770100406 246355656 823335526 804994199 863252998 292157406 320254306 873644006 793833202 742243377 757006935 656296945 786515516 90060930 878861926 541519895 380277855 445374778 65446577 485718439 984114087 882849436 287692945 637991392 588502453 872504556 542045084 683844544 225247210 550076367 372544293 881134011 85930182 202236233 558505379 682430021 214611279 192045311 11329838 155522552 797069227 940840669 797401094 678347670 27302346 864549405 806115183 318541631 746729483 62572619 546116825 986509678 830934260 743912557 742317163 609714061 497282104 338787191 768760714 920243203 971360185 670989236 756066384 630888858 254434951 906687584 616981167 421713258 897087835 849639203 921907906 528767663 789826234 478450529 162597853 121287473 792324939 41091896 782010258 330430223 484004444 869667494 686868886 957768316 452038760 995362720 413394353 786130742 742614215 855802801 75547292 581149848 859245794 548576204 264069778 757682020 883606576 694583404 361453177 583052553 714302493 581134769 962947238 839947075 904865118 794467550 748356556 878110075 433029430 162908577 670989236 670989236 715072931 54375900 921935221 581661841 793698865 937528424 853667183 874439228 136530114 707994137 513369600 680342974 884620491 873366168 889567889 320166318 584827372 812256513 762541853 820453484 192884580 947418392 816922857 902625577 841608625 231734040 981311990 583271809 194162978 713695217 615014007 829775702 56564554 939561111 325572574 921197837 496104091 236122509 434527738 270589557 964075132 30448982 454737422 267660711 851559149 615558824 286696746 754297725 595604462 269679024 702599081 886646329 52010002 432205299 737031395 809010614 887253972 203607485 382463123 856975717 881557454 271679747 924809791 64501817 794869897 747719359 249323544 539065385 476267933 924061923 951394139 490052317 781184724 809948506 896679006 351348849 237221326 761023958 813213670 143417375 773560018 831922136 825702674 786628905 991296195 66443420 756298051 491212059 882404968 215109101 787669096 114549976 884180349 476037769 813193467 505768113 566466827 672707481 965416599 922032131 107221201 731254463 731532267 247977842 152758532 583479059 856035127 109215247 832199216 153341620 374025886 670989236 867401266 759036675 994911677 765628633 185690860 726542467 249043612 809563729 766083030 577327759 985233158 852196001 775003975 223831882 79616719 369438492 962929127 405622500 336355976 125265055 681969392 128667607 107220920 290114058 231448574 441883745 896706291 668717500 927736805 731003681 486651627 398915512 841521775 142308544 861977115 732492232 864803766 996751125 785597898 190977790 650271487 194455254 487338054 210813052 666148308 601776556 835118023 587049155 530945438 697039131 694763579 622043978 476953562 322109860 445261909 711355194 723329534 682499950 135706309 702266586 425956877 738548450 851557091 921726998 990679310 836092142 954348024 998127149 973664885 947598785 42355547 415765694 737121508 754756343 936394162 763256858 691205332 669024150 395076163 584077678 423616650 382655944 781888536 207386852 995280923 490140647 852326965 521337250 704716933 952279465 178524880 935215409 874787422 151796481 733380685 338192499 160866793 197451842 206122162 503415084 796438962 935412233 925793101 253199023 98783658 142859116 857837211 303623903 381393396 145373886 550253438 320358471 75821850 748160256 443854006 54182400 933464781 688023996 315670527 977365709 140145810 906919088 162979521 675699849 793625012 242336072 771024443 407475855 180673757 815537444 425552141 695167013 955569126 82943438 812997305 789955035 825151329 5137445 265413204 982685470 776304393 405313563 198728144 946038299 670989236 947781166 858566437 861329048 71585329 764393330 608064965 747773686 956942055 672021098 348877128 422894292 334725008 590130429 287951394 5843796 536265779 745515969 843720513 959649521 687136878 482245883 578227978 289034219 201108638 709025251 255348617 297111226 900568523 682408709 845101647 499980192 599950715 227740908 831696769 915038983 762845688 895302285 34003625 206378864 929459171 167370865 975904188 810024522 566102650 168261462 26430210 382755419 462036358 77347095 419476774 120567443 4785101 840882 397299455 627265547 959170274 496093601 756476545 675085528 657369911 954412331 906931078 812286108 824461012 723452501 863330960 384782821 651682565 700910754 758333902 954309398 334256951 838039838 721672691 594622035 632590637 432968953 712607784 670989236 843572248 241709544 781579606 979688007 264888521 573322291 605437314 804921120 959863580 604013281 857439902 409398059 928770637 843947625 272495664 740894436 458759329 706877272 172979400 155456843 768902668 728769331 845204180 161615264 820472307 592631098 454738191 535394889 724936509 368629098 871262412 901851586 750598941 355884270 202461834 855943311 948351075 710651884 939847787 906001421 688106465 269450870 546565971 982347566 9044986 946139488 976522214 736618281 681084194 102511831 903155078 794654029 973083176 879230145 7573528 944007856 774060989 230847322 848930328 739723297 972576893 388352711 692894143 72266437 687238819 983633359 190040312 117750771 923289519 859733217 771674853 202571003 690264088 861554330 670989236 167572122 721151628 806472208 591045335 243609033 276586906 426871227 703116012 613586 784749262 927152636 958539150 793378427 232894303 328606782 141532117 970649884 872406939 644047803 888949351 349666570 848136778 371140269 889419061 165004933 714419718 677262957 935256870 709153246 297615357 135596582 858401572 840738761 671680612 383001556 884512580 712799044 878696141 564748599 210107510 174306124 320268187 123634712 733925500 589754058 57299690 159167991 487683315 938295380 712002121 43311514 34920812 236529441 282639348 171106544 97250559 532771657 848967855 609171834 993081022 847800656 257837297 803417841 233104723 862720310 691451977 554826197 932496035 659759660 640948649 392580044 759576825 741572414 906568301 429334018 933900690 344284660 647232900 146899205 910715887 751779745 761972082 285896155 702833859 434273991 539153563 682460860 149993457 117530753 670989236 943281354 695553148 919377170 554897157 699699123 887411099 885670172 837423795 12216933 900450124 627035101 947865419 311553813 881352104 755394933 382418199 404242421 646105621 939778227 889637277 985803968 279730128 620483225 752924043 495862002 954532945 875413498 543226003 381252033 444244556 93654562 70749710 484016456 522443592 288383378 845908359 875198960 550207868 111545469 703523398 82055531 408533620 745347790 456236390 688698061 936706589 16024792 728848219 274371624 712606416 673062451 967244726 982814499 122680995 793032468 835735817 558854937 723336388 314472366 852710502 487632138 84464729 328782351 642434764 670989236 670989236 818765463 279934670 679835608 281592029 510054002 291936722 505955 767133811 514840456 382309311 556159434 685541481 179309295 785091962 30949798 956366303 738510456 309532675 550992235 37576358 883687963 757761773 106775210 769335429 814122463 777183418 292972655 70906127 248271629 614309428 41737638 108931227 670989236 493710768 951741170 727942950 48521584 848403673 123038666 263686990 581152617 322355764 181546181 962066605 174880921 399349385 264848341 877926772 754619194 458279530 791549705 711073643 867144887 877074174 525161851 670989236 854147251 703945825 972681700 765023497 764118541 404571462 209543268 153450403 715838116 993634708 135460427 951527294 854755389 52850355 825782037 758711094 54266814 82803807 157569914 12270651 919959152 522967402 317401251 701994457 219596717 288201713 530364855 894685153 49667574 878955787 904826956 609253107 18605600 967283073 825095689 172332931 813109474 904635803 44710934 965625233 891752243 789560681 602697459 753334084 681154319 365023839 599555487 453581992 964863409 845682153 927878596 107258429 952160574 956942681 445297278 676175908 581748722 540083531 607584861 156095105 778931722 803517210 713869608 496731606 287905948 923780759 31794890 641171796 799785656 485783492 725443770 756512017 370791585 882909851 808253722 712836495 780049345 870857563 521295594 110451888 386400781 581784983 691013929 883944328 900982235 665709690 694997644 872648043 91748856 597473865 782011204 919139984 855943108 870873645 503065538 568621474 544095558 691322763 934715714 57400122 227764334 753146129 174110639 45261030 946266383 525268585 806208320 551261274 928367641 209500415 48763947 266246755 155497761 634230701 382684571 901406000 631242588 328438436 824871235 523866005 908506958 697877678 810421081 794852797 941791303 279549560 57005077 715680578 500054635 991834348 692359409 135908070 968489407 7496460 266038116 147170953 313517939 53591975 332744495 492187755 750091379 219356688 722743966 732097915 586543789 670989236 674787509 83922795 963984244 829836611 838189237 404979310 273093596 553089539 831059423 503888741 498843835 795847695 673098487 748818136 886337163 752006914 715436868 203813760 382949291 263770260 232363093 863796109 699182351 538784839 755681901 821274010 874417094 932712562 444182744 935169893 469557417 804084560 77234691 593068310 252656446 115880517 731599946 976272356 700765627 757081497 715152466 16600809 693472402 161580144 416489335 50396149 958083897 787190619 202053045 118940348 747345946 338550270 962277949 442154177 181564458 747257549 715674315 745076692 919278167 570086844 566245615 551259532 390926957 531991337 674089884 384508445 556617773 854363925 761180281 739536739 633349003 482906802 136563074 506234520 220556526 457644875 977684111 429361312 721226697 966737225 850639366 893968442 775087545 722206853 894610295 996797058 114511194 413431846 5831279 913228931 38296087 972861113 612163888 870861497 929131290 281333368 962454670 246074435 526086862 342067490 617763546 365606196 670989236 535844173 209522813 501677047 40020580 679294156 977492301 383551303 639389098 521685756 349992480 277459862 578025661 23748501 840970541 684107180 883483950 703451529 359041092 860236694 533763615 127134772 761758466 665114656 606051788 249193394 302840272 143209110 295493665 912923953 106858888 878774397 836680573 109851747 762990209 257544659 782513405 844226476 939190724 690055982 795772143 894409326 186086382 525625739 685318819 712130679 556059358 337611783 812962756 874187080 889712798 859006613 608104717 565504104 338275462 573178237 303467159 703426866 377196684 960212329 9608895 231889576 449099631 50497214 940117061 964226187 321681823 812822390 784549767 108780553 895394831 586963750 113261244 760595875 979350297 215405925 575784704 529639120 901467018 726798275 521522962 648296897 78458846 313971690 568419801 185551428 766333699 945712296 396930437 281282701 928668697 889125268 761252913 898534398 494550288 670989236 663035970 605658014 432659310 771367720 299309925 867037252 872577526 473858106 711505342 264246824 109471655 944215279 991139202 794438553 758049501 606057904 873706017 838271834 371924357 662190379 230340416 903662501 65941241 863326586 697042662 645645189 964425230 427284687 568414691 809393878 809427933 725066755 482838730 866448498 851448840 148303135 236514386 621402968 759510685 985075419 914401011 773275934 929593952 847593044 623425633 539207929 494871980 318377546 350616737 994728566 391263735 956611889 139498926 927912581 938468513 927177648 553176755 358707335 847249790 840676623 738014854 772505538 239515787 754680471 27254427 146604745 578466059 452086807 233107467 670989236 620961386 735127517 939905522 232362286 186088931 947904121 170098933 814114080 786243915 742149334 911021051 962541706 317353366 269943704 243461556 970719659 730023900 699093895 307042409 299557378 818429100 825846092 547353042 80794934 957915229 680789620 464014442 767092249 635911272 981719079 227105968 839414977 316123260 832522883 725923546 319059031 749716548 129921282 906598900 465215645 784003788 180296427 539627904 814117518 952866251 266181911 221318851 777017527 292481111 860007906 740621456 511115623 698493824 777692938 63133264 92033478 872989687 995482347 498611938 787544119 534238137 775542305 813262503 406840500 16135011 666910971 97587462 767446664 989115762 391890364 955809612 982441928 748262890 799364616 511446622 937754145 762145623 74733197 979261956 313952241 979309003 686929686 719865279 956883519 586378695 282228562 143705958 936781346 432564107 629419610 896473930 255787988 245017035 215506082 582439073 792144249 344672382 712894585 614912476 586423677 429090056 889639806 890964548 510525200 998504542 995408401 589188792 795482941 557677873 997719334 22100419 588498465 569474881 720573935 354962700 782814736 524723933 888631557 834435859 747784596 395437254 259484418 827488762 10581333 505972774 796672483 711543931 522448427 970010840 158796265 638721560 352283490 711295668 266972287 875863437 302627440 849186295 736784493 566029820 414639403 811525551 210704963 735784182 573386671 11766661 610772735 811196853 893093433 225254839 493961382 789366808 471043052 978730491 105667783 102224159 830141126 985112598 493016356 586811753 840681185 332554909 726077306 790227400 958144601 322233767 944864369 904788804 685070697 358807809 957402923 348922294 337215731 613765122 429836820 267296066 517836528 553937879 254724643 723920194 44173855 432062127 910609809 142657800 828535872 353021501 780920350 259500110 250090293 908495669 802753847 236500852 558447349 729958255 376737748 36157338 670989236 907941673 865815028 951896838 878520847 853124935 155706119 342096629 820352074 38131206 854528688 667801009 902025374 753914345 756933052 706766679 811177114 689955525 864577107 373780137 764075578 659862068 89574071 776285715 528751972 220514552 951053475 150166671 867770598 239910892 777324611 194828415 790092558 11585766 975156914 687978870 54642364 364326294 744598803 599901357 693949270 723006876 798264414 423068370 703506750 709724342 6072417 710653032 328308424 274238755 235842726 267406708 921837756 636561070 435195317 999329802 824798463 387559296 317393627 247571792 677304520 844894127 387061449 916189695 109891082 815041652 480948907 895609882 511012883 432736993 144771892 818262312 206681633 609117758 896106193 989398114 877236296 393504609 897669664 823164971 419138911 133844254 765407528 208569108 134781299 937012936 253150042 512097538 493252542 569061517 64334900 227592063 617987174 884748929 752189088 947026622 313643828 244373018 337047906 301269814 1980709 671652445 684926325 487915755 819551634 473934065 118097643 620996059 428183024 86678420 884148426 225706572 991015107 771113528 848503352 928042444 719175577 990025804 482893015 516961207 867361812 41297863 45356445 540995893 881449530 940089458 218044465 395409290 130287601 173168005 109957291 917709870 118090840 195417202 889886198 539129213 57738358 13962568 813753709 326885966 865433289 998575615 719775163 141239213 382932599 802021607 886524578 381203342 890288948 837104756 156100890 268248711 271783204 691288498 540602980 898600794 154469383 835412746 443243290 853417729 559217992 670989236 692929346 169077292 842971185 685153553 960086184 740040366 411594349 835027629 720386664 773595154 682238411 220722608 840092638 805140478 766617049 607637876 169979333 741617967 385263655 387805425 284441765 137887461 738268378 38402650 722646139 521584898 352823958 936661636 664907856 966278248 928610053 210398271 508434425 924321023 531664736 777949225 270530019 269060053 694813226 860075493 82618858 650276946 944495627 571549213 719850129 896496522 764840325 830971541 112754845 690165031 345906404 317283246 786451794 664958477 871842496 835875131 359508328 235575826 17795185 396357055 7574024 746423927 447583561 389439350 157831556 880581198 907542427 401007198 840610496 46997865 739305733 851690884 497574087 326845628 683336129 482322935 905643465 923119150 456090326 822755278 828338025 155755607 379126593 482214251 750868099 941305433 738520059 606574170 714618042 418984061 864466267 481429405 880554153 992823536 687407411 509234396 535196947 104945503 866763535 939132454 862500679 981241852 577205566 644579461 866099883 482194673 833952901 859648071 613232669 370496904 972488739 849244332 992286949 986754591 909656493 164200101 505241452 49720236 536785302 612779417 246071222 814942124 282857717 173274927 48437889 624324004 868503012 643015430 349859969 244926193 848249360 401807697 708172343 85987927 373702043 850709193 849784852 275717120 955675665 55695581 768342218 390276432 792181871 733053566 273569636 202660609 679636727 290247496 956842159 650996623 928629730 891326049 755606894 851772372 826010459 918687646 606339224 599358536 956943426 679091632 285522078 59423338 426864781 712467881 266043885 177458417 172114761 895930191 889493883 6850568 957909296 885661504 23328120 490225795 755272369 978856735 880006853 78949554 970498753 400600632 612558037 407078882 613250835 178564578 21110966 869839300 559159121 330629381 896841056 404236235 230385054 259497124 814181896 174355561 67381054 29053008 387141880 213666797 871362077 950314890 582001837 516071883 210381957 237944656 703624949 861334008 335754109 810070244 704196218 679172391 796252009 569741785 611868065 613840877 566582656 914043789 33776789 746298441 738171920 890254117 505876279 687356252 965692219 895146083 960057122 947592293 322112901 891062243 323287998 284746704 45256769 115689588 470986961 570016708 954300506 974442259 448829682 510470110 753433535 5479867 43751194 427511147 411801596 990065571 548043403 779964213 996616254 384146798 244448668 942774703 981493141 453883785 537309895 813484579 155236722 724383302 979091831 276037119 653487228 961606859 473795626 45459532 851462306 697512493 428562224 693156904 697025151 977461278 837857350 842279188 652036888 152381954 484277314 727583348 757219775 370316896 452072194 611866268 888308633 901789249 951172328 455402975 355425406 976923998 364054848 688733153 790521992 821537556 807800723 654486993 406491623 242416601 345282673 704271663 586895041 695033348 288577114 839433743 844791264 677748504 354060450 777077723 684021074 63911034 749474877 922978530 157234049 901950643 943917460 623891608 831893151 848506926 670989236 1567637 778750062 945837612 475061551 140311104 823810553 237062818 267025344 519595221 836022410 918095003 967495713 125935994 617596459 969252681 881524588 819883072 332063761 964480600 112901881 14254265 693893707 552862737 862917389 1266235 78908306 662676445 254660381 63902947 21726200 729619162 354385122 784749183 20625844 450092726 217819779 982741742 848528627 862879515 613881407 691504863 689441927 659039372 476868770 717597704 142095989 809744182 28400511 138941398 635338454 800007816 899245014 776173434 840059021 625366785 970404293 201283407 648610777 382168799 996106054 892045232 729621509 629547712 158327590 709756275 560732526 163348405 893583225 179669679 795855045 852046712 807670884 472293742 950576794 288621780 359530731 209386775 748743958 285206168 456048158 700983194 472403356 697845836 527042498 204735886 429861355 670989236 707423473 851731998 959351658 131770554 903936957 757387982 851225224 197590802 792060671 499999758 851286331 192552697 728460340 137969109 268966001 981111737 585545999 714180055 869280246 782415290 685487490 994976112 419076265 164338430 914014626 647833419 838945141 782345080 460466566 844996208 672528025 935425783 191478252 453794605 963015233 792485964 877178391 797779908 804002376 81046564 81598601 748351420 412255743 978947959 852074336 767694333 973347770 940606544 284161111 935545927 871671579 71627528 781474807 511759405 834137897 387665397 829411958 405097262 872725717 358267501 800688239 310295074 868428299 102109341 509706752 538840434 229916435 842190726 111549473 712189261 30832136 761067088 594905653 793384510 658509371 787510287 994002097 542175372 898201454 914186046 904846361 744968549 443226783 806735895 581454181 210455556 280404575 571266453 378473914 983529800 947717174 239881579 230890443 628399513 958198528 30413575 812257308 377919676 857750781 735681259 918565607 318084008 217684306 991058385 989371296 755920772 952417371 849286661 917106920 349750831 816007932 27177657 664876341 670989236 700268523 597706909 924592422 528505155 932890367 478455266 711798207 342007608 126178388 593294058 846679886 353776506 234740794 410134319 837123275 938010813 520409257 409942808 102609171 627508255 761033712 837595337 780962002 807882208 474397153 619943199 395360579 715173502 715951605 129781881 762292681 882465490 192306762 116281304 580446542 705950717 962302782 716376140 410730134 891609646 958308324 868757291 879445175 896208743 141466089 910876378 909836523 905594344 408114237 885555773 671675284 624493039 632971596 518873153 325357744 826219869 567024385 891734174 807525665 322629177 768411787 855050473 452635846 390573721 845885094 799994574 858530501 704594983 448252393 670989236 749817130 175426784 818254299 571261454 567771561 226338587 721325893 597122015 330726047 735481039 164896856 148941643 498106382 180825635 730873181 710093373 279000908 727390500 864668592 669763695 940572002 733919773 407930471 705848674 518966954 281473733 9358465 690498062 789055771 193188186 422978191 864785725 559506457 541169467 570623752 201846343 875534087 28836247 452187048 909121403 324674948 164061521 187483211 774294583 582379757 925472791 610748306 369100807 811922103 972490527 590464337 430194146 407302886 85328107 884747902 836878420 27821506 514228749 645448596 76318284 640114555 725827569 976108886 440982237 641465320 909924740 745160983 864657531 353435607 577345231 906017432 812914043 481929064 272711043 929158358 251639200 188294564 366392590 819831226 773001859 770399406 182795672 224347594 979289543 637116580 798983140 787675263 736703040 692423720 220737568 983437100 6778788 639043297 909906490 894618273 714751731 18248388 792702912 846330576 472528738 806321749 705319843 474618140 397296032 218211680 716072257 978834061 862427159 668929282 108547836 641918121 239846964 792855110 49693861 595832854 400435232 110956192 482259662 770660656 857827431 693887149 740254847 231997044 750847147 192025559 835323366 690918476 843475066 276397979 76711935 734520377 71974288 670989236 909132296 395988333 666565189 816517667 293659057 143371372 965463867 495364005 252325421 786752557 792910244 41880562 395967668 906080237 249527484 683270826 243155475 241457444 167397343 414190252 675976947 993003777 715656408 309078001 354105486 751026235 934360305 879030470 965296797 406432719 65682029 705333307 288556448 894196753 369393627 23801790 262182417 746845941 961050663 87540942 353396712 279161404 506383780 859946456 707229828 841777662 508612168 615841670 851010481 428141608 299643933 228376115 284620297 715426558 114800514 751521383 923844956 747321449 201196821 914068843 291423206 36675266 601274252 453018247 612791353 738466379 147135927 218497464 3403574 510823007 945739556 139598212 13609619 914165915 999955855 521332115 156344780 754591891 995728065 946708837 756758406 938447778 665955789 302503168 948272063 840606263 670989236 742969236 937513415 897611221 821967660 894137105 745479968 646907524 187402550 876138688 806917401 240114786 546528984 798666206 466843936 341587947 885414022 333126170 881994655 245755534 202026712 499479024 964354540 960678522 909337321 939866128 844252330 556130124 299413049 888653570 670051997 966991390 767549698 937450750 17797479 773658900 487312512 961178201 839991592 783528122 877296819 591465533 992183172 342627861 209556729 208091783 502525849 228424091 671487676 929081004 901425262 654287678 961413133 789729202 936303486 680460667 914460758 77534038 941954703 797779293 259968236 451374135 134645515 872549057 998186847 480304994 721877010 798061476 55581759 191966314 908151181 345282063 3101742 837024969 988412973 732238694 318618821 425511018 724425202 234572474 944466788 937468006 885956473 344235700 148191540 620224879 609434501 153365553 333424360 470939268 724757315 418803977 321415832 77071117 800921905 888061914 786357472 936394228 652305191 319630123 319434996 727240761 480040176 280343631 791493774 979569881 670989236 718032056 774982520 842900959 14949465 245788839 969902245 476575485 737938553 215055044 757759064 537640348 768463746 670989236 682302081 847100432 827324649 821601355 14738712 656521253 748693166 223645725 893837165 815603436 163784199 702179914 662881476 330179439 924647907 672821365 790805611 21097815 213325463 804816841 833855957 986702821 114736479 255319184 735646547 458035474 341675117 493411707 215200342 719709995 123568609 982024622 215363109 162867159 131499651 847798432 134307053 804502978 303871845 740849639 400473972 443894329 246122998 565044080 732566710 471213002 956775695 902602723 946429354 127636524 243952296 743548881 36409179 37357616 19607945 503142034 260827820 941091050 566094959 297782778 515928617 32357696 69053529 729660200 696278340 126719689 804307750 698720327 135707880 259926765 286141381 767768695 18627204 719692850 786491027 677147009 917599656 296565495 150715671 422359062 862104626 938882888 217257229 639412800 838183234 154872719 256057163 301192714 613202341 308224338 739336313 523257987 122557744 315193350 133793865 624451183 973154251 976283231 779199830 304293922 383223871 460049437 735290688 708370913 595317593 882570342 896467690 381720447 222253639 159012069 922298456 387750965 674200830 855333237 4501107 345907837 891007513 935849483 977320855 791343069 960117580 714119139 616320595 600381770 496654446 961448813 24603330 880307326 720407464 765039140 136412421 699371048 508213424 412761555 553179973 425054722 701568137 83456002 677107142 405967894 711164387 505503644 681181563 162728870 169184612 378146399 848205104 770490092 357570043 478536526 707038785 828907822 917207600 117220084 342416574 280973220 820962301 966178742 753071897 710635255 955103300 501261749 674496427 85660863 818638184 850359157 677993154 509669624 456463075 907298519 915074021 684345084 706911075 231154140 472507106 738756123 574196036 276668537 993699001 758982933 390982041 970173761 214344615 904189710 713692230 112940131 396120416 850556862 958513243 552034817 500545967 665936679 239649673 20233238 726930007 789323150 244388093 233155813 382577852 630024920 790238067 801784213 999946289 523617867 489188263 169416173 941062502 925151981 231008374 80042191 847425727 774448409 995502953 444206827 734424094 503436094 191799724 768520570 946138447 571758408 329770355 666375909 178845921 747647510 104022397 830566171 944852609 226783046 639752822 937477707 216300372 155893017 502561934 778467078 973143087 655134550 814970628 671836450 357596854 723109757 968584339 332862721 734850795 749268286 386414528 258075921 366768248 874078347 489704461 534817417 420387634 602730231 163199925 540165425 159485354 718111461 961989300 813876362 539894489 538903032 990250919 871218778 668356511 242413875 957311707 825352649 872127398 922770238 688748051 804104245 699138189 45237431 478726458 326740678 723465163 731165862 571941702 983402501 477138952 737501132 379230830 905449617 779114417 596196068 446953973 365290899 459780257 579101830 901034224 887935551 899944768 716158015 119409101 231150069 558020509 935305583 592688418 516356055 448090145 225468384 697662217 294137595 296888183 51615937 726247839 546821458 904521242 750740388 278253908 114400019 555782356 270741261 670989236 823710533 688679558 343536452 758324674 948189654 893211120 746713389 831740298 163918374 779535019 891018053 277505797 705139091 770170192 283662400 982577757 487906367 644781324 269339590 477108048 534883443 567575492 74552052 932785796 523427057 873155313 884416963 737075788 918398706 723770335 720386052 634627333 300644518 768153184 808507531 521421550 387916043 872218661 997234151 448122387 570971776 981482420 876352379 891789935 102755761 881210386 558736132 310995959 272129865 831180764 751716461 547120628 872805325 708771575 852725512 121195860 685187103 970250006 721197631 966481567 12320373 873489455 857524282 670989236 721305539 287189090 988780293 651304883 906113650 800148332 965418696 788552887 803672539 540568952 934062037 772783643 939896356 797464473 895115195 291008984 864838328 796654485 483523983 12848082 989294342 949752349 981540584 709477990 121935694 837275956 745426344 558878876 746120316 922354665 964451020 716450727 398701708 342490816 977048184 20321876 690043304 664897386 676331732 809877369 381465843 708591162 903268548 905870288 75373409 961447012 939306014 905951867 857101497 903870572 701713723 863910395 788404789 181255697 953778083 890093596 716306548 933304782 844277995 801123242 689998578 749872009 595811498 698555669 426755186 221094890 818124333 880952798 256693477 881487958 866115107 806385676 357335808 940057668 623348817 670989236 790453953 17425800 168428213 341254880 296359447 774619535 182114807 245948431 626960334 434410337 878065803 420717773 792288523 143604513 30958438 80296406 908345463 296230337 847358575 743535555 742488784 49572828 715614730 545317894 798104317 979422298 78921165 871006207 847554202 121879693 483439545 721951013 982119197 637415576 954765167 881402218 662692748 694692750 894878917 20909079 542314274 676949375 759676766 513632807 767051909 680081987 699834968 928357637 749516857 707997566 861746434 670989236 718738825 119607443 910678917 27459981 922715705 372983131 989417278 903002407 564684228 230530428 982365765 360024098 998473416 819648369 996217763 93006278 903035039 124311545 715993288 680781809 524976630 797540603 711935127 381466454 764135062 535414009 494474133 851117566 550429202 735747237 534429700 318119501 557837955 609340159 172162865 819894611 802767556 58879306 324252777 822753330 688253099 324134891 858621982 840202815 384964877 947881741 286036045 324544925 723648865 954126317 1579392 749690469 699439580 946457168 418832770 169671353 988626833 303759236 859088523 318937600 644238405 139219036 887801996 5596051 704233137 205049475 548911113 735638110 438955594 405895210 147243961 862505475 682968091 675960533 134359737 993363207 681687898 333042744 528094336 370956149 696212057 743446774 268628196 423742942 53258201 158478871 519958748 698084200 58634518 8631361 852197990 221511449 672914464 949157072 163689789 653392443 77264810 943314449 908396426 807203727 887977101 454274982 794300305 615750059 857846586 291573874 750896616 99865485 824289174 780526124 235597067 960702698 956249290 606119201 738989721 989126247 411206057 565778644 702527762 231621048 332992173 677852853 822831491 871788551 532881045 833973994 442528784 307143815 822154930 91839189 639503928 509047116 602873629 404718624 900355603 928947299 41145275 979960425 689680817 771879519 309208123 872171229 963412739 897412545 657254234 673320198 729925564 149733095 359593487 914910009 969231614 770829796 332636099 989099930 698876327 825185924 726818888 710514744 857491865 716043979 459589641 275061954 767582934 673040643 881383755 145507264 670989236 670989236 633134726 53699101 698425302 313963529 701294169 317474808 270703544 168546730 418471329 884436930 548718698 460652099 958691470 919517010 133771679 3449770 974424206 437698816 652169383 701486806 821285594 478669855 723773274 819957958 369128242 769555735 695745201 54379266 273119375 151730785 23792149 814487927 26328944 677927935 340203368 721749625 171043018 241198371 284077933 963582535 933482171 838259845 765407803 932711117 828140598 181076497 557445297 729001994 832248237 199903032 573318667 996120406 818458701 98409107 554204475 756548397 311794065 675312064 952618832 229161479 767066413 932577744 82671661 910401111 910493284 759004443 730883339 364441241 864697362 650161466 267530559 931551958 12461409 838829762 466677157 961880273 967904518 280958341 832342645 319966613 972791775 626626011 774062810 239421474 489317115 171219518 76422514 502859549 471962385 577340631 417171581 345801031 617327912 880113137 305947115 821456788 626634715 880555537 735248845 655077344 768913739 200690980 632811291 16583402 373602012 984162191 948545089 72932376 66263993 893595162 986007006 303093287 773965755 298941953 958082471 419507046 237123689 509261663 700202356 706846032 222899435 377022486 948464259 909970710 395322931 346006008 413249031 754940476 625678763 283033362 886019665 970454360 918788905 168332349 922407457 195402805 843945297 857948645 532797901 790982545 137492324 193429033 968902494 261519959 854325092 442360623 602289747 456898103 377057539 445261933 50145184 183956606 852519242 249784486 122677441 901727496 180147496 916722911 690599607 806541874 751697429 494723281 284386259 671394123 918939179 99562522 513232389 476690947 561911729 942775751 549638003 313321970 644129386 974228042 744372490 449492068 867517655 629724649 792283222 639309895 503808534 894567520 82640648 89077899 866932147 973272853 904860949 959655005 975163573 729878012 547905032 978509099 316066237 975650511 53409880 73282111 883117091 670989236 867454520 384382778 864144126 683647770 655311027 448526876 8550933 212957144 508123436 201990815 320226464 621676809 355361345 785664631 180554983 153068223 593082286 950639188 67699056 782976810 680390324 784293638 791569392 778934411 157848299 5157896 900552909 654596882 926969613 815670273 908771685 877724482 626612185 465730993 937001256 685435656 872882970 649839377 880417707 693186599 196009660 475298499 362818248 832651742 756712269 681864984 825185478 246185678 497567340 794454774 408714770 683952079 29299530 431529626 746973934 566661548 943821697 155177070 870442695 683996144 533271318 726375251 670295513 731870223 902122142 9531640 752329827 296278477 9081248 228972278 821262946 197768328 592482411 880823582 416897894 215742627 417162977 767744358 629868228 923566978 986024156 361187956 361161149 97004581 342764966 726836242 52492272 523754843 869513629 151632348 246504295 922466195 299664447 920200921 105493113 857069753 573542206 878494116 447052726 142535098 953076398 404695893 550446761 660621032 872637233 188079945 852552965 765197578 464920079 757422668 933393052 681326805 944442773 717976857 405457997 247117793 589639380 667021903 579321524 711691072 158781560 7133039 51064338 335324819 851702158 547875173 647617303 183107073 754494327 496236472 780464658 535238171 414339076 271151354 686589202 10842472 863533500 197497932 858282495 728056863 865229209 764475715 194754874 364161288 540044243 934717844 661595865 772485204 768731309 915917495 970160347 940929172 803954424 787525338 11880252 669815813 371132242 160222619 950643966 524985710 670989236 890465919 873271846 902766961 691729254 606403030 66773112 821149029 35461302 695163616 141106159 162862110 56623602 375982665 910486894 815041120 447340488 214480073 704854738 468410628 619712832 983373544 679007342 886761 391796266 329100265 13255833 918986974 17851418 582207388 900997356 439276881 871835859 998150946 749313352 667925825 719106937 747980375 808262779 674965656 609968183 996006414 911537987 857889835 452017890 949322112 775926401 530134938 718342520 969463202 365485696 674472710 585274334 468071615 353687854 742519020 932916668 37195039 508841696 809070661 750223259 261659423 697950946 315171330 74078488 728934353 686063107 731978244 508096518 427682317 821524705 275526635 894939448 623492776 946867452 728398622 492007144 173813820 997261713 257933670 17122564 178206048 686647329 650773640 935311241 425123522 252871364 403394712 27791323 474900355 247213875 926367517 201789861 428866033 360662517 555613706 698518367 418224017 505121146 909721134 822713072 957900077 670989236 64746364 261551493 897099961 734420666 175711248 795755110 186680022 110059608 880290278 83695682 119901432 745946497 973937037 680063271 919148881 670989236 110854788 426769731 907322327 933990659 470469477 200338518 521952255 451913859 934290618 167907283 975160472 823771581 910360591 238431551 837409343 723028685 92890931 526005291 358401674 972288719 824606550 723993384 536103229 860013931 696529495 865374349 212710882 822127348 694711583 918746203 389224735 888420180 738069772 895924792 362174444 827723650 423970802 916414222 541006217 822598835 884726011 218019119 842020460 287093476 79826308 649744986 689934136 493285540 961866462 723960322 47382266 673826438 485370026 884005645 976167799 238482660 780962844 85312639 207640932 441799710 769311070 693857555 315491458 474431049 911862710 502040665 706699534 846727477 928535311 994385657 709196424 670989236 929153929 259299679 895929728 900116481 160254229 899262032 597177507 861918939 154336054 425955480 31221799 880667031 740508680 89535548 984208981 763131342 745097845 853853331 670989236 956235528 378396761 228760130 502234613 637338397 43061890 835729487 522029546 897657448 859872766 991535143 662436559 816194618 660736836 24000308 235332691 944940716 560197499 257426637 996946073 844916577 643081962 162194981 874781098 625121599 813861397 255972837 773616316 544929922 821248837 812506153 859459097 879478030 900600203 704414806 779088072 493868587 887452386 995522936 939315166 741854520 151493441 361429415 694785857 752921931 172182606 270928553 670989236 842051649 757305226 892851506 492371440 644111958 340962669 777566221 205185587 401196085 565442435 551271106 808702648 685530055 120205069 863814740 690572633 927895462 512323211 833187574 4626611 478420909 981681245 245939714 824158398 468464178 912096262 26354143 464312973 973232481 294548844 380645978 803062735 772281344 732011373 586068709 928494005 703543610 463938241 650680451 810874166 940754886 940724591 816061457 699801777 787797165 185254970 892767799 327242497 402379544 884187668 783636606 940300938 886305335 191026348 352501883 953995411 875904368 921690748 664319862 830435920 121574899 679514059 217774677 685846814 370986510 673745256 474513641 203828709 113404493 939109508 802728371 796419889 790059001 749069692 400420669 938918989 781838547 433460649 253109012 937430669 94345147 838165338 461687576 716712795 395160336 295097828 122353952 690605707 657947005 820410044 328027049 667537947 951686254 607992804 25216852 779916094 871454380 7580846 123238304 921716751 955594093 697062489 146755409 931731736 994985058 789910746 830674465 983246949 230784809 88100150 455728807 770081529 36499386 44317305 970218372 859971224 746185138 787076467 297692990 673818269 172080989 925165844 712799433 755248044 698712719 493117519 338042489 581877812 871733418 651292374 356807776 761223483 707085561 356653700 889158476 996861780 852181370 868543809 807928886 748692423 763850343 934042831 533985774 980816385 651135677 713910822 874758558 514276111 343368855 496397770 442338666 923903668 752102499 775316804 689361386 450452381 972357866 917980822 904384328 119417706 27290424 456540046 779928027 912552308 903901881 354401277 80314893 89731448 778600426 226478885 637722710 501502914 277103493 962202539 583227657 982873182 5672695 670989236 473747151 80132753 811432678 877679434 888169643 992608218 711989416 194001029 25337720 897901350 709309145 977863879 736894682 116043981 72981291 471209954 247074707 75979938 408926372 855448335 630516159 932242448 275575188 331769092 107908190 135368581 610543168 439918055 405150827 79680001 725603765 439051874 951968214 402985557 197312110 319354597 746115335 808433075 747444764 743430625 800373834 731606179 290468160 700107947 956572037 455877493 245891622 411806862 837464572 475756206 789862553 773839735 340941277 703281213 510593468 179814157 617073285 634689953 694986280 818260175 342270188 200925531 816011250 786127494 395522791 500466599 910325791 763547505 938540348 174540812 69156819 791564935 513180637 938595915 773361397 337496208 21993113 651995616 241974604 145140039 594390430 785364767 933011836 913571482 413730449 597276174 941367825 698678894 178473973 241188535 858132386 971734207 786232287 912430143 938992449 670989236 725043176 555515201 806992390 848795729 927279602 457377220 811696196 26714411 487046666 991380580 670989236 917096674 371201827 392286004 720475027 720654914 654915644 437451444 726125817 953571035 797840939 66621364 837955651 670989236 773556111 695091626 82475961 79460594 320568330 148030937 362894622 884681183 656341103 628314822 369083324 974921859 779203000 900475937 695673051 591096232 156166950 742119378 795894077 867345289 678027224 969703088 103462352 967359998 170700581 683583521 670989236 782543527 838110870 169317056 127205689 152847651 716269689 610986751 827723529 2469344 131975815 130648976 990500027 736728624 795243796 922145528 229744439 970547789 549701481 501856092 725562593 679312429 598358820 787763212 732065371 257300939 108956839 172851925 557507679 751610069 173597453 929366060 982472241 505955014 720531967 970005248 314162700 16088499 784420910 209142706 811829547 143916504 926762068 702682824 724245594 444085990 433542355 97452271 211512687 67185893 905153020 886395646 643460470 563606779 369905555 117447173 889438961 501976028 807165614 212716458 766668446 673728109 142835975 406797292 121902928 275376358 643289169 694713215 48888192 787875222 796664609 954463179 299139987 962699594 741900596 76030628 965440298 670989236 615441713 767366975 506421591 455100737 528642132 135414760 607947399 775762137 517895890 500126832 906575033 207297305 680242482 487465299 92737265 632328850 316147862 821933839 372681377 79178612 818811253 818934853 773723718 662090181 602332867 569060676 550200478 57353324 951199463 173585740 375936468 683481324 418500326 937093011 576964128 662761367 926506777 794400005 493522291 712912141 407528598 66290509 679565537 189623490 135183041 670989236 839093410 301999176 478250396 178019259 274818008 964870738 259843790 376191791 290780823 751727048 876895137 483535061 972732985 911664228 622390217 479796067 488315851 908325608 613081986 158152346 691531257 479487244 892697810 366328991 343931259 79793565 334369151 605333558 819600731 983487632 156875258 910556328 929146957 727265118 484227987 728237458 850564815 979449352 572704713 970085586 880832493 254309428 872293756 954525137 701090576 755247994 895482699 217195734 790806169 432229912 264589402 203110285 550189945 405788776 604361061 974223745 793437690 802851164 666746898 975566931 27865677 917442549 256225362 524066730 787711796 781482018 8695760 508858373 789397081 922195691 517704545 118340264 457468999 864103078 812421235 885269026 720929625 877430304 675898933 890817586 929110395 585218604 495205850 984498410 675810793 623650822 473624406 780396500 223144231 819346134 563720957 396500484 759208176 328736202 378057407 819770489 880943720 391706100 530022048 329152439 93556109 590949491 670989236 197382827 838851159 901443793 248992858 432044897 518058442 749470232 840539468 713046076 608053736 704110381 559429965 926506418 617149201 458446800 670989236 139439335 318935458 822608579 162426255 288732083 438851092 504900905 847212542 930366653 875665033 130379932 276066083 223872124 410002255 887537801 434746036 405477122 873365389 663930613 986569694 87178073 990008825 840552906 325187505 784391565 673947137 670989236 736948600 965465050 532465458 859258178 946913245 838109209 224464450 825830738 995668341 22129508 863838517 324719331 731823994 839496850 788569909 330554407 623953451 465223491 412963081 746476313 500131740 868506407 771538000 719114744 880892610 813346794 729389551 692976008 744642961 476442679 670989236 750712735 959088273 533633493 478358250 861372536 306528846 730953960 858004443 674621739 795122402 553151477 515034431 408577809 157497410 941875193 416398943 393436947 768917456 672384424 846751505 963555399 538143391 858974666 131873562 670989236 66560763 954569332 385795003 845808334 676414371 334978207 920381450 972269773 735316465 247568387 602701654 810439128 444704077 860199532 378082679 862157895 531607882 598629513 213435734 157267494 289634583 87732051 179705274 559437748 231245479 779107584 546904109 715040157 708044005 852474308 471013105 422584280 982815812 720343719 811228814 969831385 166727824 997710730 663192338 282325387 994253442 752497343 473688727 444543110 547706366 881611304 387479079 39133548 227373654 796561050 994964297 525782729 631390606 896851398 264884702 27037829 721501645 948289854 866399592 782851276 747267342 987562827 975719228 838988162 800851434 379148831 707698634 184495474 849605909 670173274 284020389 427489667 871691410 921854345 773899048 752703412 762163245 169832981 872411503 226928467 467452043 827081901 596335244 835120250 946221439 759128560 575495645 983414369 933761331 723231029 721291787 457917764 730036323 734995096 851579985 515507379 391837139 416163086 954412025 830414008 624066128 837424673 943666619 244840845 123333479 256363677 289605439 270290374 595484893 862751901 673576755 346233418 791599398 970068395 752106462 758251791 793441994 853670104 199494358 946817805 845764228 792181396 36570950 721468490 921602603 572283629 545089702 773558043 251241189 287797869 830159617 595074358 180590066 969022647 880555052 812531132 759906506 467496866 778389147 623133402 424671698 776320384 875361837 187434418 842850012 866478374 275510962 880146808 554559925 808703523 923576641 463884283 975999617 14196002 892558872 949646815 774967887 822534963 480078993 682300745 142082926 995335961 875676210 810687312 927550333 880632754 218632998 72149479 728843296 15145916 430921225 670485058 294472140 673574448 118313763 60420556 804271443 773517291 980488897 373884558 134475935 8884608 857198599 962657440 877472960 435512153 701066503 314550055 534541988 443563355 218170138 985771063 731765157 278727800 589627876 692789827 485862872 788464119 888577491 358054231 137404963 671798931 561365849 86839455 803897346 915817706 922931198 54390779 268726462 422496996 999294228 39004873 334764904 867107194 762226169 763287244 135084205 720497865 515255429 530968676 517186584 850901201 784508787 260401845 45658561 305400791 283896668 320479817 853411124 788670971 922660334 711240255 740140211 674064346 827709984 971781118 295722161 624058610 672920826 784415128 459883379 380641620 901890282 341079957 869757427 916533426 223312653 843763823 903273177 800278007 378035451 782681264 83940015 383872593 28844680 808445291 116764875 702599664 840831892 645158017 955354036 649607933 141254518 503280675 848977565 118266420 740196819 915437245 975965901 779856287 240610159 390355241 250998052 69339856 721693096 53121169 592917654 220934535 874665503 885041869 222047778 670989236 749334249 602653555 793656992 73876621 510044923 801909313 269506252 509519792 820071778 757733454 700239391 820287682 720108705 793308098 154253972 55793077 911666592 691343704 979701739 998828092 50594962 206632322 879077814 961175988 139653184 801429937 970825293 160411141 475218094 679061895 781781356 757306275 201564048 779984649 393000397 265593416 701130882 137154377 652742337 882460007 127403878 402605360 199146742 657714059 220200211 34710289 47573216 416801892 315805128 690884735 48299990 209797448 634142299 705723977 830318781 996101508 749034534 900479526 266236601 758572039 242397959 769289457 805132329 652368901 33158348 438512446 719506362 541064838 966502142 35019923 490254124 985551156 511808675 149068922 777318945 679233607 988974732 51893071 595300702 631377186 738078564 104140082 786914273 634206850 123494456 111626539 31223959 774729137 381547304 655323123 822785681 401319546 710206055 102275816 693784720 811657806 806820622 306869273 797921326 11247121 260435037 184839537 531877138 741768443 267117706 791432750 813738613 742705931 575486211 425994375 919085214 600417366 848802584 25202880 896903575 223052543 71844128 577534191 697698756 269869325 603042015 982018691 358739241 8368781 807495210 719942845 377775173 389893977 582882665 108654236 699628651 430799776 584427106 985922644 959430952 823333585 522857527 989527401 743532854 148366230 906285121 999076268 62856806 510623436 441503007 783410510 938347606 644429186 112956352 453107050 742534777 810519437 885783227 63652312 979683624 774756334 848401916 297147284 896101095 705690478 909689262 33733630 791131706 652138787 596030128 396398084 170073936 824491915 635360133 818189051 859966639 235218720 854195143 620990317 532306169 851011834 437399785 776774661 368800411 397586323 670989236 17404161 879702917 740793344 835286051 814998500 951928951 11330962 190747211 725532033 683591832 654745702 925758715 643975582 525658503 907394460 793677957 883177967 739246252 433806231 201381188 474586151 930042804 802447451 690437247 720230689 456185025 145408031 698004882 974578374 670989236 35797504 670989236 793758546 747480199 992530636 363837498 843845233 328944231 861982390 146469890 889402151 271364551 943754035 485917240 508551533 432654271 367854064 307180913 358930380 863624127 342933804 951338767 934176709 851216358 184662711 711573534 974909327 564640631 125494494 654549772 697061419 763371976 499475933 580825278 680139849 515973603 818181179 825540616 392883197 679622680 228021448 970366444 977642293 945766632 397445082 588647054 544045947 824176891 326121917 290635155 810018145 573303310 916747009 736796116 943813501 720508928 684292267 687678495 195512734 170442075 614984676 713922901 983375742 626365321 158483712 362752431 861195068 742011960 992077719 764858153 274525014 632417937 460503729 683851544 640602035 667216508 124205849 306736103 680177374 975253110 883443081 214780118 181472604 335769709 489403202 650225492 52786573 733028617 784028254 936046824 163983948 93142587 654603224 967451537 757936962 116035762 120630834 232695936 17083366 957000971 224364145 958020128 926668479 628378426 224129957 927738162 832085584 810752233 188561760 433904724 185909988 522838914 676650833 887979433 449568743 873140336 35855347 983520992 605433783 53095472 739431920 74205287 877685850 739545463 973920393 788050633 805494575 977109725 165460854 127907120 160829045 642165084 279211884 839678024 147999265 886085259 394893902 71842273 987201990 32558271 312125216 681948508 466460794 421029180 955341644 742033996 812165732 806603856 870930161 299030949 522301504 265844366 682579278 749494032 732251367 673132972 104939705 918015462 338316913 804665884 469251911 936977091 643874052 691608785 670989236 734463080 462994392 149242934 653129955 673406810 64225192 520382180 858980722 865821082 888384943 710648519 268186453 394673103 887985182 474266469 675540079 838608255 533661284 434859389 569730471 417645313 768790624 978783039 658404910 782703764 717461393 89590468 858383704 224483126 942950292 943274660 770180884 494876594 670989236 929080421 538652288 491169825 968757472 162521972 834294375 670989236 798482594 984815099 258656233 869387383 543367298 768617484 385068980 323288367 729869397 914328848 263422458 859035928 781491966 723624285 512160625 492666613 738595812 251182720 477688672 695879458 576111070 971533992 739090244 914085945 478430574 575273362 338179653 964842034 543915255 735301870 569752386 585137639 325556266 497324585 739803392 786542279 578021186 997232181 108565282 284556060 768172849 879694496 244959423 385452113 950498342 562672434 797889171 824073166 676733408 467867321 901777530 864511404 493105042 929429989 984154285 340983325 883945876 621222330 782490366 511419574 623176784 755695304 861698533 107602364 369076167 220778132 208587986 841635205 323946974 232143345 433142939 591472165 158935965 677908793 895173062 806187646 914394053 201149836 791911827 632399071 327736438 298296325 779843404 781842430 694729329 320922327 384790858 101390816 944284887 252308695 905064058 783072522 982700326 816491785 720884400 789046289 479933430 173950550 59201647 681108323 109350105 991239794 343002055 897531499 858752204 539329344 746078356 843589055 77818290 725683885 167733094 875176656 440212141 826560982 865115358 281837058 814226300 250380545 90074684 727859782 679388668 887913502 357808271 891285838 933442519 883398926 996153322 853492731 106048394 90092759 546907726 28376640 87777001 776381353 542810375 970169076 372984751 953849334 766992052 403390140 517395651 840603906 715083366 670989236 3263052 957811561 887650577 991236474 903402462 670989236 416742038 72887649 512384112 765393160 366544069 949654738 79213040 726417277 142243300 540759645 11068345 669024893 878883964 933233171 561253555 591779697 679618722 773367604 710252284 491272631 854511416 847460628 844606324 9450481 794651853 975422451 982017169 872605173 739367079 913102612 727000460 251146061 956737789 121293934 605903710 691051502 752608559 822834742 441464296 928100296 467086523 799390489 442822780 996379675 739994325 832040272 194365903 627233859 360916673 320566604 242255654 737841298 607566395 302113551 347232245 508597872 219195318 745851376 845609452 139077146 514517910 670536771 619221153 998479781 91325375 466915291 738544930 450134466 526847646 956615145 180203645 853528161 851622589 410756351 562240466 287566445 866669509 526840804 912803724 993821668 802837092 890576418 956812410 798876424 697685385 992772108 169343799 365677374 193126388 75039418 21127773 378602625 264853929 388629903 265771075 654926854 998950879 420666464 825152011 627747062 670989236 791323613 775415971 141916198 481865773 868772296 792353171 294312881 385375063 805713175 488856762 847780121 52352808 95793305 787436529 593162248 677975162 266732281 974494149 482953440 521608025 919996781 776261747 534590354 329358337 380818418 870872133 847381063 57471998 852650466 537559242 847496788 658269693 928152491 710531099 532959301 142923051 993610152 834428297 890557371 117632324 14078508 38561061 571598638 381797544 750842955 141393783 18936616 553454379 236233997 957292603 517047172 46242291 225368223 503432644 208396974 596626813 755244901 279669990 544276608 85452377 764476426 200319398 79187807 336522656 725403762 775308862 220195053 136606070 723866383 670989236 946388585 826791013 518709654 821517680 25221998 877923724 886703687 678676840 670989236 837626251 107443389 716620429 463776513 555171372 277173222 970104674 894464731 769493861 681270916 160487219 857062543 298346878 435469585 201355522 163527061 218857804 889858256 530668694 717255390 865950626 759030919 319702861 760370956 863196455 986242864 22243543 980764947 465720848 680105034 322141461 572774592 958394865 418072192 702127313 434637051 676664082 323894600 711744664 442128753 809932236 654471511 452327432 40326542 631930948 711659002 471958970 590930728 643598895 984428086 780779877 868511063 400189156 591278841 678052907 280534064 86607459 907314047 69399311 11673925 512879676 712013179 311907943 97586994 961245255 771199029 735297176 859119640 742277211 785414606 670989236 713608256 735242262 965338063 183882258 950338788 127765200 436613493 840639185 983302858 120932970 7841242 38608066 67005189 413259655 189383010 996981904 670989236 841738824 856488264 876275895 76065423 400000408 944720454 893038949 850186320 628493290 376464238 634231422 409292008 922336588 426294165 661459546 675564088 969336364 566132649 995147999 352145142 735809285 50271925 761939789 361405644 67050066 350675214 850223980 829965967 640059410 708867733 629160698 791442018 801027519 787110133 793889462 829776112 434795551 723180589 942991168 630027809 384858618 629840916 603475269 175748213 957668370 734081619 786781845 723331801 893517327 76000859 644262541 919665147 919645945 832039689 902981936 495111862 899408903 468398634 974098384 16994165 339045646 329879803 427832328 206462614 744647318 222723222 541590339 775419383 866779306 182199050 632496744 684635278 39012279 934297897 871251337 668590014 743431615 894956232 574650753 387990229 655851437 861273106 767142464 241597347 827446204 119895546 400798313 42389292 136081918 888814374 993907611 715434723 572223554 660894643 114343907 754582209 896850490 714169714 382857891 160016598 580272419 821638650 562726367 792160557 677053996 465055815 934248139 32770985 991245674 934306512 993694795 819616738 377631024 492320481 927920070 973309548 192202211 834977434 825039335 798610768 750007528 695099155 954697337 700419475 707399529 855309194 464633725 930737830 508893072 318225273 854668522 647167381 754044503 941437857 603880731 668907603 971122855 481598953 796945689 930727707 621547142 248526779 174864087 840880234 730021399 575912247 175763611 332103854 973075759 11494500 777342175 80725469 785962238 686518228 958488591 377832188 571590424 363727573 671108124 399510743 832371818 743564461 733326256 671554262 660400598 307597761 230209438 878070377 110660214 876212979 443617964 107850633 765706751 933693521 864398926 126187972 303523831 614466414 426272579 637884076 742024317 692129289 882176437 996959537 944181283 884853189 409697094 757798276 818493378 820532493 884606827 731508495 471011052 169989509 568348641 683840233 552149659 190769972 20497661 338033623 737154924 893913034 718759157 765012722 838841767 482587375 168671645 187384942 516449585 563348183 140183752 947908602 319804838 177807634 984428911 199582898 653664333 838667660 805566851 750857214 679475071 893448134 122813771 820122669 699055678 504988375 828113523 344046310 723111971 671626335 253362657 261466493 547618792 780736064 963580123 672744849 793134734 68745503 878992172 482151067 705196283 537268203 549607926 627210121 672641658 236989968 802215850 127073368 732325710 344510786 759148864 590957216 595297556 762839174 813649313 725140192 565287535 526539712 582611294 63332478 797727017 801449741 878481034 687662926 451049863 775477793 24173130 847963457 960011203 934661665 536068413 767638711 826160149 58854739 402488998 579052904 550073702 484511516 789296156 802515756 49131324 775813999 661871784 879716381 415098110 595754127 162208433 910669707 823343077 107058898 688251999 669547170 795870843 791979748 534197123 466860726 89079700 370400935 771019627 926153391 330145024 222870484 710236915 475031005 504606128 46274715 525502347 957171240 889931594 553373251 154841955 586388804 433731654 778543222 860326535 105193625 685957025 662134019 702359484 421070537 887150247 865573453 990089479 554512257 916601596 645426999 565599097 235432492 112586687 654910903 95433249 588148156 998738466 952297542 816211915 112563344 950896650 425804146 423802315 406657038 265855373 743863988 836011560 407370503 939202006 713819147 709054353 27693484 910620423 865418029 250985020 794486198 932673350 332515591 520174018 649731798 7035463 992699582 276085542 832654930 171873508 849543667 160601460 186737938 698661893 839808905 299708865 761238272 370508803 883059114 359298616 864413972 749010403 445617631 244196213 636741799 959318942 551109844 835933720 15454888 960398752 809769740 550560993 98384927 502616923 156899222 621708773 597370432 965550254 938958060 348319784 339336836 106369444 911272650 289910623 713247001 29850158 785086185 129300351 457445406 823379381 801864319 380665697 906910299 859491912 939809016 943691308 833107885 447767214 986527987 851415157 955680980 98726481 735072118 351881538 934498033 592559198 729599275 793274928 329457505 613125192 642675314 711725003 778942262 975674694 410774106 137375965 691325539 883926966 394906820 935191258 59851765 352778512 992659600 742537047 598814752 390528798 950521170 402965652 809267630 633011150 437262585 39729705 759119429 866547614 486746770 799743903 282722224 436912225 964630216 452857777 959941350 688323709 771410483 791478812 846737797 821773598 935801180 243107254 736335701 855597818 272211640 728910651 772392461 460579999 217671661 710832329 248550138 191762600 188729044 382960188 815284719 974877468 793186331 681829798 430901239 189344728 595441779 633536967 769959095 50207265 675996658 618063976 32352622 923375737 156172353 770403509 566746026 686144938 878567732 747700903 575428782 867408390 484615821 653482000 140954377 904612313 920106680 353651662 740510468 500821406 12377403 564675567 730967936 998750206 450339806 791865541 780553046 649369370 876090997 716006217 205738099 766844210 868174146 969900185 578046186 900406032 115027007 870507248 488469470 655547316 990598751 188445817 67940840 751615283 853024733 441464048 680878672 670989236 717521199 876494140 524915493 60521098 494023966 705310020 853178668 946785840 839318430 110904262 491261711 53403287 201249549 852140327 69772907 381249059 305057763 973976285 846877363 13958786 43919278 768418379 609971387 941532622 981240867 290943386 370090705 379884334 875343708 800066078 130796196 802877780 724612879 329814792 559167965 573365363 674620839 805747602 840746846 883639059 354578097 194116499 363309313 386727346 125719658 524633003 958784076 92095606 322089143 866304329 555233877 660353061 148554751 927752650 280902780 96874609 643269857 236832813 449290299 659640361 839657220 254364450 207013190 899457257 294030039 287400580 949030748 357030688 709907189 949515746 672689066 101033416 483168647 37474491 973744992 312515554 910872565 893570955 965946798 463035897 827989139 883930236 861210845 926034712 799114492 393076903 886398236 741709992 964817232 898484410 725191557 400333225 869815276 809684694 803536423 940256688 844079192 982856982 758045334 436931510 792724312 345680354 561716530 811364902 534979745 341635015 890786144 586041650 381235906 349575229 997190794 998079975 779080192 32496588 238792705 752857164 648101641 538991360 854529042 256061342 794478464 802447251 515569672 235605118 405586409 132687493 753181257 337609787 995430523 280780101 676563616 375331586 977572046 190128928 715111198 691865864 892133108 183391232 422622695 975415510 729864653 491578409 876273879 507041106 838822585 445990762 110968178 850403667 949612573 283035806 867643700 50964257 932378524 923023089 648120107 625550919 683544185 470564985 777835824 790252908 437601097 693458785 798117154 924417184 766673550 123431816 849957742 403763211 699534897 56279710 123279669 195874213 511327716 186696352 478800635 928455920 690630920 556858291 849048021 456513879 778332003 157635113 515757709 471518771 190187855 306735748 445074838 821762597 925834611 248591264 950818858 867999207 480680140 625158928 772687966 680545021 257359412 812341247 746135314 899017768 567001337 787850464 152617197 187486556 199239109 524333868 882239966 297748059 592394217 607976600 533922687 558356268 43716615 704544255 628796758 773715611 73492848 825391212 929326263 909443302 387638523 758048217 909710635 294488789 415052957 677363663 949416778 562569399 944394411 192662395 212617821 666913205 963781324 706856061 945055721 941513471 738661221 724592848 127071663 514599078 929721313 670989236 589639325 848433777 575602647 715407063 578307824 131167981 688756806 329089905 272627309 319944535 144487277 599001359 799085645 675480377 702744971 32231992 867560468 774451820 961857050 466901223 243672872 855030474 191381166 78065378 416979762 80842830 45223016 976651715 921623643 446274226 751443571 693910359 833631680 741044399 429312292 943776183 731653021 626155472 638546956 631337336 392417494 75528640 142413317 362199000 719296013 798486932 904008375 830221790 710356306 338042574 937648928 334284991 165353212 996067567 246614013 639924029 447490289 291605737 615847697 546719910 670989236 933208695 680004692 659938140 535633450 557326118 66659480 248539427 857047 936305940 940149608 415355813 820087494 853833839 18902060 798353321 312393501 128656344 896918157 278635979 920816527 12655965 774568390 858756455 902853915 980815340 991435395 693507358 669974217 901200988 538438850 606789577 934380727 885073529 727725459 933911263 687354225 451311998 178013760 59229717 826373996 469523511 422881653 784173123 936104103 960259811 317807570 26130103 969649684 757894443 356125592 13870059 739288059 763954375 431656824 913026949 465974943 934492236 387165629 715959064 409409362 899080582 158451480 990364094 369662432 278090870 842178639 153818958 707015669 403871520 946338713 932324192 815896360 76494721 582298868 178512974 798670064 709714921 621731773 674842961 922634096 655596101 287917133 787834582 226559680 674967201 995043603 718079875 113906383 200448298 834613428 736465875 459202022 303155325 757273565 279968816 731255073 684209330 363030409 850331795 94540511 945055667 430036560 613941837 257711646 878625722 780543552 968040575 336213945 616746579 915501909 657199656 186167282 193136131 937844133 935198495 931055848 803921089 991037527 670989236 49929524 438472118 656133570 425937435 223656584 657874861 782913614 880659805 120165814 717376970 925507329 936416766 547638147 743502879 987081891 59184405 248498399 995303059 631037136 3707441 603273473 978635071 690367686 872491060 69752811 953194587 871520039 547966179 845161970 999429982 206719809 146529149 894021477 968909411 592600617 995444429 478639973 865613283 544556799 630851581 125688796 285168010 352325754 787393568 258027150 221364888 995881357 309098358 316158635 773556477 830245518 967906050 324849758 900538370 311152209 983072089 713080756 557059867 506137940 693013799 141793287 295036853 579229853 270001729 847958721 2336783 583282066 546902845 767007450 586468012 403500737 16221628 688277652 842692210 686156266 727080677 701966522 114288507 699403066 882515662 892523088 171256651 31968175 639333588 223819717 921522223 876555415 678873760 907162969 296318998 870404180 550256197 125090887 927779182 148072258 795789805 840952716 286163792 378422677 299442139 958478233 618054652 793940369 930568813 309299373 479270476 831547524 892047538 767633831 910435460 616168144 232490850 796371480 782009807 639690471 98714406 916926507 992117438 782026768 801255194 370490524 967397076 571829872 880981459 909865705 566012893 731919091 78484051 229220751 694027885 402850826 302065596 781605251 270563477 128136899 613755425 692776928 781770598 838478080 911727622 686632100 990338797 455976104 265310177 38268107 638351435 165855670 557368854 824596948 602040762 568213880 696977804 82868813 920679849 433409359 892494095 962852048 975256383 279379626 753115433 426685415 766256312 801379662 948940793 950145346 19481324 451401119 443409071 834201867 666211577 481119185 924165155 704611703 415774350 715843206 717739729 67844217 990118235 463154596 366602605 180513488 698531277 195920930 805844489 708065185 727650758 551332400 921868969 670989236 225679463 509240292 693672939 180409405 133683832 628909469 439576109 712717310 819765999 806309694 6301198 309682416 500815693 83289833 675711416 318747875 433656231 420037075 609844711 688080878 675801633 289164085 246408746 381006919 988435615 491805469 894072673 752535763 890048574 972351123 885202345 625173204 618563173 624474444 398371373 914763123 43579956 729462275 863961937 833493488 786337418 934282943 734948333 690909817 778088159 122417379 931612807 613131998 758781347 871646554 328545373 217388011 841293634 33584086 744653408 913673844 722384233 549835158 34736986 711089243 713802998 39892479 871671966 296035989 614770899 949167381 200264401 388891721 901378166 265369181 536346485 670989236 690875866 543176390 961970306 339140212 965730336 271037248 212987907 897446490 703756411 550380251 697079108 249745052 854774455 985472507 522786498 753074977 523545882 581636233 703523607 255814575 108891567 925986811 743540349 589007275 612314272 311813701 990200928 314334302 933455328 377131331 994013146 157544543 932766932 325117844 949857314 761827502 202378466 809841247 925698757 194369577 971236400 415656326 542805616 362735780 655193020 292259923 524151418 891016819 47730703 432833960 807945154 975431567 860387804 860221139 619313127 803933784 209111154 997097864 458551319 434897280 434394540 991367648 619382948 496844202 969941684 29402652 961513416 267974914 476961515 663261780 841912358 780267880 787212243 814104930 752397618 555526944 859085674 943144320 990332077 46717575 419918734 817573436 684661396 70709710 38590393 159941832 444277292 772967181 722825665 226041964 120406815 203705771 397966600 401267628 870262510 397930025 215736658 741683192 360574830 383052677 590031628 705166984 754397007 721817642 914263472 618231827 895208323 785193563 217474147 909678593 721744127 885512840 822780999 100233379 318050593 105404210 908261963 263000625 694457828 161657688 544726493 914012045 944667916 688907456 366051967 952496982 58448252 650356432 289841982 409459574 784086179 612462758 948936322 670989236 705108322 140929988 568624755 701043421 912171329 499556346 28299263 709653654 977541441 556545303 53469479 79904675 644908166 355584843 405126186 894695053 990626354 427087418 961187014 224629367 682901125 993044058 742477587 872169504 547660379 802744515 495868002 768694169 385894940 478433251 914621711 9249955 690537706 282511742 603054294 827538852 547197433 429154800 684024163 701828397 152056464 410898840 631849989 706245159 802446730 461170435 20851009 485107179 82124734 399259576 553171966 336220188 239491564 435266727 104472481 309065521 855813120 766800379 916036731 699393585 980170033 708028328 742039797 965355054 568358194 607982436 967619999 887745635 106821649 586434786 937645840 979213789 841768483 756551142 762320779 747116733 91981923 881573905 333063630 262263120 691891485 856188659 805470770 490901898 286330315 803638105 727155512 113915918 797350327 483998517 782755313 890931756 680401495 507828562 16219110 608947291 838001924 257339181 370642861 909429081 918474494 819270700 911777062 696254988 821691613 834452462 779836555 966149235 942219131 384248524 882941520 713108070 400515017 702740883 946553704 784505695 273870919 278925340 231733749 790252304 576331379 659793439 782536663 718012009 987811482 749833687 686434261 723487927 54810384 936454979 100594382 639715487 968403152 869998139 52311880 929504873 960380057 797066349 703401569 418491446 100526477 63858954 463717487 673408920 210733960 838772314 800210872 531632437 76370940 947777597 198546197 632347469 755545020 239438341 427669471 140744683 379056926 328711502 729271528 39291412 527096253 179658441 806588047 710181474 384306528 97948885 526667826 678841533 320333797 784655761 908946229 829176441 367840597 637179927 723582688 151107036 872141457 159834325 237226588 87905739 950849095 338871747 457047702 312100419 800709881 849609637 494363173 725934866 222297466 993213298 121837354 239806830 675150226 615979743 381556206 200674240 931196060 487856978 846917026 601372481 713234861 139448804 260221845 542444348 823500328 408999475 278532073 981899910 942646564 771754033 714231488 975780595 11873559 639613010 326220230 792720281 758543833 687441631 670989236 573523479 670989236 820648869 906829452 744975160 143602270 202678110 288260189 378616331 182569383 463786949 895496889 744414033 646787630 479178292 670989236 696978416 27574765 240353805 904896144 368865494 241545773 992993206 664341622 285270400 416386807 861585908 922443483 994202955 168799235 839626904 719170879 145840997 59371501 222495180 181949389 661019721 477857936 16357699 335563809 435262691 323276390 845354620 534346967 859031506 100020898 687245386 939749074 604993994 786527992 210250297 533730072 560391187 541584239 947297968 840768167 924888617 101537535 26870107 628349071 772262792 920677345 890560744 670989236 4950550 807620516 38851739 811529252 134226919 920450771 505793988 392418255 649131927 805540661 826844756 626048832 827654143 883835462 365283660 489189358 912117576 710966980 564184261 983187879 721166852 130970974 683865507 494600500 222620855 70285077 553602073 979610311 283181822 931711146 563771409 791576879 850545403 820811295 331285470 34147453 677401644 929590360 629347189 424725920 138823946 829764245 835010794 599052222 833099511 827131594 721556188 268905394 243508986 820043937 106749467 707029003 796346003 761175319 291561762 777979848 792138192 657801971 717534849 708988263 952079650 782434385 683270771 16179030 978272999 213817353 880269631 800996432 674493834 16097542 31186368 959537062 920195023 626877804 741751610 242282528 573275734 321703710 921291536 605862026 723874153 349881265 827851771 822710615 99010274 622358988 782939412 881541188 152905501 231234077 859227619 771561850 4868632 81194593 769903919 508967491 327670607 285817111 346189763 896194419 867907501 736321064 973380775 703183052 208559919 293793272 88352666 876494209 655794002 677411983 731243104 824413374 346458350 787802925 426135405 670989236 90751534 232311281 175419328 59718342 386647677 689411378 952495925 63930522 730018926 302279935 731070151 6734778 784709675 896774353 578679815 687379515 200700696 824652776 353486155 27378439 602340984 604904798 367283124 822010083 83325118 647572021 317913261 682640101 331914968 918455789 215947878 787806005 555085823 353046553 268499334 871851857 205488265 661249821 143219316 749546184 691454614 766699087 874698855 98390014 983175938 916800413 719907028 284461372 870846489 838267222 787112627 969952443 476941972 602119384 469726392 288850863 169190780 769719805 517129648 49519527 440744824 104084250 795832433 809944607 113029997 550999121 884990947 869784876 328740523 24358122 67589768 942618677 859676158 915048202 627314523 414700109 886120023 525765009 339656362 703051883 129384315 867154979 892888076 735404164 83488417 813183983 702860897 777167979 702001361 560287243 783130796 810636744 494254501 855514775 557497097 877175475 95954583 674526634 595246328 870169816 779935305 189252115 509450406 718569369 521140245 679376557 479214575 549039833 954812062 908890146 488537711 71355261 176617971 965491805 460837383 684248889 823420468 751485981 740651566 71426885 814449823 786687529 11778305 965655241 773434101 67168972 833241379 720122812 567633444 957238908 424005326 159591866 385106019 686635961 104688706 816656623 752835693 670989236 746615980 80060661 897306309 188781356 804544704 246979911 467047949 278902083 781357862 351901996 610429550 519477667 872598300 384505539 995724264 359705671 902902758 735408657 920242830 431933847 119030583 896684572 979371088 496417798 698248054 312497998 844885640 607144827 675897211 642036283 926035158 743027177 558910299 486321408 864765821 861268582 912779145 337475761 914808309 473704485 645776904 984730728 191984630 654788228 298225058 999885076 294307047 635748651 645683996 618505199 798120800 272095652 790080154 229676653 785758006 6820079 61524664 805575759 419633429 185944989 473545888 862805704 851505212 240848261 216884629 670433696 762022279 380390914 145795747 368694371 807344737 583103419 658144477 558170778 835773155 748331852 365509457 334599359 390853130 261623914 395142164 957911246 208700341 747797069 840515962 397841859 837045419 352847153 704095278 160725490 338472708 1913854 913512338 465703963 530061853 135100539 982535795 734820259 305422863 909120370 9082085 879618948 511588026 884787776 834032682 927674625 676416725 818816003 631162565 583757259 763641380 260573565 556120274 896887844 625379992 857002298 784778296 898602573 670989236 918855606 785634676 551259148 260219417 811560149 238147850 202151314 970015165 949495043 182393775 677287406 476549588 138700319 676924834 813391249 812418758 99764394 795362826 935833972 898481959 45066523 193815410 574590563 82824337 912352373 876327612 192117730 60607718 970179604 869973154 941896829 962736435 799804743 933990194 209766077 701908222 961352196 825142190 48683659 462256926 78714997 309702147 64425428 53274253 38665626 546135631 938396706 366938098 864070269 83813984 883857798 746167103 526848129 165656301 801789830 423867148 889135503 499723770 810718515 834783813 605905570 417913948 823806881 450316913 453657269 945219332 820254265 643178725 575257316 78503016 943891674 510950634 52920227 727338955 867244443 519607938 715844369 623275935 750959509 52494012 927905584 986421588 910907353 831139295 890482327 879816102 484157773 178768614 9262241 790066031 347601160 935386873 916949950 826533897 898296622 565086353 345019917 908338918 55936179 877483088 828135134 837658047 9438463 994160460 708390847 608722119 199520439 840669836 589166849 187915282 536564425 337075609 813263181 329691324 308683601 765764630 731641549 637630262 979659983 612720589 988693292 136755844 693489356 514191410 12000705 307247838 327592139 939040335 890699941 678756821 520324482 328463192 799241224 766048001 773615619 497427725 650550698 252228215 759573789 397790581 389971676 11577691 219879623 567844384 291560645 885849974 994178118 912360466 776967518 772358711 366033596 219314560 209496557 753440652 694766148 262169404 407735548 754318806 574255227 807000017 326958097 673519692 657186090 983846788 575486407 510775251 811157702 969839794 538240677 463813575 994760516 728100614 77075389 910782602 953645669 75745676 614225809 600055237 125400321 566677109 956903373 447709833 106195615 985875153 942747706 892088473 681452294 580062211 927862389 873270384 383421844 324257231 246982054 698317804 773920003 866302854 391840209 973488352 893253104 412816334 273925653 391882922 476220297 650732689 133427571 366730690 350017622 697030355 781140527 421724062 599501943 401415737 598546114 828647571 990608858 981099434 345447498 950817577 711038876 787773781 622496434 312828334 894530278 323649249 560166883 951633706 161135324 184609639 895196435 803532132 710452054 28190781 376600823 917582962 968652530 192507792 761822769 811925403 22146472 887458268 386649113 152183762 374876771 675234611 285441705 741272336 837911745 174164784 666600986 824636526 353947520 788080197 278421949 993677899 987317492 15483523 747624226 306199958 676687893 768014943 429662284 719770819 979525962 170967498 631290121 805327224 820452283 737040664 18991763 876276352 923243272 963092651 15409367 982423044 836624485 933806390 999808230 40707779 428229482 861385146 96301912 680151237 79939797 158982699 482516926 623371293 31084468 899459225 434159374 782492795 729753950 781271654 974492533 691001808 117150493 759605538 960814937 252791033 125937492 287970081 326622060 704234432 487595104 832619840 929293021 546415238 844955885 739088646 849298788 590567647 939347192 844658643 713214555 967201431 59044416 711009055 233156402 813506113 444673703 411380190 105709286 938349924 687632504 768920025 982989127 911207530 147872240 792240674 146922590 732330091 37814874 860012538 887310321 915280212 885381766 220006511 978271888 677256512 777172285 649589951 453952440 878593515 915762165 977748284 41212762 931781744 929516216 130404271 661131253 57516382 82366676 235803632 138902626 680894685 323956899 713501826 164188863 690653191 819325337 973234399 455897959 838608811 888614034 801719838 942326501 871397257 865602291 300543819 321998655 722342019 901300515 262400518 180491872 906318000 524124784 254675560 178007695 945435077 255774650 415186891 948740851 852015760 297955302 253345176 553204819 190350947 932445362 845623200 637879256 896333711 827672237 897872771 677205004 801331207 808693141 425383382 971128248 865280348 997235164 769038440 981362489 434208313 816934684 592923200 608728708 763306364 742217464 462034458 713468034 884582002 861611342 739926656 838777975 777994486 910915046 628020606 863931353 429806405 592191965 607395729 503546314 729494237 350024245 996624960 359841907 706744510 576980125 812962398 395846920 772394268 79746754 91546148 992263051 893783704 208101697 714444910 926947921 910955231 191545188 540004388 674252820 732141470 237790948 693516486 376802414 725655643 959990282 909203894 936308871 227097304 700471860 503723068 948620213 919767024 215043431 654518503 61757417 966234507 704239802 117053089 757363964 947169235 46949076 8806665 931346505 552009760 698671412 39281590 420560117 237568323 244374859 295907183 801608478 727918092 525841700 128515630 928554245 514847478 786424837 280525456 591321104 226319119 591828085 144536477 772232277 935835609 647852473 355734358 748583703 792192421 986568031 617218725 225637948 989084192 734816242 313260827 183611327 947339900 142928437 199413458 873875616 825799249 332442041 993212009 805558363 327832692 354236172 418004359 66512500 967352073 682613333 190796953 865684587 10855359 820766968 249756051 463515196 673122459 89495410 985912617 742781472 830026460 798172541 707809271 507837457 369990097 462739826 802712348 660670237 927609944 268943127 412775580 575465486 550885583 957542066 887028577 561758733 251116912 172920038 912473175 884045305 903844873 914347344 365202633 958269330 703599664 700446893 418242164 55557054 867159842 386882635 960923491 281511641 281326660 782589176 795707790 383851778 670989236 794462917 765059520 685236966 986419489 167485895 874026909 121050061 155766907 318011620 966077806 825423176 91395826 796994861 794445930 771905988 517420321 837153252 717516436 922647852 877577903 7851310 112848498 28040564 959370178 905229733 387330848 273861173 278280237 337994170 621188272 942580895 932947626 672369348 190194497 790580282 923090992 342752385 529124293 349375888 143847735 892339427 408579027 758425930 936951057 968040305 972127886 168837001 959319247 53112788 984247903 691794441 668943023 481869034 462321110 200594522 186259434 214541042 883039692 265795081 981258956 854025426 23251755 987330223 938073040 753606764 381134586 774412522 849762311 612676636 919755103 215897854 936013325 314717152 707459402 957224877 799956358 100282487 69108208 962265150 155377153 642323094 136854789 989552593 486997942 978057518 308844344 586012644 747652413 982250470 819530961 358431209 891936423 6552977 10627477 998578318 314867307 250680323 735443965 533370605 35390046 608434181 903715190 954826763 302565870 501109186 15644374 961589881 829371698 400349049 808699019 723637387 859088496 487822456 569134122 903019462 825782674 494830345 123149098 837780791 839276103 992950922 447152892 863632476 762465471 113339657 632535899 497367979 949838159 926655880 473194457 252479862 348777351 874758930 876230960 258921952 931141778 269134896 722204374 291061396 236327064 618419330 85609853 267473422 225433703 566341400 605603548 719191272 952752722 884745016 777600573 864880628 84126360 922655337 522753223 437782037 762684163 744547644 915187501 56500581 878692673 856381079 511102021 78694134 71588752 335126498 991444863 964218351 417263644 235347599 229062264 754813211 947009968 876278610 807243741 790387152 120125050 256952773 142431793 660965278 859985882 953646555 395550254 465675906 328110686 550779793 893782196 534756791 748823074 876002024 924866014 708414796 983017143 103775558 171956592 776379131 16902583 674009462 896454295 162227867 656066403 743153961 278471902 877955948 11484848 17114606 890800892 402484404 710398145 969231008 332825549 796588615 765931868 856794201 557286448 954386910 615715116 454190371 661428355 503500812 526954254 629823487 466438098 587817831 705745703 6782013 766537152 902997284 970952291 382839258 715407365 678371283 816898306 859725268 462472755 865798318 585498297 692507466 852130911 772976587 866114221 821732654 373472180 672210734 989065652 661406211 318058184 420610257 305260722 878920940 931262318 77436556 7352535 610930191 998777387 449902898 976268686 650025302 972239881 414464000 666718782 610100008 225934126 947168561 899524212 868743871 455386704 568279042 224112487 934373112 102871530 555603987 732305883 832842596 459450604 756426083 699622928 361208442 276967393 450669108 568692355 259376839 177746921 138665147 580231728 259348677 687554312 75508438 77569937 245191692 102121789 958030142 721047556 159012544 58639771 864239679 977524630 307129637 110136085 595297713 695462084 351610149 8392111 427360971 221910096 577830966 868039878 884977029 732863355 572856987 123180246 787303732 679267119 670989236 400810361 142095339 655039496 571166838 794421599 609530493 339687767 335015395 897213566 976147153 163533719 480202785 781115662 487990069 715228213 865966850 784285168 919643904 14065864 331691711 567928254 225521043 146736308 606010264 46280975 341842934 709578839 898114584 305148623 855053442 696052538 714395230 481645121 851019525 88489025 571148663 848543755 705058992 751392048 737376114 284254935 816314260 146565619 486648993 910379179 646296614 725170081 754457024 938751909 453740396 7669822 232964108 780115423 715983489 855167330 464997564 658852996 406703515 156805116 182376872 620821334 928993634 560090442 676477354 654189319 829250019 866618446 552550654 792047570 865120813 738168422 935911835 369563858 812336009 656813252 297911577 348411601 621466435 9959915 158296498 629841249 748872344 48244613 586830974 877148280 438172883 101739391 581816113 890469932 319419243 796530178 670979876 366247821 763532177 777015510 757860082 741658791 300351676 37109500 853789888 489338039 314495121 935579556 879323262 186829412 700191472 486909738 960762642 529636917 719049291 471850963 899284982 177902415 905422990 270222383 240144707 827154104 940034486 542429161 356747997 585918648 636109226 664776407 511177937 829852660 456375965 144526612 676275005 147736464 985113564 621209281 171968511 307843429 166656385 273262699 108211776 48935700 119044702 793823137 832266224 859445302 453951913 91536128 701829526 670989236 918342441 10091891 892163026 714102966 327215377 797002909 791830348 674704410 808628731 72345680 552101405 301332612 702408267 723097590 696345691 248566764 817078142 165971057 745595491 76423211 734083319 670989236 991535131 775976820 948132099 974426693 728969756 676082821 322354651 903766470 841816233 307170382 830660843 955688743 47836195 31953808 383316692 796734511 322686662 725606847 729032454 56185267 644790156 218475269 487785126 144050988 11679029 99414750 766194761 175436992 126712091 81921302 181934514 61714448 685626978 869987365 670989236 220644667 996176642 644630387 776459071 594043838 691474887 910260596 193940237 723390173 597564005 343762876 469789090 747025775 530332382 248252543 717318099 244684136 741329768 71453604 935132972 131189588 504892391 235076066 352395553 686892624 903976470 749879680 674515109 664910977 909301791 730481387 780987343 372583559 282126457 66447123 444995679 780145399 295078267 861529904 367785914 204975380 59062098 822399149 105132705 292263019 806352794 239027424 866431294 636865009 934324206 841790125 592801574 819387403 860106978 195046734 908906914 821217168 451152870 404660186 238110025 828551228 469692345 901488504 237530775 997404092 656356096 796428734 725751411 772598055 655603229 518582159 799052468 254686399 315035398 960499447 397776865 45415077 186400037 587611592 350071748 925920339 498416191 577722549 474242366 213967119 383512180 538466618 919164252 486763744 786813341 371683937 992447011 63462615 253597908 534760772 752410471 526532468 779646063 216710601 685262933 390625255 933971217 239051821 998660077 306090984 98752239 21769975 234061578 982282089 693222926 386076279 407736865 920290202 112669578 753321278 588013090 979548024 356531845 881475674 944649722 670989236 312140760 929895556 143199715 794405901 51947105 39773042 670989236 909641954 938545693 860726158 85990725 386405689 873792750 624043031 741973662 32718077 952991934 233263242 158152982 223291783 714833498 907471597 465653092 888423637 768288721 529656037 53763855 694459426 626316905 850054342 720137679 837947785 961716132 45638411 804280508 571889695 566784260 830572046 648010650 392269725 673641289 742351357 732385686 67122233 935497733 842607400 782748057 787106112 594691596 302419555 5700945 264157107 125422981 155604558 753310605 433800052 540737064 930713973 711455660 802414800 670989236 452113888 915300252 987422421 45439245 954248608 201551718 390364464 927818846 186242670 424225758 981166142 345402975 73618337 891706782 322974364 846344103 356339741 643138343 97627621 778200480 794615752 530071650 5490744 868664424 838336266 429354507 574253208 735718477 966487716 673892825 644152212 72936584 570390013 778522038 506228082 806213131 644387473 4093931 892531559 278092830 831228535 317212950 462173941 383758874 307452899 881062611 641120217 691673768 830504834 504221646 912092937 993694206 918863575 801245362 646447445 518407653 721928152 772720010 958282604 788169364 640050683 732739436 962136952 299474330 988722289 659492313 364073378 886371276 180257011 560769283 73769056 602042536 959124991 971593560 524343205 360834354 481016796 215106772 483272027 470137957 740505045 547968006 603206641 784504790 588540221 60121021 350842764 801254417 138164441 596211036 902099901 537623883 666403297 817676330 690655664 157240450 574984981 819692756 382265009 270827269 143036065 101191149 371191735 294503441 5889225 312445479 810570528 805783179 657865692 821815807 946689667 289260516 992315491 190091829 802717482 970200506 756837684 665543850 681012088 452572765 834191450 64268692 234144761 102723054 474364477 671965063 867633627 459722605 692720851 903195669 855470387 146122990 236238279 728786499 801576411 877907514 303784444 324218272 815001150 901823363 718126644 670989236 46479978 894549071 233137775 743934035 806839333 667857178 573926593 808514303 450000311 874513775 724847754 445154724 889563821 790615528 825399677 860331704 165154074 347071303 536434722 852918708 902570071 494622621 789398222 694056213 784488133 661472275 975101639 528842594 704834601 730733640 717484735 886850036 556712754 230027877 317496990 106579178 934971458 106966416 544370291 791667144 888751980 735276057 745325970 979724471 225504466 349984203 48751864 881185081 856060246 324224711 957566249 296643842 920771481 269962949 696029997 61176370 823839051 771003945 69721469 274346687 801920104 919742727 440663761 886265326 717476512 606217944 904633663 906188901 826415264 598938566 815599226 892105617 761711961 885904082 958020354 87626623 48494602 997449563 321539780 329964448 584904655 439818174 848002496 925631347 630257086 99040086 205587284 858440785 317768946 754829313 172928610 214488989 274799214 278606792 696728184 362535305 118536514 644125813 241247702 217049661 708483140 472249249 978465405 925786337 553210084 737945461 811940856 718062943 501068740 789698681 391768145 818903286 474479016 820209927 766080154 499268919 252402379 2660789 419118103 804612362 66412876 82848894 471826113 584987770 835113711 818985699 631222630 861906246 809871910 348895547 88909222 240484734 516309162 355801032 902770681 503510355 370002514 883424830 670989236 561764737 448366184 704367710 981490802 42133664 670989236 40529135 887582985 793321058 179814961 917610526 249179498 482579346 295877425 583108262 406964696 996297669 613045374 657716687 467243091 266181540 137546046 798116024 587653379 417187871 965229472 286024051 104860411 768987150 170646864 674139162 19698446 914882375 235246561 858589724 5085579 715670835 475148264 727312840 590226024 991725069 901814828 965651510 851783502 387224747 975296707 763696091 954395952 353600154 790937743 472858048 384002783 449505987 331006459 124781952 962662186 164843744 797612100 737030896 794776881 900644143 868793893 829284722 972460207 334906869 640704528 828711655 594100377 232382243 738818391 644554810 377611106 218833738 541173578 502062863 487419116 943985321 887917424 417398501 856838489 88005880 846302443 88148956 514583095 135819901 358078225 867592484 114187659 456961568 846701545 931826725 522653897 998376694 720078340 694920413 930591920 423170540 376876102 714634342 712502028 873674668 518038677 277890092 670989236 104484468 499859795 840683520 260266725 767868281 986355534 788735431 978169543 962131073 961084434 273394936 670989236 817182106 100150173 681772204 350731690 704135539 21153372 829429894 582924984 147237921 943728608 953761300 669778877 804492566 391241674 88769732 853295493 993652379 735840941 133679422 503402105 183653471 663952587 527894586 744752223 888940429 701457556 639255306 833489382 938236663 933078353 945483651 810664589 226126563 663609984 696672905 362559137 174427956 965911820 763421182 607998803 471643021 946854858 758419257 899958203 884101030 554969324 868305694 872288730 758968403 629213893 611828699 670989236 204922919 270955630 87834604 713566422 989520088 438589315 852349302 880247895 891623283 245268960 881904950 919729545 793057788 869135536 881781304 821823264 490770038 287123930 692543337 290265044 500757968 790682166 392979695 542209517 846011924 953988537 827249785 852707503 590092399 472642888 711351798 479430323 988171034 883804471 940367237 647226101 658116968 932770466 528694514 784443660 104045145 887397971 282366400 279461288 757146066 396574245 709964045 910746588 321144614 591360987 659228226 235314082 589821130 297130764 154379189 378620091 456975901 739821150 82216515 191629351 905914982 957372392 957037265 740461620 60773149 912381090 464987286 826312955 617724534 806565429 741446659 119287193 12317431 712654678 435884354 84594594 265807513 834577397 699192608 108272556 524038441 295341891 259013927 866812938 934341237 823280898 935581113 443657385 320159640 968780074 755021929 992920337 868533716 678479654 456775482 746072014 945693628 719145660 759174177 23580057 28025255 503316757 142645082 878853159 724666900 750179208 316385617 111816684 926373181 162559064 664736216 825889288 970430707 768866632 903772395 223243208 825783031 626132866 582439008 16247213 545250089 70156758 568473183 131283051 980687597 753979868 961976949 875383169 738501052 967395953 206141004 968329254 707862718 198516181 643767563 915607857 999082588 762800630 670989236 741092873 619000266 480549427 902770391 318803151 573516193 890041535 907822094 590673263 764211984 160510166 753963887 522615272 814739529 520347873 466513305 970474100 88639418 797856641 847116698 737333609 744712284 911921101 966127965 107180670 503156017 236195870 58709060 104609101 670989236 65557745 880649935 711992052 974110044 750825008 421837743 752851267 951574708 870012065 469937412 47588827 251522599 481904107 728748641 920334322 580448860 670989236 631836977 975267186 219347068 28460502 862018408 733625657 542202413 223246647 517663606 927194215 226416160 245036602 4714334 583044375 837839289 77829099 921621764 434542565 541678622 115643143 27372295 874640813 77306616 746028365 755842347 286178176 628901678 718878965 662513198 595918860 825508165 962547957 677252685 457284862 795396283 706795215 29915480 720899404 279807870 776713175 927428268 617351291 585639651 208810376 958145619 968899390 497199520 329569334 311260021 488460926 692651535 431300024 444477440 499756024 979972367 890417600 793346379 775618415 881231820 684214354 678151668 200846518 801334640 265971278 523409262 187657597 799869577 258999747 484370500 936066011 562470930 580377750 832971339 566050527 698565121 754695792 808381603 895315722 176305497 112972610 750629317 29635031 295893631 680969951 697923500 126824395 688954324 237732252 729843234 988077524 954492339 994708544 767001913 954926591 685926266 939440002 549958219 436153770 365488071 271016904 6262529 747688331 138508200 771189244 932921154 65801016 918746765 885854339 734923104 952668338 710043994 877359378 983043738 196441189 497374659 931548353 653697873 829150396 843058450 912463050 455816750 24708562 903720647 421559035 656316635 243383130 716861886 927260067 664517935 995153189 611767586 318699541 74050180 727022856 782884947 145387410 118799416 496273655 794066553 622024120 330370972 631047867 29789281 967408614 95521353 930465069 13996636 27294016 349174145 576305877 762533991 566983104 841972520 306254880 876649868 787452546 361375748 851352401 219452258 855133524 666350811 922199868 666999354 755177216 949865990 939687469 976303794 871677163 933860229 880623825 673224516 120362529 862031983 900657285 865651428 562198748 779306029 713850949 704456926 111328461 189268021 717983665 418028558 858984394 708203685 431755193 810366463 172890964 356257193 442255153 980966109 860334474 931908898 130623951 168722655 704562272 480972830 695740606 272111547 367014671 778668380 297382521 507177975 691192814 800264122 406514059 785142790 496161134 104267346 283672872 973242174 365539253 605608490 709732941 585621405 380078006 65610075 600154798 170266027 156690504 499923805 115541642 884265703 790017045 895841365 407887005 918050934 560001225 468572115 912097982 971733401 526549474 767886374 305095848 640461832 12759068 668120729 694379221 329818623 4585135 539203165 515095834 958327244 970973815 369581365 955138572 359390074 620969280 407695716 926506538 69147940 26725254 370740446 906362510 979536225 779032 126309238 343480817 39299528 916521875 398115925 564434562 729449081 797746085 119197572 126449318 900440528 662499282 14991110 954732330 606940806 346450683 214530854 451148029 553237222 792254457 712487599 670989236 332980794 188710931 127819919 503707487 955022821 157015440 869918621 193109290 375899493 938682792 232260305 969919702 753185088 60243785 431733326 942415765 346266505 730843048 495871707 118058717 625669492 71610359 788662490 459825089 801536155 681766918 487717660 484666529 30995839 596850979 77245428 167435434 871300223 90120464 437233577 963208249 348080656 765081152 30506 660091095 195925680 933901356 972744790 54348624 30375867 274753292 749833287 27098258 238270074 888295261 475011017 819852726 200244878 452435519 459303728 242004833 906726430 983531433 853425726 149493706 960771835 9703067 53698688 454818238 940755232 414689890 940273016 787249581 452534289 202127580 838381931 659158596 310127357 554403421 943814446 646428729 842245013 370837779 689781825 681719755 532236136 682055380 792633238 234221061 194598791 368146092 801124148 899348060 81636758 573677628 785279969 913573030 970872615 800260992 262111363 953025802 594095803 435125730 739053649 517044288 686586138 387340872 634917671 131834508 970442573 306017471 405488031 12487557 723385496 317095240 901727543 157247572 801494083 869786595 310642636 11176454 967647959 66758986 550177947 508024000 387566762 101163288 912088288 173455833 383521010 321790436 362252819 637550729 945041321 610736942 949072821 460067884 951971747 684829004 320461060 505942874 47282045 20863793 352335350 462949373 564444450 264487828 357051124 761475308 710084465 191643101 757050014 770816054 778457383 695498362 947587123 397204812 789530033 698498350 937088863 988938044 493136641 268778672 129387127 260210181 403816941 832877603 959968867 195349330 928365707 353591249 741641748 811735313 486817858 321561265 470262006 184039611 623703016 472713905 586992813 112341121 937712616 945237774 266899919 817901100 860288645 719228209 763127538 956134481 440377680 941093551 982356947 804273826 676821838 786903303 814359422 897107031 444093641 822319373 782508831 344699060 930002106 554533040 594761376 670989236 703911774 366603305 503152448 512785963 617377256 68743866 711618817 635155771 909581420 904322756 272027050 612970408 500406120 995350327 888688350 910009075 375881359 458138882 140648355 42011173 464924456 207438773 230040090 523144516 986518402 119610001 747471798 581044590 658634227 847519004 578648637 653975717 896547548 243077567 365568507 997281162 811366537 26875691 268531594 214353452 775070926 172226030 192101335 938412106 321341730 34014779 887696549 394724647 864331051 324228970 831555976 977660641 994266042 182824171 57099398 396638364 315477786 805928017 415540229 155013604 962733761 257983765 694093067 606897757 616534688 398199584 698040299 465472177 817972859 853147899 777366930 314764168 900336992 468099878 437269859 224190985 829672620 525115627 391794369 607056626 964630282 105900898 858505801 116871044 941086819 92762004 575344323 942761571 551856247 703191551 997994123 806091792 670989236 819227926 590649953 328272823 495628181 158599956 672876496 22360804 985407098 977695324 695691301 616641919 670989236 946373350 824131104 838225457 214390080 990474321 710575343 640074398 452339818 670989236 73704772 251587763 776249298 287580258 732842386 755280592 413886206 828977367 21860364 871938317 954524267 997647227 876465136 325886211 809219928 642769099 272644792 179320498 388642627 461274430 541394790 928743166 365475705 734234938 704599635 532841871 612722681 100483734 806742271 684987168 673400715 225252326 760943047 113841833 708420819 273910149 957223948 644144554 272464163 735262495 873260792 608804280 235672957 72075934 384244933 250649614 881737683 22270379 127300674 948006466 888667498 946234363 816990606 690863448 981847972 863605969 770678387 908737894 802022362 792011363 863284869 638538971 651079841 397073671 714529115 121986650 671135453 804821206 689001558 734195428 506418391 180682500 785816065 922993481 94530349 857382485 388803831 697375625 106423358 363979592 672584374 916613460 396827271 927944551 348035120 360771737 936663691 903170038 945733479 222500058 112945376 278325727 182380125 947447425 329593566 688563077 877857417 674871167 922675379 781024702 714911586 334968561 411933523 543971037 952444511 960958150 333782200 146692834 884881088 827490580 113452933 73819817 734703239 549049261 776172551 830036365 429985817 540270768 807321568 447771185 344814450 808977624 766789095 535677055 582565868 807599259 614890070 484877041 636163221 587410491 937921645 755825436 436503635 787078056 728223432 826500034 559735823 299113230 949833621 702306690 734551497 79495695 933883457 319289666 172746515 904555479 331881715 840023724 280515048 985622304 986750042 262832502 778044289 190619231 253844175 438972627 734154893 108797798 429658625 849105082 198622903 682635804 932756849 763219971 696559363 218015554 135915371 696050212 807039572 260578610 866035949 930581549 134902656 703647675 614232717 859156857 278192433 654331394 911654149 264143632 185926372 764330853 900267416 775679037 946077856 709744753 430019139 222052217 910454489 632506439 427673772 332692024 154547749 864621558 711047022 897665293 755872735 719579196 141970927 685863748 745877778 376935965 153777218 122760365 790149796 41227026 860814951 907580506 562165156 787347969 235382037 797401818 391229694 739978959 842089409 643009307 633289431 525409970 822933887 868048979 4983694 919736341 962728602 525626711 186337286 286311066 934035447 682689885 41187094 231128404 814717799 31801541 934655381 867837983 774192803 244097317 9236923 849285603 744756370 285662737 936927093 918723076 621553581 552276218 541589085 789119678 716201590 515199350 114327778 843438175 911668601 733872662 408183238 720615329 778351482 907344414 702679806 966436132 299245609 474627517 232316922 860627067 199324540 919705227 588027831 871178118 333380555 855688492 330338253 830928878 741644579 240977425 157100276 288157655 671468274 728658275 630783481 766993026 944648633 858890502 999240265 446035090 950848155 609244548 791672286 956978978 685771540 914077318 124307808 759726538 983559768 497651190 672417246 100111519 611401035 720109208 820254877 750168458 169925827 860726010 142348663 133252819 478354641 930188095 854064916 251191668 800391590 971536665 695924921 889561077 179392034 642119155 370618787 837210796 953698711 150279787 583069734 330230283 542440837 146716126 757652501 823006402 169965465 929771460 292898134 269038252 968162903 639899869 943293737 954432583 560323186 468155072 721244380 962252131 994068010 968291607 859789795 796921391 750686898 884547640 553893804 832677061 832971818 625086329 893880913 620891102 784395438 120930641 666807713 298778285 523641542 493103225 727846250 132060056 850888805 645605928 893921119 42058119 892640549 212246767 111813626 550026026 333271009 790456938 975637241 469163775 479880824 708951344 472774844 271403000 712641995 863389572 470416639 32377145 349145079 315567955 853173117 673408843 973340306 783445772 600979991 804709115 566319250 682272982 90122234 205480381 651255903 763797079 873029990 61216759 40552662 717108015 431873375 129163566 670989236 743755140 950943669 55177610 670989236 736572789 706149057 912815119 160993872 754333238 252813113 609514086 516276974 388040337 33666831 861795426 714005293 897625112 503351431 76136065 993485144 889825751 53106319 620230058 696736123 400509180 725196582 961431223 63559105 892507600 505483619 729382977 231664410 98414123 980330631 894393796 263080225 696351718 865621033 330024342 874592093 85856759 811825780 78851052 783851888 266145504 29289399 796085483 58353098 687843525 670989236 674914841 670989236 910722269 596783473 801738405 321463347 289447603 676320677 892140662 655635580 571205977 487539630 947228892 996010096 37924111 981523441 971015450 57773141 248780559 518038881 526745475 968033612 465268398 690299511 879941137 863022556 812642021 360388964 288482644 33204289 925453307 922967807 446779765 136499262 913257379 826015263 441272293 330744196 194101248 630629637 93814434 164200668 52488695 187570355 739825366 320635649 868914141 783172664 385615616 14264562 779339885 604074295 941305001 39824669 461906397 891693387 337559012 898525055 420135551 727178325 475122733 510088362 791258595 955051570 938691848 979836374 920854367 797824701 910299413 101500648 194119267 627222889 75771006 954627671 697368886 713760161 287077546 788929142 440914875 807706575 943614465 735213702 993208169 76233696 907653933 663965923 249658668 136458272 994558677 837681368 924043730 670989236 838893376 752426824 962423589 88050608 388266459 495172987 333303368 763788959 135080144 986863290 584835153 658194278 408271093 816017925 138873570 678837667 746874617 670989236 574647785 490143954 488886190 84032063 181404278 8218473 486422284 214599527 765521253 87696474 500260223 778154905 907680579 583169331 634799831 820896520 673496996 441804206 200602425 493032162 466730998 52534591 594830760 670989236 870632118 222235818 321238887 332811685 786097495 28704940 760741522 700007994 314257867 833791922 691864653 593131652 817718913 967490202 336612496 803300203 990992836 987853098 920169505 400584803 31913521 966313880 816124688 6823041 718413362 160083807 772293569 703174786 797082966 860414904 110801031 440756499 982600212 702431003 809766871 836616987 435576108 890971351 813960402 157912135 849095897 645042237 773223313 486612737 926221894 737065448 831726635 760430513 533248251 148709970 456631981 450409412 414795153 926411076 902785171 754692302 697018641 782053560 870267490 911368887 800187933 910836105 899062504 385169228 650917994 746208398 452071125 148847745 855805554 232150206 557147908 324625144 976243741 119125446 702655016 311109667 542085571 690262350 967126768 67629431 269710991 975066376 713008830 293291636 681691861 453692147 821673090 773659417 680782975 697765030 994948967 74069769 66499295 119038268 641032179 291920693 154368599 207100154 217596588 551781808 714536502 217346676 101898894 951037348 213089520 55979793 395906029 956831389 226157860 751085932 527800681 80748684 910047258 49073262 136417026 886961948 971717480 987040560 838749340 953865344 3616144 241138692 987743421 17910621 285495986 558712532 852431952 502322762 948448041 866310191 830908783 962913233 273694190 240389956 103481752 658125744 738307939 984093232 719918285 160268443 733871426 140399085 671019696 670260803 747037079 805774185 883168275 904144215 900544521 822769489 876688676 808299883 975889508 732603872 815075952 840000690 435272299 350410331 147522488 923519260 309621810 961632564 892591513 609237984 859168594 805477875 732597847 712632398 680723150 296116724 964250523 489599974 770151404 979243506 586596681 913526391 221904461 737624532 825873088 448955602 106674549 358172774 492645081 396901944 385346145 445484412 247479839 724424151 924428180 687567560 806916800 141198403 660312847 822633982 739080001 931005718 885324677 759343350 725583643 47878585 763588786 796445599 378426337 902843091 831205438 153280994 860574315 597472632 250690457 327946778 445642997 761368172 857314619 374078605 658158774 431796105 682481677 925706594 856936418 328295128 925942712 344489122 712175544 525137633 409626172 843370701 232376365 741306240 988795796 115867006 705268379 80908580 927319030 756767003 822711527 72908941 744282686 734940546 993055135 613577254 105600575 670989236 938187028 739939344 127169722 461224688 983854078 734461424 741775677 954302654 953582681 715079280 756777153 697135586 473982655 800448407 255516996 124581739 754805905 3365543 847406160 764583612 410314880 573279044 432377147 748718490 938267047 211757159 644640015 180311550 119812168 571682687 28566605 428092429 891841024 930329880 237894437 85716035 900681641 229593913 44429128 83635795 594664145 833300066 909797495 984441722 60767474 601625741 808367138 896592628 983285832 708787577 819906133 890509166 396893756 89154519 695010707 502390542 418400979 87396730 676400908 162249092 628541366 958646266 902659093 654101562 154731445 431532914 673755893 601376414 827246278 813162515 133168007 687138738 761027191 828108800 704747925 213240039 381185236 453340170 235719454 265283597 298385802 434620842 760137129 969759591 868705637 914707030 784445702 813984408 453095732 337220194 741644090 471304061 597573303 899612856 923313631 789438448 220720694 745872829 939548782 713616261 36586055 979708986 731276112 502021605 338551588 103967667 491280521 851361684 81565752 958125060 502815090 646257937 761746044 441553251 154906157 685023728 859205659 849810447 924495540 309022791 683719773 93393817 299940732 658439795 794387808 748326340 823279641 471401051 298569579 206365101 998063172 857605317 893774242 453645551 700880213 289441728 211061918 640128187 725336653 513100567 487816386 764345327 177157118 488459734 827562629 211236 862589591 214304380 188960685 780393322 426816880 220271476 654772790 187715817 735238587 937577931 349962990 744670597 407763134 800335726 287660141 759169321 384255563 953290548 508383711 115300963 941574956 489912687 697880098 318841260 439052237 507259861 653609100 500450287 813073799 670989236 598835241 940904504 673148346 460293060 919862397 150839385 686304551 781092938 401646142 896617614 900580348 330334788 303351867 699380003 949560923 786345925 348130705 434587881 301109770 631124876 747479787 827815181 790622955 984369753 591717903 339900991 877435369 910716286 739892310 973585826 577230324 722868006 861324548 750104229 899314222 12983544 553289040 670989236 776014800 760888266 348816917 911071387 792680661 163310107 245372830 831314765 819861361 764797356 265515259 683999093 105447312 995419872 610723042 923909725 767596255 298149901 521984744 974721013 82093120 688615861 800592074 305775839 720214190 704996015 135316408 818236926 218093550 910201514 815204806 120342874 434562542 409773675 280153978 763765858 721953032 739950062 920861439 77015959 981801894 626381531 663456616 902413018 780498645 848482962 995299292 866607810 723237103 263469451 258698327 826170392 254156012 822457209 360356801 547539940 228815931 466163176 352288931 50961452 884764875 314051933 401177860 215528478 895342922 948127282 110349821 487635197 964988293 45942671 12777550 953278585 612675586 318984262 968006562 514155903 470173859 715479726 929993060 954460423 360368267 663260723 953870956 563904811 849007678 264410187 521558144 734297527 796902382 917773140 4596169 33891456 136613054 414463322 863517968 536690042 994006750 906059384 755734693 566562208 855091223 782776565 883826749 496911192 777387235 206566052 726673738 591118160 563196407 979215495 810037434 498275438 160027236 8941165 458894822 749406571 494112891 859691069 284804321 478545749 845328309 897385662 33663551 454558558 802810322 703164742 348693448 734675097 937075381 246868671 863475869 292958377 529018371 579950824 836117240 974808463 578724357 841062660 864431323 309016851 86742237 755328395 496576622 702916129 892928473 559782984 784995026 685981934 752995184 240475789 426850484 272458630 632655081 180980716 400607155 351154938 796833024 458440848 814327454 748272006 547475872 569667120 543942054 684421730 318006027 327191778 537458070 920193878 267884473 14637995 843166160 379258117 689810196 734098375 596294455 589689601 925151269 626204162 804988136 682709959 557348679 749395321 213714104 872291495 774549596 504512408 871649277 301278676 648070241 670989236 698992995 673407170 752270920 989858177 888710298 318814603 704108263 960302247 823401286 466667853 746175247 370317111 978661239 263942988 468380025 27920910 934624432 894795773 754250179 596442987 347048913 464212911 691753763 832857398 389611823 670989236 832232772 950949023 847779605 448710262 142659956 673851644 709176757 415592890 341883379 644363552 352864963 263531405 385862254 375986347 636104770 949971735 134167998 738588735 762927259 180064741 437956038 918831455 149226298 652434659 919423859 678796168 660231373 212505722 833513600 724742544 349512538 809670740 716856465 750549291 803717199 877031326 770162393 68024694 889578428 781489745 858991303 980426194 770340883 984453454 561419 797746194 730036946 439839885 770764795 476411211 500669426 868683709 259714332 801850500 842416861 690804571 729058467 757066196 8199859 750622319 148808683 361999317 43718350 308766208 797423321 754894517 508155038 601174419 379795850 26534557 322792834 858475632 943261860 161676525 917860367 304518145 962303852 270570317 426939188 515937196 337692255 736084782 924923229 41591223 791354454 894575595 864573147 181760017 983129480 670989236 368033402 792726332 218160805 561349262 648817955 195694127 49207397 956278312 325706913 256043421 783937756 153184390 301937163 949846962 984456291 367901434 792730282 182176983 174856316 821714173 181715036 808316914 648711293 333945553 698462253 820449033 846073585 907885197 692701232 274054377 166216900 27116812 259884446 819244111 735743428 840389912 489484204 582326660 859218808 363107059 720252912 880144070 393478202 851366125 941321649 622807807 927574822 146255686 537780384 735938360 935041950 337570303 51942239 740837474 864589903 505415562 978751538 78595412 571321988 825231849 917871518 273395322 650760825 466660876 841875694 941922341 990739050 528502792 928398287 882185441 44080245 801519776 38124936 842593523 850777515 920549472 84083725 839752156 972983219 501967679 910680451 709743784 975540428 198169807 489888772 737593465 883852312 936896423 996404443 696771046 809089065 553835493 805633769 748175736 570422318 266038270 39122784 339342379 982605803 830745272 848367591 29223849 335977750 644212084 113523272 994179461 729250469 813754964 670989236 604793729 680022030 551433758 890756235 851603536 254755127 858922415 122873790 50863008 475193912 466763920 462940159 305964554 670989236 394815679 469380601 934109939 807802028 691851541 964164255 709004456 212220756 792270867 594581840 147428735 874554660 803061936 670989236 633031812 771171905 220386540 11613935 904863965 230674081 921691700 728268469 151766078 203734845 975633994 701278083 905855004 57648972 806204686 845560996 358598916 676744677 650423419 356209630 646001319 236549190 627708871 610220685 718158186 957689638 649804561 955253232 553579090 700019278 437882265 194498686 828499189 931868766 793946850 859675125 952564720 309084037 651317203 387965498 952626747 931369304 980234658 932111828 791842903 149744751 50086016 453429810 306933152 27453392 850857210 989013449 331794468 427247395 974093730 902485467 711826529 546214691 684830598 395876472 726203373 174336996 500502054 886418138 769037722 894452012 910064748 58202414 883607381 9704637 897313365 937277904 449476087 741052439 193034425 958464478 745354529 388841526 619643042 894762225 615671429 304299224 813768899 411877463 12516370 637275133 425485961 718643750 907303669 361906160 854623276 872188633 256495968 203733816 683855300 634774637 213923226 87945022 998798225 354318354 785802686 366268404 867733193 931526652 240424879 931720438 570858335 846174202 489815125 845856793 311119926 458954866 263775146 602834481 832631666 529916096 179375200 814427979 908710143 992255787 916660673 693039685 305377438 614857529 484253719 40648806 744717262 130137278 891040272 507956662 670989236 597801106 807609460 416438270 957000055 7581363 720522501 276021228 183825478 502969963 109071121 963163612 138873555 960032199 762955258 502009836 754409642 884634291 916144137 444305161 664913314 515004861 719213930 976016334 753544133 888082132 263056362 915955812 994042330 411352086 825784523 160760514 874276937 573985566 67705652 206097805 852892750 814379341 69829889 989320610 725275240 951865470 257439450 158231280 869614019 373778922 936534611 681966471 741721330 334572391 824980155 604849343 585578226 682308521 252941988 253649409 635820669 798790884 942029071 223003226 467713164 844648576 697190651 414358386 153880370 634740669 922686796 922723130 405995938 72121998 878979980 963590621 858243472 577953865 112414864 496847777 848271573 376662617 180717263 942912505 9737799 972357158 871745950 28530767 156738003 752493240 540306855 343946059 472316368 287848440 551067949 589345519 967136058 261554610 203823163 358630197 363526234 655717006 721656846 913328349 670989236 48841944 413549013 811809468 938280150 830871892 641698288 858815973 977441572 910541930 787361353 741777287 500152330 577332628 338560019 576409422 752961537 260453548 760222849 321469630 4363032 941720824 634421556 690975380 874236053 764917651 2564750 62150984 202642570 670989236 445086759 614619670 679627437 841122995 717165139 584835933 628571289 202130672 715893979 857602742 152602986 166819964 760896198 905058009 201492922 271160937 554358534 547966241 887850070 659786831 375341689 584584321 820080930 416913813 830467753 986865717 797887642 797546394 457490853 177176215 748486431 436081637 766417073 25776772 913304114 880675086 678789338 924332144 904720055 659486780 935619413 535794946 380563520 774024264 363551788 124017983 291888995 878488835 966818568 911709063 29921408 864877383 664780271 891757866 692751644 478216018 909297622 878727792 940499785 174924911 475245336 771819079 319317580 874486351 744745759 680023158 513795001 903528873 43532804 908794045 986083439 870475172 738800382 936685749 681520316 614299076 290567550 352882503 478511867 493453941 798672871 621176622 220201504 778466422 718108484 474629141 491745754 670989236 203076603 796204748 853293180 295942810 365937995 224302722 686777071 747960440 594059575 878102990 900931051 981509715 726441394 654817181 82458319 292329321 798570280 367713176 759109098 620984925 504011413 80292974 482289741 677487817 204548272 71607371 124558317 228202010 949988150 250783960 52252068 818484626 721819039 466566432 766165179 137408422 152909190 666012709 863333271 381287077 836076984 973752745 20029246 668813889 387202149 184984362 951705092 409803746 670989236 747968683 716025761 460367363 30704290 783856786 846007709 498438441 408164234 478202012 605092248 713029787 948283985 629966181 584608259 135576389 368867126 916026107 670989236 898689873 781546854 398169538 446955047 799955983 972225162 817344193 778589882 786649630 622326715 18394654 670989236 578389210 958208648 364984129 615778953 94400107 226234471 817669341 580519672 847663063 170419916 722977721 962132966 743323960 984296476 303658050 945498839 506407621 244128571 181621629 668919244 623907453 500722421 86134224 903742345 516180018 583508622 849073745 749730836 543658903 698533957 950452156 999679564 128898180 24962172 970729213 868988605 691426810 940476934 197138732 47828025 917953337 984351925 839523557 276525516 975629552 374370806 967488214 625246881 724478251 998124004 865059110 370598433 133008036 84368079 773149436 397909403 877602633 699788986 301290087 266116909 608843510 990575468 790282186 895309767 562949198 225689383 967234316 307738333 798255008 896485750 455014590 398930061 887923588 593397897 694613577 784116733 627798248 793513192 461260544 195824576 606568884 107505296 990856877 981876504 898587809 696082035 308027021 742419228 265140767 623747350 977035595 203595159 846711997 28760188 713922677 507739254 103024420 679135777 661049150 882189473 184742154 479168838 941779221 919243262 815130503 928477826 686115867 823209452 477235954 945733699 847489110 849560817 711658045 617667182 297829614 332582049 811111772 491531615 782229016 364295067 501052822 369944362 569536565 154602934 418273641 164796314 136111952 300407055 801594618 650305927 840788154 775511465 590761359 553240244 716743206 102613521 995464898 829149861 422537048 959013345 795139935 725869306 180835135 670989236 225020985 827532781 633600839 29645527 177185680 656411349 670989236 852772458 122442062 324173903 94386334 992597982 787714650 667933 876198055 753956913 189051794 777089556 897386649 602824844 697337651 9931276 691399434 677551438 717611706 593239588 766755089 115899924 671547476 291247554 266116667 50039523 765513633 840140037 4857027 531693831 838557789 893213700 154937850 795835600 788797450 332533010 878622495 473709647 348859400 889494994 687876484 692821385 503826853 607875599 918224046 921321077 957849314 836052513 977488720 458385579 231169070 617225464 683784501 832484617 218398260 995856226 488618451 32072388 782173678 758132621 324535091 364713575 627619184 335827373 625330016 470695278 254729999 703438677 262220819 670989236 337906523 926586309 372878147 890227267 816673242 946929968 654442976 27909617 963150853 440901889 213392266 469778250 988227940 67352378 26823987 660187231 250977115 993632436 798617459 5721507 614469458 737783655 340810622 181659349 740005460 616696457 754272269 771689394 821276178 784923050 58086048 925929944 486890225 823686149 354060103 753297133 97175769 860930186 299770149 789184937 407388743 967129259 181689402 213951771 91167596 379737003 259717884 788685192 292651810 188198539 891528349 194247978 764376064 789582853 616806003 943422339 633495764 437275623 890026063 721146420 593671978 847911956 528662286 352207864 22874453 807280536 84522427 220749626 800854769 769204386 916228540 428478602 874149397 918937990 267246066 565031597 964412877 245577971 79403516 972115234 847191773 926881061 880317850 687853185 301038189 838874496 484547634 658254308 745630470 412211620 183414325 261336229 789851428 582475048 263827954 901532727 43588386 830236141 369269088 985764347 732804353 225187465 923741602 705561129 684074894 893123049 987579439 4322434 681669547 262340461 144163996 988506814 609882721 774684043 692892662 980010657 691353939 577912751 365272410 805961926 121614387 501542661 932220176 755574423 349287510 578196400 689800148 188831468 990401647 850871660 378470134 913744680 868863039 891336643 176786054 777409072 66612019 512564110 409245958 678142246 832988318 816090872 850190098 977882014 702747907 952095577 129308173 799518084 383585481 475144420 665300761 241711321 152892095 853147169 675671687 964472007 681050570 858214058 81686100 761297061 183104952 733275195 216583230 181171942 257381250 533152028 253741626 892414719 251589018 966688769 546430754 768663399 991019702 395244899 670989236 636371408 745379902 914882531 732926084 686405987 827140896 429621604 781341883 442305507 851930134 846698665 998926455 919409859 951973942 856155574 349065764 959008421 292383966 960086814 159421651 870212635 506133028 508709730 130749667 855021099 821704515 899747951 235245863 365455616 910051857 642245017 421177466 960932965 129549752 368902186 390823175 457340284 862910858 238869973 30890283 404403670 52767519 624710218 83963643 909993687 731701277 807724046 522468025 806803045 282786478 859881489 309447812 885631065 683313158 362865500 464981969 653393000 882957067 296306016 831880721 772810767 224148928 988609130 206336414 467371374 221522666 979645270 968043180 683718621 931400617 518539130 996241313 492491186 901349320 504137970 459200323 883851892 393639170 919335562 772829256 666174557 733725361 518633422 782183483 47140586 381526889 414353511 896125326 402257812 789415129 846602977 781377788 491019251 380470998 171650726 600725495 891778830 31677497 874243377 168315980 101176392 575715311 262440822 446565288 877109546 790446119 904934479 956862096 994995602 475167999 509857821 763520357 87530686 814647273 713596473 409156232 303722600 815773566 396003312 736092957 798579866 566397803 678297783 905662255 273344821 794584603 988780622 982728911 315885115 306822162 755016890 177567199 137310976 110928042 724194058 734533036 899696379 42722910 825909745 752642893 725914239 540017845 545753160 937737944 964395462 311920129 362304024 723628436 566635861 377208010 698922575 988327643 808769197 915337209 127568672 919658605 233708006 97872041 428953396 59548853 306478969 373887931 470910367 631565401 828740194 923554394 962664570 661911003 622559266 813654996 80602111 682920209 955199193 617495440 967422999 33520600 936861264 110552850 464602872 853778790 940604187 875317036 145038297 886494761 317336832 694053914 713977620 917063501 651865871 607464509 764937333 105999733 91062706 924530010 41967543 640090362 715469931 358726522 326628156 85158231 957851060 728243802 944677693 789002871 840359580 612769170 670989236 504929029 909764762 944737887 51963792 737580530 498891889 677709566 503534366 982617152 161238134 457219305 856756663 567474733 859511266 614917298 726304805 651897759 954086974 421309740 733779135 986249723 629165542 280912582 837634539 973363829 301912054 593090106 735890358 10280244 684830166 918564729 907634741 533976678 102374408 96135849 816908642 679936235 135655416 79066372 920993679 939366009 997022911 849535759 821113383 400883850 851869708 833165239 961442133 916569139 854411398 730752989 856991914 961512903 922091434 224845729 998525232 845009210 320989498 653933846 728842236 255895368 867844573 323342432 209681482 187434490 629219989 967929583 966162784 219154078 806709124 273944387 638826848 574823246 500704296 397010662 401474632 758008118 435219845 247759046 953414344 437152078 909702588 143600290 971063092 415546470 834867919 188722473 714691176 751112567 936399672 960041365 794367954 853821652 849572608 983188078 860259413 70056420 752129317 718059306 134520187 588632742 54969193 850215409 485138760 706929598 859344650 395173388 10348035 491607863 78287780 745016391 480023917 958698703 855385097 274230436 704809558 2992243 762673753 372806138 448631438 366636321 113284030 914107421 692152968 349486840 810932576 797943658 189714338 931070157 72854399 796258637 821261083 917878166 530937561 718381798 727667774 837456931 278863774 993428124 831864731 428010908 730783430 836154700 460957603 769387642 110596157 585907427 835475000 441563955 251678945 439968887 809732246 928439242 47258011 893411673 910983034 719817561 205717377 933249008 665190254 975066482 602018818 591315708 381993619 318049238 411434553 868470973 249979277 6276338 10329442 24016085 400196798 71245409 85607403 329717424 761413257 768004599 791911994 958452526 737470588 527868350 670989236 797646212 141137324 627369350 949358200 271763530 611774386 728460179 388703302 672423436 674852542 362640407 1644599 804568613 840682191 856482133 992465088 3857863 977588919 507973606 732404809 940315368 30404049 795455413 703243639 339989466 153930435 124048415 283704943 790389672 670991691 262520401 668377941 777622125 857814926 874207761 973734680 522985093 670989236 997696266 997723211 122110564 165244930 141476140 853776254 807611186 845479723 687422828 499177866 650628343 280500428 193694445 515117175 699966372 988626719 911760063 636852467 955846893 912349511 230635612 839941553 960477781 841135165 818596161 517122448 920955871 670989236 969836104 838153065 773166639 589661099 85653311 241182105 684959474 799520381 554292078 686202763 870596531 757191653 880974963 976205391 308465184 350825914 448481313 543723781 762538125 837448488 163369784 701094902 696269704 484217216 778349905 899303905 338248783 520494948 94155867 41462177 117583459 506606401 373503729 290611278 836101485 964137319 758365663 705694029 993215691 595584364 563041859 455904950 259404914 744567193 949913651 678831736 198831064 488836231 398608636 783082626 427069305 699551083 114258868 375840533 457537501 944415216 367542739 95053696 13600165 856920658 760590497 134005837 586427635 990400783 436827477 757058120 496208122 681018841 778105857 984751597 423178593 69317554 577517730 648180022 649617519 405973991 688928313 102222607 806449606 139709120 38925557 59567532 321743589 15623996 452168589 608516448 570964631 181125206 477774278 971476510 988570719 52761894 457448391 708212680 349922487 764573193 256098476 40789279 747275049 409561646 477083295 295479999 794629933 964664909 480566511 840226139 937824948 792177532 794691666 196948030 978262579 710075190 575929970 888473527 670989236 888259112 821030556 28448733 393390230 861344314 163434670 932611543 196608325 48377512 238639225 660557566 793767663 673617740 821314363 628108041 28337405 654478824 447829586 334299686 268106003 63945036 332852624 980635494 624347087 670989236 855670682 385857174 997786800 113129711 827355144 578917594 673178517 853327924 49411029 917057344 131812236 833077791 805294468 953398414 704756893 612746385 387057437 801329949 382909052 13545521 282708894 562198733 816865136 422442295 737938579 786098526 304925891 918745882 258017482 758211837 870432146 670989236 72547203 916838745 795706549 123105587 761023762 893366429 684875370 959006119 11254980 844477190 282640908 84721162 797069511 755054159 720531863 523532602 827839876 696364504 2665623 903750142 749273352 464355607 891819528 823623157 333354359 727393696 698129650 730764322 894775473 159064006 713734796 926274382 293702166 997783885 786625247 384105477 443335452 197716367 343521333 811872960 846110599 949380148 322864598 840282091 844802924 729848362 681816421 40920758 672999534 56510927 306081744 880341950 205353015 848139835 528136249 889070672 670989236 826781352 341311407 897847208 835511256 617393739 912052404 623694688 202781093 334087488 745050306 900925438 239591423 687403378 809947450 437290493 627409942 853879657 754576665 942092343 862491017 775264481 805837416 947621217 867047244 342433832 852175155 759822879 960332314 225996552 4495209 293762053 775439843 335534529 715083911 791407023 59546710 861337151 725394766 826438888 44576578 981936023 644304836 123162078 200631561 918174484 944379244 492179953 282830059 371886966 905578945 838015417 710252183 390870621 854809688 629501808 479141091 609948292 670989236 845078828 766627645 372613650 689469887 993511629 653299208 703051526 603207368 602809294 971718468 449792615 796508682 42397337 331657066 849774467 426240037 23625610 106011624 694345760 747139727 52717874 166151649 700551011 218510726 860847040 860022768 346571243 722431015 161740058 561672430 968623863 768396344 53593285 997117599 359820117 637260598 192579810 438294893 738234047 748095557 106841228 332679341 755256403 140244378 940378769 103903099 937813151 919866771 800221198 93076284 60729087 688077364 814832543 156814727 378607931 31151602 480044398 547260123 727068384 897726951 5545226 414813922 579104643 103810877 590675802 520949107 121794597 899231743 338318525 217547776 463681923 988957509 871743345 736302192 934114958 420842957 65717995 994710194 770022873 156051172 715554372 142210810 742972702 851987845 983423545 665510870 37940728 59093544 810387390 223805503 847966468 170706979 84792233 329479730 14286315 987419975 145618229 821405055 583330303 509410048 910750093 627560292 565576174 278125487 945922537 529049745 421835098 479648934 112818325 181068235 78631097 410570547 953377660 756268201 369930138 307752486 736577466 935351027 448402528 696767244 699625726 15215141 848492563 405804633 783698316 111557427 883695516 755609687 588596649 832173317 522675931 689903568 817375275 183099534 702050059 967024788 738720822 74503591 162758100 398670511 310388308 699025466 703298658 943359635 793301065 341105379 493728169 965330599 363919212 928451049 868254534 293294557 778411069 248532692 96947015 371622099 210351621 575146596 958305307 968114422 871305851 24801312 289893026 5990059 244967223 2197015 58310560 942961637 164241524 728494600 973611158 453320930 485230184 892851718 920871891 492526599 76442005 288460538 895096469 886577794 488115031 804014552 885181632 115077153 970447693 348059512 577131358 698691374 548264751 746667683 563903463 673290432 553314408 925446526 172392812 463530710 559182549 978723173 864581321 689472662 781884226 752354190 869864851 554877346 578879976 849600506 712438591 117276334 812579996 59965039 871442394 350182577 326585171 927772693 688504501 35172574 594410196 519412292 331850696 664487131 383229646 94850461 102955006 577174763 180084088 358379436 920503447 692264918 865066581 720719273 473442535 974301327 905251612 286762936 809296004 136227974 917825484 885762357 124208584 725091968 647384996 704538137 412192527 110063287 946387642 617897838 185795255 235202284 250143357 723518293 167228859 3849357 656876320 493227466 905869825 582939244 594081674 115780116 983054564 689604225 916485927 709082490 831050985 726961562 522806095 60839316 54023490 907456134 901323081 683518829 277835425 792211358 832745335 409730402 958692480 758737715 793406303 883187618 799973220 463019829 613828164 922631870 324700687 566312345 895581944 134145328 931499794 363195157 942336825 869103329 997288708 289378845 903288771 811611224 884160073 670989236 622558003 741540416 661749337 898838697 35697608 682245497 484860325 744644659 748972211 951282152 6212091 457076123 754452354 979727375 909457369 361892671 406533671 410016493 438465069 672721698 410122290 67846686 264269306 838403571 839773466 866732912 883609082 896684490 881805215 534754065 893309160 735707791 740407348 898976382 908951368 849957992 297768176 353560847 107074770 865938874 391501750 618401796 693829605 728163409 674227599 577723578 998052598 154677223 705407741 121066026 399037250 754289177 803004737 144047516 962637190 848223783 74824773 241967855 859758941 962653801 533456875 915397348 449159877 902246031 809882311 410831999 713667813 50748515 269188946 369097964 777106207 819219497 82376135 15875245 201422408 213172379 989875062 624038886 811626463 964278213 728342779 670989236 306831863 748801729 906158250 704465842 907654593 197189011 607776742 11960270 980845468 289905491 513766320 918546248 58935271 670989236 747084050 685650272 926918005 706121062 713611080 545305651 958001496 3724678 535137213 893032216 141707663 935369998 480922202 902210260 709722621 815641142 821185709 864195832 32605507 995231732 674304886 861421395 946245010 499364726 972667888 837724904 814768168 824896651 944464991 328059405 476530791 690917083 946659862 933151646 838399003 228682733 621893682 350067949 915704100 924959863 780908783 905942145 377457114 168072125 750593726 622807817 917040979 711334480 180596883 416234042 336368573 987575421 726656263 444280884 816771333 280442105 77525229 754299305 699023223 284573971 915063007 855623875 740829774 187817608 962563838 662982722 446520816 846417387 505924733 908428479 709300647 616410071 755951641 726003788 34818533 813103089 220244854 671047878 174686122 831978451 943329228 627504840 869927165 894799539 996602136 754661947 767517514 854794012 818614095 442719427 748831692 555698860 314777925 686379614 317883392 670989236 991978508 893551066 223384801 765659442 400094872 774812993 208763095 680032741 696542184 232244660 796132218 57022667 800463629 325563655 200085724 392128890 811278086 815643252 742288892 14870894 936081091 181503465 665511300 391775595 998934109 718276519 758309333 821331683 952737923 41122027 475379193 872875220 688155022 103857902 992798592 401017286 354895926 754902975 985832549 243625254 986792353 781639293 937492577 815077503 735548926 989901602 223193986 129201597 159444751 278628969 602562216 186768015 961520945 914230752 331238873 231424474 990558958 14163391 654036090 242350095 945982423 689709620 712193729 848490641 993781199 286948767 894596832 971824824 708938013 939798994 465030037 743554770 958857643 718797353 26974836 6389212 648485065 611697143 319707205 500372121 569650424 642276904 243629057 752899797 959164954 493845146 726135657 774491653 601311634 105899117 945036050 739821708 989819714 842006924 906584704 32316858 886458967 337861440 860194761 505866288 924782178 789180666 699381978 460013979 320753476 134352337 173807698 187046413 901303089 805470560 950741300 668030747 869485070 875475447 560590263 825645861 73568310 724423727 670989236 670989236 765645865 835893326 912604961 713587569 638247578 837546361 853861145 906348438 792610871 997036075 720709176 270731715 727190724 271234199 899946391 591111587 245899364 638607593 731130368 416285786 36976266 778646019 88603399 230862894 669195612 810779221 798049201 135676876 470708133 703580383 296907365 578622228 182933976 972853997 719817305 481546469 433657087 973798514 749045553 317602976 722584988 607781550 499712813 220900753 724876278 522387738 694969017 800252431 850128491 5802710 315196188 846488528 748995832 964544214 593146391 967240275 130150365 176545629 800103152 146632499 370081178 838028343 486160479 876651912 849218158 810335024 980950247 543046302 741636579 16946032 12450244 244282863 919105476 158382162 696537917 650930985 315123701 256587764 475659449 907910188 923621263 7653808 877559867 105733101 17707150 567525363 713335951 666810057 585259466 486300682 655776941 871543956 488180329 708516951 518935445 831574314 694856777 690227201 298264281 58289182 273629815 785725641 864910653 296025741 492643281 257161821 158792786 694622262 91222858 417379313 66340645 980091433 734859736 892281275 875023465 991300306 937217527 763584758 660975682 764238175 501784147 929471890 813477481 975717009 383056267 76107290 589400704 708309736 523933036 156646440 840557507 708450651 649417862 419662375 825086931 699905105 927477241 875495690 887228823 840145493 177849180 218380702 209051522 894684624 95659931 684048188 700520348 837877799 136711274 899410132 940803837 934215380 798384390 944867458 516370113 375194007 695812807 763194430 629634513 974025506 517993857 901879950 619962115 617216426 778137595 813860343 754550664 909480519 470681629 373680205 832919543 719460302 571881872 526965065 857364044 85205436 808766491 802500220 184605336 719145370 832108054 711043477 985184326 313403632 803908776 736899555 3732254 998261708 23950277 510235994 405335442 269555480 923611137 357173148 297670785 377955681 425597795 331466630 800432536 899422001 839564480 285622365 594569115 699795870 163339856 719309791 662801851 670989236 706168148 632767340 327181489 76185044 685657190 502988838 809007226 879955158 267021582 717857166 253345902 681518950 735235688 759217030 711401698 858809521 556848428 636734470 917636205 52782654 241838522 346716320 672059053 890354127 847055717 733628624 52749091 272043059 345500727 733892936 186576356 144396027 435591138 112299162 136758794 995116954 441736586 670289514 689136055 568125661 765077711 661778946 260505536 11102787 207307165 752250424 106197320 840339432 991244889 825045572 382153784 710082391 502650341 143231726 599720591 937531896 7033959 151445959 120043924 819034100 630792049 833678548 922559555 905954102 614476981 815993057 790282541 216418406 782566129 521435195 605340170 252877020 588176909 972990207 280637848 701675286 861827478 681111136 729034839 103216582 800646156 512354670 682857395 290315711 789482956 725301448 886178441 869806200 961594099 287645156 438727647 245174204 110276100 670989236 789419752 906328286 570335981 339651213 301942581 157968330 942977179 916371688 455944772 475220845 259608045 12426366 7477261 920398278 907081892 979401265 188016142 238283157 809300495 708563094 843093894 529281903 769671777 137030134 670603779 600909924 513096947 277764316 676611092 492957116 905659184 829865847 808075387 716074265 410056097 991968475 604810117 287614789 314367087 869702388 790440084 336710496 841855133 123964502 834182779 786662744 942420035 520283542 787007043 778338765 739249217 931715857 621464175 713331025 955867988 492768598 76560027 695991239 417022317 736691952 82784644 989629542 635128081 180994469 940803238 843740304 87729668 205460573 887304118 470358527 195139214 954065285 144627465 887366947 900141828 360303195 934759232 387084265 425717152 809482234 997146674 754488825 819976351 8981097 856808601 655813149 864719195 16186406 528246877 501003156 892687719 568975088 943792232 78744926 877006571 610759350 750253999 210646906 271727959 220488097 759058112 867828897 243564391 738199165 424067672 940495736 682083574 799686688 296637967 697381063 455242225 54728068 249744651 868909331 497270917 285858494 996094523 64084061 733042937 432817177 892013518 376779916 732284853 882691056 37930950 594174566 838574602 679920389 573799815 214867222 961778136 549875265 677526010 811720076 870022265 124557997 18130059 869035097 757488967 137194301 676285133 922215021 960342283 551610420 225300013 842673893 670989236 255126370 937140219 795014161 26220836 248275832 403298739 840395918 890689447 939810383 682142692 494282981 914618902 677080017 971024297 428875312 638104483 690936226 256688044 727960501 51248598 689196457 337325365 730494632 803306591 793780981 994778748 493406650 680690672 744332413 837164768 820202435 677469044 87796545 790498573 937701010 299097601 954625155 388740652 898015416 894194668 189101197 826331371 671350934 687187547 979907871 217809315 194360541 939338732 781483685 561804677 602561396 211613693 93963898 237446896 725382321 918032800 747367814 783017725 626078991 330368036 169922493 219045430 299858684 777750626 286033514 277863654 595651053 953434450 221925534 295294022 861678639 736881136 389005175 918729040 769901800 401595537 133637237 975451619 508566610 981829142 616970649 531634060 845815579 670989236 178352938 277994413 526606015 727453777 688548103 342573182 733195993 855308307 120536278 525576260 724608930 546926994 562083638 322760699 761667854 961270413 686990738 306984464 304711688 831045451 843414897 568335771 63177159 869501348 63605429 838747815 794809864 180583514 761032128 922416329 805418426 84787790 562519185 411474728 32945043 755378224 380033022 275771009 837884601 383616548 526584344 91188318 483013673 940073679 363801266 464528103 387811646 782938418 944714720 852692959 409265581 799867774 68074806 962402765 700120067 688560807 868390457 750933525 768228849 810747777 906720435 670989236 972654072 643749567 127321309 922857370 864262572 979786031 786495590 717728266 996722419 163703775 76745184 243920506 303183021 128459333 909080848 745217487 859511353 250868080 815164803 964859195 941571625 755088528 676108943 800296852 532279916 735468676 972773540 969346695 759260314 177297993 413418668 723861353 223646644 397727992 828105845 796261284 586544688 919779756 922575645 452927460 790552975 670989236 380877360 836985289 915686757 440500565 862689474 816141541 579417280 173251123 491223450 973869459 741466082 605454902 546980064 685082583 447787496 842373415 403707162 804710550 623396054 233620209 781222699 907984997 784816494 551712433 99978790 578820052 877704863 90454341 10947699 686361240 333993257 711211281 955120819 152807108 925024073 690116186 393143362 173633187 754413815 843905003 858277822 798637155 605140090 910787173 66288547 744601483 439503941 832964595 326815286 230265820 744837068 746269294 504130314 28171342 393411570 320045630 319951108 873573381 754995054 976765239 544978338 495838086 318937294 706916281 998740775 831852374 946266566 960738046 131645968 38475982 905249254 166021258 748695581 87101326 679547640 926404434 337900234 806608271 252827133 413164309 83438235 873131248 371167978 845813394 26558091 508139714 187899939 41546869 879964778 47334723 448042192 442878445 845564383 700043193 417238168 407225440 556783299 126776000 428040181 900623601 455710972 898336262 857951472 540314483 805891354 598709646 779192423 991439116 636522842 88002384 455176148 954297464 49465514 899720307 586336904 51460755 802639658 812980153 404056185 719156795 29083264 30583275 806698663 784491195 492716013 935314440 54212186 876782770 269523867 542728841 978822375 822771015 709547714 632804732 803856124 789493151 984360855 250470671 879832000 661366581 473585845 731019373 251280668 332155478 545043925 616517085 818426945 242635958 17279935 350647051 278652565 594961106 500183389 835526401 261980519 801966413 151153252 646693129 673625701 903356549 809331364 440253884 751304298 340776054 917771660 801668767 623998353 760960297 795976458 142601285 376434329 890100272 766850611 790366508 191714811 721543515 906059442 507570346 671406979 393021343 799302151 546743470 33454192 705872993 310465080 315943933 852090033 958455011 114181828 420369493 149759738 48753393 910179728 968669938 731080927 576826039 101014180 837551574 779176301 421370548 626846837 216723091 916341653 563135039 752142697 358120947 822303369 942136703 460618135 570147065 708400346 78202250 147443309 404126055 262294936 768790984 126341172 713873726 61485267 921305066 18331691 977176175 762734921 144668009 884295207 717793751 7127584 579450218 868794182 773012975 411533333 809854699 945341965 948663487 25846415 787348940 133437528 483593457 458343240 564092796 902435968 883128383 835347381 864368040 259432059 649280598 55304399 790267438 612213078 948549730 664738388 801840610 735946903 475684496 855779450 834324985 162278775 42000158 25613072 828980021 260130983 251765959 542240538 599593837 192879682 897616170 100411197 517623842 828224079 261927393 121279772 205315671 586595991 378798432 917364107 39510615 645562233 873328307 724462415 928477259 623451800 720187351 49337133 938591914 422330447 119742872 283626500 678295670 684822573 343930014 670989236 642402881 783803914 957249060 330896928 755522227 851821304 714671963 821662998 741184384 24278430 671186584 668058040 742536149 398728857 188718582 907906046 857068787 986261251 825346863 813044407 933677570 708509897 854543525 750218364 594717832 728957202 850307096 730050173 263498752 763312681 725098457 910170782 142131868 947362267 997599946 567290602 855683046 874794996 910065223 717644602 597558556 830870094 121554905 706001469 967473512 901858465 461773111 852103294 829874485 202260687 235220447 341037467 234459102 699849770 24776133 109727632 618459742 900030182 826123869 28345746 563181035 314246521 141157548 962958259 779222288 999233473 724961203 757929959 89990629 894284909 708904641 913140170 785665927 670921007 201957475 875473304 798648283 826978763 274438925 515644687 827825683 982416385 445026011 134990463 960975205 883337267 80569752 199016880 365095082 956284888 342245178 108530245 706573602 890536775 367849009 450204611 919335988 982375917 582996037 636814269 909390096 75704585 491778603 910839775 987261511 571908093 627484979 724034771 855751019 988535420 540544133 34137265 465873478 32766645 105252094 58119769 974857797 890786227 541216213 651938389 80488711 10124249 484859431 816847086 690137107 886491281 765543405 926115383 852505932 933873661 825206206 948990480 986132120 356688715 688524943 111276796 500229723 939177415 83087771 416619311 539587947 65408823 124984115 831924535 571045380 560178767 20007497 377650655 766039310 702426879 49750141 106788264 264994630 741522197 685316647 178346290 976783270 921277798 810427280 909565050 976945802 472287753 206325077 108201405 288689915 19756846 754990074 937594076 913354192 139113722 748117163 980706409 976785673 685555325 949710779 721852189 571255958 659292884 132992114 830857271 670989236 226476406 843576257 636430001 236727802 826331114 879834766 767322068 633151979 304608996 729681954 440160179 929286036 899318285 889375695 269682017 762066207 220777530 16611453 492032773 482307391 570734536 843308437 838228888 961848766 840711879 142742907 39390798 858742375 931038000 372036237 384386821 886935198 392591711 177719993 989514497 699355023 144088221 965341746 765685827 855546572 765638260 860190398 566393927 863583197 768440370 564907856 802131166 264902408 766165671 943290526 821853172 904429296 972435927 785028070 392552682 421256687 713401732 323055595 887966081 284309608 247866748 951900604 763314084 912195244 976941359 282114279 147712896 249074378 832007764 990125928 236433559 677544866 350374807 832737012 210793898 513006043 926979155 951531028 798115970 853384197 476259653 472675044 986821319 575932365 698119985 778200817 525018223 728063281 817104467 745714546 517958800 981604594 602085963 252578703 504383536 134960321 905785667 958008770 699280272 363330013 438902350 785383055 998232318 814043500 221992498 588407767 805933603 200069949 605220455 718607102 785775438 885410637 747278832 874929570 58431506 675111552 200444209 451412442 927753231 471594875 66426632 747987274 893690356 653753479 414097911 329242992 678906892 333300232 769878496 589708926 367306683 670989236 835404916 970359042 90233696 216942843 883030813 39995766 888219718 483233027 123676855 954849413 793220770 883158285 933504853 671481114 911427851 648229201 33316453 769977653 27194915 675649953 924460747 857949327 928908350 51923105 914839164 972829310 950172601 135721462 776844846 593364342 713252385 963014654 230720464 588813228 188331451 656529809 746808440 160629207 803027406 885546237 196587669 927960832 858198940 710145882 764778325 707867464 297330888 273859875 798588226 466488997 386743169 41291240 178670886 547396825 695304853 31023199 829136789 720443154 785963620 944020265 9042132 785563101 56210054 685759152 805802568 782590956 675500476 611460702 609637791 969086371 732408632 327274145 173232976 963029850 598646211 274834269 257728422 798946984 952521639 239168351 18309590 957623196 495745838 926981748 597507623 645899967 775798866 830572500 891945824 394955473 924268985 294871330 11147520 684728054 540766789 864675300 429794237 696604328 267083660 643380999 840825342 512141861 698616325 604872638 909757188 778580619 546126083 674694062 848401099 904168531 241833126 12599195 471443400 91164003 528743479 473856634 518154494 672406526 614634601 670989236 865357668 205331602 633071619 569799338 895409376 361009293 936062672 440427590 97755076 258082187 825742854 468562168 658627898 194353507 333600150 477724578 916725755 30080748 324313891 719089138 165850486 39934586 329142349 983641878 629002567 191386340 156261464 322809112 780558406 54148942 505573278 584375333 981036692 732229020 903183602 146746324 755010854 560634907 923860620 255258227 860087263 421766457 495469732 181317541 341600665 632590733 961043458 282601536 694313815 700113584 687489304 975303254 14623711 660770605 707717013 425404301 889912348 879581506 738598229 297955053 871146285 863041901 927766217 919598112 436278495 119239787 536086714 589077664 515878642 95012583 868158515 934693084 905025443 162490156 728936528 943195426 786984539 92323097 608501685 145072950 865329443 931627446 784971695 977496833 2838508 904518600 500610450 66192802 775936139 828814317 214909528 645126636 753813376 736427360 197527376 384756883 875615246 907026995 825767104 886294559 335933679 680955514 687231695 514642227 806581731 337263473 9763948 127620847 353563672 258211576 369558043 955917476 984901625 941295784 803985058 232905431 869795818 940254786 586939685 166493115 635688427 586223737 696717446 624882632 982512785 919767757 453811849 788009886 289404367 702144613 912346941 675920073 851372971 705588616 264174260 697949421 949109938 310607744 331883701 630638940 912888064 600003698 54769091 616553281 427324265 841807700 285151186 213999654 138201210 472732637 843331415 445788019 856479959 417049489 586493573 726805616 932051030 695640535 510945066 871213654 836292258 837192270 670989236 495016076 782278813 666111350 756510433 854202284 44030521 881346848 816788509 774546603 849367265 173988405 857868335 108156288 309941988 29263527 943533365 969475189 289425137 814509312 535432400 192980726 870395491 901347577 68876215 355200460 470675836 880702532 654110080 82060290 907293786 285130074 704047686 846540333 885581021 755307239 479045425 674856882 950295938 9304161 837629367 95105031 918029172 903798190 709637069 857102161 518269701 794698139 921149988 313627017 944488652 322031354 770599128 641136485 172737917 745580471 701773330 573801969 411697797 692417487 475112448 510997991 278123938 985563240 36602195 779535274 909321166 386971091 695513051 935910271 973039182 464250772 549313883 233611599 595260173 936822017 925595562 752793786 676274436 714070816 806478962 922150009 890272275 765622498 764025900 405979128 13855018 67740564 65449172 966071326 480327186 511745483 910077341 855713728 912630430 365183457 167093448 527159445 872991225 881839236 755525417 766942255 220992497 457257823 811412362 721517322 677516249 883215875 679241489 277064183 907278158 311233971 821739406 440418043 931441113 606770115 996474280 757231180 701750534 939641043 395823934 13188435 305919333 801372499 691223665 671084499 50565506 757607763 270232464 54089072 773012366 405797627 455196755 639807300 854878938 942979688 262928472 990406295 866580680 979405037 992652620 591948794 240140978 976135187 76594661 229267482 455816728 55244739 877690400 780131084 860331641 132853929 912832626 980169046 932437856 543318169 745828656 212854683 873019201 892177927 753060480 572574830 765838456 572254357 358449163 206480637 585103382 735169637 343019871 703522726 415832079 714406528 851365645 250246250 69799869 795544338 700146097 877480439 660065042 964153596 719914111 781473595 743826766 818941037 667066877 121802098 985044310 318834719 741065027 144838409 881036363 995036934 124195949 959639096 404131043 767691432 684706499 602716744 146892764 823001361 986243622 734542812 889630605 889846124 938271052 154320147 684048033 821506969 980782805 788309074 483925620 334947787 670989236 75188046 368650146 528214719 756348661 324470095 331257655 876761769 952888894 24056955 306975194 757031018 877542522 862777661 874925945 268226141 988296333 907768139 879004815 753583815 598051026 888360393 547283026 870166764 817379369 390461645 362550680 49962643 211705081 951223716 487408052 304222903 891188415 704014421 799936986 608705798 715420320 336448619 287088491 873886635 235782112 695277256 726434760 609985122 955428890 886737682 530588461 705300979 801307101 915551882 100306006 869649238 942225707 812951888 908599767 138155888 949266328 116041997 898172909 13351851 157826611 103995012 741609831 53149231 414179909 679872063 619519831 962515941 257095172 939382769 956645906 461883930 237085732 671870775 929374856 806262891 351668948 531345765 377089708 885942223 956325987 949018894 12584076 145643844 710054168 835062769 604637419 17314939 948349488 473246957 200668088 961230955 193755773 507905164 488611853 273442760 901954244 594670012 839327593 959956301 231874630 624706254 786254127 955188823 346066195 190702011 484934594 751036998 314702974 674168387 901965513 796739264 709476684 353543759 772106566 119061908 764853482 677303656 913278652 377275592 841591422 653333776 690903444 794434924 728640632 747551461 713142401 753308846 681766204 927272001 903778699 248043384 899830365 490095855 870737206 742409948 323012276 681537919 194480007 799768352 530833549 748789366 789933386 916169157 621806056 898988641 975424940 131198367 110886677 767844295 994012820 153804359 773288159 153092783 4225902 987580262 339558104 703146659 865397621 845727688 536014729 875607096 121776082 548858524 593332703 48469546 391136195 773751287 698510602 670989236 579964817 497040586 664327900 673324360 835990526 957899971 906276380 126255285 928466709 899363161 856620685 401536583 912662579 34690602 688631034 983261608 601233570 682020559 902600076 152033147 550172328 207098087 783356728 3534174 796326845 55285544 847490456 292917871 50169096 685346516 659102512 670989236 710714920 381221006 408244541 643762336 995518325 484496227 254946472 719982734 791860336 451992902 745819017 696804171 877253292 795827778 226079118 848670543 867490466 161063786 672968358 23100644 847039954 23801239 756919514 133322365 947129279 823807268 744703579 514049707 729237832 48357435 832356552 764556230 848544452 120683972 686485763 134356715 763809671 494694208 719992936 356017821 789668532 677695785 840571324 876520426 315656450 586032064 678729555 646245447 784352499 758690261 746597562 744637353 972140666 789087553 713571725 595449670 34076898 885887136 757270747 808515679 589829027 887054313 417712804 879985932 917226633 555468007 833627306 724320480 332492453 715660672 40691782 64223003 981378558 752176428 964408547 494257638 941482468 626773444 741604079 853130108 815147114 623863691 15492593 178055034 572497097 266321676 229258953 140931361 752592441 927754198 495854601 467303281 270785180 651824967 511458208 870011215 686789543 252758603 172825951 762738121 497496409 564219626 366927593 187834887 786404145 582543930 922223303 85267533 121113941 904629648 860502803 911687088 20487417 448777644 737070749 854001997 943658695 713619953 276094068 151136588 390669134 486464391 210927128 701614788 56752080 578023088 885560884 818581449 188407504 377370771 952236076 107657650 301918989 220551322 379939405 777192310 163904273 671598796 748950640 210165477 157402532 25135363 704572336 891029018 995845363 904356141 711214485 606101865 695834526 601848195 677557432 670989236 618348414 797161721 794889283 670989236 861169526 40560311 953401679 998198486 956480805 637330592 306207857 989494008 917457660 931229466 584536851 722180681 856797735 229461908 980150874 184543479 862444768 782631716 436995991 868005372 183852698 303884578 638193949 942155080 889832505 474263728 55090839 671330796 139435670 498397739 225461448 701690643 360382536 763284728 904365450 782838095 87269821 172412603 899723441 783118322 241611524 56858995 382167564 169381181 931422403 836766539 768230530 866998675 621816338 961605848 265498083 726126830 497164991 110673761 906867575 442205656 614149171 896869311 241379203 677895222 868707647 656288963 679015533 188606887 987047373 918057330 897053434 887645718 676167106 864177431 49573060 905361378 255757860 248850008 883031342 485691429 826600595 440390658 918119426 703583024 770712083 488834412 491789743 713347830 881869104 834612085 667969233 961849215 770509157 375821018 260790372 832428341 489363133 778263429 932200899 831547170 114240182 636342275 715167819 848970875 769638823 811048819 931378273 866458808 830177815 526108325 257893501 163763318 833093206 130643185 905436502 796746145 984244613 573574504 804472604 670989236 313799072 586424484 762212058 951516063 969331522 858145241 227238300 875160635 906687859 717580996 5183785 395673279 703653639 524422252 280240097 51429386 427886228 702820517 698220126 134965050 838360181 143427248 751491453 982926122 256172590 952738184 982475978 670989236 440057428 765390613 853027939 901675773 783817672 966949853 405108290 892173532 114621310 598602050 472270821 670989236 803623230 463475748 712751383 917599155 561327275 779519154 824621832 716258763 344832048 898640902 98294179 683168217 412329756 931936220 799367818 259185871 323785263 668313931 383968297 125713501 710593248 705276519 670989236 990592756 110405368 999562320 500069932 878667277 532358779 667512837 731868749 60964311 223878532 730870975 924507565 332380203 928134943 763941939 520487962 841876058 118580887 379859825 901593073 827946363 715027361 814857596 347001777 577232148 382512047 101148227 868255796 730553746 329550121 89163724 814344262 155626854 136968936 965040098 932166206 810355278 626176229 169526490 345112230 696118551 416446085 137584102 930504344 746370368 684749222 795057921 919871245 553576252 314665259 795033374 343337373 945002566 692376665 103654790 305973976 920699617 484378075 90166688 89837979 147685013 636585590 953721438 768740837 842059528 761000041 926741998 537496335 883154679 906172572 632487463 704240524 587046213 813633221 883918244 769373243 674657538 399288739 133959842 378742963 713448771 740695704 999830524 3305764 910912772 927230988 343643776 548312012 924332872 684597177 929012309 737061330 753597828 847778602 368517321 467584863 831932098 276526695 969009494 670989236 261586493 147434003 517385665 992827909 237470057 697081506 401737473 691096296 672887529 239523709 960746365 748778312 283781603 799766763 515866854 750294187 716303659 915245822 9286705 810689312 995439713 737583722 808606250 71731456 372046856 429963850 126262120 293756900 261120351 158528170 490163401
