147668716 463753953 829592527 494672594 958491891 160547652 449429992 275248396 173030313 759244558 773822055 837591183 792894328 217624752 710459209 437291949 72479969 262798807 467011639 113969034 537444555 140349505 973609553 928398736 841709510 158176186 843104736 540968959 821145705 165642271 100279512 350119239 930534721 966235028 672751085 927596642 652240178 653829114 188129627 183584340 2969365 765044548 890577494 673233229 937168136 835704863 557892585 177090017 278876922 321534001 517238792 249418037 366082007 813055377 477081046 650210068 411616888 863701301 384992241 650746027 912079697 695165192 918915025 298888159 77865644 716162889 685706828 299329866 354601829 652332538 790317909 500087326 391984680 653591271 808825923 720886936 917740462 933292985 368832825 85343325 13100769 337585751 921988371 766573325 813521243 906185238 345014770 634954553 108367798 601938602 102699238 902680247 877669235 400502747 752277131 676256637 545235563 544928319 772501101 982174716 563911669 927228007 508503574 571160989 360195197 995939826 166269430 60918899 607696425 172236759 383652582 140016815 855671295 611152385 799750702 787530663 882343412 909226574 849727012 179883650 478709727 649098342 601987901 626282365 634609140 389776078 596426313 348919417 912235570 137513296 811217993 603891590 851497647 557050796 203643308 785573438 112602865 196640589 756561578 502323108 866125962 680398932 375000133 50023196 195739709 929291165 928032541 470705421 911544638 499425584 215611946 894795720 179042407 408294351 426816548 606127337 818571625 905198206 649950521 955528438 304337831 400273120 867333249 534699438 392054358 494593821 417117525 753299720 951265183 848629381 946764125 394018002 553088320 448934266 52701552 417105687 200132530 421602181 621588222 659912779 555741169 61705031 648589137 325513737 351464346 162300200 782302981 991402517 367647857 858663793 709025124 337832272 584746556 755694625 897286402 37102877 741535472 540850424 757721815 181105718 303152348 968714327 898634186 418923719 718955345 376262013 98969372 681190290 743932874 217385872 736718478 331871574 159840895 683786731 355421168 349074330 604781256 836456501 377002114 912454765 95888580 579797271 134680094 498200069 38055521 730587257 967560309 746367712 456325644 320282410 610929405 107825968 38935129 257660540 236198079 124022592 892658354 808451816 729144619 319902697 63603813 531232830 229101579 113428655 820227942 240300087 570364653 644922051 439382692 135963803 513839313 666891828 233582033 395346143 413618522 569829059 744636346 836819539 154140279 644479399 202103631 328565436 769873061 219324004 10003118 713139713 425985055 58429005 221994604 667988622 764548693 652582697 244281780 469412013 402109426 812487714 342489289 757209764 24039356 464573928 180196088 277149875 205171933 817295030 753255333 103248430 950794076 244495681 534896404 29575002 297681553 456364482 353337481 611837800 303944549 373720949 316958422 262055367 729329793 605980805 511828171 969912128 217950726 899371396 131237673 540848690 339717038 715852491 897478615 710456848 605523165 412738135 660000614 639404990 595134684 130547789 51715825 109678331 256743921 934171527 86853076 207236894 269756775 804131295 32506264 896556419 136572060 32071045 164459128 275559210 833075181 707886816 926033106 206424254 86939541 158866831 506039520 149831981 993499302 951290208 784058800 83205384 733162044 29129416 39610023 457535590 997150817 548125363 556673217 734783058 562142663 784126664 49833105 821557874 140437752 462865865 779176688 878703520 905950863 211504218 340538245 448816426 280102768 714929057 168889465 387513848 865777976 691368681 534149286 87151754 888891124 818956841 960390036 946125952 465757687 822887154 742002001 459265746 833131288 724976489 175118268 512196671 55990065 368898466 58411690 420928253 847847989 995524179 70329562 450680537 123833938 259622760 255858173 114632183 26865827 201070828 216666263 39633978 179250075 734327952 38615164 956572559 378112254 19371540 124390989 436792137 138665146 183861780 667687599 572806855 867886893 26138734 207104106 808759735 931926964 990066038 809685462 770054621 78166424 988510544 491101952 510583573 213986892 300808413 521816180 879728465 469457992 190945187 972481230 660752124 717715142 950424447 396413125 101135045 259954464 677591203 772335161 242536417 271591514 165300619 142755785 934694590 829439791 742078611 460163504 293020391 884814528 448858974 46273909 384757923 391271820 951056251 121966692 587378966 391908732 674902852 612242534 296682172 538500892 399251862 433666216 406158655 819065914 768740929 555686073 669483563 49979088 924790290 521436948 126521841 365956687 988006313 335834609 246212868 822182984 257460023 931245459 871169652 586875878 112554229 404450384 904928429 736384874 89170650 433149233 930439328 367655064 716244480 958560043 73009864 19285291 468240931 684738608 679246488 496928898 218098893 374952046 447929786 280453387 303717741 534103732 142752064 741686144 304960227 704254293 19693910 562100089 120734265 266152962 765239076 886007219 113939849 604800131 624071607 22547083 834258323 264347241 201807642 271738121 6533726 773391214 963775251 281224508 567510462 919211908 912527864 450059996 773232877 389615164 86909844 290737817 35571975 561953538 566960426 540146958 920635795 279702537 927044154 736207778 68254283 254898449 773293347 160025192 96864040 497396626 901304890 155040170 936566650 327964460 680851396 258277792 576049051 687554702 706066403 580415084 732004004 587278197 922221228 878084227 436976218 202536013 225888211 462652994 974892456 446384133 967315651 559948585 154736414 943318056 135476168 456479299 752166225 724542495 783181835 45822141 847027786 632555644 274248460 865688306 225864997 625946729 33114759 99626326 315902017 978009398 655754550 833523355 402983059 360408951 705760305 970751708 866680999 847394482 346195471 147830774 68048690 39272515 944880127 240560249 242907826 741888434 109579015 466220397 321762836 266390044 440512460 359649317 232092808 856135848 149751396 173925646 96140323 851733470 585717976 590887000 761713321 288900925 374317726 467630417 526887426 514262211 521569126 958282847 618423097 31926540 154231430 615750199 129477854 316005516 635085324 961388809 258028379 723664921 442559289 793076518 339688826 210928306 200136075 694600581 558272038 286060689 124714904 737784512 836709094 550392514 616872397 884030187 973253618 824889282 642958816 412797317 876988184 477406348 583174949 992779895 104446780 223643895 10884095 747207982 874860318 607174651 90493232 871926563 568387817 534736398 255967616 900859067 409235253 648585320 937151726 210536311 331215126 45289750 645325442 906613739 157957518 198589254 573263842 402994446 88103053 577783887 623708747 689980233 103460613 755818349 680955386 853433335 374295751 145495839 63333935 241898385 721025005 356356279 873767183 727934646 815390723 224850793 264843579 96889427 601053425 901528365 24325667 14926953 148285725 505861613 528337984 340935940 52477222 62061688 761301852 703586763 425135710 158722237 151105076 717287940 410416772 96525044 230536237 43493018 806764400 986523938 915347454 558414813 802131671 256895654 862540682 277096198 932695776 309908389 748222628 781180221 708083479 24203113 377909943 347843240 268369220 258833611 889020013 814203461 412386990 554700675 98403572 380008821 872839886 46459825 492687071 359007621 226546643 378280967 9000262 591790345 15255431 547494389 84266937 660243755 201795498 476476598 972104423 482569794 947617816 77757660 434273510 714887887 733983093 872651500 977400794 509703488 1232058 801748659 795643765 728532133 308928855 483506422 949521236 437239475 698552600 317246235 209222515 308424721 236940232 561061365 415620396 406835125 556461861 605274073 158029046 972427982 259716725 731012453 354187092 156160360 5222167 825377474 240765715 227052219 791736938 239940414 524333890 706490177 55119273 786348788 23023006 525284160 178963872 164432934 935882540 990930648 969625712 507123928 813997775 769013917 43209176 375405944 462794371 7326491 401786635 494695151 975128293 900963042 48650562 573061021 448221556 825415032 564548876 625681171 835469751 96618624 426149874 547108419 716683979 970556824 657797364 973752179 98323033 265744045 445718040 87409197 458501398 623767013 729905447 674328129 910045752 492777454 305234028 211686390 627519069 564772691 593673900 165487419 486382963 620771047 795905300 306281656 179387217 554827885 597932686 784761410 751523600 478904966 337980940 417854719 455645631 737696489 235195704 139526703 817287758 396425021 318383738 410888910 129651089 35028932 590271804 237376865 996747419 365128488 843960498 65052223 477019232 27271278 318201257 549923632 421768970 768668449 50931137 489500876 646285600 626327235 501464479 133734927 521793734 644247150 647992539 581915329 427641414 632841809 339222276 55919869 387268145 655667390 518612196 645046048 524131661 515269648 611976181 156476239 40665981 903222458 301273001 521897878 155338184 239586885 830720961 618574418 632160289 338178312 767690675 797242449 262629829 23353358 157123183 119690014 113479118 986180966 186838372 796181557 125040977 693597666 107396844 297359352 182375045 613088214 339525109 212201529 806909309 613851099 934228626 408844660 246005085 767511828 170457496 997971115 465954155 826558246 479057539 680206696 236131062 794824764 512255165 679236359 881626261 484224892 368672696 614340249 831618454 34580942 209424313 997500327 266619789 924579659 359306867 832841429 834425983 793149005 330694418 832874135 465000773 652862775 609845720 194590392 4886456 979471087 112756119 455025970 85251447 144147513 347660746 87121823 962366443 822897534 7375540 160027309 499577065 196969662 742726334 992303876 860179333 464964804 291960954 353480583 627391637 338172119 595654186 577313972 249217953 333427117 675282308 961581193 218577238 592328793 836560288 13823795 796020801 208456828 405451256 562400428 51464026 354916666 789949383 746392742 428898434 523919087 545796977 215088046 76566005 995615382 441472868 309332177 117645237 290178221 189629472 242139262 125683451 936688432 297595526 885906327 92245659 302400614 156852950 781942308 766967037 603783535 320054348 582539988 92002856 511319184 523341449 676327265 591913449 544953715 236401348 328084624 215239940 273633594 449165358 505541869 411995715 314236116 878373728 927929258 968130882 465933814 39924909 338160560 326320973 347937521 240801191 563949715 324011196 432719097 942859544 288969009 554374465 993203529 595027644 981847213 565706618 101903643 969020377 103137509 114886649 92670660 128104211 498073645 924937878 499540623 202455497 682629363 54494516 773451690 615366215 428182896 874705728 555760866 919835381 464569885 949245073 730981999 180320645 692161508 453148948 384193244 808366301 64831695 478014279 719153069 579765640 809717479 482267130 797094550 490766056 818702363 865040471 836964521 497031909 641460084 981339721 831186332 420865655 950120045 698207294 760452839 819622843 350953864 634444077 962839204 752402003 596724327 572432226 957084649 498994717 251373719 87470875 404905538 666996785 905373465 224677480 123655890 588835539 575299224 123983677 367399842 596314870 915807872 206940761 27149695 234860345 387178149 839006122 650737390 302848201 564703367 628551335 682899401 424722337 571033433 911313201 269748521 422191885 40082228 422156373 619983584 718917651 423509536 886830531 703324723 416967597 652903878 686005452 464550393 331833957 312226950 683118626 696277906 729740468 83222762 222532578 455058385 167781270 267828428 272037512 86602673 172188134 820050991 927196116 925172943 882448621 851213876 342152370 537390863 177712130 361360475 633243153 892689724 685354125 71929184 299781076 867647414 282896162 283565604 307217868 734961058 221114438 819838711 299333687 311006159 685754399 389037924 653350917 447970635 356553446 968509008 864381396 217318645 949278592 225701516 252083138 307534865 342102544 726157356 554136291 138734886 457104559 818634564 472367980 431419178 398070238 633680673 149551624 675404805 841970198 853335793 690173121 978371723 301049590 548582281 265910420 284522995 652762375 166111564 89295826 913400602 424322812 413888499 56840688 7288170 126600548 190004692 605961751 544941141 163660267 856345215 109110222 759754712 893923575 416608989 832193341 1641103 936810427 916937281 530108673 43830250 487661874 908532770 927150889 374486648 503664455 51529296 792378663 911102553 777967124 479471592 581041935 893122513 69935366 666648317 885604427 220436696 138777784 398191851 471315085 323261485 976727944 599606252 205586453 750554208 430821376 159691394 946125925 765946109 191233491 416328633 815770721 509384488 806772542 974277411 671223655 268225726 251791780 923114782 987996688 134370022 553829995 103247460 833962076 18038495 12031026 169546530 972988736 51083661 568451711 796150019 912669491 566075421 526669725 677104633 25115372 344219424 584462750 47324698 178594692 263550584 902724745 306797112 282930858 54139810 443981436 969485369 92212100 703483840 772958897 642360437 293373413 607259701 469608717 750741671 470280429 912046502 532656888 604657088 506735476 482850794 733276744 156846787 157877472 381301549 337666211 123843207 498661335 527795797 49644042 797593978 812017672 120808131 609210290 281901125 341857474 38302019 457634069 904707032 432686517 824342183 750637065 211536641 301464194 804371115 462377552 570050199 356787093 55436832 471065775 444548425 839620041 226844026 320084852 814851951 927905832 307213310 300334537 104615818 805971008 104052097 818760551 596207477 830392422 534110310 754920020 284379276 572177439 41179809 864999111 837074039 33213270 42748266 842620426 705149156 428546398 19936049 715042431 31041161 852641001 65900288 679927044 343521871 974097891 59846269 326215428 510443076 392889498 838078285 992181663 216546282 857938852 922156074 497265859 980524862 118225509 610127854 575712661 326822974 291601952 226809753 929008156 936100682 924312643 764981235 457717002 512885779 488104817 684603342 399182203 800168002 291369024 598304365 12921832 519577120 710719893 199484649 225424549 58788987 734480085 160564628 21198701 902797203 60099827 129186574 180488824 459837212 254947669 518871867 438227225 318138343 213937601 706150979 756500956 224561708 444835537 29158339 161822534 393263908 517598657 164387 724271490 451521501 453715444 548590410 792533338 111120766 681868120 902211551 771206924 33386975 261457730 187465474 882408830 181813061 991984387 950916764 153238828 208358905 68046099 53957893 452635472 236436548 856905559 751142407 920958439 625085510 42694193 741131666 960541181 289267682 40526981 409212204 718037406 146290093 298883911 31490661 700417706 84669793 524809354 949915976 141509235 810334173 44990047 649553659 928294660 931143194 24589669 916278579 396526074 957980893 754219893 611540544 858952123 793994412 572634261 764789831 560951874 157822549 547947927 134775283 125675074 760646759 733400811 127886145 745959936 255597186 434485202 421598479 704012604 361317960 838572692 825545825 59171005 186855663 604815186 675555670 934449472 692751347 421960651 297959246 873166753 768308796 118998526 263028135 445387041 482977657 696674187 144979843 685897101 326451245 14715086 681628043 383491598 212697889 658763913 209531936 235856989 426023709 758184191 21120809 227923306 552931937 38738886 637037688 326061321 628977484 168733222 531843656 495321019 813571548 427657026 558125732 565035965 551410212 20010453 83478593 204448160 953932148 151805336 957824810 43921613 683887948 186525105 142178912 592963893 553921779 675694180 189840000 689119239 419938888 680899346 643731244 135694410 546030875 13881085 417454216 212468716 29092172 19772253 393349502 36933037 387117483 865829686 499175636 308938317 814323627 836744793 78777255 385977745 479858341 458533376 982352677 292092014 41806357 327732387 687378764 786292590 186257756 893651197 648376132 611456938 713602418 707730550 448833117 746876424 681254553 91253455 438533345 485875424 223159871 852159886 306921734 832028212 18115622 511788981 614501304 67886925 515514419 885040064 89547425 238701872 739027961 516693830 4993174 666507445 373534177 90772854 479361008 737399130 726130952 528968032 81537702 530093231 684511528 289748990 408882029 491777739 308534269 464225371 127707617 891070079 536448844 313010359 700598264 209090082 904878414 240848532 248916346 546966083 604895104 572011003 540964282 351868330 500112244 660756433 27221954 190005887 266662854 542623865 69339827 891040014 710132579 991414549 673741636 268898359 307063616 988026825 673277798 394073690 39269461 568758231 271417727 783273757 710830900 410080597 549559148 428531809 383967486 651133166 424055756 667557414 330134581 625507771 336195459 280773462 22962232 86141266 788280952 14055447 378229427 31122281 251974585 901035486 573377224 443812903 930452101 488552343 827807746 970138595 362462657 794580912 354174369 611006140 628925858 58849729 394553372 413657237 464213659 972226675 61885828 572773943 836419065 376782065 674559665 32428667 484466901 59257032 97566549 308247111 335946367 126722513 938101643 446589561 32175265 868968415 953990749 517405623 786307452 71691303 847405994 812118792 300416115 270631101 203504660 909043959 754905621 440774273 300367771 318777422 651972822 930967456 701807384 44894238 10177469 397206360 429531899 797274552 109811883 357980049 269615139 203346324 650657679 421477881 283859922 509791991 797693277 348406137 118493055 118486189 721816238 721060001 975530491 94329626 971344959 966194168 242439089 388148414 660179727 62700570 327970469 912837633 650589834 234156902 873926129 613247716 383229038 594680588 820976190 268593963 262466427 443041193 115771324 553000447 228353595 368483491 244760469 696955405 57011729 311230720 920737866 564765981 660107298 417994497 979577839 497531444 706809470 442992222 382548751 834678433 988289039 831975525 718513842 249816542 623549942 194281494 334590326 544207314 708780969 750722924 402867794 432262264 964494107 171773360 21097630 36872284 760380109 499189894 101217871 699386991 114791157 450923447 275862836 497498803 393326543 144304746 623570496 905855883 641300929 932017490 69614713 408009364 617739041 245585825 253438590 479513940 381955268 748985273 196213610 508022879 305218171 490900988 172082201 609167818 239838673 935365176 472928244 896615888 60794239 421832836 563504639 658903029 408222467 913815388 986320795 345770728 300632362 184194638 890110351 698711181 427665347 341208462 318071030 926011164 309055806 304613627 997472124 436851439 405572074 674812418 440033245 855749698 930470941 358885544 925673649 926569785 650358535 620965999 714047148 754895148 1141113 747035326 948818406 314846680 299997059 286332280 723886046 883035820 221130793 948760920 526647038 362090226 680973884 984199952 54460857 853688076 86187815 553810541 135419410 441931266 307028424 453311386 916456459 962090275 826651446 433261836 142364544 312091809 708348724 513856875 653023149 636060643 282352930 929142680 296613348 475798375 445576192 731355395 574596649 386350013 11522511 811715525 988002293 774298873 639751203 362503231 623924305 702300867 427951149 25212495 956468104 449072578 687987273 307928426 624762649 422531219 160185464 524279198 590231002 478343588 791633515 654730702 381175308 292291347 739250506 76850891 414590600 703764331 172095214 231596011 843976791 825431071 280112167 890843717 898411377 716083479 718129939 777197444 736836883 122468976 513329286 370401695 392575807 681430038 229519238 536923064 431930164 978106655 382895312 817484354 435903202 879969821 10300008 249912437 197606940 150045375 189878536 753083308 795012801 952152077 715861710 536722131 669944929 506107627 631126556 407927791 642826923 328539601 743248856 442832548 143119758 454598790 209720015 80282603 191022367 190303140 58994775 514037359 460844748 286781023 751928059 960921647 41092562 787012246 97162130 281831759 441576087 807660213 938822950 608190650 434255696 815525116 773352295 540658880 631554348 576527732 458141360 60578542 509825414 247289777 61793924 823872741 419711607 134106218 585465843 922214889 363269024 323456087 473613220 637678186 414509591 600625354 895228385 801083826 29852099 789642250 948814032 527111588 523135353 182995398 149921437 550593049 567584357 594387744 240040255 231414355 519094375 441386606 69827204 30217612 55977110 271573660 261406091 500844606 765170200 402935433 406250587 380011118 915725585 306397071 533253417 688148159 833194736 608554873 793574510 189972372 838578825 260669481 233368868 70938184 700130512 808840925 404390689 137590080 934427802 601826002 758371964 545807592 744731513 259186913 707656960 600499603 723382035 699482341 748411292 340921466 157055777 930258847 514830413 226159717 761533403 891009192 514780455 148582387 492209360 520706457 437606299 676564965 3644919 127692351 46101332 479955382 237084989 872078814 196142112 876508896 498202373 368379480 262137511 653368706 802833061 290179950 664792766 173071043 942736528 378873155 633076565 721881081 788954123 64713840 496332587 829366266 856670412 673899913 69510386 975355339 507083432 781625828 689953176 486277532 626768293 760590353 585742298 554128764 341023599 331679009 455828123 91325855 497611247 334779534 33995788 208359311 346764699 474158218 207843442 82628595 929068174 84016104 70061099 545822139 526892868 420701999 557943651 852558299 229990196 178553990 781274936 838917468 906889605 259723079 56160041 392778059 740304219 710419798 929805381 83491661 90406003 500727267 383934702 553395116 215345974 413360157 211734294 240997488 128578057 269437523 312834480 464421782 37353761 999660712 780905577 295948481 477421071 645389891 682905413 149384658 578343824 53169352 972557173 178198766 859197310 269665357 784585509 466152768 385429461 374058141 439162360 882355674 370444420 421673933 837811797 958907580 944037791 607903243 913321713 384518698 242080929 170964296 930261329 640877692 691543985 209142046 287456901 735544014 857699457 673165421 565352786 113761472 196673112 433227448 48293757 680943999 530342599 15755707 764432476 75426625 243523835 308705080 491066822 508708557 196860148 112247409 757633737 247830273 676273913 501886738 885480611 447826816 694889628 330549618 970103841 370132429 557549103 527329240 788289775 979420454 805075683 962482791 401812466 442724068 15638702 287170888 864462039 571032570 705659065 798075910 993465149 102588818 397398252 613554670 443729107 258572873 355923078 354499247 762587162 972575639 131122349 296357482 100974242 239388061 462251190 492449705 815188605 832632336 799178386 719357724 632973048 738200505 226044985 612971713 657511476 445381347 717298623 823080361 516696884 899355045 996386623 639309672 329310639 154356240 346082207 354540390 125673076 395523753 637645382 338129465 216732516 451385737 57145684 56458817 485379581 972874407 807870576 334534666 295840910 946666197 624218973 695868412 654129179 557616924 805738529 741704868 521747877 854660231 152735776 726515210 113263291 788953848 386822818 290175721 506882375 996855954 891615235 553372425 807441545 803099743 664118166 950029771 822417943 696474914 35263521 612692559 188206942 981334626 879097979 509403919 257425507 332162883 859330462 818649535 761235213 58123944 41723583 854102169 744339023 625934542 284973479 939632958 343905778 345345660 152409748 614265604 838862023 3428726 227280916 679687809 750023834 953368702 447191152 850476958 544432194 42824484 257251638 366929223 458530922 702523602 741841582 752341846 834166869 774066022 780135438 697626661 883357192 474994414 685590223 409623167 259676833 955438378 85283887 17619117 363209066 355857030 669426720 38187574 67603084 671499729 995426701 718142434 273463304 963391702 266650509 799416646 423483925 499000835 424255574 294497690 841983464 481794666 937402489 419875361 144300326 675562412 471131602 133485128 664233505 27454820 873004724 636178169 293340652 624893406 380181420 611707815 71891377 706210114 475720689 317225399 547214068 813010586 912349867 282051697 115438002 115426153 92645263 824360914 473471370 220246508 917855173 710791653 537940165 303462800 510284712 314186085 206047229 923832191 951904348 92963825 216494743 483682622 918371344 570891546 381889575 635651124 291667732 436208436 758877086 507002283 964047880 699103788 696380693 817293793 314903005 294123442 917251015 382437235 858867956 791900682 258173746 827232038 734577317 342034170 621133481 147985553 839863298 474128756 172609362 811035463 975926115 445030576 924538812 341373929 758917347 522517112 32950809 845448276 490055417 542811150 402924645 768828925 275719181 224021800 609951880 434347747 946115148 586321040 570200286 840865263 825637203 65291671 660658717 902301247 731312837 774578814 603887168 905839794 545433884 272686776 537647927 850859116 368151220 111817952 447343557 22183705 549659817 98903817 329192256 129872114 177235826 157018488 254897972 189725684 152270340 135498815 616628128 536858763 886115248 500819509 654207963 445417569 94346430 577002933 446305702 258623187 680819305 31864240 721048249 644917015 958351280 173456707 303578905 941198482 860433636 500904808 373751272 271573061 621872070 700314848 16492915 882578478 586248969 237027881 384406240 136985452 356551027 27856104 518190720 882706229 101824988 188707565 327292191 378803702 202706143 902962003 616041144 54570872 928899581 196311734 759240034 482497346 409442436 230575610 830681180 677645041 620349040 126640375 277782039 225191867 451698309 962819174 774430088 534745819 463613879 465690235 349746134 940285748 79338545 322922763 11672841 763347418 930250751 639447395 517289241 81340600 555885660 432240438 372856829 809851273 56248467 219053775 100393229 84719975 285163496 58616212 336318716 848803060 506585057 764339019 703079277 763458071 422308031 834653152 206827251 609168682 55155501 192558068 161228168 855406326 654169123 32544704 442658730 581003061 21204330 710723803 323917764 28132402 883776863 615423580 921388235 661638744 361940214 460593194 911886805 451812893 606553140 45370082 469265160 851121807 62608318 674160722 66004969 296089590 200001729 857581279 339806132 437146381 55221306 694892306 109978935 119508730 274154477 216338588 27613856 587320752 466869250 511109708 856779469 677181172 845866066 412679542 221794475 329621188 512379473 807464272 367062877 950714719 746488827 151061059 152323249 939774810 775388177 153972451 635987927 201573978 798221610 876290001 894022078 504734022 496806021 157779235 366838870 513636946 372466502 660635200 484903396 298019072 635754880 768268163 593990630 129599797 882281646 678746328 572688527 237139491 617563727 770211034 869614828 403018133 750650938 791104484 853493289 458839492 118777697 88328650 246127699 169887375 282168406 934410064 32914099 266724497 271709864 654592798 788174721 419017067 647886266 336957911 497003135 21235972 611364484 125080234 77667610 257608359 806742254 232095354 961497721 761859564 409811625 689265731 113960024 3126429 784893958 300910985 3036372 524823150 710377768 34609082 315417755 667514949 116915083 247550240 852710474 983268021 423691594 886506094 439618794 375985873 96870280 980550695 272728605 769446409 470050449 3047708 231723812 318513206 580284370 138317499 52293496 425891971 588408859 839505595 417180671 174210744 115136045 245198881 989542676 306661948 667390481 640742479 718712522 391035712 411036790 598258903 690560924 394140148 230741080 557489663 257015936 39486820 156393999 425267546 271017947 441859225 411402228 495826659 342872000 540718847 859971869 816373368 791918864 317654186 295764802 30429405 152313142 35817379 856861540 918544530 262314898 701679372 770149704 731113837 238822522 852730905 883714482 590488132 370173762 305522155 212845734 139056287 451619351 693348061 939060199 908082067 879647964 981497183 929139646 654478302 845239416 78471647 405805043 324193710 740421741 39755013 661619708 403860653 280762446 311526824 271784570 512818171 362498899 551923543 817640171 444954885 704824695 146127208 935025709 146957498 518044898 798683293 524180103 209276264 571349100 178517047 30600218 289559604 423225480 342083962 119685049 564309058 411797319 104618992 867450185 44214521 854248202 411109900 842498758 273004144 205206010 90755766 504386243 82441758 40569430 62138166 760353167 922660257 764766250 589453544 815608752 27612286 502612072 367750593 876700068 306966113 110838085 773512524 703384425 911035947 693068851 251455521 69898465 482902983 861911883 763986552 742706114 222543433 161769693 27088239 842139475 772030228 987548631 948945614 790832238 747159629 232113996 107800803 487208291 992451834 531024084 975142295 707641352 181026226 987664303 42329486 606091163 213239240 440635695 611088596 190329202 640911338 984390219 991288884 636121166 460668685 507123796 715315588 756740496 834029187 6241690 45286408 992081829 728668976 700024041 46327635 397487205 72897060 669238450 496151202 918188110 568960913 665727985 857812815 858850200 183631621 882367618 16695001 731102759 31061651 858675858 136715505 598231104 59662822 921173250 61155886 440312807 310434515 792519083 176040827 79287635 906858555 803857202 567553442 92007440 952638196 736975662 263068923 821193094 446812281 506690457 606222408 779928600 994719206 278074319 633015455 859096979 659158374 286417855 667864731 996874151 253557893 131323020 816868700 952570693 515037485 133808613 490269328 652134193 858314632 300603341 976809242 254203684 432673463 374252414 828228768 739904772 287430437 656496320 211902769 781802214 627945123 758648419 271359905 946778921 242448417 654807134 923571969 149131934 496615785 715456166 707913274 348217604 37467009 159377162 881334724 789954445 69722518 71176287 364394039 520630034 388197477 95610029 380742240 109797604 69594224 211633763 716693752 659662341 179838051 429387142 634368900 458725617 339198139 263263645 88820909 876101673 374409603 483012905 553934270 638832744 199186724 194893440 850968538 650363056 794832929 576523655 341770876 466526883 350974077 824910911 319350189 254616170 37590154 941990211 734582948 758374184 576487268 744105602 688875221 933061448 431535988 608415428 53239118 826833228 127303683 294119313 791835102 579965781 958389690 978853502 129584392 893944502 948565977 297841950 351763620 542144770 674405058 692495626 32455472 5125455 948479611 968462378 406068276 685736670 98188908 996501981 491978471 351358214 164134417 780137291 122176826 615357826 738677093 868670313 431186497 461634474 647455789 585805480 94890308 640435538 90854272 613361052 312584080 42364162 11547496 218563872 469605818 953705213 507361824 996543294 81398319 871389889 497530931 581609703 836412014 352428104 647480629 923239454 252035485 191059075 223364133 403790652 638043586 345529363 292687651 887147567 270501551 260206572 237695289 119015251 442425068 787377886 802810214 195609210 798317826 728032494 670654302 544975757 378844595 172673090 718126073 819760528 360340146 528787112 375370608 945934024 838082800 969779680 897974016 226544308 505542644 95839123 664679872 923662775 912275052 84736682 864850558 391551718 970777887 411750537 680582922 675333194 769463897 1618358 337951404 509275519 582261833 142985414 267052865 25871082 617887093 93052276 158094719 767626916 865334443 666398223 621278020 939774049 2282903 864171097 642912595 803385475 804840262 907380817 120984893 617693510 368237951 390140195 714968813 901073071 799155096 937934011 881432072 937063347 897649496 633614423 724852038 49229750 225194358 230352645 448411459 255164315 34672011 629187474 185984195 851716851 465446560 184357701 145071628 726831742 723598293 339248017 184138058 732890684 460301692 642564977 509377430 95630428 710509895 448600923 725237408 416046654 357809462 605740447 855301142 273630935 506485374 224853575 478835512 854710543 904549514 33869001 912035692 318021448 701328126 871335621 899225530 133989964 546990723 805544181 428976803 52555882 933309990 372406840 190554418 390626077 333237486 405668543 994755525 97045639 350138566 538021522 569755863 177093474 265284213 741394726 117056078 538759867 722031429 928263855 285753599 934182312 16036171 31366507 586125492 23864874 824032786 12398320 275416546 891860251 784948017 574123695 179022713 146903390 468893568 727780518 998096684 983739356 839585107 812870861 864015700 465792404 355508154 393575486 766100918 56705479 438214928 412025428 476464465 696964915 153496593 457224207 149593364 925285786 663335023 630042794 138677152 937799012 591835434 113101512 370621511 564611866 77457269 853833986 897719321 346361503 189694665 763999044 363393431 626976561 472039381 147156830 515997414 71460417 920754973 450216128 270641121 658641576 906089322 446197687 768161163 48217207 468239499 210807463 304465034 955042685 558012816 295537349 352487375 874173609 483065028 209698020 533494142 875384839 130938838 870444330 919059932 629318051 255486510 245508320 265310898 829341385 283329163 889101219 477767301 946214207 123107700 640110132 19589418 253314304 168060041 395237705 607437384 775953446 706449228 146028774 199459511 643012830 89278303 695250261 616626420 870867242 331211499 249895782 37714986 353679322 558786568 457504983 390594334 419797570 584228481 879265005 155084150 32289557 461050316 981829050 521503765 5928369 907857390 407785062 27103151 284348218 548295138 232959022 991449284 977800968 891154333 174929012 487847119 322740536 133012184 371312761 623476653 888339502 299437117 765107080 524591325 698545609 554937849 393861550 813984477 630319429 621586042 980513543 782106772 921735736 602445206 40056974 568745567 147737351 297591758 358531812 553271478 595445863 972893037 48113471 889501183 439220122 232874841 963146795 210158802 225528997 571931273 704052135 254860051 174510296 437346960 34124087 172086122 714220248 824682616 249821527 423944007 448038160 17500870 902829546 313637289 817759211 951373077 444754596 170520247 647413029 744375265 253361517 228948457 617503281 991284727 453376477 738707363 645643296 594353536 781072207 810281726 264036375 880056851 818616982 786327004 395978603 73741039 754636748 929503723 175752573 49308172 482490301 980347265 726137446 325397212 732653607 825120903 398415225 376920375 369430531 7205420 633091557 763563206 241781273 220682349 184006593 602155585 513975699 647576649 923159853 482397300 916654667 533951048 868170676 544161660 555340897 846518791 252181974 545626442 769874416 605232098 763049762 858502851 848846706 935574220 27876621 58191265 809211183 345561171 783449844 247909631 94066818 811258702 172901913 651701200 224959482 658261966 380037917 278759890 783029973 771341514 584409671 569582591 776988724 198717564 547302400 774852963 388338362 98004272 585425585 355136582 263929523 314182311 815626793 267396624 886970031 856291442 441339448 174501510 207134800 397461850 334383531 136119485 22792653 321973287 859919073 410831491 908471919 345967253 842960263 514036312 584926788 797500514 579676274 712764431 481077493 199916477 613109477 133547357 781150162 694797774 929071818 930701862 25907354 123226838 876956461 775539912 796580122 966696366 985394678 498508442 298069399 295902381 673051738 170447048 217383835 252545923 797546929 88954290 22223588 262773097 310656742 944348052 986897702 334282214 879838680 193125056 892060805 849454905 38257094 331538035 48898923 557263654 759935696 768380002 992807405 298622187 465808518 748358262 277909882 459772585 547632140 615679605 219831872 790699892 759612162 319832251 569890533 32917148 260272163 739562764 397462636 747768059 357909697 643324038 373390141 847728581 445806554 73001428 965812042 707777473 371872889 54505353 268230831 514362286 838121830 487478143 506977508 672082770 50655920 286129898 759600712 735735727 553702451 632619120 910207103 199767481 568621748 329343605 261981964 99505779 187006406 443076786 573147354 154019284 43695816 683941590 172793950 80881010 319287784 937135862 544368459 294232892 55410008 956543316 299079756 139742216 270250144 509498048 894234636 92448832 134983105 44654869 622792743 688103126 146691980 797284087 151184334 931747123 768952648 215295625 903515083 345032468 619652606 637853587 477326945 538056265 754773999 883979921 979467766 315114086 546359059 83783080 619016390 988640883 978997564 791943490 283474338 405498411 784109553 215133 53597270 453185311 617039314 301738713 103493292 952313071 853549565 694838540 561740374 754140874 6019629 899682202 289294678 633855903 298770480 193931482 87507324 350155025 636681326 842101832 595078817 511580382 542079635 397417315 510014672 215471718 838274599 660824064 39690692 177263642 410956654 46411129 99720357 798699438 29668746 290123249 315627378 385859878 136650408 43014218 529889993 364859180 174927134 857682697 575632071 412918667 257172886 143270356 744422231 890688504 678522760 634052381 911658389 357631548 663717187 177580906 848965299 423140607 984125198 312045643 497417835 501731035 119119274 846874305 971192200 93323051 766501984 412180083 594843478 268832225 645761985 884879342 86941647 843121099 491210271 875550991 638304088 304682629 264402321 642999464 960094474 394185653 368823180 363597136 580202864 95072907 302502256 193064441 793878694 492656059 753203950 502622291 807132792 446220121 315336765 291852459 320625370 604815097 81139957 843013717 221888966 438145127 509036734 405173963 366865145 591426144 906600771 953894193 13015104 829190166 542515138 938823152 748466721 232510353 245066591 638377535 714080726 987364067 326805535 447771760 756941457 472618312 988089580 344135884 78469609 660534731 29965414 221162051 637673116 418335612 362701261 754481548 662942681 195003458 544550648 26067432 386578213 83874933 594383851 134298467 34549332 403811985 466520725 317911877 30736453 688118668 975792172 930848125 927509009 31020480 947656507 109858141 728380179 528252378 943548809 298295843 540206284 893318709 534910789 58058237 424529417 40168478 693189430 698993120 699438022 329311251 688272641 79055189 238030178 458959438 35311746 689945063 922159272 226009003 119702685 520733441 851776028 920004384 699522162 99534402 36700402 203305590 639353799 223758741 776254418 682761432 666881322 615940021 349925613 429116615 43536715 301274998 263231051 353370515 205912220 997525459 719717918 632212762 491401678 652566350 154799614 240840681 665991247 797577606 130721185 444188488 593591260 355692490 865314759 90756867 153387241 839869694 655374243 788220044 277570449 145551582 476907251 958084186 598910025 401818983 542580179 956991891 726903034 211290297 77548857 983919704 165646725 110442743 596212029 178532595 907687190 507323124 522133861 285358495 206412409 905011209 501081204 692732261 802406210 90660120 481011499 463304236 853932226 926503562 534097620 863629636 216530646 242780015 43249302 968373358 285246094 98610313 336815444 10001682 758993304 136613821 155870868 396518557 316779447 913387953 866386907 407586598 888545288 177924431 677671657 221708572 415167449 732114869 244030784 572055483 924648069 435127399 507087568 571272557 83585432 701440824 427155302 841800616 681477855 969624313 417824529 396715489 197645460 361154547 364448203 450736140 925685877 956215366 828560986 635530819 522627799 328369496 594634510 571795622 674846969 410208736 198276872 814172294 166738745 989794560 315632240 631543356 388111083 209479318 117373744 69573237 937428474 58884832 635656429 765419119 92180653 738788850 429728723 500994163 816087686 914559965 934960719 983666786 311725653 974367896 30113456 278876798 152879933 228234885 846362032 34345768 487011731 15418507 782447992 812726345 243226173 975069704 89979679 795625057 848118961 484154472 629751203 981497574 896848033 47367950 498305062 1982487 704691217 274014465 268082409 970368200 850108803 777566816 172005587 627759118 233128120 953109845 684104790 626452373 796141411 321812424 523896784 841414218 947677874 6796685 261551669 636190725 524960884 70218322 531627185 463461148 363485034 224554101 500311311 688069312 771452152 406931819 989848742 374776631 207123227 385725146 89870831 627827391 52755476 63701542 254198081 987244809 17591164 656028376 1829566 549065158 633172441 335497703 249380573 660167663 670760576 384570266 510727198 429064002 670532443 23403262 8536334 169398482 476765851 51087559 80677587 245630024 259297578 574491974 52931269 605362991 52311835 764207060 29990330 780271300 82065130 217102912 676454968 43455598 975201258 727325906 1846240 469941488 331740594 767407618 8307971 389975219 121124493 916955540 892816294 121716245 925215938 944406402 668362698 192351400 945930238 961249754 166923165 48667502 770216343 91604349 768023087 537656030 291730508 613066756 106358299 759888866 166755142 264249703 530460520 31135564 840490353 816098302 90869563 820024783 519789379 952577555 824756856 173296642 376980512 82804352 466606995 747727079 991814210 775237579 666479973 499845333 25869010 582014595 97357880 701214378 283665530 693011988 748605709 399465290 812738373 470242497 899644303 215845061 826279319 751879459 372790171 584709285 555252031 979845529 123453293 510473787 496666947 114669878 489992402 836560065 835162940 184682485 616508488 859761587 452365577 845351790 31088045 289747521 331538816 657593448 908127033 998662400 448683168 126451745 926904617 664207834 940988547 534523533 301416350 564669018 96649790 75961531 223110750 462186286 350017920 870405193 60611711 548496932 559433665 265783351 292254614 148957249 906130254 693897126 896987870 498151488 812179605 882693888 302642885 695687889 476379475 818131427 200475900 684169881 367663395 124304951 685038308 423270597 369673260 478658723 900823988 715143869 756160170 577312539 123424615 240775082 148223982 402671696 893369610 148316511 137740229 505379889 688682330 21690624 382501318 661058970 647073239 81761586 565500873 60388137 305252137 848384887 364022802 522748637 330415493 906007555 940589785 425836693 623098878 204287167 204754119 111809817 164939719 72969585 636854591 650904576 32478188 112576397 435822991 228719294 823080479 487504800 778423017 156100100 692243545 16408878 3028021 817918180 884316212 14654973 151036570 274059467 196785835 634875911 917292697 184481725 187970414 745510522 931554859 605510240 914833157 934475117 19159036 433041563 661344698 712377473 947168113 501370017 681900004 563669101 694164832 243033790 326022454 353999426 427814786 973386404 855058934 874288863 308249 655246975 939169262 340644960 612026169 26922418 436358005 206677948 290085817 544788943 454336550 216830527 856117258 150383903 491942592 861914752 34014900 631296125 686215345 31543954 473791890 760449078 724271086 137674501 661422362 840236585 232783797 664738270 849262503 131180983 561231214 423358244 217510022 815656613 639723744 956108924 305550872 386022893 277214181 736799774 499625313 982260553 481321671 954796157 485337992 422132303 335625263 421828661 588853254 938157321 893571912 49133898 208926010 876985247 328282325 450185116 677305677 722217465 380434350 671816898 53053245 149770599 461184544 16213301 897229302 598518243 72856135 886988058 535941492 898560619 673846598 827896578 567152626 127918241 377955025 686752545 782899782 20728735 454970677 663690818 338174287 887982590 161450938 365899662 679257131 455041805 894488195 363836040 705555536 817160866 974986791 889512754 598519880 710962870 359252570 239741602 691102926 472815222 974450258 189245907 611801230 604087740 261945120 206011433 982620907 730645462 381337838 344700763 992616826 221161609 657181297 569604764 661721365 739872466 844980052 72859150 325404809 476004407 8299714 613956944 612792239 429437999 675565156 705853522 81251530 554277674 737476363 641175014 406753430 663061602 800772670 621990099 370096512 208835340 942019506 334989416 914624046 171665438 495165929 648507985 354616171 216348608 815242743 632715083 552141144 575126302 572336429 868499685 182254969 669929589 287488431 955132637 724123603 424522342 999413767 990974776 441982509 679280922 516924979 223888216 282147752 451110362 899492608 103137022 760528798 603150849 956663201 361370147 67463685 737751719 553300929 992400454 471157067 78444624 139122569 106839444 944113001 554677025 392307451 842873224 292737305 442382067 204949711 379018676 96765344 791810320 988105115 967330126 419801234 932592848 188517039 858149311 284068749 619774383 386087108 31892679 95412529 315771361 827476294 21944840 78619691 551297273 417310003 527954133 990091370 943458086 986861217 265859133 418421451 547683646 778808355 561135116 476051943 465302356 750153581 99989049 933957919 559431299 605540823 730804252 489960728 812443606 404306030 127923001 761036628 993012069 919753065 360361079 172469422 291165302 319823615 622739169 359967736 28992344 500624096 685061220 766397010 293788170 599371940 873252052 470672994 800716871 769847541 657803619 515683798 172450302 701665363 246524933 663189901 451494995 301942905 745066708 679832556 635374656 217988727 961627115 24152271 737727896 286138164 893199848 307868694 520695882 964814959 142845869 699281612 358026728 228003790 446908158 694802340 255694458 338533216 499181887 839420157 140919714 606160897 7075398 878325181 839979375 251218217 927127524 753872055 820898504 199523746 886975604 935008204 150701958 941933448 291491353 722012148 55239778 10130378 14065238 334838950 477471555 210902945 890825363 467458051 233659286 619792966 875573572 803785944 134514157 113351325 865186551 596640946 839120933 513799163 946568232 15729855 342453450 193486460 119947595 63078265 557941958 266142973 466358876 754700784 867894438 717154711 337730204 679705680 44060072 876877187 814352623 208383644 206687322 398264106 228776871 621622124 936165288 624955493 773527240 462644146 235587967 124578210 51652499 875455450 714095783 376338663 12085242 121127471 883877226 749054705 696042379 987543015 222529412 152131284 857787033 955147726 906451284 727688566 594051800 322037694 291751532 219560287 711105552 591284369 384022932 915757151 961952526 732549905 470650 270511713 730598626 177547346 902664318 261722438 785558661 934377508 590467283 496800813 48007445 726315778 994060721 902932165 312543826 852636519 606813581 207680316 623581224 788514025 101306511 955969381 251053912 297412425 336244483 804482669 993656071 5745941 724791406 627296504 278758913 854575252 327685368 719771721 59448900 438592670 718566644 461743693 710629995 487456206 65586177 223996323 883441281 198638902 688319893 983473818 371204232 555040563 904109183 244716442 336161880 642880612 323041869 299638031 646179696 320744102 868982196 576381635 183230291 64728066 141500285 522331821 206299726 296509416 947766735 469192187 585127502 661761408 673794820 104972574 320306559 644298442 770938546 111905738 65120371 618678954 955717666 571840595 721940744 62728345 236641292 940790190 766289149 171935577 533505668 387587357 334715192 682196005 373972083 324424226 285154933 412377420 232873670 879320902 135568271 573086114 377330947 857294945 13822644 391507338 185657332 289924215 191768857 164659286 405640081 229327460 697198051 222739443 251786278 230989325 511260412 804883259 236358723 746841899 888445508 263754665 938866609 964930563 871485075 544037175 117519905 771198945 550149209 477680819 131806246 358992289 198419331 409882688 286407541 661968078 514106015 369679901 524341393 571081181 464819649 179651682 148622673 17145519 344384723 924217616 362037582 395143298 661256478 27745851 474076385 418447960 741421462 492482834 473808170 889740754 396208321 660381977 482233824 241297309 45809718 666175508 566712697 915639731 5054633 848770286 649299145 589702430 176373087 316390159 538837795 862104118 682734027 779634989 410294402 470996393 608165815 308101027 514612629 673996314 818675834 693507097 292852058 638798194 819785911 475757899 631744443 432409796 910454788 381703136 597219366 613494746 270347365 748290888 211830840 80943941 556613329 107735165 986259501 999295167 554775967 97389162 806697966 452697130 217117336 672471561 367883868 914493178 778652096 691745990 740159887 256523814 679397561 51899097 423705750 686664024 988327461 556300759 822477305 793143526 924487429 469532505 39422403 969279099 817214123 310124288 188078647 121494132 5150033 845383451 856715773 773364011 107628073 222450688 273476903 29892853 417873290 80396885 509097198 457272341 83521622 755585906 838550410 735870595 689746417 720759335 438355021 637432445 732662110 935599312 677546383 951119933 174933699 325263401 92363823 531044105 971720598 233119976 836246478 591812581 965901849 716745438 337511583 947248153 283305337 340637496 414864533 870867166 896804049 15895409 446580955 620809674 577841815 499673177 397934589 551392219 486965452 975956744 311165553 73331308 52610174 5664402 880762119 828321110 129451258 935509994 632721730 206197226 630046361 714430379 485754582 944396987 773353865 776829880 321367920 80320176 705688007 140756719 539296237 601177860 729279639 717891343 170745515 177042698 516706776 872080031 597266290 740017078 70122247 153830894 95876362 467150063 703684724 189173075 881818089 368093266 639710263 593176821 494573424 615016325 454960081 700145800 551128324 539293844 164105863 304559221 33475709 14219874 540706052 99307334 369546059 968280736 37323417 162226026 459088757 77184475 947405782 748295415 355627494 758294638 742516775 495353564 173739012 301638815 899883752 758618213 396080584 873969312 296475415 883086407 861866698 135598729 427681329 35072318 201431509 124139882 325395268 295674957 52188136 996727938 961608182 897447852 161873043 723311047 509340540 92961809 324429686 579785371 285496745 968428127 981823878 458776217 11269782 897872259 863183700 615267374 349564041 158603246 81973885 316145513 492745646 267094214 6027851 561848452 22432929 354847130 355525193 452592884 599099045 685920488 161063928 419416190 407000892 688212477 123245095 813430276 739285923 580273766 490364808 870843578 976916151 74253244 387793393 711346327 728393840 435951537 393530474 853015953 231802733 781979418 460666291 140814726 74700379 463597379 396636864 981780962 787811786 643632221 867864634 191667137 438041459 666606006 931062469 768999838 15365800 502198360 207838270 86622322 121851946 394465665 294476467 109631304 981130368 149348283 463708571 318476782 579334256 573236206 376339658 761228885 683427146 587555416 424255975 796834213 289896121 472647950 613912148 969128182 745768423 81784279 78166112 276416526 26618601 336911053 986325207 532434636 925117681 342121798 224104652 135521636 977412410 498550298 76168514 706473628 718456527 560538896 823674870 605671773 934282997 606530855 241248054 530561397 944622956 856948795 285348456 432388702 713860881 914848685 214818796 383696072 702207807 174175118 335567057 186526814 448435688 737457484 740702337 288929888 253073145 480573280 848528474 20302911 740832057 97258113 212422687 591665254 313454762 110353074 256368596 487599768 686608440 548053058 95622688 928731788 987991899 156955141 583584874 95945648 743523801 350620340 20356399 59273607 912324603 412541269 214115382 86298407 87524858 332738114 289568865 940067600 839634307 484993754 541491593 391168620 616069986 638531385 574803397 770105522 31478682 735341870 985420092 609399580 648679178 647644481 533126247 744571534 968548895 263626683 885357063 767993927 720897801 755751606 479933246 521906572 105950937 366741789 401795949 828928030 271377116 368145054 924690837 342924533 581452859 577757045 111987858 857311182 114104100 18468303 558341188 269088031 712734080 217393010 927842006 782840576 988256565 462996701 720552020 587331682 707538160 456695546 120154232 287489281 822649819 583636227 246203927 797316230 868456409 849605202 309285483 143927220 219924421 325630155 486133704 28511689 630518352 27558671 437495312 686158111 925135273 673882808 944928893 698722020 992305156 382488179 111669898 374423311 625076246 133187359 776939996 886691879 79219177 491679675 344386239 188156530 249762919 975929385 730495950 183993158 771283170 290308978 122872999 988917676 908477512 811364583 501123103 845615935 218833384 939569419 871325828 871514004 866110103 360657535 708177391 845938550 242467978 492720007 93799675 223519947 118357355 359241931 731804585 144721701 72234867 832192021 247604664 508578549 730463534 113216762 823994170 649467993 736456525 358743588 441087067 776977243 982035217 559278268 381964272 348212573 827529774 47178534 439724887 913915255 553864177 943857095 279600024 197249720 910203085 2421106 116046960 664871394 785223604 217005015 255534825 92798587 31105280 466067967 691703151 588031501 529013116 76895160 671889036 955237264 648135605 412044069 463806071 581042994 630754946 380180686 453313560 621794337 145635181 962897456 628124623 374463009 808299021 615102927 662102804 321316066 28321623 400189831 154689761 117729436 384419817 964614192 958475925 882079187 603440212 148087254 637548280 839491817 584899319 834258388 636472920 982775647 696048286 411206696 64562144 321499972 620522129 763325240 907242486 937739581 20526971 563946784 817247216 372971762 101326742 811328778 920301670 352568907 125040046 168715970 246467601 728207091 849185147 14587764 602519808 41529161 483056794 232637079 513509170 874819818 899818951 71650501 774474127 157517849 86384018 460324957 5329878 247022911 946157721 998839297 236520521 271139016 801624343 490478081 244672239 605409407 638147444 344073623 654393397 378818535 661429243 467673796 903943264 54256880 258324923 602788797 552668703 306326528 195296345 964777441 390963969 669807496 370149214 100157815 275221210 356550580 42044267 547092004 863278919 295793551 714202749 179565532 486404204 515517040 140054378 144369003 409937810 890117163 156695967 766861711 737092067 926553992 870565327 911064720 173779291 779788529 419524577 15773742 537594757 961902178 164991047 821946527 128952434 291709449 658395154 226989100 462067866 916794090 793597160 820394641 706334940 329639930 727180307 211863329 712371060 346994150 724375154 663874720 827055917 335452773 635914951 166716138 795087480 598251818 324481567 167852456 724124280 319865948 147169255 310087631 903492527 135119075 87910486 812675424 751092045 446722113 668313623 918494846 989594028 408661515 578225501 106350220 241509430 980603059 697473319 941529349 689772602 773763069 630793338 622322197 100593891 958556666 686026550 198755805 808361345 194846011 996305410 285236275 143403517 425369334 350011485 392367979 883053464 851890196 171837901 518818661 843701311 467342831 321301975 909324572 494985542 222970913 228565240 546470331 22566833 410034952 262707670 291243701 230899103 340602849 800013912 677024628 205070344 304626811 594904352 327230277 556972090 973234242 636700932 980351901 165195103 184466502 178222080 329610028 548909771 317705577 631543133 759654462 725989050 993895047 816113346 256439675 848262459 24922078 714718202 708709100 169068860 265399043 274901687 628489543 212634550 42271610 592265638 348735747 431345269 186726519 246449039 375211340 181831104 63188719 342063931 603208910 24256768 707711439 23193224 869757660 547471804 289467381 986157566 519440827 824690581 97571266 226141923 332239467 530424750 123100247 191260848 445380908 197362102 493877865 729602346 548448602 273745642 652587786 574676060 169803084 822352836 383942120 939481866 840382276 483521597 106234173 186712170 928265028 617352506 992754731 511248647 928493840 422635593 489769731 471527723 785659005 69873857 637471448 437276784 359263146 293023115 660871216 402849180 11745521 692246024 743570485 469404232 495223717 885753254 66293556 564528319 556762205 117724578 557408210 917586293 118624733 574538547 345740420 156713707 439766260 957562478 345844901 886666623 402508188 883526966 454893817 479114286 353727888 824881003 728268655 338827567 236802224 609473442 126368251 751623895 706424234 64753162 719962663 584309054 291470516 248837315 519040808 123439544 507276777 475224750 747134148 5430350 859756092 699762402 27164386 886019935 74354451 362742458 351589611 338040557 182987626 311277436 830202725 577706870 639407308 410934949 52833282 523838547 465127682 82258987 997560560 920909008 903824088 12887610 417446039 90886985 544778732 747816210 722219358 141883267 89528911 823479049 410339828 723825314 133094123 635865000 816883306 543782514 529926526 191369347 95315793 919922239 504154118 250429689 405881903 844227204 353286705 517285165 400458697 517024132 708009737 804788298 725535100 962374518 945830088 161800758 535370071 461767818 416068140 92562130 626640253 382536958 129624908 366929380 165668387 36588966 945836357 340121313 991118892 467468169 539227209 450804731 6104439 773811027 37191733 876067008 581264709 669625325 997659989 652879024 880520152 592215282 129148929 508181085 671826792 792463299 322590163 37060683 482160928 423225367 240297461 584391173 900388383 366649199 355015646 99528838 325979755 926172789 488317008 639586583 178424012 524703058 15794040 426737152 233803415 382912634 121327364 22367775 841330450 937695723 939352794 220774542 678128394 984416044 67892589 650404836 850451449 441925859 539065304 319447876 103872834 772991520 467452100 5612060 791355582 706262194 481554293 602626337 484164131 426945847 117264029 354501539 28196586 608197562 768013176 237354145 827919144 170896311 61525083 153402110 456402449 533397317 959495910 774983647 912140783 606972875 894657479 912814465 497032160 175719270 483358279 703444170 685340657 192803088 628594729 173644077 984349148 386773247 837865687 313787347 738009765 40080396 202573862 9637693 296027164 255582974 696795701 935340411 533260955 985755413 161270397 722059258 706762792 322244092 489237801 757817405 51626448 225045694 921495113 315594258 889666860 219486481 667094903 708573741 912550969 675291298 23236787 656947363 697134304 395580113 856831412 60843482 256007201 511689961 109755790 397419689 313572477 893429997 415513563 265053024 62516958 913657984 869554729 884992568 551289031 283617713 691890442 277159698 386726461 731291279 692776119 598916362 530002948 569341306 686300420 805542543 107545496 245580962 407113046 127792307 855342772 232071294 245178219 603505584 728426101 79640023 402627614 778021648 395599592 837942632 552497431 594058081 307625861 119204515 122583870 640142235 580396100 463304758 431322249 611072988 21381810 237669476 340356373 772383945 839434533 486962809 430274525 153364140 889633183 586248004 441088847 789734946 5596670 389259725 260179441 751779485 790592990 429765036 202827326 945874558 942444611 797726155 846639288 298185768 276673416 830121201 594987787 560364415 632164358 847683234 819490143 160166971 371197976 303044229 109916461 598743028 611774503 40688546 754561322 763080318 823358098 511873547 811431323 553622565 894606155 209452209 715299943 865238571 131651037 718603665 290479119 447808689 643758907 618518820 1527465 225775814 953405975 199150929 357982916 582037335 817767050 511878887 52574868 665885929 528294488 28399661 508824215 59219377 517245257 508613543 973267881 711906604 340950406 139623972 613880391 58740382 583883877 795611822 789498383 382768334 612816852 825620088 527260264 194705759 847011218 955367713 647566414 908771328 621507336 367528758 955200643 467737361 935209213 981528218 593197809 618170906 537457761 503932822 853965355 585478438 770572586 79818827 813933826 420434754 97613276 829897516 393097152 888133810 550049552 442559435 601120422 379247458 510925930 201226537 766454794 951486443 585012687 824041326 52202947 774685126 218647453 305420588 820782748 832928726 746677794 2557284 835174024 425652641 651416676 337843274 852180438 553826301 942200492 265481981 714706146 871955690 497126051 541639587 732815017 194409281 465866676 195397171 196161610 298602135 740650418 474055249 4253364 882435603 466750601 765728186 404995555 732097265 285268581 199915302 572040964 287422143 731763761 986103425 776778380 403923269 403863392 7787064 750416280 964211537 867323954 759878825 882185739 558919741 578082259 297256012 804272973 786695193 93061897 28363076 737456603 80229031 586536556 82812134 686897472 947930813 927266698 676607115 882248036 244312848 546719325 729882749 667389034 672345903 998537555 111140547 811768656 151358522 574826409 693334132 668315022 306598917 154898687 431500318 732614625 386385892 243921084 455332883 672699691 857110193 293096050 460327554 168562783 831734025 199792051 703774191 511181742 595967961 574164259 109901794 283145499 474474422 141993249 768611830 789932211 548119138 347081182 642484772 938719064 313060882 566686428 83579485 243103478 654676628 364851741 125078069 210558786 139153904 764624260 212599420 626890759 41543730 792468299 635604488 864989673 314393967 278985759 722227000 761134245 405141549 630651659 421540922 134392115 721156198 363578895 803412033 129158615 18377531 970631980 765563374 110681463 543649642 775139723 455046030 730396743 566121507 587430685 596509044 127932519 141080408 605295733 326496832 34216790 844532734 554652613 406513364 291173234 525832863 700016140 309913313 74967032 730473620 23891547 104877805 996786734 728360061 622264752 323138786 803312247 555566206 54254789 91888077 50287541 820083636 875184601 487825716 90417744 665415906 129075953 60514224 794174222 373809490 462724101 263197132 877675107 966822975 677886444 651908138 990880599 969260837 879268710 208769673 69067847 319966533 532378242 383742471 450196334 804730176 165286837 514286824 112563039 468295763 462893176 920439042 77767787 269947323 961254292 121024466 429819930 504137239 330834891 795701979 801564289 391689213 108806977 795560601 98308319 264017470 456844581 1047273 34273258 520182370 667895600 864545786 415477278 90892396 124745782 927385784 377883163 615652461 532548789 706772909 737186955 117720495 656329671 219955509 968928830 630647314 239514159 24961684 71008918 603015337 335537910 491305685 843782827 627379487 385025166 314377161 102251328 452373258 476425379 443189139 478244685 933570169 580997371 439799598 203214034 263005483 689870154 780114990 456835385 274830428 392380787 960918971 84017017 996553980 855356678 282977859 237596180 997337114 914308944 572997686 362868575 715468676 964354566 670598325 595796509 547700347 846430072 796454509 97322205 322509276 328983124 787183058 276664019 497798977 81410333 704388015 301135691 904557057 168765975 326654807 783795162 27310447 528276588 943007962 51445549 563533254 668680920 183599808 420450568 806267172 27664252 818080880 328148022 684307059 192849413 783136506 980892162 474243799 136998831 412009412 294534308 340971757 695272227 291619873 9862475 949196933 27041634 777059503 629372701 98067088 106535407 815907280 316354874 343775293 92055643 727941001 467965179 403123645 609836054 631268726 505490493 778644334 647136143 883418881 518737012 612358924 556432283 555264058 819222104 650358729 184092378 774477526 695232656 572029309 758135465 367438489 505591502 800276270 80856801 118732037 109506094 619216777 817111993 631084162 565474431 55212531 727502043 101459501 118583338 681120219 407469163 9258218 609600550 511893587 469357964 330250123 960458702 413947840 626899692 581240037 302921511 540965719 867510198 898406615 797104000 755649849 209272649 128519371 270156156 103056307 874239590 889237459 603285721 76410091 999807701 211391084 236668217 6020180 610852465 779190508 100247374 169758191 914734998 930114852 50322641 229822776 442260384 975442658 517381843 42865124 450529669 484052203 929038166 742865530 743576020 198189711 600262638 549351574 30245075 230447680 797795532 209205433 399314474 639900155 398802648 803644647 557880605 805516745 498240223 615460379 270844617 344409576 96389868 167127432 750992936 722748458 536667267 152621560 71137968 998018639 127728054 42378999 81598773 161068376 842451651 798081210 679318495 243747549 971357148 904686673 235194810 171078878 426733170 597796089 243414049 909455404 987413563 513897385 422396752 920469200 888141805 571557914 774095204 890252727 268882625 683585909 941430303 488671436 294990312 454104519 882300433 246976752 284935563 363594886 962364170 932194454 660802545 813399913 745808755 171831177 639593984 978154145 211366152 999880235 227543348 878968534 729821044 220447312 720746811 60506426 516372337 800559310 765963882 191519987 573158478 91051886 809645253 878990888 481800383 219588297 316401594 40581434 979414924 503761011 42369959 334586340 494698804 746750300 492322073 805836946 489772150 809790388 695586761 782793689 51152413 724074280 169959564 436770393 289191926 797300935 842833455 284905485 443806664 686203643 505923845 503304068 235202061 48746004 62117129 69146313 562018959 476782191 168975563 696504402 379137859 696152761 86164482 184521863 162929353 215342205 83728699 759995950 67770844 785868941 129558667 453904597 317569607 869365258 609983483 186373788 18376351 703189620 847773501 534211174 525262907 5338580 944164931 618823815 632523232 958548294 142231336 225313150 508703399 741698082 750585932 728244603 578728242 548562942 250738000 237324405 512513593 268334977 849305440 832525429 151764541 401640070 335075931 975134954 649800167 916330499 526898047 699926403 811456052 119495810 179451996 75110674 73946410 879155460 25687144 175574855 54189066 717504821 918895691 579308166 468242548 872582422 587485288 490434721 525727141 310734141 707650696 50453136 501667310 151041350 469695749 409468815 432035053 597696060 230886892 366824463 127240828 498131979 703194320 450967148 461232012 231563378 831026391 621639231 559134041 826963427 263455117 898688382 312997623 92608478 57009946 498122618 567527865 955824679 913267853 891248007 631328097 232353856 518302770 472445422 924010840 746240068 832838000 914414544 966339906 151843855 237230906 792134904 413323908 26976684 279928701 666303573 106977222 600719858 993813609 227117603 341665886 216774225 623384074 346283012 53594007 3753490 655589400 36458029 757014027 103148816 736583239 762707804 209410312 599732741 9403954 287007106 310236894 404188239 818598228 384101007 737465510 888313759 977953891 281829709 355323561 164728835 810746370 174965916 275144074 711311824 644402378 698103750 639756296 53378696 777475407 944606908 462321544 920947948 965198260 810517584 957147866 129869529 637441946 247687822 412864304 582531572 15635562 584016834 189398763 627414437 625872558 261014923 98950309 423467098 80476788 540696201 479486861 279197240 787501687 670692350 622783644 36548571 48874341 315246359 536874027 797188349 335944299 359187761 131593420 491859156 425424010 200621368 458780984 698247949 309503534 996320923 504140144 980320283 571640291 691149812 392803462 578665182 871962443 931674254 366834415 802882819 237450749 873271587 107865824 403288902 957072572 10178774 6015586 920630528 145221500 29026628 400906015 431449419 594547744 829125259 227464464 960124855 759713516 583938277 830355810 129059750 443460535 299861005 157576139 397345392 933296564 391356113 496656212 695881658 316246137 2115146 839571377 921576969 968613753 913828488 446969299 223468987 27099211 841233375 959393746 517785480 363147928 278855033 306457122 470760881 436205755 885866185 748031336 586988384 942387193 33942758 373064369 857595642 676462482 472573905 946615740 123374456 790614068 230520467 904336078 737995552 507822081 598642262 414423517 801564516 413765885 482112540 584515413 991749796 505932220 710201165 738745202 58122592 42859756 737050728 107790300 81773332 451204509 621963728 978150968 548274251 275015105 574312446 796410713 766320680 966882626 99840635 668679610 107878791 83611362 15877713 13840553 728643079 363775513 991680016 692175627 510842703 366944503 754034214 949802535 409371084 270470597 487055436 316428388 447151249 909107114 146972852 706328127 432516145 353130626 547832461 985073805 408010866 272882268 155378932 95700186 563584741 487893695 693471918 120743892 225459543 327926900 186481552 717312679 872987133 492154514 161393395 860390755 618699461 722045801 389074910 393509114 91613028 12496272 471400761 104156572 1103288 959417015 773796743 930530467 213723800 641793887 439424507 120621897 32673965 362155991 346501495 189920184 625108208 302918857 908386808 217626222 459552492 689171208 423213717 301457932 999646984 696710056 702672571 171131619 308699459 689503389 809968129 260423427 721234162 782521454 642633197 514059210 158960818 333981024 496495467 361235910 851251794 305121536 224335050 149775105 694768106 294001756 315913742 764182452 585809357 454805799 884602924 81673252 164932361 179469016 946520598 210193424 383644094 756420926 875066851 162111323 585940104 278398333 415342056 815235135 511577673 408330136 102125281 44014725 909230716 390592263 344735575 674086754 583472997 572124287 826115410 248127285 456375690 642860846 454933363 644812242 959516675 866625214 949466619 43157560 433396698 958820768 384934400 247602070 416929379 297930325 209255260 432299616 308719816 781356384 371440772 644235416 282719522 79460627 562208401 544987250 368071240 353313540 69426455 331325220 666286907 174007790 786178622 737996732 626770408 835288804 565210463 752064191 566588247 383528218 181239355 379436200 387956313 233270594 848093414 29344232 341511998 821386634 473996109 129929555 534271122 510893476 117118583 36158197 520679444 904182085 929389679 771588236 299713213 41693171 551685967 373978127 256984427 562789430 773450653 627210981 394146300 63004485 960386061 827647412 845236816 13757579 587761355 755655472 453231402 528157721 537164273 203533945 811923003 4942176 239268751 723789622 228955387 103689910 640413052 190151453 773512542 477941715 984135180 990023604 352122716 885977743 876370820 251344183 714205077 739450055 593786434 540966493 552155297 306408592 143542183 693401107 693615028 212463053 344278485 992580416 881897447 2500469 556991219 81810055 477987611 22707405 946690948 153036899 160001811 553128402 847195620 807623049 375761274 242926642 351526798 127698631 19836352 226971656 811335596 223919963 541431723 234677950 50362661 906092242 750903892 443659184 718226248 339906707 490214579 404035415 326935880 100909559 485242963 460076243 251962766 164620131 303296428 542982453 247283200 877005899 48351366 540323841 689918931 235871506 190335260 920145416 117936507 603989808 948053941 768643456 51830935 120263582 281299765 462416642 626999879 154468477 193823931 700304181 484692464 286691579 410964211 443421467 865026681 303961124 659675772 267885319 42034051 431560327 766504554 278864060 936316728 651698566 52161660 83243160 243405022 8564775 27635119 99249186 689028344 648725224 142426855 689499607 756915486 990118193 637576041 779537714 499933299 656048648 573618841 759034258 364016148 119936185 90903316 85776487 750218650 364034815 402333573 882448143 648430651 582257373 566369767 528084554 46965535 211184475 130775697 409424970 394036416 302803583 994823092 130171615 741319610 779957800 992095423 884151386 57423732 464450387 846233288 900290608 900480169 330186869 210735501 176710546 750930141 484009539 350576006 189729339 57114356 788522283 383554096 388039441 359560654 977959527 220266020 568787044 763578794 54221556 804423871 931818421 297543776 672490997 878167283 529333768 371515577 10184168 940509237 506081234 971867469 301445512 858945615 973491055 817521925 581106058 820356704 453940601 448013206 52154843 629547940 8821812 933254270 972447471 763554844 151892399 971885914 575038219 577525604 658155696 557267886 391970861 378373811 867195949 616903407 32766370 133996531 912046349 270365383 838346231 607488155 429153836 831184466 806825425 673768965 24358507 183405544 192353793 382043251 126344298 4184883 688262460 285762832 845703772 837002890 578220061 73094842 850413933 394569463 662935942 534231992 25539683 680368154 872384457 161834873 298385517 603079889 862220580 532897425 849777311 76286706 658750595 297090494 223531228 991884711 966812120 670038034 774622569 447378524 336966607 780691908 872715399 645476554 399796149 89823122 269539725 344694038 741827617 673810180 967873693 798824479 496768250 371381145 69046931 42392851 732332709 845479269 310223022 303914194 405858346 210125844 905578298 557193901 632688835 693215054 698595326 609145285 215294505 520203400 338313362 976656254 238872167 533784997 182286025 118279173 735419624 523273816 896479872 937015201 232190276 36385800 654763880 340362410 940777975 786410325 519998322 405825822 870708727 203373952 465553358 434990485 617892876 240642052 509545827 380895824 13157342 515226082 384273016 881365304 411835489 747154914 648957448 61502119 26815445 540022972 677138360 979441739 825802143 789913884 728101430 706710631 200149149 229053358 485137512 836522694 387298643 99881785 896266948 417984047 769009416 957791398 195537228 190688782 490112703 413730686 921963055 870261613 265284332 442211463 93524906 422863361 170850828 970776668 17042225 694106114 382947792 873840017 536554993 32769702 709005923 166787485 84633244 654079284 437415307 202665304 685087661 234105961 284559240 674369370 76690532 529879904 559538667 377462697 910970084 580397804 14022665 828886902 236284097 970967625 736078428 36329732 991038970 946257311 445787732 325070664 848772296 922730414 617237597 546820257 254312693 159086406 42356530 896562431 205604582 477656500 808512854 709916189 907841405 401527325 261752521 416939587 508684939 126732639 952703062 10024538 772422381 246407201 598275865 813793080 286588949 814455986 506931066 927417972 617878426 924196221 643315064 904304493 25423680 705157093 328969479 999924349 421359607 400185213 672240000 772643655 238361245 92517059 234702339 718292702 398410043 721941755 321082529 718284355 720326535 119460930 409690188 424233268 69311292 341622621 2966825 638093388 592666782 458348636 737530448 388312253 17302735 857739204 715964546 360987027 199639040 207727101 844934690 533866803 32780913 594132493 993563853 294913195 331332030 347035732 982897559 411239185 433729738 621243599 468165781 483759522 108763300 429570855 756456270 256742543 829125054 249000452 675158285 63544910 633197520 997304441 731277412 688696234 243604767 172611759 876418396 737488102 975007684 694913185 618121983 559091222 536859494 719135370 250372298 147924009 83550259 384707970 583777040 587975759 510648015 417395145 270176970 457341497 323122909 542418569 919138880 427526660 349663801 327404389 854898974 748860089 278272685 498191141 661597835 423413143 861249378 957993120 714484760 418574603 103383672 820568177 458120621 831219238 449131969 962892896 151450721 636046847 563707987 650277517 966520199 441763601 689322226 666774976 783152369 823704136 741945446 788303527 504502067 999309377 267194654 303011069 366153219 371845624 649396361 370475747 168645646 797994151 143419172 601601594 36355569 209266953 304211236 122381886 425418812 803391239 684804272 27423513 229061651 498247590 43344815 29381750 959657247 542026513 233918854 800606119 332582773 786882344 205868375 80339890 254973822 870824587 925399303 241748774 521299388 235688104 212753788 52531815 762339123 275085143 506190761 52431730 76946389 548734497 364427378 517982686 933068199 713860078 117083514 358147051 691906670 50500582 381401132 332116872 29018670 902645778 256882476 296155196 334590484 92398015 280070329 109842103 651878720 913091092 746209359 410907407 518854795 295013840 894890559 501416425 738873222 36942973 933776238 986254060 27347313 724922410 451443368 124768597 250786417 468227826 355739758 435413652 778942230 712514887 116279129 175956220 906853856 979523335 713854717 773925360 564805960 655169927 6198752 73817804 817485624 39934226 488524596 635945586 242281148 806011370 16124306 125609449 370945149 707843878 750453724 939203839 561495133 225739520 549780267 598939060 104253283 778353399 760965555 67224436 995373800 648641287 513778159 609216261 739257402 717517893 9868089 52198206 677247358 297103282 262890058 200481639 491239651 274586539 642281073 668682960 205979121 528225416 371074612 399123967 998326745 193990549 379775853 911274294 595435843 177443317 935939792 867771840 727443384 256091235 991426485 782087475 744802529 259072954 483388513 730075824 299368643 908866404 970472249 271244143 348762583 632170405 294172328 5143063 238221178 302013635 553052274 687118343 437934761 777451577 121928165 800988943 574144237 917331608 291455444 791252952 748323982 285287677 466371553 228598764 618065058 382235429 310585533 625361610 517656213 686856420 471477084 614441078 388416532 47206975 875120529 626851000 504121121 754544315 293088728 102228121 846032223 513471602 578042854 727651137 916143408 806810101 954885816 138055801 984822194 505569671 193779609 23473372 648648328 278154019 738461883 447236835 206657721 559344295 829456942 264526247 299353296 157608858 622593727 290678971 20559416 920014533 783237734 3439386 973049815 85202118 387510398 45369345 626704775 797132951 401953907 907301438 901787323 349142757 997654610 40926238 633693414 771281768 921107338 977799759 407708889 179881254 416994105 881946766 779138245 562864468 837522309 122625987 504912326 867630493 369174727 148829866 962093778 827104720 800240402 52151674 769257285 814756866 116270150 853939546 610682654 966956451 237161322 315608976 131140301 326552219 661435882 145552849 234663188 537708730 53523848 286377360 672063341 738966537 609723656 148081831 51231277 13717798 849449710 349095072 855782773 290130150 10146145 483899687 854947753 2775678 342933488 882275969 337664235 50539514 92768772 252404113 423635268 105724786 407705594 664027183 522098075 533943715 939510583 598117456 123810114 912413295 398072303 106389730 159154218 282906705 761809485 223137993 438926653 52587338 57641041 419562758 182147102 411589016 310052899 877885064 778402347 672245716 384596768 561344713 357211662 249917609 508286468 488981148 846914976 354208531 801999500 510110157 340603135 683434908 493949944 816349103 256122190 735330711 188052225 146846720 899706943 959795827 891767807 470331066 293849928 216887187 881488667 174596305 323548938 593149758 649280188 125473687 53784766 548219002 860245542 425952067 575102123 835515449 737770159 69023792 723883756 571527780 369656340 790887057 583856540 486985700 24082589 299748218 357209669 467403222 606766903 933937632 481726461 300441764 334403196 792636513 615199445 791723677 26393388 303570467 430318744 633757449 104424103 164879653 466319215 566003121 867804421 725015000 960316354 33241871 257997162 670146941 564006437 768373185 25593373 115198777 991366277 743148182 337105921 737039661 791090801 482813613 314332670 479702199 609499790 534234955 960562106 605036907 257260134 368510062 368617980 941497568 45845219 143847860 115346507 229261500 419705286 169538113 437762934 272370106 697141081 202188544 56801024 678848339 761808578 49561700 189948333 884952096 988072473 919717381 741598384 612007080 561367396 209455782 321527499 962959218 239044548 827403283 482280870 385117990 546149367 805390915 316555831 241322433 668208719 826973865 230664568 926980646 966750286 766935368 203021431 998113684 142196580 338372981 84242866 151008840 206830446 490486135 692224716 622628892 194333963 168164467 150637508 335136660 374489458 776611509 316991843 950301134 915100220 795468831 116356421 449529182 367615839 323159509 981036952 875652140 407208418 781072383 613149421 932160388 550202209 247405873 288706220 593283930 107609618 590497241 545336732 589386025 13035212 69130956 361892025 178226199 318425903 484998438 741529278 46938287 542623709 237718951 405906097 883542184 63262785 147076606 720760917 193327127 654793365 829957348 813457184 311430472 94404639 637502288 831220628 313519211 865749736 172202982 106643949 247987167 855414625 929377056 564383629 564693651 842323723 716600286 886061701 349800796 917881255 713848774 987349319 794799485 917157026 858434089 9295740 614745723 4037578 432011444 128008343 764174832 59097844 642921450 378224948 837230686 493982333 403914765 876687462 954934380 731300815 306373098 125721377 600558860 750186763 496301599 159326566 487005157 354307938 13296117 507612598 322303943 660449394 302281902 509582049 692629978 559429435 794309188 405387024 279786253 484160701 282178220 142260200 952391462 274212739 268551234 481750892 348256680 952054525 309808322 360017209 509936943 549283108 805842894 619254624 26605554 684806097 796054281 661597881 967291498 504797725 290233326 702716985 786570456 168101676 255265460 771695923 882904861 781524937 971521875 873122938 880231247 966699985 1155537 890796780 842864620 972593850 849718031 423608888 648405834 133122149 867331391 703766959 188046883 589092232 602773184 942656507 729462510 650427308 988738730 564248326 280790126 53234426 265363399 776669725 502310150 318510749 891382401 623056374 589691527 474535929 704273464 597130468 199557667 331641187 86028478 191080398 180832505 596133723 568425117 275893151 93139759 715166245 723699694 202417420 274937910 678520682 409612936 15686280 71112714 310071817 136492281 203939062 190132499 237057219 625789494 713385881 521775017 396450524 484888335 226275080 777702519 475801535 208987422 280180885 287909041 154953421 229647331 600952714 686143010 902069389 967175958 415041689 979438215 661043685 464249995 713103779 383032757 511712733 23577944 279635822 774704027 492851122 767465535 733223126 774429892 174295032 224859910 211687615 567978552 460783404 644814522 460306043 296035068 272364466 601739724 925899616 624889473 319993248 379915394 200119539 675269340 831641313 253426155 19011780 997030024 887070322 182619738 783620780 557952295 884709827 574265666 69515079 893409443 137127207 667762026 629542976 816885304 888083539 23548502 248641154 733488408 651981386 931276808 958932940 737840471 107364164 776955465 240676433 825759339 662938904 320926701 530826773 206781550 56389849 817469854 553999506 658972594 412986507 498689903 454177774 520320964 401317662 878594034 567919546 174419799 838389243 790437981 716877376 946179301 541168812 274313983 672733502 151490223 303066003 135317672 894245749 297359183 176922579 433194809 887666110 804986551 295098210 129898411 752803403 158172705 668648898 436834566 362709114 44214315 367491628 715374831 189160518 984480178 604342032 522886930 958389488 907367426 77039377 8022616 996328029 8915295 127540909 78125229 540710029 39022698 657659464 672976944 104402302 385327055 849930911 21978466 916576191 875326979 431355490 551317172 738944024 965496457 554309061 503408713 1326721 946818100 732542006 692471050 289936887 293771759 946666387 607377080 977116674 225721829 8202029 537814244 975713440 825870900 852134051 176378532 879201340 375974866 930896618 435370136 52769440 686808563 793491807 986791383 475409581 933781663 902650534 486944832 888543768 862159339 465569856 68527279 826478557 948602038 779308326 910288096 889369543 544215091 143213294 20304835 688086556 575395624 407457758 902634992 975414685 445668778 598996007 466401336 386252348 676599686 613217967 224119609 210882644 576066776 410924683 166256827 541234669 48934160 740244487 705859740 890841571 790264446 42907842 457785365 532400612 775066851 353043709 478611265 145529344 663024112 685588391 216554958 814928008 318326035 499883961 482733112 962783238 4390307 618992424 872426428 631163616 50677751 615712867 459264564 698871407 277508174 592744470 63599358 428616881 406432965 449313624 552330712 244437001 995637768 611648156 340288472 994318672 882363676 676329696 798217274 606364110 616365356 893910288 525805185 760405942 150782220 264518693 704170457 8751132 224389831 846999281 259128016 819509663 279551117 871502397 484169316 272203794 768704005 955324724 171518856 590019335 651210398 297018960 101520711 829391349 404494610 83394061 799008681 415395267 699102496 73587721 302156488 785463633 445072360 256342879 700206617 841447753 521360190 203087932 846704700 997638481 397688224 469829742 288721649 415500118 63779548 191418234 938972123 729527102 348154964 115355667 565480895 163867779 174357431 345150130 287656771 453061424 261739501 25164153 487907876 690115012 249283588 978978902 823399890 505828751 757883334 42738753 7510028 87489015 296271590 315825035 296309240 468428448 872471097 997155856 814131662 591073399 873226368 914865872 494723390 252280382 987171500 231533231 812694164 106507854 942816234 113172928 642126173 92113122 631204537 331145928 383140671 413047488 520921246 271892979 291402668 571962263 312462071 701210732 720941314 577786658 372667757 889146887 999849030 625986406 140621335 928860282 491277223 429317243 920482072 292080607 9360689 584034832 902731409 952738146 189107496 969460190 964451233 651034939 352628621 857564615 38048782 526551693 429296942 776091610 446516500 614214582 664047642 446504556 193692244 217423898 467142772 132370264 765948066 183134025 743075383 879963658 409491867 360113132 559027124 300469654 588377360 940681745 279843457 520419702 684613298 219167686 641683512 672085255 508268220 551151118 651908691 239797995 581256041 607648265 305684278 692429328 620356604 476931358 673339615 184634697 912293040 872109650 338992215 253735901 934106112 934930685 735518455 53369536 48420853 380067210 491294438 546403972 541005083 892343502 640187859 593727753 245998677 836164887 990926553 96965059 182966308 806271487 103851948 721551800 98761892 946122826 375096156 88650610 621362244 131322709 792826685 313052732 396417238 237695745 372972008 382630050 764420805 629040483 26296621 851843482 657444985 883491810 551485532 731396704 836299910 495959352 403871436 576834986 848089215 754894519 163960381 214252080 732592891 870560039 415998348 931959061 34502258 193213660 265118982 386556143 723618704 159252494 728109723 532384060 874773979 376550065 839031686 202884930 332174684 275454694 492518005 653130024 574020002 266794013 120015015 813363048 478918686 56245342 789163863 675167257 331703268 903137480 499408774 75219968 931296168 384914426 300373668 787286123 825899908 617027013 200352470 185614088 802005111 221199913 434752060 740556395 938386240 506671836 820155212 890923778 325596131 952611101 266494354 265320655 530261319 921423826 457889589 714764905 243347736 925919483 258791804 260312483 774151078 113800636 347321927 81144252 874382140 518082806 966379530 732583943 988399838 660288321 485581271 346830079 220048619 75671212 358458694 81586667 816817376 898665657 190053090 618955683 130365566 104142489 800564197 121377367 774977957 303897800 387562732 916267129 204733035 200423348 637266323 961346732 439255313 881243666 440113912 348571304 529293151 884533652 72483535 849839147 401900014 294557749 85544410 439680581 608916655 600110785 96317674 7732723 376132034 54586945 182427966 858357784 418482219 709510320 750109864 880425307 684341487 954030793 588574776 682266107 567875145 877498329 170755362 678270578 421781816 791008898 835239263 259549454 225821868 767124282 960021810 648224760 911543558 764043127 960703135 89735698 604863680 376934618 763218850 301492571 466162803 478894426 180901515 698293899 908866639 390893348 502730805 67362384 974830456 62475929 594731115 710880270 757990587 183667963 496109011 632530848 794743100 887770214 861821955 636997798 223904096 856141622 148460919 869718988 790660656 671232579 423642579 260509506 47924732 922359984 204059738 661322372 199468629 344476751 281248459 337647060 711332451 882559543 316067940 278703873 176271052 631792718 592556800 600841967 425863978 317440735 852539060 239227293 588426695 761464504 192099412 874597525 855241788 694069182 178346427 615208779 327802315 65329364 20795928 322830707 966164846 157443914 953041345 131072307 153010609 649751744 438269990 35528727 62385625 170423472 82338876 45922087 126135784 807757856 851658050 523642584 938814252 523993626 773401879 402053841 513217353 627719675 221390800 395570805 561184458 978396599 752639201 748232641 198058884 180932876 191365772 253833781 419176608 316419800 682106377 592815257 126978680 355528051 522153673 996640442 650801433 130102701 49489107 312199659 83953042 582163141 350941089 974551606 426778666 987304030 85431772 697749671 197258620 818592363 787121302 748171611 612654743 801590863 683205008 111584256 490967777 831695913 715897733 540461662 72850536 597073976 912537072 222520471 104991742 795423664 720053152 940430155 76600622 411123310 791048432 682803197 701884524 62136109 342088050 415558674 704620562 318184591 999503764 559853448 237377365 330639132 61325358 297911277 506706692 888634612 255020660 841514440 232236574 347016142 539535343 584207072 317448724 446618279 47298043 250886609 898736405 393047894 592356154 11616255 39411868 320912380 455041288 59980067 381271066 977075235 303104655 738856628 644254275 596812905 93472207 488314246 803210502 770400373 749672747 211533590 766363243 123015120 327447821 24849263 404747131 582000306 449279636 65600680 605328306 535513545 780889049 546309910 72530202 233388322 255612231 98959678 470995591 76227434 376111235 950389277 288445062 877121297 857459847 733698825 718612372 556018183 361638250 20716589 873025320 732176329 963880617 82829684 126178573 836433079 23715931 364799130 367034278 623596307 246196998 708370964 106385058 370064891 671946146 837334765 408070947 180398428 854166809 839639246 862553485 484024718 581496767 67334782 258853252 486538785 837632143 892880988 733854731 66342707 739641913 556458599 567129792 248491393 258662808 167549819 55678145 679239487 985322447 967204051 855044226 362796159 833210049 976592350 36107191 545116209 568821910 766432362 461954361 699353009 238944524 423750755 661626940 693703078 477987757 498710733 409530066 892917425 166174590 932518475 556732420 757669036 401918111 484930277 23557396 805333514 792091692 665999111 100763784 324691168 592446799 369993178 310482236 140084255 891702906 276963151 384099212 657478825 665104125 441523234 569815760 220439257 174449910 314443416 39854576 365660829 681712113 988706494 355751146 54049014 772616816 643042480 145538130 59861366 852853148 402666548 109563064 878636629 549523157 913784761 4448017 779280593 312714093 352236585 334926831 354041770 856361055 646328122 596408829 983139380 911543417 113888400 973526648 966924855 935680101 344639425 141280048 747303122 785607290 552305594 6719386 619408084 461341553 802314871 753227015 903496565 665795402 702934108 346694140 833665648 283314704 709781591 165259961 485888637 79233884 198684930 54020860 279247567 447493873 132313645 472282267 602862084 664488065 233858101 165723452 526901614 503028652 771467802 765505685 768452153 2705587 434639484 53076903 257083127 177285606 623821146 978246570 865869980 684509233 719450527 169434204 830363914 515578812 861334211 556477653 271232517 748133342 428122910 228544831 78841575 368149948 859829246 135343077 402304623 523773483 766909878 333333575 904197354 948169327 479196861 225999073 782023200 477213122 547481818 960288792 277750946 839966781 800704535 650694819 490158794 355435049 716701545 899945256 604495709 679629223 141375065 955023079 287099722 35564074 11666446 780995274 184530094 218690601 772023803 997836806 488970884 189189319 520105100 516034391 789372131 763912608 267902307 896506059 678980326 962004220 743854613 617824382 999808655 473933406 210881934 301258285 177584671 706291447 822036348 300518072 207954031 146494830 588435565 377209120 61094305 516872170 51396637 933418999 338036902 684814896 631481445 909956710 207762693 904109190 813145040 525032623 395331244 94367331 572192799 659079761 395983552 800396713 405203881 799540518 333161908 518753269 505855356 918022221 365011323 69795908 329977622 985649749 807355836 162099528 196529656 300299988 562655612 883239847 963278753 423492747 589128806 285560983 729039539 666916394 791137044 938512467 669874950 953383442 93390888 29570220 793348131 655472816 597644160 299405881 67523570 123008263 126226684 69815900 7897754 367745974 34442255 760099650 513676726 402675450 477531791 784560606 426997041 604775419 78521441 707119374 206447282 127970539 707445685 31427514 182061466 56977951 588301372 292860402 706847898 350681760 391212799 43811444 799896705 237147519 688714123 133208358 48019174 694309192 615482975 842928052 726548686 777479541 404098670 155016415 727868924 49086587 494719696 719973625 484546427 656532542 689300609 166508973 818619312 867550297 71282311 896215627 698219825 980298263 881918122 36098109 341995412 6417640 709617562 146376404 397364940 473266438 882879627 442536653 992944271 624852173 508111473 76570268 56746792 524200329 951673600 503789553 273002733 680273962 48640765 73010677 234332131 352929522 355869401 655293895 37255008 160771355 70536698 65587320 379907952 527857185 880637539 246764318 784508184 378846293 182777807 192400065 964959280 784147368 661373270 30442965 156754347 30527868 441259972 479280246 587889691 544037009 716077426 43845536 240217057 819175246 541573269 128387330 277504570 265673726 833627531 859041656 36152824 898569484 170706125 140418174 260142158 243188946 83430114 826868320 360161516 250975355 991006069 172531912 796568024 389590832 381911223 963726718 641061608 406441434 92290483 279160526 872041832 512786251 708921068 889800575 995885907 173917779 550602780 802960382 339732702 948286762 789531556 712444294 22976546 298842641 407915096 11816418 862869897 47034006 712760962 916700507 434547519 223858669 244048128 379152326 277230143 257953911 268322737 718854919 597791973 213644551 844618478 300093719 892450377 891652684 182061756 899281745 229725844 36077345 835455904 931238231 929598005 67879492 92808534 464154844 383750667 676677479 486872288 99470358 387808729 24932419 27857205 644110690 608086580 383280772 327989195 491148810 249924229 39488615 489333537 460093378 842232455 549591459 183504315 348608662 728690646 731016829 467229543 753957815 142330282 829266158 421148390 485587830 318420072 954401076 539743384 108551966 495028403 334593758 61357741 186090762 150605881 288472623 504763811 676550167 268276686 833142863 951720137 775812008 231968156 407904471 813868812 493601705 372549064 405144714 915999340 801222570 738803376 414739569 91775321 73787932 486984471 877789619 39576188 632703315 751997057 584059636 532455638 395090628 478989650 698306128 99442226 95241826 316218081 660549576 130699546 788871349 986644439 867983076 667102877 122116397 789944624 215885248 158604148 903729242 233423863 651870773 24193256 808092381 435915059 34626733 540649729 23419001 663512895 604917568 94798774 394701807 485009868 77835691 899347363 585768888 114577695 799667045 530173572 520283622 240271405 303099255 768869249 459965461 656963250 725367337 65250688 567568943 894690703 279992591 905296725 652923157 374675376 393917343 165411094 431365603 353287062 433562659 497689543 657294899 381448445 493237855 958884778 870341382 731960337 500181676 709620253 809650488 267192279 863951559 370336759 525249428 381228302 909691653 21187060 20936662 77039727 846398912 235952140 937138406 410866102 657684928 58135952 860939006 486147558 473164261 5864192 733288061 174630308 835091062 932114937 146467438 399148995 565535190 807759991 754543213 752291944 565817367 107492561 377375116 734340984 480292165 809618049 900241216 813880061 533467066 482901301 831510297 360981881 606805520 6581155 997303131 638218060 502201818 972092153 19134496 868981938 366650508 20117559 79420674 438798285 324712026 371056727 166138982 823834432 511754018 592626571 254997503 144082262 983993807 680628594 750628712 752578701 144837799 206953123 57157692 484626162 222609268 722087352 507776292 207803736 824516366 483912938 315074756 617006482 302198718 444633975 294836395 774652369 890190968 825939870 349908511 137232333 646862583 512115166 556077571 208471126 976533314 177386146 921971131 632163909 577765841 565156624 419649885 695232730 603311925 421616002 850065607 372653344 422418183 53749513 360552621 66168437 54002734 110577587 543443218 912003512 197173335 511585268 307935962 920916615 338503485 12844772 691014697 976167491 20040944 214710346 192496670 919445348 991547411 235495115 503302790 405711052 153984789 305196801 625370015 79562998 924524949 530763106 392346124 386339396 944573077 386429463 458956227 742382347 406075762 309387950 458485263 553662354 267824893 500720549 383875229 368440526 306292876 561550632 343432421 792794669 880127044 966959475 643442458 622274981 900413515 891647804 837022468 434282175 885387444 247987238 860170460 247690904 407400729 332258064 816174848 303196229 602557710 629696144 483052904 208091430 538204554 144805858 64992460 441573093 159591928 920693145 260932805 933644651 903168291 740065220 908328247 591117043 455394813 42247327 481546566 617496948 436600630 930097681 903155211 65108922 753112072 694665329 617936338 558435961 32051331 551547759 283207527 196356593 836295024 241380414 166291530 978763427 25717162 907983100 862021058 128958978 667517768 596287633 841197000 359070569 635817350 448224643 969965663 61387388 6559134 651340345 407605568 973051624 622137528 930130366 59967696 970732380 825848944 956671754 541374724 794257323 459898127 901656045 658823961 258895804 920667233 110601426 443385705 919558585 64250155 561806459 36517731 193082142 246966388 355342931 58571134 921661379 939175476 113925653 901896442 560024602 675166933 862721824 968040949 72894401 604468256 391077559 69933350 36351355 538695327 45696009 9096395 706352711 919507327 212491893 338448681 522993475 441837686 122669754 894071160 854935453 606075181 252320401 79307363 443812307 885250259 139307956 576301714 913522704 343580388 596949867 614702706 726978201 261953503 4847162 463830595 477711572 377409106 947520258 29140703 303151662 996727218 520430299 576618395 76499584 189466143 912732851 786063294 206013912 79220569 255532868 591565919 162327687 422033326 740994382 91930253 979839927 437967846 215394316 63772860 214323488 959290412 191716965 780405855 988506653 664043072 840500102 436892842 451215974 980232466 602930875 572887152 806766276 992656133 513924062 555796147 113572851 436382724 934053002 401384845 553639771 323984918 83768714 121062104 298825396 540970203 187308851 56618080 521212183 750321367 823878107 818929493 21502468 281067725 129085545 336632197 613131855 671078405 472335866 850597058 572331085 581656056 474719425 684822709 261875392 72651173 98210335 10802811 168490112 86733298 590079543 680711367 687584323 961030024 586420582 591664881 849924431 510714291 976934652 792161796 313392234 888374571 328192329 118097276 574734019 679458603 723231870 252255309 57538482 474799999 452427930 775405170 153309812 139108661 716918373 591422095 617081151 422500427 419326342 42097262 42646122 199784872 519923114 253871351 247727252 896626269 81144007 589365502 340099969 510358774 103405664 871263213 395296503 703085425 56517356 276258148 21903508 861943874 414646645 694210871 243758053 499483521 546749952 969073779 812768017 578080746 386226699 834491310 248674059 326641151 788085587 362671906 42042776 8322330 148945890 659684285 454680687 85366858 360683805 338038382 699558422 936269518 151060768 670911787 201232814 987599374 123128382 849972162 642552437 743739943 623216961 509218695 341077187 250798115 418528457 971764649 58187848 583170306 477898427 688189973 230566263 122297795 804734986 920352069 712167481 379677714 967277422 927894070 552900914 501550601 74409825 548049436 613940139 899632483 858231484 25341741 262793772 11444212 839237817 4077613 905565719 494926984 508992879 442934945 149405967 887549962 23542888 43187655 852394683 17043993 228474352 931925467 922462997 366496304 833093658 718735356 701449298 89600804 632938519 773610210 287051887 152077789 448830012 362583357 456047503 959127758 852680342 702792158 565118941 947524614 43769629 37992125 435960295 546727480 672500611 178232367 189101945 145488254 984996575 973342472 30549516 910451171 506709059 42694960 476419368 520237564 770296970 428100209 299922011 820075969 691342117 200122774 612843898 589107075 333564614 791616531 999615532 792936096 36739151 288014529 892732316 142103339 520525012 546579546 404793724 196036538 664145593 868234830 562825822 671336950 931797647 606399229 961713335 713127844 464347267 562438760 113142196 274304469 536865528 180215559 931684351 541438787 287624790 588289051 727857848 404369141 55056564 324793816 216963901 773472685 597686818 469061082 391028865 15231085 433953016 821120373 332344556 688792687 581713253 90704364 439551627 140110555 405099151 169361203 839505971 916645478 28357546 95088792 815527690 17546891 243798338 747909307 255842202 363206683 447816257 873082850 770151033 315318196 426598975 751678408 533205194 252732263 540085329 854496583 180256910 363309827 753054722 739852880 2651773 388866096 441468413 158860901 758236464 397411655 997596121 193903557 350556595 271547761 476647915 948295897 282982478 303591101 565528714 623448401 529855898 893978413 524150586 23543084 884585879 145786311 267846989 493438784 773475499 727320237 939501396 497247103 806811274 111607754 409224849 159556298 686807416 60779664 144140499 623207461 282609546 296505936 25068989 870374945 871149621 993354270 146701836 516262337 670588789 186656164 562131150 366007818 822145185 185675538 890099123 551622394 475351693 108650629 194150634 778489030 591591311 298682667 681262746 933967786 886922374 803532914 564303304 258615797 924040919 688852421 964454336 759640215 681786177 886711164 538757595 752525408 881958301 593920485 399744332 606182748 820813267 188559102 360391773 140005557 779723115 294858557 777329508 192310824 602043493 908386158 120753293 877291336 821807917 257150695 363510640 742348743 229985496 616989485 922771500 707213188 470216199 10475190 572432779 848494337 888773697 95212962 354553698 356803025 637781281 277976604 61397231 366569221 587522267 926167188 688086023 312378434 213454189 399142985 641332546 943210854 560614232 747468322 417353516 587483715 84037145 975986252 959378056 388747762 236459821 667423800 308921971 763395002 626248718 467029065 994622991 857934315 724761546 2313114 150653472 879897839 673556682 66757869 946079372 867128197 821900293 690695666 679416535 45683674 172319204 480811299 696889080 577749637 847510146 317092331 2410026 727822827 8517041 738093716 419017888 18815848 912242117 791041447 469826221 128356546 933382106 843201190 403837411 147542494 92663763 107024374 682088620 975764285 462909829 97561102 714743402 717461344 563986526 334974233 595247223 763443804 237569158 757166004 246894877 289379551 488403189 800448036 543900995 238117808 981871889 929216253 323619549 614652297 495326625 166289962 22969938 147249923 302841423 529696679 167640869 364162655 737496377 329890979 702651659 103728016 637256260 945692231 693421336 411077070 129256064 586151495 32249215 642930334 364218750 842371578 94987747 261731399 829199174 650371616 548449120 611963143 868573354 362313513 258995095 913026658 320617169 675549640 726109290 143825916 739441982 624439764 245751364 330711287 224484587 621973660 140095177 206656249 553492341 282411610 649825673 798223543 116901209 476804201 15020180 892951442 380148525 493038409 15388836 184861302 731373384 761700442 459263015 327616403 20744988 231539681 162610853 210824758 959383587 231530769 826881939 197280280 616623634 741984867 833603740 617022141 196072252 647393148 913474633 895204321 54817162 820011422 187151289 869750486 150310525 721840011 301744581 649256722 935226614 643266328 830171888 978542261 166021309 37663490 347348819 947419533 461417409 642153208 845885777 458862038 122770413 84741134 102668338 625038373 525460351 98852436 812588360 741435956 412095663 411160563 49103660 534100723 623440210 705944 653914085 398815596 487372302 766958149 285295928 404729431 683334555 644343670 540935345 86488180 981226897 489102529 112563651 360826963 788330729 663868891 44329541 987883378 126738986 103875112 65769063 600639401 926652076 979966460 126643651 286807344 358705879 407107919 629580628 760375641 239238375 593845970 367798178 157606940 304126206 547166962 660942516 892644319 563703926 555866234 927421007 549036937 20575488 461949496 586297983 31391560 58025613 634000536 86046707 794058423 3949396 419014315 300019755 242170058 624896820 14859742 630175250 335842358 121261387 123428355 912319163 583687448 724892704 492203729 491156552 167053280 19588249 9531489 251434422 383229693 939388701 478399974 605409139 946392930 645868247 447043632 666170150 77753874 787554302 611497844 705847716 552338392 927546579 45333182 118346429 532802038 880760326 372715849 830033026 548068185 598734784 641802930 248717565 808370046 918196517 29991452 780388520 325694319 265342480 968327239 351621711 481488481 78662932 477488659 519134836 136031314 517094754 229393030 34324690 930624351 206899006 533239593 979709046 792650170 571772071 671230937 387508064 375736819 867605562 885361485 323779708 48768943 44174612 925985236 341136857 43471836 34345247 917554418 947626132 7258577 99874396 105662263 668737930 902533841 691700018 816950803 329149293 232078422 929497008 196772103 358288910 513430571 486529380 988715000 280532799 834942706 316794297 725186723 133109841 13125899 996508589 937634843 774739448 977274641 501769072 784030101 842886186 349107359 836197407 402670376 555055098 937935423 853351908 240819787 402573575 681282468 988141388 881175219 607997131 590386232 797765525 757927944 765464566 387965063 292149079 34513673 900538162 305621417 114219704 982392378 635650181 363473465 331883446 308526111 815437766 676983664 461943461 18695055 297301030 950809187 30952509 645575494 783472778 492671382 600613383 892475265 217843653 744922967 56616845 853334217 292127479 191394050 468829676 70530775 15274833 949203534 503764923 744016517 922149113 915319362 117378875 244034148 715767237 651736756 786986337 807775125 744273868 384438152 618533003 656036556 624014214 179720867 148103510 9696021 799263867 249128994 192915822 65849158 259301625 316686273 744288986 140392742 739947210 2556304 991714140 798559244 203080396 33257766 96491741 148060378 700262123 994262377 932526691 519300489 81847526 115659022 117657009 107421078 678108697 684304593 861959517 420265287 733498192 565674206 487070541 995508812 488724279 982742056 749656369 496216329 307763686 702573651 146855407 311611837 170782101 663425838 164843210 398446978 762645922 69582700 124263815 217230456 42253998 897599583 48533804 291373482 931839503 145892488 780833159 640072929 212745982 909555772 550200493 211622535 118246432 407497790 818517841 184506348 810022290 199268394 907309734 742482233 203565965 868420444 853323825 912755858 171465208 775080522 61094611 514911185 670305129 27229921 379036885 817201973 412584622 219047263 899974222 214047710 242755749 284289030 377202845 335757179 683336480 736514347 361012072 84114579 414763460 642763988 826719531 515095036 236553465 361052834 767707406 416524895 372538310 921667620 644214873 139544684 793636318 881190031 249912281 129416396 956959426 729282316 554214247 457724682 421052880 913520966 442830290 54357791 885714248 124122968 411391390 552129423 499780377 536436320 87464752 699469736 906848265 477413675 460123703 195489145 838185282 333971967 789746267 846411255 750180569 10404652 102514505 358268359 187929509 893497244 3627913 268014761 222348905 901746965 75728447 671890377 494416841 535981325 349366843 161675133 774124504 332030851 102869954 274835554 987076600 243671246 104916224 612846659 614142298 415832392 80009209 4548603 235313945 694577473 802062265 749731508 416928382 271829648 474583653 72699138 92928915 556673923 762931190 898961810 540804135 335027172 683967483 619789984 567812953 806038051 841080739 413362526 462385409 156506717 570592513 745247820 939830885 349546340 215197515 135447413 462020432 636733860 908409493 310713958 158708670 32073975 678499817 77986301 602277996 37685225 121100406 397147639 82690937 270176589 772399020 976155081 48511349 992608600 986364553 926859205 782185828 122908773 602704827 749022436 256615458 205892339 212429800 707478926 608603025 497030315 371636141 992913728 906132656 408210866 235305757 580886690 171699557 98471970 593208734 687034310 807862340 649132712 929157428 938794176 190417297 360830168 690243125 738386172 387284948 48496717 680500872 859603300 494107621 823633570 855290248 685016231 611764400 209879947 492656831 353333146 743409576 218542160 348451208 294515038 771902221 856820977 734102299 136599771 308014385 17705636 781255405 378907934 929987927 776201890 784683005 570702635 692681979 780126863 566509720 794349379 42146049 905187957 671051370 315612837 752890089 503135830 642865103 70262075 410462822 53267197 61971921 284210992 763422247 925876621 770519905 727359941 971555102 689511283 58523560 420134055 502876582 608898090 24921921 997672049 574690414 724074131 873027602 307925723 671795692 777031857 521113900 159324245 922305174 369316159 425076000 393166098 813098791 296714759 234638364 775355174 200873588 351753556 126536260 238178895 551162398 529336180 174099931 731249096 863892565 220459136 142334249 947942464 449715423 696959427 268078747 681252747 757508994 23287053 974037259 700714343 930936406 882833515 249169519 466019084 536282274 41813761 850507174 440487565 140517227 84037450 116072850 29538252 686426583 67060896 626175469 549174654 183248474 535114807 976190785 606716099 175782934 233262911 645459250 707352748 532538119 625185657 613049680 697101582 141360715 867586177 414712190 614795950 945335910 536158415 353545061 865299990 645037546 483733392 888071556 382233669 690373130 897988884 884650740 304707591 325652956 41937143 827333822 539888959 788014690 909418064 544373795 40430143 805791277 367351723 980332814 630885617 489975994 261806856 150385866 272867824 6043430 971115076 271189784 503705694 943259675 299330472 474304445 549777553 325126596 930642927 207514881 119993788 579017648 24340641 809487551 920229630 574418279 932548676 804221182 198766474 668917695 868631169 871148484 985613229 303960577 304496661 722726024 984703124 346289439 338213108 780423550 226013091 457513172 365115705 949282654 523313589 299489393 625520737 709454904 513606528 100152048 617784026 224197356 476503979 34997668 132327116 807315175 958408843 121224301 363765395 730611771 322604448 760876668 22018681 760884862 741000886 177668288 247247337 85648340 367927181 673650483 206543223 48729572 394126609 897965394 469164609 149944095 950294959 865722358 92092904 668176518 967035157 178881448 884092628 825378492 498232414 366909418 497941960 873344063 49362740 437176559 402160618 661453841 45128049 834233307 911590218 339422386 822493433 739168756 604959113 19801586 830674206 375891047 944674573 274614817 467887153 740027867 156341683 263711415 588995765 204757570 21377848 49807663 300612905 453081076 735007864 987366478 943366212 578966434 560450286 806825178 44852987 592126899 33499847 383986951 821524249 69012552 926278520 589674171 440285550 996752162 960863847 54038750 375579609 804575620 15440894 610839932 619390204 538018304 995740993 294830754 793758472 868265387 855528747 389100480 936350759 43243074 900588290 827903089 274142956 641790841 855136138 337004151 398018294 823230540 313073830 604716364 755812303 289926701 693410456 87605820 10497574 891503713 450947726 315178237 79695918 430951466 990707490 780527400 308086814 822911302 109611008 796501307 986111757 68631645 54350493 372989616 139538002 221206512 218448981 162686813 73978976 721964537 837003177 903204159 544644972 156047282 73473861 689363686 86301011 665816189 881585353 9050821 130037884 310230466 930409145 305485532 545549402 967501506 123594826 555301217 532261209 877022439 650358950 20553491 875372671 153429783 780167050 84461438 80988808 387793587 614797814 315105626 800152553 610816147 783503017 82707121 504816584 12679704 990068171 687120414 967581747 566721849 475814746 96182136 195358254 553678919 279551513 957239022 94124428 782087978 29879502 122336655 496995907 647900570 483271449 883017772 377614566 41805254 94775359 605929598 678739054 241273502 257670517 399195764 37748203 496536304 464496092 523296128 301497999 776400408 816986611 573597947 146788634 540432207 104757743 44138671 306084364 488622760 161996941 721448201 376430562 944533350 846610731 312909170 997970463 535526207 517884602 669370954 841093384 651926565 575830269 188252195 198978121 710634669 285519186 368801066 632302703 832429079 750493610 745970044 183158575 627682322 812755687 238060570 553050753 344844901 63594985 424943081 204255084 148616780 907396073 67291886 743721024 686952734 680781078 268110977 592273122 296242049 353118823 637543512 614574384 874670734 218599441 76466673 620743493 757448444 830645450 950136553 526074596 958346979 300174246 388063372 731302199 10355276 239573646 29260567 886348433 499179370 36005268 283592166 268483049 415384097 891249199 835082094 788122263 156023892 743786031 7735525 445423042 521886984 763393077 912404551 385877582 223397814 544506867 397910426 519541953 542073855 126634620 173826154 810445766 232389436 225941203 741011083 64651492 170814453 20415309 755729398 991148931 449081455 531766068 553061013 788671257 657880164 326799314 862033183 115045234 662086068 555034201 445991069 956619083 546417475 966749867 206619623 121959306 988618927 516911348 418874817 203811834 641501174 874296249 822088663 816540350 92164912 898254499 51128019 72203367 203868256 207120852 845660009 251045987 257101306 158520726 803753654 126681436 943755320 590956599 827159923 524142725 447028347 172112929 547419572 401652260 442329164 574708049 256815823 73253332 419088316 292330659 695575143 959208257 967548184 813563763 504188912 831421424 801830074 349627651 929195267 263835515 505479320 621624669 908497506 239885471 845707640 498454438 72709993 369740049 394816536 875394690 512027664 338455118 873310368 801253823 681077799 361790104 464670082 269886630 690072212 784257098 589955667 818619627 359287783 344607041 841435360 638284980 29950599 485637700 677911136 330373168 796524258 911768008 268811361 532085624 401165890 913141914 120271921 955233089 234011522 556012405 911990252 622648410 405636050 964835120 125481693 673278036 68844975 64881374 815792486 735919697 197188029 694049577 429995482 574643373 341542006 169228088 494255394 756298859 647142751 654971473 289979652 343232869 268080108 376064243 858847612 126029265 641660505 254976846 798166993 712493092 622137471 815590150 125059847 272418441 236338397 756078623 851936282 522034825 810135456 282014471 22943065 702385641 66322530 652652308 223421543 47083385 414460113 552845816 231996465 793118534 851662520 936489612 824581894 556427643 985891902 227482801 878428664 618363003 70032570 123692207 449352999 906976390 913202015 723396225 176619955 599091220 354795029 994801951 613949901 851210991 388445444 937319801 646454362 74880681 428024426 127103575 549509490 811884170 87713247 133290616 541770023 409684083 456340148 716080504 69824757 385775808 770310832 352179158 934411348 461522646 586829885 300674841 602040969 447556762 6273444 326857058 996901175 198257007 346739851 277513922 31235490 847569706 377124334 776777766 560562442 228711274 233597416 495513716 785971353 802847080 584511318 683825837 165137199 645493256 980763561 536854618 8897880 3768643 884922253 247606624 758029633 624081897 159060080 486915109 558536522 650352227 971260449 239796633 342608904 666394784 30447884 477855109 339263324 289269234 297108967 611588606 218685098 454739957 414129364 948811761 705619508 734766333 816056505 914261511 708643318 494702360 122350237 978531964 427403627 982037128 536947008 225914648 611245096 659692563 349395280 840930316 623772088 445727887 65046932 495584270 374563724 547991060 733776675 853518317 26846645 356029433 597884357 760534443 628775984 345093093 863719657 119661851 803437923 729937221 86393065 394156451 894856 771120928 465171470 809392125 254228487 24325888 261922898 27170760 489782239 249393333 536428861 302216996 947550801 755061836 596525253 103882288 435708279 385965224 304018929 821608162 509673582 25436357 700507459 319111259 770774833 504879657 855221270 860503703 991192330 650745954 42550255 454132221 843220405 298157098 291436309 967549742 625153617 367362935 512854096 100191362 515889045 474465877 53211279 852413118 995610578 85829640 978828666 213134368 462071411 636446152 262703235 21386659 238809264 155744867 785452308 135119639 137832959 243177146 700668819 606104292 247954989 751511892 923790564 632456939 36821775 144213289 300065658 53174085 626360717 519955557 762491105 379205753 794869691 382941313 722720938 701864065 538629187 304538735 768676329 244717806 805102202 400488425 70280196 353768875 690691081 313855896 346397878 403290114 476745984 195819944 592382177 315934860 332821450 474668732 779896283 43881340 424608862 839343738 314633446 399472010 469358585 819455905 981070742 604281864 693542507 443450692 457336942 897054524 18907217 667528369 917726284 912017007 700953101 710060973 992238990 681268840 265058223 10511341 659491355 19849844 592920092 95025180 625469280 600750619 25206358 21187954 443552672 48386494 933205076 519261002 136069407 129714199 260115311 403799484 167867820 173538122 130631170 685045441 344614909 14324012 804917350 844637171 875540135 307885230 753524336 741021078 609816335 687677468 245526560 561742524 39506557 192920153 748485050 175860869 469062567 348904561 170808490 511304818 250566076 315770687 827859803 463791041 180775930 694206303 383866085 230330394 841599041 510039278 832473003 870042351 733293802 745630806 721118959 77924152 162557578 370039095 686892239 974172938 734375994 379583557 185242127 679906610 578295193 259707728 875270848 627636872 759887401 111179639 966009425 176926618 166522139 30899404 259860823 221372544 358225099 714097290 730822841 894498369 236774044 90058659 600916356 366371539 147873394 430437294 159967233 270966425 692314211 224454555 290191758 223991950 79046776 822314828 857442381 892370240 563055204 817753302 455409443 29700375 681524637 858048521 672940929 793764377 592233042 233197259 651233338 852661070 324381141 825958019 974695398 883193328 815950476 20324409 70063554 751149722 768114528 356349151 418670843 622475483 251895738 623871370 980471346 479271548 966212404 469404312 26484225 810081902 511986270 435938567 257543413 983441176 401268143 378729401 933673471 666752483 209984224 120872264 143189233 847284038 841747515 298285768 114087575 800073850 239636075 219310131 136916235 935144599 68561203 341806839 804362907 228154046 56836174 968933396 965860610 633035636 948305958 54000681 173135503 996812264 28529042 321424356 658970618 922236236 175381838 309153132 770108082 877939986 906705273 529724752 75805098 703154259 934410584 558917617 181302960 784607384 430676925 633106008 590540920 668904513 535520483 312168258 593337672 655109755 629929613 628621482 113600912 690654868 555868798 357231250 968366886 43833887 467449873 994144676 370186999 853141245 366864193 360795957 413529492 652387957 10886145 312188491 449998555 321401515 998793842 885380327 15393308 687704711 238082773 325795445 384356067 619592684 460275529 384193662 598774787 283110977 571006473 164513631 840421188 523999894 942119264 137930719 172838984 160344761 377039517 488503166 21160537 188390641 713772269 403981096 577722078 883232353 892626531 29041595 157563792 609048853 86214556 279077901 875536301 868503420 153458732 811916863 390718654 534014980 333983237 733884262 662632183 460260281 584253221 900643089 342899739 530504667 68153028 790293158 770340027 937473339 369145702 241115533 816802886 34710763 758065493 585935014 418410318 279460035 493809831 245366681 852944383 835419289 412536505 298307079 363366770 610745957 752045110 966194533 735106049 144084807 991991699 454198850 160475735 173507694 458525122 822803298 495224592 751461378 673127679 953854630 884105735 938310519 996992522 899139178 413476633 663948725 736052938 721891897 852546715 709861362 634134234 598747510 84842672 538349076 140995411 406034056 540243661 355844135 560022801 767648407 241026312 251195022 459238284 404701346 534799664 512558718 323193262 23951301 785284722 537425003 405733583 763644524 473606552 330217331 1000288 933181010 737501236 825447319 903791960 539514810 811244880 313340522 661870409 275715978 717238402 812945626 689923881 513859006 368576398 530563694 708483180 62456073 68660822 619891313 268767974 376524795 968993526 339517123 264656321 781591261 743661067 405309341 665444287 824825744 630365482 106745344 149529903 195340698 222858475 83925706 71206046 253206823 309736013 235228512 489872080 733070671 83019932 588046777 280702031 333265685 124721308 904876305 358173764 921779364 840411041 449857824 35146544 599091376 549259126 67024133 351777901 130794110 964409203 320045215 679475208 327068981 217386477 232146175 621492385 552558220 429475871 961507892 192238124 974276989 864637163 788409565 321342410 115446314 408179708 197818617 725103066 519627530 861245782 833071928 628985590 584273580 392274240 894228871 563672523 411311225 261172284 999271662 789219553 867189785 497783375 874579129 133090727 271865635 300355479 962016391 383471894 346796988 505867520 772063194 298178772 595781856 626692512 129715854 984582336 640415498 101846851 422159828 107559853 680442541 980889845 995020610 643429775 397942471 766237140 685073686 845577308 758752841 811795360 555156196 626200031 665619953 825708359 886753277 833373042 445188096 499303586 256544754 841630443 333825438 242169097 606091015 999818715 388130080 689315409 984651846 635322000 465485894 868529871 212812048 542847252 399389666 829425684 268327494 713302382 728605072 154835912 289863938 272563019 89987753 261109867 425187229 211091469 802856702 907199316 330229142 23175839 834273488 933628365 193460606 842134383 446211353 835461237 255518965 890746760 430050974 366293871 720162727 465659278 625897058 346657873 563422257 319365935 282177203 277934420 928358642 688176632 844600351 474436752 791611491 601016413 113157136 167372231 928440829 22948601 169394584 515399076 247033754 270909468 561903088 398915270 254825679 422329790 754508411 805174193 553785668 577200300 424430208 787431748 660588951 511294128 37955533 928401090 39951826 73303276 38027430 185504430 459420968 674874043 975509938 301670760 715181324 705732877 972207693 207017577 889588900 843585328 88464075 804264367 484036417 805383511 806485849 680775245 936315563 778485429 66725029 29548226 709728529 299935940 469998142 70036705 681445632 237395802 774650420 661742400 378474208 882065510 221011244 725865396 22088075 522253451 895743825 975069065 557011442 14733629 607321939 313262396 604560442 303385590 157043309 621229528 303278817 128040614 485049031 229193584 639434818 861318859 596255259 976856209 469082226 366141000 653426282 190144891 125460116 714609555 586097595 48748520 584789769 596787441 206642623 198289234 203273970 52159908 493296594 719739046 417691142 708766678 669861675 925519677 942335513 591736136 236422111 657211847 283232722 889646947 36408990 319757147 486821974 370313674 946810668 521811025 140179973 58854619 380123627 671345259 416856515 767572204 158747017 676934528 811390556 810636658 268046327 940164773 515972931 991461120 271194508 63635582 615889335 221228460 109579687 330239079 105175653 337946598 874783056 548348055 785910058 619712610 150520181 429164503 66244607 656824608 375825336 901998771 372584513 523628430 758952654 148894973 583361713 609347696 71724213 400742537 816374904 807242415 683574503 566705272 497084235 283685905 946616259 345185806 14218032 57718250 359213905 289245776 910515466 180002726 64550669 756796074 104005254 991716471 496417532 95546621 834682248 664678682 424449987 396256766 203809502 471112419 888218832 271810943 703744589 967935741 126771201 318720868 14021558 421270333 146729222 820720220 564079881 851940744 743096676 369247385 503825501 165854580 950513893 564498583 146235098 627427209 784697932 573894538 189740298 247035467 25703248 339422049 937125234 220249594 986294615 13305365 823326401 538369757 680009718 522567687 549701604 240747004 378506504 943270141 422357632 689926048 628057748 736411499 28103511 228639287 207650910 950355230 141757335 233092887 382802228 319993996 882156729 32300558 145977665 349138824 370519495 107204581 358834834 789566913 906625142 142288148 887883584 559235446 161042291 709202612 369284284 822806527 714240498 901772227 47322772 566368881 880376842 261909815 534107208 57692874 29019796 521992805 625204538 986563523 864551504 833668848 938100998 561953774 258338067 820350807 276820068 655880884 203621886 402237728 416362390 458594336 91657198 450763572 565803167 876040874 273745290 402724171 461489620 257817397 586451406 345774608 254183146 133801979 861995367 822316324 291756419 380686732 518652701 328516467 624208640 260154438 484248971 701910026 567688299 44120846 720641491 788610707 533832843 85193651 223890858 123427299 148356883 131232153 847244820 956496417 44613430 415430219 251511231 470427378 441798926 501198634 674753947 4539166 648950089 469233169 806146135 312824013 598496983 343744113 729361589 256110870 89985319 287509216 312712934 847110332 714817181 663830388 319317180 462024612 187211087 718575891 653315191 132621767 356001491 672851440 539449864 90110048 756269169 644509069 43543612 172815732 826136944 417726962 161170424 108650064 359832876 651582351 265637828 95444418 154236115 184789190 341763837 172580402 128411531 944708806 350766460 466928808 222524382 624051118 124519233 858916607 408891053 134723276 554777175 774244267 459455092 671820942 388095597 641542389 394059554 929381933 500978774 95539357 502326276 22767124 296916135 722674699 323390934 573086611 754962451 554611924 664755619 602933226 653246662 965851763 63676842 411215672 120821089 805749589 956966330 100992030 677099110 669742720 827247120 936520872 487938000 333848286 100674143 170055046 700772326 492294937 971686116 714045325 237705931 715741458 211935874 796319681 673070292 900682677 643795138 316525645 933802303 89732709 535559103 153698710 312991938 123891001 963217957 331825837 826111993 250742622 956896324 69224767 462482106 572053615 927195091 641799631 845029332 636617879 34927373 359855151 357119813 746618498 351789970 294074385 159646184 798349633 962005677 265612301 974632797 267447341 857205130 239672972 256816882 920083320 306282904 330866665 213312420 299702476 245960738 100472983 426361138 276558022 100289609 665156442 51043848 808189449 710884868 647246582 302259056 702575238 412883329 697025311 263584991 57279256 131262575 54756297 107240784 795668779 720692980 571886055 869679470 754370090 684364816 982230096 698513551 711368362 516692200 324058483 323010916 224351170 554751472 751533389 769887234 729497679 823834835 86244698 535003698 350712332 616496999 906835875 771079992 578802890 402988610 354322617 89789464 756004421 514403001 363191937 626383514 515802222 734537033 698534103 241925358 500358620 213374870 594874070 302544412 356834052 893663263 361625785 184119584 46883117 704522551 107969880 211617369 355446037 250275304 395275599 111426974 511706843 564035185 602147472 286598075 188145051 480521757 139649213 128509269 604164706 105621620 375416628 694924083 398107366 719553099 31804975 59325585 324354376 478066956 928319407 429130541 50875928 752850276 534274111 793993684 116266608 967422538 887426370 740819071 62165187 603066952 895024582 226297761 814190266 881475666 545862358 951083756 224286511 20771840 620861565 279060673 116592410 555359274 439633956 38166079 352273117 769019730 357495339 101252628 228845592 435754849 511368387 962600464 680090376 28209817 251881746 60141183 966316686 527919864 696495728 832584481 650709176 990551073 267873013 119662695 280929846 323630189 853762917 247515083 163453823 722572233 591095235 847408391 792713122 412959832 219078452 572416771 853279846 95249958 108187400 693659820 309218210 899710870 852845573 889213582 148575632 417252440 442509321 689498431 447594873 839678071 350253462 346772141 9615960 137290398 293242350 9500607 747676595 935075080 558164846 945448931 790828905 437589043 658037572 289896468 595140169 538197703 303426464 172727123 218350613 673579145 248218964 868003407 480354237 27356089 966088734 645577591 937750852 892006326 87640971 405831774 291467799 981159785 462463279 687860705 367029924 259201001 245173998 847915334 729339087 525564117 344411300 851588849 600173130 503020399 912759090 330980328 301596080 502573393 45766390 85990661 372447892 573089503 693964104 792271321 483966615 502309684 165098580 389179654 26427081 317909431 218853682 296814290 946134203 216678637 258749133 828011401 143663814 123092990 98157470 212550755 583679980 35245594 318829022 851926832 182741051 40195765 850725278 390967917 196179883 224509782 272729346 616225920 153766273 83829076 697941105 925604189 72268786 555351810 455228362 246358406 958468221 103178894 127961258 282019136 270610782 308565915 965398158 534973252 208458692 278787723 988584929 760402876 838606049 136719639 881101915 93680008 866575674 731606810 255882144 56082624 331680527 517921000 319609103 387096222 689525570 792797647 718080319 856848165 160937359 529601523 136053250 528394683 464199885 651603715 469155946 532640350 803601612 464810650 805970328 665992565 159404470 640778483 899814267 467630107 740621239 524076572 688908092 370106627 173342301 376983267 893619200 590331446 513086953 339677503 426811115 70384185 250652867 870481819 403915546 529999713 534025840 680963714 775695948 426187834 483684350 753017406 582595159 651897773 475644118 210429925 91547603 565984404 705827330 538482285 591765448 422453187 839290975 986047658 912484812 976199939 746611267 342674850 772425434 193847840 240429919 688188015 7937773 426657508 812594322 746862590 329240287 83474618 460005802 613191814 111664544 187419761 252526625 822490918 391587897 790835617 946997269 789846313 225295438 257552583 654939416 629762081 351035670 199771535 581977105 345601521 395133157 149394001 836428513 341301421 617130718 322566467 37494793 746035412 691603399 545590168 402561020 799348770 586468736 49502642 237706508 172261102 285008804 884202637 70817422 228112960 754013107 717780936 794636896 364702174 927112197 755236929 501788657 860487328 160806193 604295555 779123482 818266851 778118511 315656174 951696958 418136662 832526401 877850145 9161705 247861764 964238141 93482378 819979473 656557315 623372099 781280687 32554207 460059948 260777935 616297149 745222079 323500342 105085198 212245676 889987733 71716282 167687379 493997511 57497526 466989914 432071230 713216173 592119232 548280079 535222472 418984881 46943824 975762455 526260895 259596894 329719799 124231862 585200751 546660511 947676309 255023757 401802317 857157032 489121037 592120765 300585684 320032147 901937778 852522406 621103200 218776095 743979675 332709454 79800619 387204793 613332749 528863330 863827911 520536165 639993953 531922260 934552723 255895491 840903863 968451120 523047652 455441372 186155922 22097458 539371218 827512132 326064264 251152289 955324203 796173655 334125833 576212700 469980938 347271580 558412694 160752261 895074343 688277261 826351319 319892846 226289812 548848356 365927980 750415376 311980584 230192151 61537215 629615398 677136159 592336567 535395416 132063025 558609952 60584944 506043794 474239827 247098637 184605282 733813020 605286802 177820458 760101586 58220865 744444836 970537486 865876487 878019995 587647902 977252249 384098036 586923267 854565519 234454181 14545472 745216464 75113870 314581916 179211342 601934607 499613288 142181538 27255139 874963300 862683272 690889774 446466490 687054711 660569946 393310996 592599496 621206735 329641342 153719468 65238434 896271448 281058192 150118816 170481973 672483888 982954764 279178918 241665328 952293160 342452005 689350092 861867904 477004258 847316865 343187558 727344369 652299462 546815336 587873868 843935818 851435455 930420746 344088266 468998474 763969068 296643165 991324694 500164672 319474623 502051413 617913018 281134377 160910070 848852239 197658614 897895561 283999213 617908250 860219956 750965953 622717111 477000814 535840018 225020683 562959222 343426289 695128648 983337971 149476087 760459308 724677949 520542659 895963335 84103117 988406893 738223679 977237069 609422829 956419566 519024848 492018462 320280971 247299488 625633578 972266596 684138631 53016943 33313889 467036087 658489386 889486110 96283685 996647738 522671300 54524145 156825706 401304368 188494613 531940881 85816663 659685952 717423820 915132549 904124912 839139956 480752669 949899414 475548046 279470770 467716441 879874526 376657570 648371458 644404 725626659 308361063 85164817 499019343 178184920 865940041 501155388 559374400 325495053 53627401 112244587 58708760 733500313 38623745 987366553 853267743 276100500 304779307 83820841 75906869 48380724 538544285 350212658 765907576 761440354 367600210 248560618 289558119 73588518 305147711 290290085 778619817 461009185 607829205 883381360 799623920 273407190 677018753 329643561 42603080 707112151 21995539 81454845 874967970 561142145 652124323 183785769 506782856 757948297 133694467 651552523 619498911 229159526 58145068 213992658 552514962 305727047 827627210 548392622 276534787 701072214 183396864 540112527 912139784 750443374 331013008 607251076 989409988 661630580 247614126 941316313 933475840 354552280 810663995 15427704 996768408 326813131 229901 651977186 669932511 312965023 363225000 824806245 841353784 511921018 937193302 810065746 811253673 734345258 109108713 619503693 5969587 272793413 174361894 56713456 388760122 678859119 363819852 782312074 534175913 896993065 758922291 605783435 830475880 887830474 423786783 444202159 582117158 414613712 390983827 498009275 566944031 990560371 33533861 601642933 481925495 830926372 649493596 657176636 206299068 967393359 260201506 422549830 627791859 196859096 108831388 743792674 554962893 848003471 774067466 541371204 778295935 408480949 302972302 85101967 15907494 9453063 366840321 135945852 150309992 38752697 115771180 857829312 767643526 45200266 352135532 749228672 288606522 715648115 742082341 509099639 402003077 482255150 400615568 203911860 497058655 377536208 739535108 665196559 811967788 746635810 514080637 847670703 951592296 640262675 529409117 945139786 279970674 424344965 740651139 164391149 898469468 660654052 914552745 849686118 320083597 659942656 145035071 666941744 938098748 687378044 259910118 205310389 18209167 821967390 296936563 852384591 633686059 395236227 18889360 43216783 580200974 756187146 410196535 244385043 176463306 316895137 873676395 718539594 740211950 67576645 228254377 387216731 238344464 983054860 714193728 908302045 358605396 574094861 73879019 97596106 318177630 882364547 949475943 109656629 516011478 88393659 194184472 44680203 841252830 542135493 873136655 200055595 489405601 767891872 524110903 537093606 144697695 94837770 848861446 89377126 965187202 764471767 515637012 324919131 946714225 10654104 277673665 802632602 181374273 298880245 837669125 580862344 706992618 289161148 10641389 848685739 73311203 144801060 903362024 97137280 592032247 735322789 101774766 14002990 131714926 433239278 773772074 227022132 455684414 448007139 525117138 775426015 871254560 855600335 507341365 186192281 390300185 864319281 395483036 967691692 158156301 601677905 861525189 93482076 606302317 391076234 756677546 696978423 313195775 321087008 409212422 419755302 603339477 533668963 989484890 462162616 876225389 125493123 789740706 314537355 880353426 857722054 33057538 740538124 106269224 110395145 412153284 238227369 56774122 646964515 820838719 278228350 573869800 725908996 931238130 246662581 379275218 379206604 207004786 991504418 738099486 363989397 686285326 460343507 69576685 371407240 259854535 62433154 304331091 338912303 878246534 271525110 176406039 341161675 190102671 200394553 472688774 627032628 782811133 813364672 299569217 965941551 268488244 832922840 263557502 371705348 478896439 486499323 58018854 769482078 685446367 70335366 665615731 650537544 169510889 725490225 783431582 423986815 873981688 155719890 360582063 806543266 172191030 479968971 44352491 597877124 506912587 717714240 807257325 927860341 909427099 234760583 109908440 309622067 317096702 570458773 731646091 437647127 240932007 54651646 322491514 39772332 675462567 524991100 815637872 512640299 148468407 44400414 596505338 196399538 432720664 370152335 809057329 586449520 82889919 260732192 532081240 795088547 149531250 159590981 539424795 340148591 182886477 725275702 27195189 209154400 708579294 258098991 361248048 423971199 409577308 56719637 937280865 680946945 597015225 618179535 86941131 429006290 273362375 276138590 190902041 21604900 656358010 126137917 507301947 532656112 402356443 699288427 400472291 281900387 484451408 324503326 873708293 507050626 614327999 806588435 868853729 830473604 640647334 23764143 408675757 630374651 550787673 473851491 321338251 576740776 123376398 925682017 956319457 62687181 604547681 456137840 275563843 237336025 683520852 931917802 208243208 781296056 486071058 952291980 417448728 227842765 815470332 930562696 243339150 451802413 328029426 686448815 55914300 262943242 978915901 54798868 247991335 877317562 746377883 522144739 636646423 930099085 985793305 140476927 869402255 962078725 542917485 421789129 295470942 521439680 504012668 657040589 933982136 705418100 651202315 451407462 223795237 417082125 419256560 395852319 532506996 62898171 923846953 977016819 904573167 990874827 382927191 536164752 715018566 61184130 442728146 671168252 899432081 272039866 5597348 891619772 63362293 794246562 550764773 706206329 521141570 401259860 907425591 86493665 516778048 260891404 287216877 78924474 398781717 332013575 126463329 941623365 161812592 429735393 569518958 155648608 43469669 655742097 935937263 201296092 636044221 304021388 344247014 293571552 902736561 214778344 372040404 879861153 288196871 258228807 402364215 474308849 720225299 235621228 633563694 631368516 971723443 489113380 925232001 171228430 651484570 18200821 46017783 352372990 72158180 689931984 200513693 807668439 678823721 72862178 805078940 353475287 498200946 187911492 188311939 168766802 16007604 939618711 661312463 260996074 372418843 116049509 421907423 944243245 952484647 271287528 89212078 741585008 549951461 434674444 191419210 643257030 92254241 267520198 566554770 647704316 902412799 591186309 234256861 752471253 610281658 411009803 346040823 896349268 51163240 92555964 600941757 326492136 48026445 406515451 7928617 64792779 21334897 131473787 247248861 922933331 698551146 783250998 975824862 234789885 276151975 282739977 966212377 358401983 519409345 30547969 231945138 796458355 944111300 191775532 60719382 740479666 700423685 713274572 461225629 49902888 741444147 771306579 573238845 441506501 517804475 852115629 284595499 996154783 606667227 703521404 115651934 37417782 436729644 413960513 854713378 669114602 106748450 531717511 685104133 231580244 827729170 637570112 324436608 378532832 987475530 966735313 887177982 475604246 744704052 77321617 759788874 143760920 807451807 340145144 300121464 684109462 606602179 458169394 571169189 731984196 529817432 632502788 805089992 242036123 930199338 489746452 102739830 559231933 724740260 455660033 723220140 119648398 665195411 188877542 563649535 480323615 594908899 182636386 877456609 461310253 630857661 142452882 936304414 365012250 16001347 650480243 443118355 157420296 227607898 312915858 883207915 668682024 209944415 62989320 417670506 710153333 814557872 411266670 166524654 278893399 520757900 589433684 448403211 840775468 787813935 445904446 4584960 547274668 774283132 482894095 810644924 315472074 233161852 703817485 386827796 65017048 899078050 780557418 370740755 876579451 462524732 938242064 628066576 108187953 536603594 326608537 990395809 485434654 144171244 456052898 261337383 743308450 376511875 56714247 529125796 870398098 534917005 656479419 211933349 325740729 843996601 181920557 123642097 126175090 821423311 207292263 168146506 215128658 832055368 338806719 585963042 181943092 237882132 604131385 146164358 26999640 382605304 112158329 724357111 841078113 540212926 857471669 889528946 7298151 137969106 769464682 160453326 828483388 765430797 351488100 26576869 372937711 657827217 769848113 970291110 229416652 880167525 388883203 216911132 960479050 240048212 729945544 644187178 950398617 577158261 924458005 573702451 172653548 585199521 122730085 196260928 358137687 16402141 499610720 4611432 482992503 395955921 844040815 335760920 875030637 399054886 237857290 282515034 602079238 116648011 117361390 475385373 793418809 117414697 512021101 149076515 803998782 579088917 100293858 334919277 286750748 141910003 112542815 813816816 895612245 577799410 543386524 500914953 843686781 621312380 834643499 908820213 920180644 501267445 54360153 662661147 233776383 698602767 779018310 425091348 594662927 609023579 128130570 838406933 663104642 623542547 958409301 69228506 37022459 778021108 559815572 378973321 474709928 373840927 636587947 792947660 858435083 365575054 103001380 781427381 636149010 496188271 253640937 640831684 5625005 643375560 115780452 340896437 862575918 546465693 866160444 346021832 150811034 710350970 957473953 517289530 65047488 69650870 191365547 584347873 600502400 214799930 155891325 400033332 51111033 380570192 899926636 916409339 304042459 4149521 244673690 343223880 970299223 78851026 132188244 78787264 507384342 411071315 49358823 685482124 652779668 492100296 542637720 659867878 789871260 892765596 656952037 228224295 548648062 31159684 138135325 74499189 437804660 624747880 660767155 495745861 474983472 42439481 598088764 648907569 282464609 659180549 718800469 851117930 990378018 190902417 431710165 480229392 828875372 176110717 619169399 955402155 653833500 691535064 278477931 594235274 41739732 708976211 285987637 679634179 548310221 715645125 328898801 343965809 959847446 428698541 991838187 78096131 485111033 171648801 524852515 634472680 958407580 628591844 707763898 120409910 57490666 418603568 131599134 496911042 58376034 739383550 504211014 840124151 368488437 83571566 692875980 808761427 558455179 578091330 454150487 582502768 421187601 523656567 699346971 894346568 751960221 747846314 299662969 695776722 314169234 306323557 504829167 406947169 989871930 630298924 958783166 694543355 654140387 778404742 258292542 390469339 64202188 47355188 585063317 690073146 176386976 618696937 155283425 309310383 615430339 537084480 854847013 205672318 534434222 793789461 791682428 413167504 184544391 122852429 335580837 906744483 691652188 591887187 815486056 898974772 753393654 397678923 87593995 910922078 717657880 321314556 38192027 809387583 561694215 152406726 342744181 127249666 801826929 512138318 960886901 739276953 522211031 716601625 539339730 466030604 672964616 930032235 2389355 740670515 856456307 895535014 724103394 362502328 115187007 214082505 558769993 7202464 865836556 33677895 520189097 5226938 779004126 574209331 667463343 20371844 702637446 969762241 59143169 999335068 743132173 455604947 483569708 630821719 830396343 980118490 657744879 696802903 11482130 52140312 314704376 481931493 598955641 320100240 654977126 502731426 819067780 13796581 344330184 345120168 47674023 147439877 4948991 396549749 785823346 778950514 456388843 525295696 221084448 742845855 190403117 553660204 901686828 898486558 778205331 444448956 61029503 805185061 48403823 120884320 940517641 941006659 323789153 909808663 757451430 831158825 526030850 641050350 406329081 485032186 47592450 548283489 667166866 580161984 510432382 478164353 411506960 375396501 775401068 869572361 239203836 113887916 754287268 209479047 148351051 236281243 969709344 702598458 364742033 105124205 493366438 120712752 977194586 350784210 304351154 201299804 231404299 293315680 446068510 875392965 318330146 613714052 857467451 860515457 867180721 456966273 190701301 212939659 44771825 852029745 441643857 712901005 446616617 694580516 971258793 567652312 79404082 700410137 776752558 120737607 29604620 664886431 560411722 715014308 416222617 318548015 261461620 361110351 620202398 687919571 657092554 112199807 45122627 965628417 339414712 136361646 106840670 942511124 902554497 76025822 139896411 197938650 970677028 970493531 21808569 8814341 777100902 606469344 977348925 575347703 852335796 241000926 222201408 449764308 211995892 881868463 765629952 47846950 188607660 881110585 338829851 632779228 560596056 917154681 388854474 815477034 435991329 130012189 455088390 588570075 900613618 481460687 28424667 781519881 636581992 599994910 68182164 575558429 344062025 20514609 236851130 1004281 521728532 944274843 736851708 969528478 293164883 58379967 842363177 473377728 90055607 463179623 311274920 434000503 414866117 265898312 54111354 662242618 979845214 364971399 853463030 353882267 415223878 248333896 443226198 219090573 691334568 632367703 308546636 873320009 427502819 943653629 806092768 306420487 765906282 436292898 40632352 333801720 104978623 780424591 974698108 854856075 984606750 189221581 148757231 613257031 505220903 154083261 682186129 968393260 757529817 903031173 696319092 188477437 384376163 842994236 934485073 348687764 396496255 234742726 620725728 648608683 514178342 675647372 684099701 614865398 876431507 864400512 480966483 486497915 253063236 830724336 307292570 67101083 406705085 119817839 113846226 50183208 974366563 389598306 624457982 793674464 432538595 424497832 564204488 804402124 456530632 455429823 720538070 622059094 722811699 520842068 653079106 681909431 741021115 919340189 322674358 954567978 265429497 252305471 832161904 267321378 503434037 293377913 352014629 590871183 531838425 487328955 92050184 828500274 139729777 241740260 818164094 152542917 817401979 754593968 899180376 355572772 932534514 946356306 167364300 875956303 413733610 714147195 345957540 22959775 626698587 676278883 399533890 455707189 459985136 992659653 644434218 32189953 419051884 316326114 279004440 535311235 283741154 882724591 859841180 405266787 957597717 458064596 451556422 200509609 911530583 600439080 248958976 400708704 458618602 607968934 347877100 997806554 181684358 645959978 144684863 891170110 292243880 394742 695922234 585319282 355946501 283768209 314771779 603739605 871753518 421382879 774192075 953148339 250682589 641194635 641901834 558535341 400489382 426597723 572923725 560141707 153234259 456712386 370583040 15091388 485046023 432368590 270425444 371624637 604174639 586719723 247665028 764439104 175029341 955648746 541841018 769153809 819205962 715278523 340511742 76828098 183230681 523689698 199177174 834591126 974691248 694120980 215435655 47542511 565691798 48497679 352315569 27276083 383131505 424129121 240044988 968443812 520067729 225660904 133577545 284544441 74680842 87909693 429037878 897128271 535103849 336107681 88466507 520971649 741437138 95260310 804894274 802903693 673793945 163791505 126725270 426801784 339165495 401488613 136944618 630387059 94421146 995816035 846255061 949862942 412154897 726319980 448008551 537724280 11113804 623609539 70894694 379789194 357720663 239135665 128155173 323552373 693872530 869085162 815347760 492431395 524502547 18689477 990954428 387693667 297458786 888965942 30365074 707263339 225913182 146741543 220951576 725328308 783928090 944882129 813301042 607203633 939449797 898685451 591966186 887732766 607197001 291414677 17509327 522631007 680962361 489414647 681022083 440391632 421915315 437415053 477867545 629533966 141680654 552453735 823557988 555177403 44633310 906471622 151861562 771336331 721870558 279896812 720478018 613933799 587427704 79439835 530590825 201143128 807871565 732482995 92379855 162909072 384049001 198256841 999334543 216204203 754290084 752623884 189135264 294317865 788082798 671707009 685272168 636291375 131617712 261206059 524089890 878225284 814380658 463509081 921440602 539206410 452941860 708296297 77206003 768459959 777790966 789788981 515873549 537765570 278145420 448546855 926526208 345927578 613901338 913177113 544984283 182586528 323515762 925236235 264464235 177369273 815119240 465134538 367375645 799080416 860734379 408023654 637188016 92649204 317567654 437984277 322400743 418011883 423673029 109149334 18156388 580403513 240674497 264196722 710625081 200190504 705990411 70838172 820353671 81659928 184473884 966060307 961562351 130668877 546988157 452807721 686247725 220352776 855234195 274672017 104155902 430602116 497944191 375384153 816878908 128779260 240593951 188830320 248467511 339823648 535352250 110015576 454110761 895578574 754623711 628076949 970695351 994546680 901991629 176664367 84519802 535988917 171874300 617957936 628939434 560922627 308422162 470838556 572154269 381177711 427449922 864376109 546004712 189219808 637124279 326443713 264385183 855117888 63284503 653244414 33906480 629988498 702977726 319937501 981418969 292776563 2411139 284613980 294963876 521909532 830946794 383022141 763345697 833781902 847217659 54439527 567669804 643490684 913814998 858106587 854234549 100620305 828157762 803388080 291275836 772717668 800261487 918612995 160926064 102880337 180651499 775880883 44974946 144192881 638358202 788788193 838389648 573687694 348809730 418647585 146980859 22889647 541647125 104157184 139907183 875060785 566864185 308502242 780749877 339752255 98952007 843160743 330632913 694227009 975124601 602301280 24842663 33394088 284548526 927614079 494355915 439667442 434823960 309247683 880445066 768570215 288595907 262561620 505901840 220495002 973961518 113034957 65488281 623432383 787682435 779970060 556366475 154638298 285989315 435983065 651747049 510942084 721557646 581370619 808532236 282925571 444897690 610404774 139732569 506016673 884465618 476479418 905641556 166914132 593200458 796409646 24012325 63220291 862905938 764757429 984167636 195999258 907289313 820892246 395949930 238046955 521672817 434217009 974023072 277733219 18528527 507168609 323085199 787309024 804506963 360277569 675470846 548031004 381416681 985302472 244204207 415031896 549831421 324687481 282271327 419806664 148753086 369864614 559440052 498056856 280346058 502922263 890764418 623968738 222662648 299178115 364381249 543688932 714854844 590898471 703778280 662286364 546041160 199686697 194149417 980615191 162777670 306490740 215957233 739742030 129475779 900573636 19190805 445315690 897198426 368314583 401835264 545442993 522227117 52968084 979240458 263428573 156896024 146075727 984564206 842041020 335370946 434284180 960564725 855121364 52497777 504451369 226786565 98313067 11814737 532922736 356217270 844642546 26066272 372254460 467036838 276658805 95157637 770496072 399772010 539050843 749521120 719171058 162899186 596079876 587504530 128379609 289329620 205364902 415944560 615228511 598333519 936416452 92876372 23952186 952910243 575850888 616940623 26064427 472152949 346970652 679808958 950534601 474723612 610084123 200369006 428886078 943943347 877569792 143995435 599751792 192467910 502552371 956888753 504195283 953202339 759560763 503701993 509972330 712857564 94341685 870958195 422681569 364294072 84627005 172750191 13613348 123177818 872767194 33142430 531576348 933684869 373338489 675088132 379387147 24208019 646971050 229710713 463956405 5148873 775353262 807394121 509227708 115233447 428735533 660522026 721683378 418781225 333163282 277437843 981287337 882615373 323315923 175031832 197413259 771257772 688451859 691439086 209101303 140562906 898437702 57114684 549801540 450853813 551368804 1789406 380456280 875174590 390136455 691571982 239519625 687079044 555215673 705583493 608688126 251184634 244479324 89935767 587058394 348883108 338764299 500604935 786285302 91622842 431296747 58693592 788556733 381446318 158733984 505108355 924163197 712693897 810858995 128861752 105199439 983715927 666689021 491708755 788620499 510843437 659445935 884096928 199787336 429326577 987040244 154806914 35874913 971985884 271986177 496389146 60544165 400240138 503839814 203134351 105125578 827743218 622915310 730195924 404992455 338263238 318817512 159418693 904321635 540346731 621450213 540929216 733818428 195367840 290668440 480920743 86081913 863369922 231970505 20340656 829410809 225042746 196491918 483696722 104865135 981353924 469193130 649113288 66454672 598188599 790572673 499585604 898159642 410230529 153333096 934100856 533942702 801691109 623608019 462133783 723408488 922498866 599942864 940252474 304800961 712771133 272703553 843633549 994943828 518281033 778808760 344104759 500232815 519943455 238581687 94663801 541633464 264383320 695585900 725607399 533477594 348526528 465419486 685626477 275554844 211520208 244032139 942792319 646825647 640438921 523002746 966477008 410896897 308621905 277866960 344045467 777110534 354307896 958294806 824196381 862511732 225859758 285769487 651625939 455569748 764283477 213207753 610822079 833817715 724650048 839807892 974798844 413903396 499371529 9525975 245709005 767123196 477853593 892298871 147803038 842884890 687897528 181714679 540835916 78976679 207266724 533848310 67864178 895403607 318120789 396682361 75284917 671864202 484445080 636237205 96126358 826235720 22922314 921524313 702052575 711834805 537922890 871412383 71256423 771093872 2890634 953301796 920830856 172701446 346140495 432952533 502655840 564982896 905492068 667558849 236327656 178274266 617458010 82913681 89622137 682512584 672464455 337209264 140276551 621881849 138092620 586809551 960576426 499642861 787864552 767932187 161844189 681031595 44045174 338669809 686805184 704487733 703630456 683148492 897502727 136063871 924197188 734836194 724434260 102438989 83011086 124763321 360512016 808885954 828798624 622361984 986876816 319372337 751973381 443924019 163823875 691231262 369135876 335784629 645551858 936215985 995615559 907551455 400547199 877271307 788563122 751715930 959031760 119759264 781023732 593902858 182751622 336391890 395740642 924333896 884868552 233926062 372261860 528567131 853125307 717406202 180442169 921434393 440092457 410506416 11729419 584109562 909785671 96187460 772477647 426492748 691640443 876809094 439230917 993654969 8228597 135915807 115717456 853752972 323601178 603117977 495228003 562213042 974482835 279851612 158965810 294675292 814306616 840921002 258279592 802379877 282529753 765934308 945045327 458651753 19172300 409056467 368407056 645772380 611363858 71738943 606150829 863595506 277802229 318763524 424985764 945547762 392943173 296552192 853087794 144296154 445048837 804336854 633964688 923023664 308601079 744908823 955958144 628755474 255128522 249980481 953224251 386401462 432101796 881570771 618205538 252876976 255576686 733847117 512821358 881242379 696185919 350740939 763739946 38138468 340808739 560884210 672644793 685127114 3861489 514938612 205937301 825747074 999423931 804942724 576048872 391280815 404536183 656158177 873269718 141318908 195915635 50175316 566140108 265977492 415677828 840344566 704785467 204493653 485633768 701862327 635816199 888585670 87923393 205269930 180508593 963271899 515301353 675367671 764362812 607872061 445621611 861931194 706051652 808600956 387932600 641407486 980406208 947832269 632956465 985062515 618062773 468000173 254093808 95307413 951858876 848728561 437127523 847992660 807664396 339242466 421570307 598580843 368559757 98434421 449067415 696546953 774793897 708932608 305238815 495155348 126733386 483187476 293233585 66863935 604150490 424961568 29171406 926336946 858302431 589188026 70686344 217613226 767230575 390871588 996928084 599095204 706534425 511009872 913106632 628974407 351932172 752671951 462603984 875570697 878962809 974732970 96871050 597998514 965145409 550555359 841682623 359502920 631898290 781829673 102847185 485023199 339980556 219965786 974630900 508624658 149404519 327988561 356975292 796679404 243270361 419950146 484248018 440376217 850442494 427939810 354103579 885528008 488240659 537176481 152889824 639857669 961071031 9372010 316950582 38984110 668265609 659718874 677946115 452153068 489231683 924768185 873878260 3749036 902286412 407629455 265468855 307123014 405980842 816504008 386185877 584592303 957890482 288112411 448424423 301589600 159995986 412251852 666061006 641456661 724321921 822140310 505985898 962301537 528760416 878500853 602167524 955203117 830312923 758649333 806423295 50129331 860209933 222633365 249740291 988017352 984712725 979316932 354999429 109661029 212498973 773366913 929407661 333295522 693816324 148983487 757437904 701921249 917180576 931219523 448168466 203088213 521797139 924847375 311821528 96004593 981247384 333387640 763344635 719638153 697295221 24741779 146776077 339162140 411663160 536722423 380942774 558895015 211940891 726407117 130627487 222372774 692488977 488779904 661975 77404163 841488791 602887590 650967270 27517073 398008610 116881101 629163383 822047744 431846297 157464923 382823882 822840634 333856591 377875238 494924192 182121891 11427856 755983951 778665533 542083687 42824592 575321022 973277107 73539227 703231695 830301059 645900354 887097811 539456305 997857729 547916026 145069284 286633898 177153134 481170270 885418092 307562640 140984771 731249869 176358140 276595479 202111394 887877900 193085746 829703392 250902649 524788281 998748180 483150319 689911359 892646859 932044237 305936283 620529870 624924022 180730743 124352346 561810744 158048041 601204545 843029513 985943672 653729485 799822512 65005209 125241769 575313520 170582151 670602593 600348600 421884892 726530668 534135079 216219469 618142390 234765744 666053641 49182465 688788675 527274535 766371510 212865178 102052709 670604743 162499091 702105955 8828612 627514157 384379335 556175005 983422917 349214194 983389374 837784110 534512962 541254041 974772861 411301551 362498854 737402093 55746609 397934125 516313885 3177336 852008101 863958659 907590022 930561159 451479850 863494584 633845417 923913132 908627059 651885564 600723978 737634970 519299884 560391364 798838175 606336051 382974820 87358514 431640230 464897596 695815542 468043432 643710153 10219003 148125878 582286775 544730216 641315603 444445886 280490247 233004871 802064423 46743391 580751072 642459260 480612325 294878423 992407318 866588636 567837979 833334906 790498044 570961608 147775797 49225018 205470704 786640241 861450674 739115108 433942753 914893571 447778621 852960283 390170696 227778720 693239628 355321905 731171756 804234164 783219278 590138854 890276637 524480322 776755256 34225685 416605461 943204202 291796957 406273283 884505050 289987034 211620140 479188867 994288110 798185089 183828815 690164922 536296940 592864190 274378936 158462399 714708408 168738287 85453505 619680338 956780351 56773442 268234846 650559324 37163682 356116906 603362606 328219003 764461256 930232952 800750791 172792956 481721455 34905492 470674157 873438331 995812533 48445788 498477923 615414756 502585242 250048228 393562592 566037214 862702910 490827942 208376322 246647435 513487320 217190921 17145157 903718774 223229373 490747748 205407770 545406578 367295245 744817375 719985841 248348818 864697235 950989415 490202708 922648497 606945778 952223427 398452242 732216137 230636201 980073194 79729805 502972858 294607009 157683211 320568062 197203089 728605971 321986671 406974453 472259907 972827278 655634987 850204457 523553468 524047313 847639993 768634823 792070831 146334851 43965701 741243977 779085260 321418251 111380717 537804776 68370705 463542268 58048944 194385247 312910822 647785351 969343858 613126364 182309010 522597409 991531960 272906340 519007895 630579054 197470988 929148081 505978468 957798202 599071328 152545001 71584854 616005970 223535217 201580286 9282828 566203819 384315124 888384542 661872840 527724975 461233372 553273470 532232739 557475681 873389659 107873792 298172325 359642720 186310237 128933837 315918941 564415013 224724182 529614045 959071925 699176195 256385652 307923364 724702198 671761492 90383649 764424469 342617410 294284270 79942603 470934037 710070438 316299621 526328834 684773112 189536899 333175668 277693184 135659695 24907633 953628443 883114723 20754427 273232906 140860905 149970041 165769651 40393927 903175447 964995490 764827829 251926796 193207325 685429076 326731591 395588656 647378093 66882539 593067434 691963412 768641996 435061043 155303380 951758871 100369726 894721202 258607363 938419925 428569655 111779338 556924945 569687527 862811721 518066103 862082271 397141749 470944925 904779465 655735223 992111045 284818213 122351263 669963595 849089172 224962169 902419102 29708990 936100675 220614429 555095281 810889044 384142860 669071808 664343763 214479875 407113872 89717859 19894330 501410147 414681476 396615848 631238629 472574892 440224271 254073812 639594911 741223179 5945852 734506805 801912554 827102923 932342724 189145877 914509247 725749937 432800179 343945307 977121324 614784315 467844755 737599698 149110452 114375243 195240458 374751207 400158541 359988147 151957662 336339336 513686844 969124631 217509835 455630407 169390074 403110695 438124100 991152421 129064557 971719241 854232856 978224512 116169271 343871644 41576183 925834467 251122923 124168754 236927289 232902060 531825676 109235335 102185458 411884541 429678134 894360440 433496096 731207421 963820591 399726643 792223255 515697015 272023947 101793306 196824759 400713437 629496391 935652970 628953022 866010970 374289944 648872561 631610895 446476152 442095786 301054510 437973403 495433598 26897961 578365367 608758142 175244319 842941616 176580764 380956455 120291401 845899785 734025697 633215788 135551866 96642852 758811609 105149720 644590446 845629560 108353534 101617626 394891186 264248958 161657588 28333507 766142647 225842990 872131537 997808734 159064974 701721307 353536943 185844566 514626798 574827616 863716748 596677357 737787782 233308194 807871558 298470099 667810391 722307158 682161697 170007702 840694826 179691694 417901279 299833012 525821214 191297621 796537923 777984428 553963514 778107654 406001736 268506851 833086813 921718876 977490043 948769812 416807653 867236564 276825900 619781211 545976399 32200483 171839350 605097972 772114335 477310896 24681592 446891290 774391595 517313603 417500149 40560181 517549681 192539184 629491984 507847768 226830504 22365099 555826430 435158558 541430894 251167769 595449900 262183287 410176871 888008123 106210809 661833764 791601713 667270754 671567605 702760346 313926736 488293672 291058388 178837519 41337655 474612947 459211154 766899603 709693179 795825120 739893351 299115062 117176923 53709642 727155714 886616722 638215857 229511039 740023140 746231139 459788549 208953758 690956659 854698867 636796186 909324437 574613803 381651856 243852316 798148261 182787653 806503946 201746539 596248798 213167369 327280160 402913614 408692090 795440869 620074088 67889205 920501531 743193204 67910311 856971723 126925269 463418170 267558924 662842740 871991847 735480762 792949829 444341104 107641477 485786211 812628897 264608262 867759740 133165856 716217366 555306387 783531106 269317391 458918141 436896825 610412318 49555109 794371803 363036951 396929278 231816644 252002511 269950101 789080258 324350486 307792943 741134513 491319373 704658369 643521458 563411583 371312106 480733145 397380716 266985034 64811840 528478856 254805355 283176370 691659465 360551745 189257305 647589084 109874606 556675824 122684279 986602526 415689109 862821952 187912899 272592538 288615927 772783079 491033834 993635400 544761447 365446588 489224433 584707013 428278511 310975883 989210775 511676406 185887049 90204309 598311813 543173890 277323627 460475879 724064973 614881471 421100842 642314989 745281625 102903490 816831633 663481119 423147922 991007694 152652833 756840329 555302777 107166088 243418229 100884121 53056852 758376685 821838202 921140945 56414538 897686327 258938621 547846889 847856809 559200524 291942873 679064070 249679276 728884975 309044989 665722620 198139608 314529830 938863135 292619803 125426676 61782115 107355707 168536880 639895168 533939930 630907954 653690902 170049948 541430431 671131431 587801863 498275441 186659589 104701778 111980040 711223567 636600089 42030232 399708591 326765678 851515970 348553888 505235160 687265431 673510431 580758078 486459050 901882330 555950443 478085922 310560719 492881995 275375736 151492079 419451719 235768333 468551227 256406768 31488872 755060743 775596892 587082018 589683723 544937286 701421041 815851181 74335027 928178963 756311607 564703414 162670274 65687899 643270061 446536408 832122444 132401116 393209930 185541135 235751985 263868734 434319080 865405083 71391534 551118241 301070869 11259070 957190793 801307019 400776356 123248011 199574813 981799653 570513019 188571957 591198258 405958227 446163872 413772815 526203119 160397927 482273230 609661641 128029674 523180664 362642460 929663264 783634421 460326987 115263929 962476400 436870639 51179181 142053896 353707436 362565562 740816634 3517662 705613063 116131665 316456579 434298594 426364117 219855828 145707572 316721740 467936059 389295454 278481125 278788470 411990048 25216462 86678316 631423176 541887533 224046510 248606121 693907323 904494249 938530938 110411604 874395066 75968590 92104394 657285194 455547932 75658891 360422320 589906501 406165541 384945357 925919206 361842849 605448917 91026612 184566138 27571925 757800462 540456631 765168264 414689333 842062381 341392764 968419228 702751716 340662481 167465765 75235872 6269579 396743118 820938865 925158081 484651154 940500171 598436018 985744795 919517358 808675979 901711158 857327814 80437071 838006843 967842086 200946154 325036873 290380924 894477427 43748738 47310713 688374118 514660827 432655414 104965368 101086488 306442858 833404143 652333719 2873571 170939835 784769212 853869385 675276850 625636691 119541612 46955592 857990775 498070017 740305242 786447122 577482139 862379422 820439626 19043059 659929027 845671632 488897634 530044691 10807190 458344889 18883088 629362254 290238251 436698339 241710396 12378557 208369527 145624614 113995410 687213228 873463666 809702194 944603439 6452561 730794038 577345461 999028613 844185052 154233619 221110102 657073822 616450746 379912217 285065007 836540815 279415686 28843862 439789726 994759969 46848066 388069603 10987106 244583689 701555266 931667633 379618778 570297214 41308289 57844894 804732311 66289112 617521120 679908826 130249708 929117781 394255002 330973608 731599832 21858988 945829623 215527010 664499557 440777840 764549130 55267662 174748934 897730766 92009829 242251013 22744260 234876757 284108189 20036191 185359689 250699060 617949492 352554051 53954873 256356740 107206682 139453598 146052365 991438550 20818903 998101126 999125361 4439377 269591465 620055682 433196418 446727504 581255017 304570113 371697283 898233009 853211131 696973298 831753267 790944292 110207134 86857787 686055935 634569673 932058498 662156129 764773538 349439985 55905382 998650835 775053224 688657860 208948737 636526235 37620244 173038363 510865954 286041504 5412526 624407035 650870193 68187106 905065377 704327034 975491051 453438692 824491579 928774351 397342819 501442263 943764767 846958544 978725704 153306648 106602120 712810396 335073772 754977475 988547260 355778621 400270472 403283351 227220349 390893546 73002183 43236241 105999899 775537807 781545307 555390470 134642031 999877530 157526199 930779475 479438344 820029238 264148133 836136422 97220579 330962878 806942592 33633083 253028335 721412849 200628443 135403805 722208947 400279212 61663517 108391861 715641280 724915836 276586774 403622580 627371987 899218694 387792039 763669930 343648472 140373458 302994726 388612572 324327131 212385107 517308323 990510082 297876249 21887713 588434846 272598875 636616556 882795806 60688591 255337516 307109266 441412729 993721554 556827809 111606195 154744070 864982251 129218459 874396053 383751948 796540103 267169736 498653001 321761482 511617754 50742232 751459653 574505835 246742818 771037773 751823589 165868332 104769342 504362728 658831349 641510739 141688133 799593497 381157675 541184856 526106517 145223109 848310072 161318063 294248922 507019996 488317126 155234581 159389867 968984142 821259003 19087394 965368073 212672308 624901612 907206816 294398296 990757221 506040139 168262407 13678162 192982258 883637921 336243114 869411835 681511986 123143350 316130976 887200078 892638772 624276497 783010020 919237839 426046217 811232065 333140356 300124183 145971517 762694854 435645794 75401936 682843623 962376516 659602286 785088021 928110416 295268913 818172580 548310057 512139535 537698306 946454781 47203441 31582026 195649558 927983373 809598086 590870621 195803400 739867322 174911399 872724241 609949422 613877555 571378690 76695369 881433395 370332397 585939136 721103433 823198682 799737359 713779490 230354743 567184656 264342269 866470689 995122789 211377249 899639539 610125430 492024839 895212183 381497394 284727560 875249968 586318881 908467981 665965588 15683530 242205539 752035666 196773823 742044081 267677791 9225999 290520411 514743461 809112025 893774726 502502825 951785861 90400380 749961910 307414674 15489718 433091629 747038549 4716504 25945352 583983717 527556834 562553063 726374461 412215794 354398883 306345156 50651936 812331984 952017541 137105349 417392683 193094786 606806708 821560087 664304126 773318979 871872545 9195630 79742157 600445177 148820664 287982788 510576380 517960864 728406950 120666446 538482312 226489223 842108287 479464890 161319732 26027778 908172038 48443936 127777530 706667395 348081474 930084337 39468107 461768490 320062089 986657179 10339002 76327416 376537473 94628899 902578 426720868 894355764 863556999 784949355 693751188 499201901 128252039 344539215 208685798 330523462 826624918 991615722 865570313 776252061 697988457 237639889 680212235 616626483 473169461 960254581 557107495 459412650 657417263 156248784 447484998 539606050 846773836 278645749 342384162 551348119 960584450 949148971 699441249 644588883 610362787 926465658 842822183 905239255 615939084 217947394 323976756 297696292 739608947 114703930 151730048 829792958 232869785 941867951 874622253 614697412 925628906 590446803 613440362 600467956 645738637 154901415 683728828 184362126 221789716 642247296 604139853 577474283 385688274 611599581 326600160 962959103 382789734 753616044 188561062 783737653 935650441 756200686 895727321 732206809 533579142 338103117 419535346 322498575 66520137 260976469 537723945 164939944 758222844 573358179 432048390 589272086 458147980 261333576 407295216 790616885 695034321 977139923 475694119 473049046 921027438 984609587 492815757 694623577 556235556 655317006 427369045 959808707 742511431 195381624 154672684 52809154 852337521 450978582 25899030 499429220 441181455 261113236 281750724 607268407 546679104 207226520 730208658 797396650 976915824 131744153 440112597 742835401 596014175 532618336 172464762 898130817 158219520 301589684 210439346 561112941 579559486 892259061 554346211 140887781 597980545 405061964 846557806 68366551 890219494 61652131 487722142 62838111 690161645 210941180 612779478 215474145 169484333 417803445 904682655 33286819 182824364 982581739 554657129 362431665 288253423 568834315 47017175 88212502 824350397 839774933 137720672 538913954 108489640 743852387 272605015 178229240 720718403 464215093 113844540 303699063 805224840 581447747 228884711 223342060 213200568 139975161 697786511 797772934 49063407 132705644 481183962 529081132 133606607 801787992 476471615 407818934 609678949 414990882 280057827 262756203 695440467 449936110 269455879 47784980 383191393 636482556 655692054 336038400 70374341 194619315 523576337 761762504 38000724 757646965 829621934 988305353 217800173 348471190 527646713 392963092 102685405 573254431 652102676 153572921 408564975 883384558 170936715 85347940 42574219 328485718 430421165 228125093 194264569 698028133 572863941 397117876 50995063 680350643 526639784 27066835 460244400 754669381 983074502 677048641 656337818 665848676 524649943 629752918 611240403 305835531 493765781 313674169 640779083 944354105 136692445 928497171 561851663 975915594 769382269 809153713 397912297 660122684 215319013 214706733 840727281 531703014 568100872 915243360 546751394 864026557 595630335 285109541 698744939 437002489 18741019 52841043 672605532 829058444 915389668 969767327 825289996 490631347 899407808 120493129 934538443 994782929 906768638 827533997 451296371 816276876 91740934 159489465 258994628 926365963 467760896 785095036 366457225 103758610 518657671 634152055 589572639 347549184 353612915 174146790 522556848 356091543 191476485 88660606 995342489 162937390 894924944 753739233 636751866 34920008 505288179 552170155 202940981 45973153 267089891 664572055 758739305 811063885 620795573 981952699 574029265 140809657 991883569 847278602 781301736 163947383 976859578 860031438 631636585 874632780 165768743 641187353 710820569 780754851 350171793 401257048 891131764 607474059 406157142 383199076 963225333 26221284 187242889 603077691 188013180 665518864 344622167 968368734 326352788 483486098 400968797 492149193 432789992 410126229 363285834 16954675 776095580 862898301 98668503 464187805 888312499 559186270 670265720 839650969 801625454 514763529 762343766 565835649 623466793 205833837 363802346 332512545 321833513 947432147 138180052 813193308 885982654 203794859 505909799 804617964 480928886 433021777 241507589 825205509 763521139 707709401 704411911 969311551 175243448 141221581 251273717 841206457 331887876 621743346 490595241 342983528 36015606 500442 817558423 659048984 204212502 443057784 584593755 208969680 26031932 831480370 716997229 772390098 354902539 566162662 835492954 696473085 528676934 801820645 406863570 883573017 161443285 599772479 623220310 956254579 788991604 369576243 241229977 578469780 853674056 343488416 36605813 690879444 229824821 663370537 343079551 269282061 934258946 982441067 838630070 609216409 491306994 59341751 729609067 784507322 244516237 944986330 209603023 251711972 22952952 562097982 691853709 27286383 371317269 330000287 974935260 1803395 198813294 819801585 510939604 232278718 451456791 171684659 946376940 943909352 807453153 166132262 363462664 304360609 724974937 843322358 940581290 387946682 802122201 780119640 277369792 120800194 785877865 465488929 474591937 202945803 513270495 952075002 940163035 430607375 269343697 258399847 781726059 647420288 200202964 777781673 773562666 576957308 157398873 532783252 55135938 432553930 89102971 396944298 914426087 889863977 908795573 938091527 566378151 773509169 928133278 160384033 428148971 449709318 267199127 881660468 159542331 737377047 777695328 465940981 477594008 433100444 626486119 221494150 111838318 685898464 628943585 121608132 441459401 300423246 134656153 330207367 865162022 191850115 973730249 915939130 867940637 758732081 806424366 871446152 329934255 352332092 648481103 594489979 164593471 281861041 952344848 890149891 834643650 645620733 312187056 954172539 214458298 988657121 453923368 606830801 341732492 134577503 219708589 206152279 442143622 476619337 675474770 113670175 163431133 610813177 313490985 396873509 112294789 916867643 445035911 157520493 15893574 945689425 22351182 924835500 79666583 935022243 67494154 339401645 799232628 929094766 652064975 807674306 190356294 861782339 956388693 249958321 721602245 893957826 57213502 30381536 280758900 499529305 436406302 317539188 109334557 778103450 453073294 142667227 54143007 90868622 190094225 108051949 947986487 925166264 832218737 691079248 888536387 163356040 278521393 610350584 822355417 842929351 992550701 309137062 967443992 703454916 783539728 699137888 574184370 404681826 442500335 901402640 562979857 863421604 160258055 355819545 764004720 10820032 179495720 123264849 484921744 957113337 352394488 723421921 494840172 39283446 94867225 699440332 990282082 493515125 873360407 122291024 55238724 254101018 511461288 612693412 723981950 338031337 47478606 658225289 770164577 463656747 37610079 789076242 140476748 810990772 329880686 50225987 714571847 162291149 585909632 543790472 984440122 621377279 573859111 453306495 629003346 948549703 573155642 947667628 278611473 477943567 113869617 176265272 243054784 424261832 428771120 436713215 331972774 813050478 541543632 594070472 870584832 17483740 287979836 875225129 612081274 3781147 622021821 810478487 626004739 573033524 798476589 904928566 848781734 198639974 699340274 171853143 622323930 235127709 121795473 777563576 975586271 515438165 789672643 179213590 312632162 543762555 392940810 168420502 18116945 293466041 389111686 807968591 241740875 502194448 403276692 335068139 527507888 553973134 124678055 840460507 228617638 293443290 185475152 707925877 940350008 498920681 489952005 321818071 788363913 484582479 48360773 904880405 540907433 763403163 621541290 421286456 902999260 376627118 84201683 17690839 292314929 221208277 732048102 484139272 989675312 389582550 460183086 398795496 431127634 458634495 976555323 226482692 195169290 16439926 803026698 344016187 104705311 594980289 425064594 145423384 682972702 472366424 756241560 121707520 46964498 234132517 282170183 51560747 103190043 68230188 299557434 521621823 317083442 613053057 886004426 755348165 801251399 375585982 247225202 122935717 358246176 501264592 929325686 452187170 926452838 231686826 114377518 427112156 615191087 930232707 220377394 110242022 376719538 757046822 528578255 216416320 481382487 283392301 179353044 202752706 53336070 375366954 887143357 211556793 809932563 510943399 916420965 373027307 522389571 363288896 822466968 748865282 261260640 785173598 896967110 280121777 605782926 243776331 832886811 732646722 801708414 793490976 834306671 527616818 260381491 265885510 456726494 657580927 662445713 199662866 634038160 966941694 923934086 839533800 916313900 196280038 706070285 281250463 519434197 561568321 816751176 783448148 848059470 512095578 20275045 416599773 438981656 862509205 78342944 624545627 331760033 979788013 377311492 696723414 680298757 367894717 623534075 717786302 102380002 253259296 806581552 95508637 117805478 458973539 212267648 306135588 519282418 27932120 31399612 235772579 220198079 209143839 135881626 446553543 844852702 851533230 719070097 391905113 877271172 340774847 242829789 170630353 465484508 176331087 631069411 512804845 310731175 407669625 731117079 951225466 595321016 754117816 905841519 558630573 801525776 114084470 273009982 471598674 367532951 213627664 788481503 689354331 714319590 608045430 817125096 469292558 792522232 490814305 53261983 252025830 676514223 883151965 377040685 509862889 168293777 564403108 855705971 608374361 423247199 776326762 475949955 811806539 58260384 653040081 723697865 888225837 673699547 701402715 164222109 642595947 145937895 764449445 71233902 462937649 589373831 209146511 422999282 792278595 551746597 270530127 142021586 330861619 671344297 906592060 92407270 935597379 507968787 729458466 677360060 238584371 8377588 670299970 38788366 60694748 906159505 373311968 801316525 947161459 163400841 132057040 476762523 972149069 541879270 877941304 308433583 409053579 171854790 399577289 390820528 905654715 819161273 59145545 323663788 728561354 950129195 861490330 493260409 966686992 166574500 595309263 510700905 769343191 659999812 996142436 232869431 462165340 53898855 144413104 358012904 107084525 865937933 42440510 477148391 759649182 524352714 414314554 656715105 589882351 978917576 320010108 776451609 694954421 976241619 375390612 132301300 749122606 787605492 515333325 856749176 750741145 908771010 463701017 58793505 328049275 128924619 519232633 845991519 707191699 380593263 606137162 160067192 896363962 594543668 569657323 809379523 368641170 148969696 959536539 119351975 549506496 378871974 64553982 622826909 786806757 971196070 580383706 25879437 389617903 90578935 108492099 782783061 163152904 920247209 463319205 462375934 746922870 489471038 65083046 40008369 290550645 259270657 241017138 617933138 520302907 643616766 52185455 421122916 272793559 777796101 928793094 304028319 420012677 953294490 598906952 75487927 975241967 123181229 161581998 552024754 985569887 813388288 747399123 962303888 756161360 687205038 612973962 700753060 557693239 347327000 443098841 821665279 58959655 807720790 282105925 498038470 122487472 339691943 33896042 62816140 940098871 757192386 821913577 546999740 295543682 885715778 909850025 42036817 106026303 842559529 745911001 546370653 310021719 972434810 832100078 243023715 576910749 390401288 902012193 938267830 171800429 832171405 144063124 529920473 695626153 593213176 761458041 145042544 490572250 857580551 530056358 236298022 921776542 14763330 631894614 399675816 284313692 920840917 922271287 129273322 85492252 284931900 869414948 640436502 703454290 836173836 159463437 225215320 250730649 273712354 528826943 282537169 870741952 223661350 19540616 772667699 570143286 673255900 961856883 985144912 402638455 416554663 931530496 385889466 463132349 75437874 403065431 645391537 118495059 302953453 69216257 40381531 113755458 104024107 818306860 624703109 109980052 307339228 82544756 886528478 180844739 788497443 22430518 815993466 284626355 108731296 254624770 217628344 895876494 130184550 74343143 283639396 94694619 278248443 177917154 244711225 908937262 81184312 684368207 780888581 164197773 761627961 411950464 77872240 274783899 312269623 242538937 571816546 989327560 721996666 809468326 672855802 147864822 555131280 832610521 779833136 620347116 559237804 480929157 716064300 913997382 186492467 116777316 218943411 920926795 870241611 278363908 725098072 355786233 840733596 128943459 76694475 295439785 556021435 776298072 42985615 144521563 266276623 705434069 210247853 626439198 348083537 71028823 16843402 378431691 168402165 311441026 117080053 731452284 432515554 293411013 826740554 838319408 577413053 797176483 22516814 383894144 344754300 871719316 673798115 617036789 414870108 136045297 404769479 101870322 940395353 771935610 730868859 64741985 565828741 185850121 275185807 500364144 382804535 528241283 452406247 730719722 410822655 886477143 784185082 478500001 30009222 449451785 207609469 338857329 480378865 267278520 901251900 709278350 607956994 782220059 576289537 316584261 686873461 954622987 142905940 783721526 643909499 597939967 85977532 705128015 408182264 46641761 770166632 411170701 484292757 391471337 500042790 967705926 166554435 84997227 168776226 309836682 536839536 307170814 71649919 309969456 664252383 754905195 848636785 273049667 485156661 346738202 857543654 565595873 191006862 770945622 727042802 799740385 775042509 397828505 663046247 945218339 864769178 651124756 99963898 76774218 951419564 78719245 447918173 760142389 822080838 577149181 764610513 209337400 96941874 717112891 776637798 53720015 52664483 63608520 666135976 387107458 917247876 426134662 909242514 376588408 288876001 242168234 764697109 663928679 327938002 60804646 103522187 688387700 815676656 558388689 724468912 967277665 913068371 887952751 494305648 128938627 460588721 275382794 278510499 69429972 696915626 742026497 541570554 307371286 585274157 483087271 644501152 580897817 177355994 216775471 661890710 149262116 940708017 635528351 909899020 556940650 151806458 103061685 423077109 132637945 658992365 631010073 165292503 746003538 888557062 547467134 455200034 604047447 112070069 70541366 989026556 996342661 665736065 29215462 184461842 957480908 117042681 14523201 139693886 626242551 791420173 343320096 585373530 409007369 547412456 707065488 918650337 630938494 177454273 721444498 385146856 518294131 422776972 733669707 92557453 497001071 214015823 845540372 81338944 802111437 87134496 500310679 139273298 638619926 831483693 372941848 377004414 972292893 77142507 996319076 576375968 311979162 309221968 400068348 183715899 946493254 544963176 727117597 75158960 665745057 448655060 477325145 129103610 228593518 365403542 809439581 488291239 48471847 242755383 151760433 91839022 960893773 736106206 932493049 722257502 656141285 728326753 316865534 738555294 875452597 462058655 380232180 416896805 924430039 980041704 730190504 286958376 66883517 643972648 927176769 291387857 434008283 980762056 616131888 773214655 353474542 32535005 548295795 19947929 799973306 796544948 704398896 872843807 835464726 234843320 952944566 845543167 624500082 809468662 793160994 237903148 121812179 188021344 655404209 464294848 378950820 699487959 280771935 580579539 244906932 617264760 356872600 571466082 404379741 628463247 257842814 605022907 245794797 661645848 660342455 856269027 819078016 74090743 172122813 773999187 150977391 207843523 72095725 968850651 505505568 58180942 873703465 531319362 827591165 881495079 608368009 544794228 802185942 746636870 542238011 468937873 391457111 567741809 765923921 174806915 586168278 221862226 334242337 666559673 313554350 397134355 471492153 981651344 195866280 609293032 83221368 344468225 974551548 821857397 354630081 523551055 885116397 958531783 172850658 438455192 743768014 848354077 142000657 833858933 332929564 117297425 513668984 560515919 832981512 485681134 513992927 207556418 863354925 351441206 114247072 925639029 854915765 610076927 159733371 243359100 969424814 750698109 39896222 105245107 18490878 410042226 638310058 965499389 306915836 963824147 208576352 134092358 702373004 317907096 744410067 282532286 802923321 922461371 287530199 756456361 357101942 561870877 84222415 255858277 172419214 805632520 978599956 572369264 810433575 707831416 669274239 483572179 120571714 662145835 43898567 296579464 756514777 59045076 826902599 357772731 516091833 630032075 195171505 469486408 405933347 485744522 59083210 633676196 337727409 969799119 534060371 293170734 7707231 340970265 595488934 723187525 531600412 366653122 813746039 927774801 570575176 54020891 410070739 202593620 478531545 923219117 551273094 889195176 430834703 821510198 929357020 998993040 929237922 213127862 787497902 127637233 580085192 782694459 822942804 712619774 14257499 191056293 133436063 316807654 895366101 855872725 450936799 925117166 646585099 605182395 667782583 888253075 20023119 256231466 901556689 290920166 285948753 617253137 483472483 449553267 689089872 586173453 756115202 481933928 810476302 942415150 51613440 8069932 487294332 245181926 841346268 992166836 40650489 684071319 380482109 184689322 302244329 174252877 950184394 969949976 55747308 429297720 315044141 6058047 464360859 456436353 197164776 417667412 113796978 684346026 276456697 832276718 254770890 143961110 426001422 251523063 721532398 432712777 121994808 844394443 10511070 782229348 679578356 116596276 486127193 381685861 655209875 823336647 116715033 945578559 818905743 228851611 709246601 507839523 853516170 500645505 356456932 517233509 882647340 608556747 983275669 394320971 460238114 96799657 411825613 486273987 626871743 968896122 601871476 890162665 280399486 162232238 759132322 577759102 513630371 738755297 187084708 624221057 12035829 349647183 256895752 374070074 513188863 373652487 340907608 989605189 608172305 159550327 80808801 205981636 424976640 171873796 347518553 841494174 471852292 676546408 760055253 160770802 6616582 583797898 132400501 500528278 578562477 148865170 166184984 601304785 12835726 813804323 786774882 1666122 562856222 294257267 118674035 984340886 159997598 464825987 536870906 708274636 256450834 459879794 43658385 130312622 753100558 1696204 555215879 394932665 703783829 963808365 294233409 646637231 805787906 111943883 81060827 641079400 102749022 730334650 403388868 259291831 374511941 667622547 652049728 648021081 889422493 303120718 975873707 233612422 820785479 763987393 710453458 94065762 408011610 21719347 69435504 281306604 971083022 80509199 25110600 609395990 774232449 870398678 347032065 156471334 943151419 188650211 38492583 14129623 742041235 249583758 297720930 757926038 559708651 784597417 157692000 339617635 984233884 567853990 879084488 616442082 432311862 276081687 736955794 560982716 413026786 157539985 811541208 597382374 910506122 499146371 769849815 22031729 239062619 769205905 903969250 714365667 489384254 121928079 98553033 602279141 134300793 958715962 451922931 136178810 733163322 461837267 860849187 462601307 74801014 668627152 253815722 531362110 936319188 439232770 13446488 595668617 104625443 361106701 346423783 194713929 988912007 405169531 429375091 850793403 806581619 665027352 213413076 211804411 721150358 978009476 786673008 330258971 170024264 743280045 198093043 537004625 54152064 35522283 462208955 953851057 171217572 839564658 784719808 648404493 771268686 945913628 866480676 388291555 449171680 808237243 756368288 306079430 624612143 602134607 349284529 340578399 561642158 88379595 649394603 151647643 443674632 280830521 614739602 518396491 521630967 156007936 516195639 511356585 601402663 434073443 230348562 589224326 902537824 596279299 86962818 842817669 531054179 737333225 550710055 930727413 673938920 782102234 300835388 507252959 344691263 635721787 252189123 622645911 425753402 858015679 430566672 310209116 277497747 793546384 689873922 707373940 14213090 258927128 55991730 299880417 509590655 829198390 706040022 282106940 494752979 275040378 770249424 286532773 30343505 492179366 169382429 254073681 334608602 544835595 825793972 183464256 571367699 650389390 130879476 379044083 672736753 730351156 166386481 595878601 284411059 558956258 947381811 696645358 437597946 739412736 686189469 640997129 18750695 545100318 671370861 83391049 991712245 241251947 481933979 638271695 282351064 712900949 572409172 196266693 411768480 671311149 200211788 399841555 630124809 621890250 228167567 413153800 883518557 660595541 486726862 866876908 60960389 729318029 219236942 203518178 920433735 239836110 728280409 518070245 706722006 151942362 441094098 622242085 997048125 119326634 227667122 203060552 364123320 124471349 409362961 358721660 448779027 474506158 678538596 525781819 458909086 942282848 371830964 823572149 915807595 120948455 397186059 622016494 197691460 121535826 644429007 963258245 860445777 766048428 476513959 486037116 598193519 295406864 780661550 620632094 420319842 921713985 352933626 908643657 254152110 504058378 345345829 863072874 651912486 156288442 338060316 794658367 780681003 283650056 491530614 97235744 58884352 663627297 59838923 959270431 43561272 430887795 874955207 326938663 12131407 108222933 693186037 463727112 135180515 438894256 499130818 639811616 574388209 687704279 186209646 790582535 550524347 935770698 75660823 169956335 115662849 530577294 273004372 966448973 655730516 906119520 331814673 210873973 838121032 47252454 141548002 595637360 395740081 3429161 391556343 818637945 857976825 165655586 163230386 826280085 900838627 191193262 588827524 725294342 662140762 150131502 778893045 754969284 402444592 794090945 940269576 866565299 802916299 570482001 402921817 948416691 883398555 791445623 831204542 221519238 177060457 831836767 891580162 270323041 386754916 11497319 83334581 306124590 869748880 74711854 935035946 687471248 253096475 797222396 260561685 617007818 732108884 782446880 262830927 417699245 996284541 436283709 791662990 836097070 420725209 472578328 489060544 151724393 613826595 522800259 268055299 69799305 864300322 206449356 825561812 539396218 768600298 481415729 133856135 36712442 671692934 498900168 432474564 116766896 152604682 251679371 267200795 831109234 769899107 107151496 69333932 392150565 310751742 911134489 261687908 509456490 617627099 823001550 960747817 60918732 681913172 268326527 442495525 537444487 764907885 821536562 195152888 558970957 814737190 576904233 756670499 273941047 818788355 226235127 669284369 8223483 762790599 155572546 216371773 714536150 77519072 130110663 973643033 330812903 997902123 667460476 981582635 25229447 744771657 989272284 856401565 995743701 744807824 575645995 708902472 496051464 944535207 323951873 115752126 200385428 720005198 728189046 800537446 216706223 194152022 701539649 166181554 743853397 763190562 389978334 896899390 688199204 876495605 428216891 683390075 496881728 140639870 405613693 215666891 421499703 278293877 819591115 223339476 856345340 732500107 145592835 307644103 225037722 899461518 783467386 317548617 899453017 330683971 979601824 495526991 940898823 552751958 362186574 742536714 720769873 724323526 209097062 923397477 34998368 986364346 802108005 795574211 827435211 799746476 759408051 750193993 512831110 837294179 57609836 979649054 858519764 511663591 979820659 606198878 829145907 47651454 96917027 923873804 184409397 894325320 983115395 842520920 923608158 499766676 899093094 139620349 477976301 464923912 856272070 49012815 25922479 781614822 676344565 655429621 498640475 104962319 44924885 101788877 841474341 500581262 559989330 168190873 355289440 311588155 79076024 131973594 481947620 903791015 524951972 165022349 96503455 137918923 522415070 628599760 137870549 88575222 94766379 197067033 660664342 959738361 718293376 582779247 299972031 7529228 779559671 176016902 138690519 256380849 158311869 547079674 370310529 506411144 603688254 592401945 236550375 103868093 275140062 767826759 703871498 30894022 866251777 158232416 569807833 732643923 672211145 358398209 542988361 604677686 959278413 22916178 841435620 814448381 289691128 147325584 647271772 588842189 475624652 320109374 139364809 789570538 381325264 483046615 883124732 837863633 72722564 542955744 837719851 4963438 135617675 934578990 545958337 509104223 501683676 929537732 434769365 477886513 916234722 193418050 732859963 648670292 275492736 639531157 6048039 669806784 146488890 981384863 334801949 524811134 185186341 202864614 48381822 294782693 693411072 348703235 521646360 832601170 309101648 364072964 278947287 169549158 565269486 194217632 300170048 341111927 72499483 265669205 561840389 368449228 569643615 208912183 805747837 569490527 630944180 809065746 102449550 545684022 522290056 355568399 319388929 64204102 148499748 569696026 67150777 26073597 250733487 846399971 106995564 187478534 589187578 592084347 516092162 925401705 234463987 246001172 140898579 675253860 440799609 246725647 252063458 887823235 481135789 646254840 848443307 431378993 954831124 158327355 255788567 546320880 765311019 744557847 869697430 515136525 46486315 143166299 247192958 750184694 667114268 811505194 229719397 320652292 279828399 529043387 751080496 522242906 849725874 442087004 411794527 660648913 57796189 515740896 168001615 611666087 599299044 382435134 465906030 769419853 277438606 594269629 184986183 208523485 693182142 315757643 795849690 426964622 145602950 525899020 388704706 868419465 389991440 291294923 672167085 253294443 260851378 599816607 323175849 447357598 197959620 152667072 382831237 680644924 402333178 464061813 910330368 44365362 385016155 855335866 560896619 973812482 754871325 271527472 802145808 840421176 636196237 682984403 3252848 639049854 814190741 853103856 160358713 641940040 93933961 901528781 298914980 702039492 595029471 932886986 509509507 811238374 799300751 476864203 36669405 449259371 819032158 562962018 551836822 460033561 223755815 829476021 635329602 228226753 412542210 457929690 265594989 595645423 253033423 798103163 907040131 642450133 207002418 610547775 1591512 1727594 206507662 223217191 291226012 5072324 173351655 597720173 6461360 161862664 352216487 802978304 329000054 53369151 657408244 88358145 26626128 12437044 335937598 168879354 249386231 962599915 61140141 646852474 792268537 516969165 259706221 29983832 955806382 288376910 956982304 120408273 268434684 720112650 703472600 889759403 741124468 978622466 429837575 464006124 908622269 322182243 101549297 388635752 649150491 127762869 915990774 235078384 432407834 616152088 481990699 286999424 899723366 319734384 111811532 187163596 279078855 49367026 842748601 200894848 285682884 632101283 557654654 896622221 610877374 881929310 369744019 317520003 255536861 614380239 148084069 47653050 298943047 106996120 787130899 202755506 388214153 749014143 325379825 295473953 982742432 911006827 278426978 106322702 80425251 906895621 63957307 617487339 924103479 594472320 379266162 324206170 137738402 724615964 249055654 672235269 237458117 886973388 365835690 329800768 732259970 330291771 919949065 357880833 881203813 414210137 653180233 505435268 89523738 179754570 478653748 48790131 489051022 4921477 111416924 93489626 351189300 846827691 158555785 602924789 834078287 178881511 887987285 613836071 218137647 660409799 448448399 68072153 446364673 720391054 37230393 138247117 469658050 153899631 215256449 420593125 873720745 753851620 356784904 592919811 369028929 412287590 94253611 287569589 829522925 1395147 17381751 650246233 969954254 39301496 931544390 519368327 695595238 94056607 5094381 465360853 774165695 675465691 451932023 208316232 494020355 93326238 694902524 940119144 915549984 790725369 307782292 667755282 121805292 783570388 568023507 477843084 520449982 10786197 138939794 627938935 627559184 962666551 423848404 782815438 903741916 35338571 44034600 803732882 948647278 523174057 794592337 990912837 986110878 417219842 331416364 686567618 289599950 872810891 226624774 228784823 732847398 216855158 925227776 141489659 243601147 847211787 341067676 963670297 412495961 357653841 321587767 86446561 973488588 300001102 304652318 821819948 312511222 325071327 483242920 775483699 327991557 610975450 706719074 466340203 419437685 115740147 439193577 448042212 536435485 733223998 576000386 603757706 728817694 754648295 393592377 308274226 595528098 649512175 640003264 187305578 786782892 116201877 606070416 584285644 900826242 972889155 236299895 923696971 753045350 83334793 925961388 870963874 574775316 538962989 356546101 617951460 231914196 585179773 216626485 497358288 567007034 137712365 25083397 984351519 638619017 410755144 53277745 44249781 538782545 271649205 422428470 348067651 529716998 807766610 967790436 402006961 199622246 116180809 264049494 209609866 502891011 61633477 826132229 251975524 742745551 119688638 134342078 496144865 784982301 226296955 320685899 647245369 671977563 869942853 578171105 881266777 383509539 129739355 264855681 308222841 56033708 852540197 64329238 274105345 30497910 949560133 266986615 815872961 455103554 642308114 125817303 152672141 937058541 378343594 392786231 74883372 874026225 427139954 165468057 39566046 805959858 819514758 645792782 575210007 159079851 776689580 905493417 23533747 868258388 444874409 278482176 259244999 972117958 121024753 584311062 275889904 577376936 894783957 252447155 874248141 913487653 604526494 490539825 618194662 636406743 259862423 232423604 818381289 751610726 546078800 135571296 967738553 611321322 471067817 35956717 661976205 662547684 740645072 245475986 392255623 761696202 153969476 637888425 491371149 524196533 996543153 442574999 856651529 71950245 373184490 358138058 870194439 520098000 449527774 322344278 282496452 496613029 596150198 697952879 551184728 947633655 746335338 573566179 90744641 297325294 265238090 226032950 348372212 708334053 966442347 719147518 769317089 317246749 634594060 403306169 490208160 516910649 336670627 941973375 567717814 888736376 21928547 839629849 794534639 840843394 927033667 906407990 532610467 652650902 982515759 629388193 598076391 190400703 670993259 463202110 761835200 27388801 335379984 224318172 431996058 37622145 271132825 168821806 468807470 297494846 454742182 684844175 367698123 29159307 66304343 922066824 505368901 959784402 370916569 478553159 661208269 196300393 36074368 236504065 521194813 168023195 292068672 981899316 496432685 133173819 74136608 908462696 163011525 794926671 998935871 789189097 950823912 322402525 560647751 184594058 810966492 236513378 443879591 918574296 871475329 834994156 283169639 325790909 181918680 10784394 22377589 958844171 609612873 675026424 696212827 405002209 439460136 447030081 340751395 41768545 436797860 241596445 954115094 502979296 739312258 869980472 22671063 507515987 62340335 618581155 559112675 582554408 279150168 764694700 336689361 549596762 860098562 493701596 307868203 27909459 625949449 574401541 901266597 800406889 317829232 57570250 291539893 310663591 508374328 236790699 272416268 326546241 551611080 773324817 87244949 381613253 358548156 932834676 964259063 924396485 487585552 830589022 711044899 895117733 607460969 586852164 383554951 72442617 13932800 282661054 210431799 86793556 263079364 17619104 755400627 440971365 356029089 936596183 127837793 362747212 421661618 125162654 228137215 49886920 186927821 779157786 474535728 919505232 703510772 921249303 569617022 389850936 864707574 486477252 471133805 669027067 275917779 429191333 192321653 372075337 717870431 675522885 975677480 598656764 903822346 628715031 578967736 575286365 601141612 566035652 412571100 411384019 264596723 516210743 240794581 662672700 851138322 312364187 947395272 577479463 675127787 377010894 967869139 657401574 530289010 398208601 897237457 953862435 563929386 58189870 743527582 364365026 757185769 984976131 470864173 65738240 860940059 309456640 673898234 973695438 150100377 709589916 79758971 643957368 893297578 246995434 190231621 497711787 501422219 961631759 247735063 43746645 506833709 966748025 465608964 972565280 633995459 506684174 183576552 316972556 820991952 566701624 683400758 566751497 233275929 885333162 634694930 644322730 348255320 864911005 178910100 192007776 630019011 564574626 463404514 570587002 814801982 260211855 627875488 352651818 69744486 468653974 756069423 27848806 573241789 815578162 138136642 91250693 605515948 149190152 286365753 177961392 533377267 945649234 702674122 974434612 414429142 660780559 553951876 936767060 211219710 739052952 258865632 52818291 994595287 165858949 735189368 379347274 473105727 142815140 613784555 253114811 865486567 678857685 398304601 476356015 366950372 905215608 608441355 1842233 521896753 497484586 209539095 448153622 512722127 878742961 786572804 844335331 821310278 364636954 261188715 685256441 870272988 679284272 943981587 630951479 168260004 861481307 323720209 1271294 487883816 865177396 533374157 190897427 59623841 397373221 822681303 507728050 283654087 682290103 987234470 14923676 598209886 499722102 493801533 89884430 794418439 897287728 310806197 522438372 524804808 432253051 346953919 618281956 280964274 63939417 160468720 700623365 575361713 977208698 550518256 760416857 405696636 644870545 74131234 86333605 235578038 11129684 850538023 837480505 144029114 856164927 568411899 510408360 362991790 898532629 306177680 669862433 21945973 31302973 989578516 992477433 623132303 796384906 181095344 366723598 257383110 433878597 383954273 697364925 254606011 520260809 164177248 970586517 767269243 4554363 100557104 660525040 722395925 658326911 593330411 114411792 832863538 843071716 32440140 666000681 957687450 397779536 473907497 185085459 644582665 155327049 254498594 689474755 466253917 915543920 945633897 47572382 80512008 304303613 59691231 377211878 874214163 148461157 693610662 905188368 278887121 393284253 692828130 3248868 999912511 269862489 351283516 956318656 884786797 117948651 403045354 344350929 336421656 595202484 423905177 3512102 770213861 950632608 672818762 491583700 427830114 141036864 419773044 317203207 496596587 457709549 28311485 125239636 547015654 946070684 378221974 127413876 707461910 678442528 603072768 358390024 945410953 26056276 691695137 611253725 455244849 806714988 123323480 623192599 272793089 581608541 379828135 599043 772917892 924911561 621078670 425467419 635060226 771460672 469215643 932907027 553234059 563480586 735791650 260885935 93809297 524267277 811362629 135655645 922030976 56995760 107069035 536750617 515658845 98945016 340893052 966181283 429110751 813992559 102608435 53433823 108332349 116105335 610674381 690748254 655783745 562568931 860290293 213961594 949089781 3764988 883711617 434921351 769206423 200923368 301913625 226277568 724353074 606254502 451295829 383993850 780466143 279298878 395816777 247238472 433768607 789366671 642695040 984405756 309682336 69963477 958063980 577711113 928718476 221896268 165505216 10768379 481747610 381505828 40346768 421551148 987595345 944372015 930608201 4508197 150661119 569079530 650477240 210946784 878898186 16326079 649104063 840466723 775288057 80872735 408090535 539263405 519995744 375664595 438354310 263527558 19489145 609228680 439855357 992578256 198195089 730618968 288153638 688873721 872415049 994274271 880711567 402179347 873510742 12446081 490000307 866550760 566476233 539755124 181331486 651627366 552503838 350867871 501379984 641041837 518720601 160582864 108369105 51885282 873251393 562511114 401667326 21010137 587424791 99664527 552832532 701125245 126591395 804539203 822221971 874282201 470402648 351209321 267560350 92296137 999519035 67553777 407269704 824820429 656839825 276922122 816153184 778198720 280746364 361791240 143490389 429747960 438345691 492624802 406221740 21295154 109314222 768458252 39711920 737943525 477482834 131076830 281451843 997755815 570302919 896428814 608913775 312912106 192077835 769984886 572079150 820196664 711021974 522857701 995399325 720287768 319753722 731391227 499276181 232198006 673988248 681215540 58840862 658293407 999739563 890844868 494172569 817547788 296910533 536823986 488545124 776471413 610747075 80793415 431559540 283023689 789901892 122275400 516089088 857932737 85244402 8006168 899139789 951231902 314771395 167364539 844672344 697515539 228042464 133411190 12229531 767336419 149709723 475638646 71822559 416354868 140620837 902411717 514236712 760532672 883756501 715118881 413519966 663507732 821718342 316491196 683529818 408159020 655909097 187625992 223478179 42548946 295450430 7932808 480522175 771774936 952407221 251982871 458784262 542299229 295353037 797225286 683426159 131104272 147958076 9869438 993055052 873869682 147156458 976662223 815926597 155118506 103205389 766326788 546951847 561017155 780830605 835250753 748225529 997403323 478355427 295717959 700071995 765449974 863423525 228459832 57719591 841252921 481145682 622869450 444899681 818554775 597850224 704670615 451012968 891209675 829423681 694259488 382840854 380006166 850455182 21423066 670261259 788973749 524820390 764736689 101746993 510709229 676503630 335765664 273211199 909327447 814686749 276395123 548176208 993971036 482583424 968330220 54757012 832995497 433430098 899037510 279308606 736519597 393575989 406059898 496330650 318437449 361170158 140819142 237587648 237370799 25928999 658193931 689996329 513730495 9425285 905914401 699505645 806962603 141907734 971906578 700818555 209730289 593016722 792015849 55889857 456678415 992615703 284818236 325766085 292466151 921976714 134340202 808358465 845107986 5351620 274480976 530226584 75504296 624875840 398507114 737002217 674562626 576570381 518381890 856069614 676778582 633119698 630192413 793933210 680444267 251333267 286236599 911737809 704623514 542168061 699840451 10834311 623113727 659663960 804893864 206543190 821992830 857087065 423869394 888248923 786326725 424754420 695907933 794491956 98094879 605905637 448181734 832849428 827303295 470580169 442266587 261016367 286451925 207779310 801821445 551858948 910374007 760827788 888234794 689537259 811090198 309549775 790333852 28732058 950571747 496115642 977969656 256284934 812002692 599549440 926136453 348511822 614582060 616748932 652455640 784226069 504064421 617983438 145634330 507340454 646437508 813730240 603285720 256315308 697583287 166258822 797504076 906593044 579610715 185115219 431146973 567920384 435686004 380362575 974235757 993706322 445028321 884032098 73102623 458143287 518239339 389120218 635329030 750682856 266321935 930152663 672420732 428887298 543164653 682626093 734194536 640491184 906905680 169845890 937943339 894380721 521912906 267881379 934933104 839279617 258401479 711180982 278851070 336167198 694044045 122155175 69251438 602523152 493628346 454815776 491401795 524352895 466148760 935450309 454516926 393461864 21956297 956187274 362249270 175189289 215611283 119289451 272335465 69583850 92805632 942332631 832099529 836673114 206436559 507345900 233966910 3443100 443931009 124007837 335557628 974635649 746238001 860879588 324063433 6107277 384324057 562082344 295848333 6120484 135022599 605951001 35508662 282955415 429074308 975074837 656172147 791599204 948161259 131360879 584227551 624863167 748355816 247228703 536640036 248490769 623490375 422028742 326377508 938469145 198730282 791679688 999288151 522598497 216586457 578047291 63678753 435001367 844153469 229907196 849954770 515640486 440572603 278634358 570689065 244466406 371220131 75886250 875250548 156271179 52670705 656228799 78275673 765624975 495853838 335287094 746683552 233828628 451554807 569837461 400182261 178466809 60242639 555475295 979446773 500370005 242487117 452243219 17463351 143898888 843613663 456688246 861830814 451714025 439798159 675034435 995210437 141187063 540831013 641278015 693944036 463937250 415873073 871542670 894546450 536246630 692594808 370589137 746421546 704674229 448914508 243360392 402961756 98000723 786948234 481408270 780488807 463083383 402716888 736901054 167444142 808311911 908905376 255547531 528317414 240750107 696247389 618585850 335247820 936839117 276586265 251940245 141641578 954517821 771030791 235273011 511528218 845335458 564641330 391493608 396606224 899612960 107936684 21138904 32389823 327756520 553835853 198532595 306963949 236213870 738283306 542731432 391818577 221595889 349560787 752794327 694486713 871353006 314088818 339930720 843721913 549566216 894074169 919330141 941966373 425138495 535063346 582938322 32784543 321931149 72022367 965777168 26959328 403212204 675146612 520719415 317492835 415253541 855097838 439791312 482116998 270100500 706032805 997571287 180215495 276157414 658293183 21888507 824135953 338792319 151212706 312132922 74912880 983716580 432310848 278614081 477140523 630956978 86378812 197398470 949151878 301433202 747921835 615653854 888069470 957280481 903045661 576567928 692953979 905784093 322289290 383247351 837662681 324239658 556616857 640234223 782143200 546437536 357940865 365469223 986053706 698174966 494731735 717436080 490875671 60852899 319221735 820506686 103636696 747009469 132060687 145079101 70825033 779717590 94616976 400502217 518403614 548898937 24310776 635749610 970399620 293758481 398394029 909789900 777390173 354723712 41236671 226559194 90427602 779625144 132739388 227716464 78404121 15744244 696998438 139858295 819690513 867881275 534754412 477225026 658283254 586993023 511332222 784661142 948907144 438811652 784470725 428019621 91979215 674056978 517755885 927139437 52686520 239112482 256157831 620289988 898301644 513453440 67263479 898230381 988490061 683466117 540110443 950710242 722113138 49746165 411810469 384901720 503092634 824544233 372204967 827447858 593803993 285145855 199775316 344477850 607285471 418835874 980448904 758518960 988187077 869021194 543323989 244370876 41544490 11136076 250042340 370324850 593430205 391145882 810802178 768816214 125671607 276085408 368708927 905969866 595579048 849455119 205876166 38346758 662450721 710647347 24451213 649476963 368608354 982811788 916973196 467291262 782605800 382650007 845909466 356606765 162258300 904467541 376287018 798592535 80612087 677535735 963772095 690958714 751669074 488560905 950536533 984259167 629141427 399475485 207940555 172971427 464851740 366873202 287428345 890576749 393799912 40084224 382373138 858318686 598545945 742288002 888487150 323385909 580086454 729535073 527620479 778893766 971411516 66303600 197049779 584063733 667612519 39186558 690465776 602530039 29591953 205265431 833767746 677691228 220211546 275870590 782974003 568469219 748646943 576916090 30736986 938592180 130546292 592332166 941245882 204574598 328950877 756555044 28417376 314050436 147757250 957425148 600842742 131250005 128066166 288260992 466045341 756891990 77790382 425694242 838165309 649034454 956778693 162309318 101781674 520378969 340724047 139636765 780247262 489653809 616718766 887403364 363391669 365509394 805150623 963015735 548500594 270587863 38430218 445407091 833519450 691776590 818025660 657247620 426265771 968625811 705654228 643244475 221209223 270731032 203885702 208839968 876010684 994198498 960450648 398069865 570847881 412442348 281057862 205333149 29826876 11508136 985029200 153452513 913413054 723953872 35745781 546168562 715796377 956267177 490104697 708712104 951476360 718595818 448318551 886674680 318052142 457013817 638182228 590281333 235852213 825528830 682323894 855465525 52804081 875346461 286801109 222857034 728703994 439749894 168944232 350106449 357306050 611218761 456774962 791585594 90216861 981711200 887483139 989340089 293398045 48294753 203717568 217123691 938725562 373524500 516041558 575641758 701428473 492314680 856716358 90154476 785287024 852524017 699693808 407297463 409708052 45619290 267611668 64043775 282013520 657194621 13491599 919573719 286163229 862727060 608168850 122873182 226624266 204030814 205628 620105313 359929026 522598350 980839630 261614558 639802347 377530306 814609119 393883398 296053110 301509101 764963599 48276935 193286148 733173247 278487087 346034637 150665740 958461799 690209107 597970794 23475026 45787715 223494231 715652701 696681231 252275936 891219204 856964606 88266808 653608162 379786269 980898558 503808292 850061501 126613557 395689527 759640389 405973474 417354387 610881523 880977256 830374769 614848243 986476417 425522486 571494451 550603720 903632952 493181367 248451728 296235212 317150852 532355091 225900664 824390015 325763351 598707259 214350367 263287473 57677669 788491643 937281603 108593422 518984332 762953013 914982153 672046542 316130910 350496918 521698333 51947077 380542781 163166324 590054364 479597838 3510367 354166050 237668418 89325133 172668087 30743426 666820682 262944383 867720081 652675315 303441440 895749955 647412667 535783253 722605017 52745053 595280265 327713323 533039568 631507716 172463129 706171580 757258554 960759720 74186147 840562285 758070367 833482198 404358845 314407733 158534289 97050002 307857302 728759610 262994386 242483506 571952360 467458352 731447543 840757467 53752397 157045234 496941263 107730281 633576725 29473286 842582865 797646382 742116946 493478271 602370252 686231098 288574521 849901759 138396816 808931489 509998807 62337600 821649536 371602626 541434029 798222066 48363648 805596090 61538387 886257652 459623473 790751032 296997339 633218849 640112752 3043822 437844895 683316782 379733733 875979884 866870495 758979734 960063684 482642291 953331900 535155759 926477398 587956211 491262780 382478368 575193366 721810875 938228052 340595756 93385924 929103057 416724280 948922549 315135458 277161967 243690624 207354685 457349175 580239480 635902389 563381218 928896494 646025907 440592923 797363449 643046861 830386734 990789979 249726085 763336632 496299103 644969951 58665971 28281847 846494810 520731264 649759256 670293436 417298126 149061076 790632549 520037072 63761141 723709452 363312142 491157605 462058372 690386554 567252091 934220710 968776106 729204432 557413922 222993352 935838277 380345933 282195928 677226346 591200012 900999994 207517120 231199135 43884065 939848314 732898027 916603287 277506622 319551941 255497769 197424082 948781947 581833809 957952524 122513161 27277347 864213908 781377103 406688181 376039367 17336106 781117071 584400925 7422614 259848363 613392276 496542688 167879287 933504864 573499958 868012442 163868028 640483399 873769500 846804876 572496918 931240276 913151661 643053199 758737116 812124129 665406320 662599469 314614424 979067178 549088500 693316984 842147425 970568560 293311829 297067586 983318569 887738118 756157439 976528480 246862072 340299806 196030109 666319991 684843658 561902214 898290440 732762378 202360278 964175241 389565296 34660735 451858273 330189088 929604909 383614690 189086247 806792872 747607815 219971070 693765453 667422812 184878795 12473058 222750972 376854352 669819206 841738126 789721313 923677351 670686132 879242288 838245548 75607227 298384737 871796925 174998209 446190775 893559547 594818639 837210530 857470357 568656719 927792849 990904417 695252180 6964196 138172191 905196090 700395493 474455905 532051416 990358250 841550325 728708781 177605904 70880871 360013599 415028600 12998771 798559861 504034057 722163741 802505741 941395550 395897369 200384314 13838418 442724291 364436597 768671281 332598009 479552988 351595345 622739823 38355013 768246256 533262202 65629588 395800987 997758011 759347773 195868393 674963138 988861234 19001917 778067730 676402919 402487581 135654362 162284885 736200792 931488736 694417685 776198367 188235235 673816649 196123077 824066972 974487172 944289475 50427910 613458738 595067576 437343828 378359722 197273108 174417250 749385114 60402312 578481963 706351378 960694383 824801297 453311077 85859477 919077219 447247849 16486438 742595983 339509403 621904415 909836716 939395391 316183385 289814056 888814177 625201264 630400530 385897550 457631490 140690159 724864878 662430251 424441243 865411863 844457298 816536999 218228881 45744570 48828647 981286090 439446787 603032599 866078536 994350655 461074308 964187784 753224226 14106624 624664899 588137747 442191646 576465184 790311664 780201855 392797537 328671059 779645093 291400108 262635981 256600871 164905428 67678883 448426666 903011180 17915727 890384964 760381095 946221399 134268829 742039235 123095750 231472209 67388298 741050873 792169036 986350563 123764393 734180511 126356714 156346269 828100968 152250973 510480606 337133458 503820844 477789242 935529812 445575071 144192803 416135066 945914533 469056054 253811701 990330084 274176598 84558260 382599062 991443994 651397048 917563749 201095778 999557898 405376259 915440719 774930035 391932599 799502185 480803639 453003818 120677515 196662346 387637624 747174594 586709936 730465626 140454665 15658949 731441645 115131944 215204470 90364259 373111023 174547698 931938222 794844789 252461004 386466321 701023345 528318212 279570198 728734092 293133521 108666872 267566482 578276868 958318524 57168694 471055200 176605232 285227078 435440764 148433205 790815105 337924098 400797418 883634682 486556060 309167218 518437286 774031362 128613596 760009877 958430117 633749143 947557873 56947612 875209762 500647091 814306191 751857630 735872355 292365800 32294164 949524813 24209093 332043608 145294228 386203483 864555299 241855926 903970963 937594530 901597053 488401882 647846714 227891439 157456114 625608305 453506668 333750479 429767805 933014066 273058471 648520955 704473711 210845631 621705617 842150768 318646514 161190388 702975188 995782513 353321343 220827759 594171767 606926390 286960899 898226945 824548401 623648800 696823227 686640258 389351296 975164952 456718054 886483039 503128048 631100922 282468504 75853037 519259606 235066732 537648445 796070996 87253976 880681380 315185053 892922019 695530569 6624947 388771188 503813380 225432025 49854749 901759069 391993366 901448838 920763031 260185691 414387780 802113174 67127819 627365044 378836547 899416518 88891226 583535979 331122728 575785088 205595731 34632750 155560868 967367697 75804005 667525945 168246126 564085992 431923634 82991460 14908253 732746784 346684481 794646234 423408459 160541460 383506839 32124801 362966284 621377908 517032419 280807466 284796021 217451793 360093646 641683536 208411746 436233969 721998682 443432757 519672662 209994662 625265002 840909063 913628142 169566247 940151958 439573634 866482872 894658297 779767105 158699705 456491939 733764727 109675706 556355824 734548482 219854421 173817113 494521665 712809828 363063583 832171660 523337136 836544675 103954550 538290726 500703748 2176522 748002694 930237622 691731708 357059392 906402883 301444148 762597967 200367783 595791603 777182225 712773596 825977521 287565157 511103341 10716323 87310403 720102695 605478981 81598030 461268497 431374931 18159205 128526521 416942891 104937703 405845186 612523755 242585045 969941668 577023222 762809056 341681833 144640908 183762869 701595232 978691916 997631107 507423032 875528524 947666019 102498752 153841083 232142147 806098050 858385230 466100936 890825649 735308608 380512525 919197384 43637454 954081940 697011003 983662389 374480139 844004046 546336466 355988077 653984323 440274194 793650939 804616692 91262062 520666655 261418785 560057602 959140933 469696673 94240160 602066695 859423671 388169612 543611106 459777014 510346258 174611594 377443522 716609974 418642491 632638804 333342940 330057057 994979112 668319057 297929511 694286108 672691166 670886748 526414665 718633509 396577250 864668218 221271184 560136223 403135482 788803045 317272876 136853009 475178095 821485876 50168023 573515457 289242472 911705704 181862005 299932179 567443245 155983359 23248466 279733019 400618644 39685710 212628792 192246452 223326060 508887344 2161498 967846889 816161108 347824039 619489972 766534544 373241276 521153805 112124741 334987720 341868108 211858506 981474775 671732130 390581719 467012988 86134742 894199590 917481565 304351682 179298348 525310757 84028067 777932842 886960729 256746803 251774195 637309576 255525989 542066210 498624767 947981181 408176266 178105282 382329204 779292348 881328549 813038633 126378604 505448273 627218048 761281468 901001717 207598401 901708607 33026778 630384369 955571371 578403807 534765223 939234440 78508824 733613712 232463755 347934125 878509788 982717977 574853794 367190579 872686176 994127170 730693267 726193621 533029133 116846881 16415536 261952543 435188938 735701092 345934301 989747743 552705298 876205909 121188698 828133213 135820558 556009739 93692587 153523104 138293574 826663510 860341193 910440066 853677488 751381256 377688457 912261209 73329964 938713776 636176584 643545909 457111377 307228614 398568788 660207817 929304611 750210126 514331166 114840654 673403388 375408359 470038286 871707784 2692808 232122279 857770308 376521064 255449381 232113267 59141504 629142053 577848901 830768528 327487202 277980174 866274221 431490469 209239480 457740202 921551072 649946252 396917687 448372529 331032608 4060247 585306840 623673615 5195694 97295942 336716873 65121720 498026617 55364920 341538400 428646896 756865291 62454109 926957075 34186851 647496195 487236279 841810721 64567729 704231583 936292697 370081607 992657359 16581193 175889476 505156443 329072818 645386697 800936792 61219796 253580531 567478663 912694821 492115128 7451771 399340010 715694450 281211959 291201059 744329966 168015988 614275213 643120047 226786794 323283632 612453875 27377433 824003098 237233564 861462578 976786392 715627395 422822554 599894384 57970721 443368755 330457138 137342719 567193874 24349715 227309874 397375460 228763822 299453205 366829212 928497729 690749967 217392820 204755283 652150531 601950714 423384426 769201461 83994592 731721073 485149175 883245007 776043923 353561470 183999704 245970122 8321753 206111436 204536309 512613124 35557513 75791103 900592631 916483696 712047361 407416332 313171322 649005099 557813030 724435665 485570463 900218183 821941071 688450167 147184788 112790458 574061535 883990361 193923300 998066085 566714376 241501419 360801567 420633653 391425781 748662491 141377628 254458901 157090208 587971308 258420231 477458096 48630543 541163648 719586825 902665416 434097666 141140436 418074314 681399778 156640946 746428182 722516064 814243953 910704047 879410048 301232504 534451772 94264541 876369275 454169682 564434343 614097843 906600556 560724506 952425592 862907337 836681820 511780951 444045001 346075638 792148240 772039189 831755489 809012712 101075510 102351207 926568764 743461299 857802525 886112490 120577628 643414799 262041547 685530802 476978641 480452190 281624457 192289653 958672354 871368365 728759685 952966581 694588775 507897077 30935249 68337650 371297189 453137546 702450287 848530625 189939849 57054863 756047126 33203270 723402899 660015572 471725968 600854230 97037379 355338987 181017101 467801309 640990822 738413232 505240580 530482699 802975379 586911923 137227097 821534791 530643714 928952685 532038548 838314390 832922480 597924193 908050049 496854064 226990936 716023320 735053333 191320221 237419921 219762957 882861507 532352574 504429773 727362672 82397321 62863334 134763429 387355756 19342902 353910507 187253041 79438068 963708507 239599791 11496984 910615363 403544943 705475916 64659867 875951646 704492814 918853898 910130236 182533193 727178075 423312186 437293119 45269237 770907124 600530512 97702155 862292079 261296695 357548664 254823696 156110274 883256960 530115043 455350573 193664635 58950324 14222633 637254862 920435888 862240134 419047297 265269672 986139464 906919637 158876982 3079102 507314035 539912510 18627851 166789563 598733733 741828946 166476763 876467662 690576208 169012294 175080752 415702519 886947802 922788389 970220676 300850077 954116749 433191363 79607356 876070363 535613033 511752474 673961859 280153822 495965424 648673465 923976022 400723010 388460115 807614869 94089288 564613082 598728151 674697820 455707747 190344761 368156774 668314142 397274270 722268765 702915408 609434581 109481829 196541002 636942697 434490229 562921584 847138509 623429620 427903305 292782494 571462442 714336060 662130064 965284435 752094622 177777163 314726360 795867838 471762694 540679900 822642446 489537690 855734735 847827636 500916210 198924570 177754464 733481036 300500157 586906181 903769199 976534550 963136949 138859796 978806616 336171595 524690627 717394691 154050533 565943701 247186047 525350257 982226405 705442009 626164172 844333309 959545352 783632969 974076184 557509826 514130681 934736554 510422773 750969685 537140517 557813552 25108567 180985203 342335418 873652137 244498227 875965344 606367637 816636552 518913679 62291880 911798633 556711167 841197120 490420615 566954178 259026103 896810179 862032316 238027991 61529879 860015580 520257462 140983068 841475288 788356269 31061179 624409964 753375873 157819638 130023139 858213214 176873068 466287739 407781327 264837558 404130569 166446758 982677087 565355339 705827031 258704560 742926119 392290432 448350596 677827128 240761428 987140836 809226642 404873291 893203154 40558462 767954288 879002916 2119906 301218855 871933622 22957127 294820398 20255346 562467180 137822400 233765063 190486986 34767910 625921935 880105575 487670909 539867247 792123644 501893800 688272658 44842104 128420 496554808 304666110 769585483 276726430 608571924 53868546 52851278 749924562 886688655 835899362 894886576 640349343 916779022 357911229 654928248 517639762 235784099 150188451 162108732 487533511 333212369 559043652 288784182 505980970 697587571 529567771 224358262 419417994 337183599 542193729 133793568 265995056 131755606 240003013 37103279 422626961 648817795 469064381 403716201 674321693 595816105 985077592 503599933 228268203 203389756 280125762 491944149 745895460 906792843 345731109 55429536 632589499 634420067 50276946 148318995 280701486 420932290 485351138 179605320 411155800 508325690 849076271 98773704 66426050 927066673 275761965 924773518 938492448 708677345 397480215 976113667 261682585 949063991 804187898 695479826 249388545 45648746 982861912 535778588 970218970 604640089 488259579 372512859 936090728 110925863 102548024 490827130 695006273 990843505 440533733 260256701 234602882 631627526 157778070 735491233 668951711 266861296 420086112 905338538 508977334 627637428 659294647 542296521 778822443 748663975 2606922 985635005 55807048 876026862 372659549 256395003 218775052 112115702 444544719 296391106 973252786 527415031 199960935 537769779 769744371 682789756 581800879 29772550 365147336 613227927 954579996 125390022 76474909 161764005 180199930 99867554 843555846 83419367 792297454 397482052 977527727 690741180 606675775 583365200 510139660 947072324 940251969 784327423 318443737 740470553 79565346 82004196 526493872 479505071 477111368 869697013 517783008 390091664 918720562 478693873 388481731 263247375 987961329 133702207 310019688 948964716 517188393 185878249 597364113 425906665 607233455 348724 949545636 194809462 410041341 135185668 364079651 438285048 970953302 297386647 98952831 534919164 202021340 166953939 620803294 257164913 142529863 644858641 724770565 701363432 166425466 436440317 415451870 741617552 422098008 495944783 791112452 97238965 264945856 988849536 228776967 872772922 283460632 12069646 674416174 692216951 386679824 770283321 712281039 478986793 714861554 224066969 590806877 505596802 555058824 501863951 873468257 211367780 972504747 123117016 141376610 479990468 375713809 238094977 586272630 145290971 376638410 42956872 365582829 881056920 56069664 208917835 301432653 885074577 692908013 595903530 579836828 934272713 860907700 681366986 189719742 311726405 50042312 198288389 543500643 928194645 908756874 810115745 784306183 229038021 968321484 988932717 145197013 441957798 191933945 333928992 136468141 499555284 522975956 295153456 77073344 130352870 223288488 467546251 799535802 762873832 747287048 311781570 155397809 99487414 223363492 185896313 957464172 480758188 659418945 85762238 206698523 484812018 578275938 973069547 227568540 827412931 872058407 946607856 199446601 829522191 494418709 937911175 290137344 692579373 650913207 105549906 98306286 574049105 950563990 303666717 848482215 438627804 175275027 417432256 837829868 710692553 770221881 199838130 350923880 816042848 187446918 16693560 57461663 316389763 235254928 464794389 131716643 82079107 530114106 244774764 568790381 796243773 446508362 65004079 96418823 670322068 94037731 812981670 147399686 36625840 737431026 553855423 523437053 386682492 186257919 892212357 624542493 380237517 444170820 820766215 778573481 388095762 455410421 613635846 550452065 958549156 671921381 551550834 742909928 846801395 470956262 992608592 62472364 107977375 993343120 373913445 426471451 433118282 429052076 785335429 368352082 48542145 684548336 476812300 635243358 378633812 781477925 834941968 649892085 71582419 178644990 844170969 480160871 753397659 911811995 11182440 660091281 152559280 542861830 878975257 827493628 727635473 273366843 986631772 654133797 559155933 173946849 829348406 343028775 146518808 874795333 248640670 933773286 612845751 48673823 918055131 951077805 912352904 218351230 507314724 516262107 111284819 895684161 770247442 793427390 736663366 196621305 197365420 703261570 417846601 954267815 817941873 212152431 234892089 602202185 702677965 550178844 756439981 148919685 115187554 139393067 65218913 449848194 170361981 580474250 224354198 723538598 175406792 62409258 211936820 755953092 912358853 570046077 73885312 15695065 798238467 812850861 278703025 599674532 744817568 692745274 829526265 701657402 654203848 452180361 499667168 45986928 767867754 184772946 870104922 795409520 490774748 92490865 925298053 296498715 987976330 899588831 38518287 117156589 443948193 674205733 350866051 355272784 54711340 260181671 210864526 935031626 616124346 270008669 871475355 585568224 805992671 468589483 5013638 110343542 367394249 120049161 672295638 249355930 787542852 300040274 80562211 484958815 251669508 149337632 557989923 519089937 221472406 130932344 416791507 169175603 974196984 872066114 55826296 554868515 576331124 157923267 364138894 489816072 44043357 176218998 511481183 289461346 285447367 505613286 1615223 732906618 833813876 234841923 446442157 590698059 345548612 89562389 286038709 518186600 922551157 325089876 671556705 403079366 480968665 392922156 436209928 729505864 323360314 743827285 987850615 204196622 856444470 262643597 720028909 144663253 992844357 946168957 690976195 707960513 493266269 289062551 138926048 156305305 532866450 652285933 948103528 346651088 488741794 568386028 940943700 72945392 579344969 865104889 430867556 846406630 805711216 655744150 872859955 578216708 504973089 297086239 836968006 158063312 392680840 579906725 809207361 469422896 857659078 253912090 624340648 56405153 864141510 614806769 12813569 113793257 102250697 726964003 54065067 615683231 171908989 96683829 226821805 752468673 572900295 562964223 493634581 700151647 82636058 574137869 104447870 987422251 359417931 536064545 598327805 36437034 179700264 452983434 482664196 878595484 188425632 102592313 333636147 672691468 726427221 654252793 138611790 623452547 252716342 533493536 591603757 56167877 806405609 664466763 231914998 933024987 529594139 430110763 380249703 453297663 410613707 884806266 428418129 420581238 698767543 461583812 684694093 674980815 498901378 835860113 795516821 242798932 464201707 879300205 860729313 530211966 67294588 16360155 616055994 400097077 201742939 577192609 473572059 317710304 406976855 183626687 299866093 259931782 657791030 541641009 155659656 734024131 974590075 705987621 297710295 936746781 58572544 180916045 342972744 653809061 513311483 284139613 290193787 23634776 36121761 450820544 719669902 528506055 575484702 872464251 230493193 103933841 433385743 515326612 852893758 345518181 359919257 27866897 332054606 703243933 104752994 975127799 431887554 177826661 990584507 525041713 582333706 190958306 67108839 703414629 120697824 291648919 229321903 921697306 216694252 948190922 84023582 293282877 38379184 320909240 956357805 220507384 439383426 796936525 977286523 112603303 277120118 659234467 278022988 212436916 406098983 40075916 90115519 566896515 943002364 389978592 960764616 600090233 793617032 773690769 762659010 770499919 147210410 704492215 936209624 375188129 311342045 125626995 752316047 24482473 5125794 441055530 379851018 944890315 632681547 151247478 65129368 138005713 20634509 285603807 624115969 447287017 836388102 413424654 9328951 279219787 980560973 651667394 967989234 149506171 511743822 395071911 738776641 455037029 900381480 992215424 873448369 969213717 966743604 637439583 887527016 982421045 652234277 945924788 973094111 531528269 917245852 812243547 42457699 897816496 208007397 187703170 228369587 66765379 200426844 916862329 275763550 316391090 796117070 117897828 395724511 60760632 230052083 282240322 213505050 303990123 525439616 589866073 266200102 213874058 921661520 914818604 209303212 807737668 44903932 743009069 872216513 503884992 856744007 169714025 901127360 698006991 896708279 873534878 623859939 204221652 706798329 674009679 799877089 964354528 374857368 404687961 378929017 850014798 232973223 355782296 85054983 832783483 245012557 627175478 971966004 376842437 502306769 276691968 705763022 836315361 466719667 6039115 667663326 894702661 916770541 932514881 697221729 821215006 71600767 417964816 278631251 975794559 904374701 183377946 737212709 602360813 547487237 507545776 615703806 567796584 901619625 826134454 344306331 500561266 706851758 985912428 199084178 40667294 785420726 486550700 516752538 246754782 283507589 213817593 213531138 692029354 829718428 84414816 693239053 509347282 116179225 731224083 615656968 771187326 83882018 359176895 8722539 707602844 728877386 318680511 951722897 422026497 310605727 412839191 251708927 915408690 935106767 827659845 498321252 227863461 991430798 84325767 657736074 703150847 658375881 119198719 315282760 663381009 700293392 161028614 717054370 433539160 4064535 16898820 604741398 851850003 17420555 503675649 264232981 375360513 790788192 470151667 616013366 628173406 813580697 485867206 812089087 81652992 391642765 950644800 557261125 551805597 223791947 497489343 722172607 701774841 352086342 802750009 905986496 31029296 608061719 568267556 659105925 273841509 320995192 914505780 971678298 765641769 301867638 578620434 307597847 745127602 365974810 50388024 977244361 810595933 35053417 527384795 207898674 853848371 369661981 491646377 125265656 884460653 561365320 593324018 982493450 395570748 536084751 432652612 582727740 740838184 990966297 765236157 242321053 880867642 439741681 501996067 567684004 398306438 752022979 39912352 961967027 177214120 239183392 498733497 384764341 503981287 600392860 235637101 335067636 381487622 272676827 32519129 218126851 7780319 491197708 432225898 169614548 916298068 264117730 975126289 598559903 726507663 352871248 719245267 371153433 713872185 873027970 576310924 469144491 78306471 380853006 488038929 987848979 39671077 11802426 771396871 304009818 796409217 230444471 100222448 285280643 297868031 729840425 935828056 161753391 258716557 516290442 648598312 285119794 963218422 248075299 510681098 492890530 957940364 560629794 716129165 470038070 721316518 275921976 829597427 132251394 527566703 124322907 386018740 4466786 96540745 967203583 991022062 419005776 69877972 820816912 15213988 602402206 328401391 901135125 155788271 423967625 159793287 527299235 518214301 660162867 154537282 789915440 24049147 154983085 536332349 96677962 333886256 531795987 372526554 582450984 177191569 777223580 596746152 311639880 450576467 950052805 52600136 503889354 655208166 958972371 486967165 986220087 37865277 727856571 344141981 678508752 635659356 205741749 769858213 436627645 439033068 400755560 356339400 295770177 828742977 152352091 596242222 659506439 213527708 252185503 903770553 951274591 952186258 839252177 327614537 344567495 144057540 96812923 533721234 903090575 653026225 819832484 484067799 355727606 285485719 518934997 868022188 868089984 273888212 152550338 188837732 372869127 445892224 498647626 647476436 465246641 779774042 792475281 943640411 158158950 183711203 708278564 699842122 281467530 398140867 637098537 855590641 783972719 993970637 836618843 468806764 484534268 808985717 645413161 668599905 329352458 688490060 248256652 601212070 383257403 652786201 458412135 704681594 290553332 875703207 130211130 820320339 723746906 524384887 353404770 258310036 827413996 143383336 100169461 106716383 74065329 999665218 340371798 826913342 377411772 270768025 182149235 741096001 755779204 889050664 547555994 464905160 680620044 653820613 703036943 619177207 625522061 862254787 916663575 275068974 989059466 45932199 450846026 622378387 488970766 61370930 696626775 465237323 166320715 883425358 851803661 107812448 541753166 149746192 325972675 206016976 461388265 5567027 893939364 576057424 492183429 304727086 73094836 51032273 570966118 540776705 860018250 767191240 980784900 467668459 631711899 144373077 533945398 899226473 738768587 58426987 286977896 794843489 351908358 393690664 908136987 45157446 183522113 439892979 922874349 83792020 792900213 852020356 762769646 187164416 361923940 277749409 190763265 188163186 602506788 967836679 392287257 908700007 331519579 184219502 671553544 407442192 251724269 668972907 815174435 726628173 419754947 451984462 864513509 187967151 356830667 552355122 327683271 40745088 694904880 520482818 246703905 377714418 865525320 836404400 454298081 929657441 652749113 847927642 601680127 842535626 272077891 493226913 942996139 308979811 2557963 778480322 228642011 579703218 770615198 855176248 971201241 97942709 514491698 160464707 903671541 260643652 151813023 128849077 194750136 194986898 943300586 415197718 460285009 603109970 964574997 254959351 80365440 29739818 383354444 674469548 412131055 350443018 186965704 66592039 389359140 362989602 43292952 68897289 36444798 467671414 672655611 647481589 237206692 196314852 995632806 506076839 630772209 926799318 131535080 669842268 643895846 583122214 196961572 641729984 712292403 101240433 736873651 338343420 208010304 827734663 913670364 333666005 804948172 164496342 738359212 153356349 972919174 7848969 309251215 269134130 534151016 795709612 457953925 928162158 839400811 143208124 487761750 386283178 828580646 957427242 391343247 376890589 573893284 414634308 799584596 788115567 991139467 224436454 744925688 195367017 277883032 53149542 194565844 582813364 559601048 104435623 897897664 213933466 529976634 634857697 248726496 395053887 866610590 659872113 24172931 366991955 9386507 892888959 789161279 619296028 943730611 698714633 384640331 986246945 14496074 244578991 169907910 936273302 547402777 755279809 469442953 453048164 928595912 271335335 750562710 103960085 622471471 193083029 966294608 92547534 346764661 610034989 346404724 170661148 25072271 470819730 485448913 158607419 130508757 649710711 9388967 758226703 100096521 67373711 284118541 777683771 511869170 802714331 922643121 225571668 263195282 975482200 842145428 616520319 448427693 771130309 359146340 874039460 174431543 975458777 939874043 686685392 467980830 535710225 222682178 822254012 686168974 596272590 66251630 448246554 692930970 192788880 232135264 89010136 8430137 16245790 22108320 239353453 744780739 125145183 728926026 415996164 290086921 658370378 77847527 207484439 188823697 58506248 296809092 298092618 756964285 805639904 396353126 541531168 207574372 629640672 267055540 1865230 739762511 747839145 446064293 280273833 274705213 931141177 670281583 250979279 759995443 6731619 433173135 732077808 917971034 619718765 764421643 848805510 66641302 999418928 912702299 90106200 547114953 125075490 530885649 231847545 269410139 404200963 908600182 209610768 275329148 642002303 805754033 375650200 809330610 474618048 743912334 949498024 492805548 154284490 944581282 964934254 964224309 709726506 839679850 877111104 903557338 145699532 478172850 343358056 337187035 723960977 820244961 397801181 747931884 321679246 552367123 71374224 111422319 44405827 128977412 956787882 81499148 230418526 44029253 943555774 781112423 202765784 13896580 593423964 20509352 290046005 457981263 729055168 327832447 616298051 352412432 975428652 44513770 497913207 233281638 777576324 197521648 868924963 116260075 539847081 76343413 238631462 535420497 818226505 148159973 414885356 295868441 406814764 948053327 694477194 165515796 163951961 784722485 351089266 913404718 963716681 464482090 122454000 630861721 335431748 647625459 203646516 257948102 384809834 345343478 22043329 785824732 641025691 147119568 959169898 909044675 98221179 217724575 510945058 282760353 121588383 919872725 313877888 448956302 480432161 25009839 952313126 6188267 14933891 538360796 423685064 602734933 926109370 612647659 997942378 257302346 660774905 372615786 16129717 215602155 367293835 873127673 882250619 413953450 41859790 291832904 211945716 305055081 446962638 193901828 313972307 318120637 889700990 713002469 243682471 288818347 871657016 280595145 48088023 19369422 642284729 5803965 907348110 752459044 341644799 686152691 929179121 721145488 218180967 717134741 143904526 939823865 8251349 630236935 752331218 324230198 282684322 647474904 642426711 784036613 188797060 266740597 960260004 324617051 743363686 225432418 790174772 958821687 831741514 657164193 652547561 271155446 344564796 17531078 760150733 372664503 184650509 188088996 967000568 10037978 895876534 542175397 984635976 230960043 649182478 630024993 351473289 879785204 40859962 581846413 598421939 52169887 869073423 638952393 181997125 297573572 883089261 824459788 552449648 367700105 546318731 384558742 594396331 768658668 336617532 732703302 156764873 172840855 2621142 512666005 52890647 87144400 85174061 747009167 612555657 996743095 979994385 602082721 758581371 444226911 109604493 161765804 623265502 164710020 146416909 40842964 873877768 701400779 668158882 707188336 230723565 953660040 719103541 21949146 961798441 822026209 550178816 522911878 32723723 554713532 952597099 353026887 720107088 407591945 316335085 951797461 53526349 246982043 999961972 252308238 482042459 629548328 430276474 181447406 961577312 596578236 707647212 962849852 924571543 449641941 543392695 683993747 346541069 278372160 547613343 994327186 41260151 621124266 755166906 885133721 109176505 158328435 35060621 557215208 50123617 304757907 690939862 126083953 541487102 518384926 682116329 338563130 246583105 569675097 671940035 133270164 457905865 180655908 700245282 295772959 880127456 665968291 975607908 991925822 649132893 940280222 436104187 172231379 528220558 256819683 602353241 565615032 886529795 685875719 270956952 896605668 545153546 137222007 805168794 258678317 707058415 972481315 171142229 232721748 123698841 901771029 843695075 986736914 371953583 327685812 565552380 554548044 110735556 414916703 959557305 209069427 924741654 395918172 922111040 572664265 437844518 841510256 588957153 152825911 465843462 21243810 287518798 279693617 168240295 788853448 877047035 204595265 900541913 404622978 109199186 7525881 308245658 773101317 411623295 695984504 108530481 987775288 549184671 395103341 86816803 767292203 590735783 577495630 276890486 110273363 539739966 628973171 810152952 480649307 504480540 612662380 84780349 985000591 600336866 848926587 251999417 766815180 643937708 364068850 115893842 33476931 204132296 649507645 748983684 803665114 506448156 917845917 561406713 633389475 896306122 152604780 363678632 37584698 348976825 321038200 915733870 29424216 460235269 999184032 583590807 541886934 211099496 395894786 77817630 687896488 959183511 314185092 966572247 881476244 743276774 484431646 14528656 879393903 908122210 9885605 820543829 179922088 837962522 347962737 827948852 667455821 130975580 560305477 746338963 863023315 277880429 390334222 601648003 135622791 45795398 837537599 40121097 389405846 628842752 390310166 444122052 616700813 152264139 561906054 233502938 371805159 991569493 235287166 115836114 162039544 44511252 839712567 682592224 526103964 869131429 778670944 360841330 753685340 442871921 156924939 450041626 765349404 738527364 548150320 29586394 544043975 553617381 720105979 774888356 948140567 991956989 308340543 110089491 241070131 360186683 792224602 237415168 326156841 591482725 676132647 464157375 757322231 6566398 86041679 239156549 190518042 23588106 941492026 142133283 207139542 679671333 166076016 539700793 555033556 182045303 40546571 999923420 669834933 545739179 869010213 262714220 164738093 699764948 181843722 401119925 441943709 520747356 815744318 201809394 508859280 786542825 235952534 725972144 886072096 670087036 866335823 342783681 888812929 663962217 886585687 783812458 349241115 802905940 101539947 229427054 130010139 563501582 728039808 290380842 26055738 636659056 72156673 286260205 865863216 996698261 738658120 757260008 260142787 257488405 816243449 177450422 607359221 838231228 423960848 302820057 443356628 450808742 922228313 886415097 888793838 653203839 161208222 976193943 38788562 718896479 168475684 404586920 920374373 458590985 482204895 294286015 356161263 427142288 562987988 161956361 713847395 772094534 964307398 86641815 359146599 149917768 853820178 616497655 238093624 360583604 311495821 110574874 567737657 224162765 936428137 240709842 311726754 121401418 848748892 927232233 502745435 321200122 886531069 280018784 140667385 882259291 445024524 159060273 605380333 944302781 181212306 296870835 981720013 223679395 923861813 504657400 538614433 768111095 449324770 585321837 849765253 778276200 761053139 779674361 67306240 861252677 566265190 213889761 170272290 242471622 479532900 739515121 693834601 364462719 713718800 383827171 644303860 954521746 505106406 252042129 692240951 671790186 65015758 577324444 10306623 534188561 147269527 791761488 76888168 709127467 495089345 45951154 420495044 737039944 220534463 799212950 262252590 614696364 534316715 682646697 681480138 613612674 553098562 333718680 272687656 127148621 930478149 86129452 696121131 677155642 907283639 442531894 535824508 315052716 821115094 266634262 14322175 192195184 300770068 749878173 768067772 225908046 822045434 462380948 909302901 988990316 615662807 382179585 59287176 48546766 751249373 699984987 469979768 577861094 996044911 575574775 471277705 11518876 423067402 261290438 64317118 586657108 758235067 696662344 450444551 937678011 3255717 695232065 833042378 876574134 63778701 385901661 244241093 829571011 895749238 285548697 822566813 294307137 494333686 723000492 522157771 960714821 583692118 533541682 403880856 560235473 553465970 24145076 724813266 626618800 356847581 286029365 298553516 524912902 336496804 301739235 143566360 922928320 172125385 308371772 793786237 733085142 40529646 433402387 536434812 289350474 305392158 792698731 792024429 982484732 435397338 731298883 935746565 501283888 4163409 455273202 596421933 897601371 199566076 294515245 353258249 155198932 958832086 828404133 675391370 150682553 941600403 438792734 510644684 626558043 878467297 874568592 450935352 316729184 704553221 954470830 147149579 886459952 210171851 785463434 742271770 543191421 996468120 676298736 849808506 722160093 16173091 436726159 598690101 530356533 27052591 932089693 259977151 252657808 412774198 928355484 615322073 245578235 500073463 983407620 88571980 586360408 929867179 777415288 354460080 263852822 405437465 492541595 117236395 147609847 457858691 938187174 176060289 923453026 320823423 221432762 636964432 949882755 727170769 151453208 172370090 282273831 236748765 821840300 536453399 753964880 60057320 845223739 352727084 221171600 491462215 269739407 548830749 183935641 450714731 434998439 867909534 990426508 20146220 743935448 298720884 832598224 8518108 620447312 504236204 748624412 508238491 160456729 378259670 953639566 874334398 221374588 741425524 246823125 275598474 170189228 368250596 802217466 932491222 488382703 36515013 148826405 254599767 582995906 29226655 743646871 857180314 440223028 998188241 279630131 769810048 101354811 747691864 226249386 2510550 232326563 619617650 434458360 33348791 858927778 698337060 394820549 600638497 472708379 174978595 40448966 162438258 664417020 116061901 814477513 575282844 36511684 617214424 643124812 292804675 545347770 814913314 537826027 696654280 481062309 259380649 653812769 220564723 827823204 720135051 48925907 933191506 156369526 410776781 202414722 981851409 568485036 352846744 783778488 467696587 637763280 532712237 64745224 705152574 740535602 544010843 844643444 197106264 883194323 955038451 540535073 471383964 842796609 227649638 378809728 517852787 991952901 29588341 545630766 834792279 364579932 125285600 772704541 828938378 256115220 165119943 658529845 529097587 338577894 79647852 789210205 825336058 922016550 663183150 208227753 512126468 394674625 751518107 820868400 754227207 39944183 985848548 849337998 66940629 397538946 922895119 345311066 584786955 156096882 275101613 932203719 181686305 843080547 922056245 935549852 500069508 791429767 791758605 730424334 329513404 678073453 676995955 360245608 298575989 698682949 595974674 96826928 509222858 271473668 962756751 257477494 37718144 956610084 220217460 251168018 820885649 533024312 888449584 159010060 290160926 676101008 527843325 570494163 804537464 683510153 185699841 429415695 517226130 771670154 423244338 573468307 644062221 644341441 332043733 519580133 708216448 495402663 842523218 150251211 893774603 385779282 478712691 184208650 849298159 665320309 74411810 89163280 642380069 307995929 660003287 664413674 109519059 9267831 912184165 852040464 517736633 308660836 917900836 687910307 135431148 169246859 461173526 181415264 424653205 101810772 259461612 692561255 321786066 174688656 206883060 428738876 455416011 359604239 902870525 917293484 897500462 135283794 109990388 520663203 796058752 36368634 448999607 222068836 359356550 741057494 596682934 927362501 240222616 108523145 990361526 123825516 555079685 397931668 121867720 472517776 129689670 429809307 648029042 922185041 394877961 669062231 706017494 687485890 262319222 545058340 483599780 636176318 734412565 575202253 216596709 306177667 493747914 680921944 429682553 466897570 929968307 781666002 17131089 975023366 551486621 528228224 192280958 372596875 414150824 313193246 335253501 699507129 793337131 747515404 931784540 251231795 40859309 589790620 576679820 986433416 202685764 28833347 922407672 314883172 115423327 944768812 234454000 535126529 967449542 211063227 711110443 658194991 282574786 350811406 81635461 421709556 529011585 404382632 937945629 736990978 902904135 362689184 217288865 422941249 918976355 770890795 989455007 709722393 759019974 781229974 645260407 920586691 316406191 511168860 446286428 992161545 187938506 755050632 31388688 177071037 307474789 577225178 933892000 977446016 495959458 898270732 270050435 801754213 77069690 949218250 779032332 279538205 878991139 742405928 521704824 212608744 733348273 645337665 379731434 840551454 870211153 679110401 707641076 483887901 937096361 165477611 445195228 817331544 104812363 600154989 701023243 695741273 493984376 598172710 75353795 722637383 550094634 973791915 420326847 471535156 628996118 624315252 905155929 142854868 245983204 704202462 953893154 549084256 35896739 268511884 626983281 279779994 621755036 982702826 337459553 567983850 139334618 78311755 323495044 187201497 548077594 465781558 687818128 751544252 272786254 865884635 933153 652204381 958004784 169383375 534764822 29496572 887867998 653757682 972233776 979447544 659059031 983838006 713958660 683391906 141575537 630146533 859558967 130978626 215019436 382257270 980317299 352554965 611942071 739821976 98349025 456998526 155613728 337071535 956332720 472065526 715209461 771123055 10748752 836471533 777249152 465588179 948611300 953003806 265037211 65504950 511540315 914589672 625601832 465908257 893567695 396342652 848853533 498661028 881467645 911584157 334669880 408099178 806298717 796402805 685709899 437745899 667974369 608664948 888719075 431025578 686628308 367366336 315823135 939389595 289095933 43147621 486118257 243739072 620281005 550203182 378715616 567361942 498974476 266077449 886253858 948505702 263224707 612463469 466194316 631937936 575879832 78750775 355792078 197449975 835765395 956466165 186503462 932974108 154968528 754556938 271808998 770557480 532704153 435858579 928259391 77186824 380196654 558633973 166461426 131866994 630124771 504172884 268090925 839711250 602974073 96160513 467074485 48853121 485404804 64602386 150420079 55436199 542207273 421139159 361325939 786587771 297265847 390719888 192709108 979749111 628994181 741515554 161162630 415699354 628646667 686410343 611080855 695775099 770337866 449924834 827000946 541029816 294103863 652402697 272375489 515328181 479258251 108832861 316112331 144796121 451129579 289212233 488341883 229564349 954635550 219850665 727601566 381047385 54880315 227213285 42639225 676097316 870402592 373129750 358189777 754235688 355064337 936178031 490516712 94246482 952539142 446736823 336845454 141851305 461351181 70233767 919982324 270095776 19513675 297253878 490375313 244791449 262631005 652680696 480226687 330069128 902707059 627057326 448440635 383703679 143855177 387673466 789014243 106393902 654262216 958023518 414255539 504889464 692445390 73124170 345626977 192346273 616387280 485382954 790979876 281816622 62662337 393178105 529625285 562249716 116731833 588502374 864324975 218652496 396563189 880024183 662769893 934527005 538294576 528371544 418994893 952772632 451937954 482258031 221082935 833210981 242131896 26744231 821696584 698234416 526275342 11444727 14918771 208289737 384696702 555227220 441041900 648404411 570376990 617753851 428350199 507267487 282271392 319805365 568984630 646258975 305054491 584420363 845729157 187573919 300374987 757762478 72235486 576385730 434998825 692328126 745803576 563832241 348137299 631981466 126207075 678120153 160043300 714160235 858105403 106762296 553022267 456113072 65785013 921447678 974800711 795200416 340325089 243636856 298754108 472432981 766322478 24536212 734379244 872942583 700856838 641959309 99068759 142418010 311355814 902068861 977978425 531694482 626139296 15710931 735848388 104033728 629969370 641061835 805232989 270576973 105999134 557249285 804909897 691397108 376145304 157818969 17824514 971571527 703054633 203599137 177104781 883480496 862462515 721509294 968433218 106081933 281661654 566183666 265637746 848772232 970423155 179932804 710704141 231958795 460138334 630497731 679296050 903981564 803990859 75474998 441839344 635826186 103352879 66529908 339696583 406291104 737774805 385354166 329118021 969748714 180506636 67533376 516452887 479742217 391158751 813991399 461255358 700049234 497235657 936583843 643632738 985713376 788931532 490893885 924148239 899777954 70761203 578509405 340934333 617119534 13406982 640038521 985928515 157146878 737374468 213884960 480648615 53317142 128456654 736320606 415691540 270826896 82669143 377006193 14338277 562249533 866554319 19043384 559150039 721172509 882346139 733541233 870230237 381417403 482825062 482364876 877326561 489467847 754630796 621296819 486367195 535419119 513953109 981541382 991543974 377870138 329161831 268060898 505843577 698522342 2290954 390222477 964883293 203545472 231440868 996513251 526097321 373287088 683334891 634553301 132643772 535042711 58995120 708542799 642726811 938058259 404561949 380979277 286631843 764420556 861929535 695190176 65810900 187698856 801362491 910850720 115358173 26549229 780631729 229885862 524461763 666447487 643085936 667052935 497118201 14156186 81476526 968529947 147217852 631419215 295024259 539598056 55556339 876461608 339192350 970160920 959489392 394347529 815040351 177405323 161215173 269895823 852779636 284316970 897252266 934737171 90690697 107988769 979117692 793538561 598425255 553363222 177651861 61345832 110995510 203456640 939997092 764663409 439061586 92026064 75925833 323782444 929306959 894871911 750679164 893836112 656335017 205436940 746734877 310929661 540644652 153259002 212113610 404322886 464387477 825276923 111922196 708096106 226356333 81444088 887719853 163827102 71399320 976316140 602428302 327581080 165475810 562065902 333520593 233675 870989919 895748863 519109937 236458463 778964064 231699045 828745941 156418892 515012154 463640339 120752762 663409389 522433011 61018458 149486591 393628081 792122962 182903470 404965790 613915644 482817826 240803229 232941243 290461136 21045199 845312131 457530643 306870927 800541634 821563614 519180846 412259183 615215155 552157007 447404553 673199443 523773232 777805609 108010455 474172212 843121016 840020669 347520309 521463440 659205735 425777562 479108499 627758945 35939193 92055411 796659459 996589326 452846035 156592692 570857646 736071468 649248340 663910734 462465220 522113805 607343859 634763915 853925676 493452680 985282841 636133568 677852063 709733738 674795734 857827980 729498504 105220692 904416708 59813627 689065770 246193905 65577554 553303452 728501153 379108123 507044490 118555487 896578234 412400181 826861492 982913146 14982378 582166027 995795603 171115770 481063871 873293996 210260450 78704387 549988064 810258743 334888293 690500031 154717925 301772279 864930245 646505753 906746105 967131793 475937265 2440957 726678500 804247594 58480045 346989556 467024824 140242721 139011898 720843774 217332272 509105630 735870113 461768379 204384813 419275995 286939195 589711553 663202656 224854653 423382522 713242089 252907746 190639182 738053688 609346594 416683385 399816242 127808867 446671491 179112319 189866117 993377623 654255697 386131944 566506744 689233997 101441004 145756898 430615578 340425982 793474854 294097186 124985694 499223799 17192056 268943203 676379701 260987170 977644642 507992493 785272596 135653989 401562293 646708247 32895696 328897097 413021641 877420619 659902484 719890048 418380441 395232975 34967916 610526897 813482026 838027366 370488971 247461041 169344679 911520469 533546233 425885175 392350232 243785042 306539121 983882601 336134601 845346838 334103043 69666681 696319871 175233072 656039336 334904084 792461732 931469338 935638493 522704522 832632766 692267097 920436562 293679174 380522748 579823821 653592304 304786240 109328020 166546729 130396610 398025497 379057453 257520537 827088870 172102655 401616104 921950528 200132047 146296918 849245738 31325085 794728457 22270913 141610014 601746972 475667304 8360756 459333615 27904982 246113021 26194959 572096281 414144324 75948805 188899281 986290818 313139329 142813860 330642066 798290605 265517556 50778049 89190223 560663726 756492181 466307288 320176656 672895929 653911359 496124502 508410286 118892284 199016029 304201120 775786434 150262250 162127441 773087682 662843285 348321984 382179505 890181848 461600697 791029736 153416516 441162674 536461361 307730568 462250219 470491572 900750154 17495168 105401387 163737119 68813283 12628868 826219477 562206594 294010091 81185607 565122256 24032300 584423307 116274009 579006726 924002165 29789849 748685524 395077973 789347887 701444674 707038688 706115860 594084829 63476140 645573043 466432886 763675460 816181356 796111146 145295403 524844385 49247652 316843777 570288621 467607294 647625403 185209037 22152857 289296445 416071790 403294552 490465633 297170176 624480340 265200681 358694634 157980794 155636187 902666667 952234170 595741085 502538728 863444616 162352917 488223071 965524952 550002334 97518564 248719401 461008930 788403021 962196314 796095907 66749954 681898858 86812297 980705392 747985157 33365696 186712813 468936201 135643077 574517972 208218898 641077272 496157546 10844455 183271625 630457372 410829594 866937400 774137723 933463249 502684101 141107619 763417240 289433255 343376712 650897440 437666505 212766342 896075480 382668129 443853642 85881761 917199528 968295417 363309045 923038926 73713255 57782101 396014608 172661783 846886574 123910239 882707252 761883873 733661559 817578312 695427588 274264209 786422295 117402976 12096396 161093658 953437617 688742510 953466443 785628750 578814688 815787892 191090762 314665631 59433497 551411194 555403975 604034065 639519104 13532266 477021884 186777759 92029016 716830188 214774198 178896874 406069591 174097045 240680730 59676378 551227500 39488523 65083548 422179447 710597781 347050547 886391969 257649691 24603168 49652686 494932452 939853250 856415986 777472705 525864508 519153113 481308099 199971132 657458980 439103609 198853922 830057272 210994469 625382370 901424387 644845300 377004175 260839735 385010832 398703754 47312605 392073970 591472712 907869317 837810793 450681074 707035933 113192159 492848729 390248621 112244427 670050620 436519229 790581228 86200108 635984061 904639727 351142024 790740136 195388239 538111196 938196146 349839392 24536501 790593987 468192912 810096969 371325984 523499713 388873849 564866042 18705253 816049929 557936472 598755927 669834294 234465743 8127804 446779749 155795945 175765767 917934822 49660664 650591389 50325239 25949663 443758009 18980199 417887725 905979925 999754737 818181082 125233535 258474567 864937324 30818063 766221394 719428137 379458852 709856860 194536969 515431717 502171957 461182995 404851201 285119396 80216455 838083969 40505934 283873264 40270750 529725496 927063465 242819249 817064499 772036982 71031187 859526346 250636502 31717437 466617175 695394312 136626900 169632381 104225891 113524657 166335270 563171193 812298783 314495259 793938066 77358029 179199805 42082860 771907266 367856113 31278183 682964809 908480684 585119789 241441824 776697675 994828396 773559509 888367784 157075596 358863976 229541127 246796706 915499629 256862977 811765625 280149080 88857554 520472625 666876973 831351754 760135659 480591345 511804919 652521225 220614041 979211877 635338289 534358322 905396888 335187251 652544521 388225661 675052240 219896965 745843884 419252089 173128185 798486141 950890251 261219159 52260394 550345200 472848139 563086536 996578603 667827086 874557850 263847549 174428945 43659338 67518392 598511487 390624228 608927827 372992907 276524630 845345829 196195998 184167299 125434554 318075854 688071654 345261321 550806589 506869740 137725663 494638832 651778464 104556391 556603815 538757966 221810183 745694221 443794912 545759754 338199394 336312930 416392576 812809605 10717394 480867109 110754709 303803970 553869849 609594894 62887239 543860514 997799698 679875062 607717151 122100384 606170562 969155416 162278412 489640283 727637865 71850694 786340015 939025569 57699939 93116053 734252838 962398496 562184003 609592249 611685672 916663213 194861401 797365170 230811885 58439120 978099265 428606163 141191593 553800458 445200237 180982703 25723693 966956996 42825720 953415746 270709637 864753260 779838177 572635390 759767426 350688215 552811710 215837553 376437668 6684511 7585588 281301054 554224512 536719431 240569282 893562572 423879959 284969703 487345690 35925192 648580842 607070231 925853852 104123627 80839273 865745893 488658176 408794448 755743446 865087369 205509147 613078262 969101348 413442632 16287787 411815325 821381043 103476047 34449636 792733693 938576391 731474402 306313161 412449384 7807183 630683193 535315021 144168796 526308227 148186163 124346484 492345405 557478247 548309890 504380196 377998460 789312110 750433504 331645480 395075372 246285300 982831774 519193894 702287501 681523838 937479181 133041496 948757380 360461103 189633266 6840268 805926125 842539315 187862373 838268864 887987039 514476295 857159832 908980529 241802010 623574680 937859622 491270227 819834823 455240882 240854107 426585806 144555884 659243995 925120216 287285344 559556808 436958188 351502409 266780919 58259634 486516066 757011153 893765141 718677484 232206294 12092682 65652767 826058294 844721672 102140954 653397758 646687712 549232685 530252962 19039041 435924264 928616681 909429866 124094234 378134874 908460692 43479905 192013351 954532908 79590969 71014363 546445005 795396831 741383444 748657944 331430245 624985522 222543867 740613787 941079222 471028155 402703396 456938582 25260941 985047165 117284753 582551045 917459088 244247966 206329164 593274566 395468722 796423091 896748082 146861397 774081730 560757625 430160502 53612729 360873527 582878186 570565475 857945211 223969773 840024595 273429691 401537115 416457378 896805169 625667706 367405329 34784692 607148209 414708200 728067600 808610065 122042218 871154163 662108099 649157254 261838547 223510974 747359761 967014957 311574933 182981893 60203699 147023842 895855634 437578278 902028331 514827572 657852785 834105880 675433472 889683255 146227054 35157042 884538026 958058339 650891685 742769505 700020945 705531971 9019451 976289092 534906058 592863865 84885992 591341549 519955852 277737153 458171411 250462722 714238788 129028620 312863430 819603108 170418444 194869798 469447227 775571906 394186873 859567555 776188697 676696535 950883517 748701601 607754134 404178066 390930935 839890651 884228794 588284373 777921137 637424395 617744503 419154374 2281375 799528084 152926745 783368412 63832066 68495151 279596976 956939241 510537708 296681993 843928925 529927809 556985643 304730109 721305781 611092702 888797899 21465711 227456556 866992672 446137456 330990737 79642490 533493189 695143721 598990531 281499970 766912914 818866760 596237298 996058651 929264157 263751070 695251717 94452281 270229076 560539305 823728498 788799975 707294280 302855232 16973440 761288653 731567924 272727892 298145656 182819822 137057817 112825909 135041459 670567634 694844468 246355785 732195599 351867648 488557133 226343658 916438829 160381779 994163889 359886959 518006269 876579966 959331671 573227484 759602976 556237798 638259015 892269364 132467660 768540300 903065278 428030770 40723701 880417167 760412199 518984157 32935466 995144437 351476351 648841349 313923812 513289791 743224983 646453503 307659926 319655152 428581604 399682808 493506242 963636333 398083367 557700853 438814743 173064736 947560419 408799057 537683066 502491974 534749013 720279181 972853773 8868755 651289831 169277245 619574374 602484452 231079895 298748460 483031134 361730791 44226013 517092649 748467685 77687984 489687888 95949169 395599452 722759082 989072326 370234642 110875640 786309670 249131174 805066164 50737496 972829676 38351668 513584369 897046400 184987168 731426732 251859380 187462345 73044604 516744450 572529513 338421145 428132212 194877535 785945064 691156728 701769700 200122712 56387799 508170774 813587351 54482375 555287596 3586644 550239806 327518441 30764045 828876711 258054975 681414810 248748041 548243740 873102284 437708204 964245314 547085244 798194865 406242211 790993108 73847628 544799614 155978166 906514867 937224383 177361447 860402342 257039681 320483112 238822434 796501237 396120577 719981195 53064508 392827309 50192960 859191813 236876685 694272205 355749736 537476313 846552704 738579262 575883528 574015799 6768836 539505156 832251212 666251174 654054268 843516521 253272477 751703765 155487836 326482891 742609465 252586125 718467706 650882500 926288261 749046891 705624601 789384037 218991443 451954283 833324113 587840484 430736482 960480629 995097477 280963068 919178502 502462290 324605018 928314445 597118185 70452707 39452623 86045709 104535403 434409711 44636581 678408365 633525314 656454618 533604675 98249366 776414240 306279980 980229881 123580676 354438306 363734676 99230426 594668839 754388417 547555991 637080785 828398243 852930245 777858948 178498258 556941375 409976470 531056351 250761713 58184607 202564932 694349284 169608867 636589066 518786547 944640967 910907484 757821693 32996173 241198080 923008983 206728376 254661317 625341822 306313996 217775027 36253534 714792842 297212713 815198185 937943367 645389526 170294267 811614687 198691932 731974922 457007846 102413350 789340125 623405896 141712204 124977590 526491708 729054622 457595203 161119673 68830761 293724660 191720832 15262530 947300530 179475614 84139128 740109091 967320149 365934484 667200017 118014489 670014628 175572177 215427941 510568307 606123326 613266346 876025486 479160948 454550006 788465432 747048781 688173803 97197854 174260441 694158357 237300466 130862706 722699976 948110634 428579530 607841666 28017145 22156114 720948611 607683769 852032428 193185420 756136330 440015850 532080781 290262948 649602491 957873087 506783571 630289608 981025948 840743621 835255316 688490942 129438395 930881506 784092092 796738604 467334769 676044561 779029323 273763413 155846814 413135504 607276256 788878271 336108201 450488699 425553500 754924716 490160470 334673384 620603171 955249687 927651522 626789588 551698525 444950302 711337012 823936355 52748281 200125041 737708974 153552831 768426233 277796269 249670577 921305279 470819392 656031736 44211895 81730212 938917569 143542300 543995719 969160198 55168975 688957708 728148136 474317082 979970857 907901656 279620443 718414690 755509381 173735696 274918074 200587208 337946310 215123643 30506507 443399578 841981670 636648163 231058077 975958812 139787155 26416818 569728273 768486927 95700924 980493893 162129008 848866342 643039206 507191338 292022212 88217044 312868703 37009680 362107213 231496231 782375492 72400948 8532653 741025918 452241058 824828656 37404651 396298017 775048525 703539747 431247859 707518279 756077867 955320734 321597312 852688052 555432011 765777602 484295960 563016048 921096124 14489621 984499773 223962767 676719113 890057467 493593253 575910429 943634279 96514730 329695350 201661050 663827876 714568005 22971092 29715995 423067998 273935261 389734289 733679371 877799551 882669292 456469489 943909625 432284761 276191687 473204628 850140124 239998476 856351297 190504459 916341376 268159261 309536751 421049986 709034927 245540546 55695308 555130051 533920086 877102880 545046862 411519530 773864577 102332904 498566599 860955915 597602593 843947241 717335122 597420585 51141718 172797975 291746269 618832974 307163137 390053173 49538677 662372254 304804691 448620634 299192888 226891561 891495746 502050680 561284417 773881655 283005588 547515658 777216575 937810675 926882455 168864813 332752934 415237928 277045293 135170303 792746033 620934067 836739659 78023624 61857399 32447172 396159796 25534474 847836404 412485782 675468536 133528385 630998091 555457789 959772609 637438488 145124574 487282163 17177411 289753640 975091721 873973485 134407194 360162093 682124227 133899611 358822282 882751348 506364180 73314432 689356656 152471053 964081795 678391296 946146259 901206794 662759866 450416303 389618882 514762870 448811122 658597383 691117185 938786699 678607302 260944131 391005195 470103295 103006589 545733356 679143103 904362125 749664643 340080701 81760922 45630652 649565445 442679108 526005157 982018754 678929731 748996685 19624403 650618869 878425759 462359690 273164793 40679057 37376700 367643028 994214311 602111245 725184688 909616697 215132903 78208174 757612084 689660240 780250901 115517507 9882141 784020956 43376712 63070975 543452733 159692692 201374905 930702881 942149968 68382663 85130143 698785404 115420677 957574882 52508003 124350583 225182045 434769276 137648556 686854144 684034026 549161732 442625426 115264274 685584880 873702140 72217191 291376215 901395766 457956787 659706357 810528843 475934940 723221033 599872660 905340661 555544955 346702722 532898230 517768436 493729812 392277458 636468408 131593182 249639549 497876377 882793444 987808203 706527726 621166444 711578441 11848366 873677901 860164024 631999301 873827155 365610432 12114085 264468778 221374505 911688776 482055926 507496132 905897218 144436083 362699078 527417281 78759957 932406571 601327177 630532708 472667116 271334321 246294766 298498997 75054390 905703352 545585244 171422824 182355098 683115544 452956845 723392567 980154126 824237495 853704915 391123242 618877874 152218612 996602568 448040922 442932493 954082093 356338077 495578404 507772670 11895356 262252814 830647845 552855770 450124982 212110338 537352855 857707561 834232253 566364868 317744310 250353503 60844137 429389575 53358353 765448039 348319461 483360249 520133893 259602000 288762187 482358789 843535240 252256962 221842964 587078380 543143129 117319849 506862527 272538317 799889306 996089699 308951877 985944276 386116597 750628524 277625353 111923514 486605906 715516447 78100435 935065307 306527799 305987513 93797250 84145316 622246202 983429554 853924235 766908206 500845126 159800162 553009182 210886648 966260480 994557351 705823107 398424154 249100297 754328965 753396115 999961766 979891090 808503499 293172477 125566679 154873256 213306075 387239399 111910148 437526326 980799227 856264957 169747137 146852492 258761898 417837155 742134595 260676888 412910077 86187360 828937768 814062099 321375353 331780534 821693394 451914250 758081581 572088577 497835721 686686397 213670970 316047803 414485273 436724862 285202474 191062258 152852269 312549984 978087420 631463131 84649609 182117817 710473726 19199963 946602279 419510835 619520257 273267940 285406610 220154378 457435647 109397204 607142214 230845107 79227298 717343987 641040763 565831508 693321706 47980487 775744494 613424914 956839607 222710908 703752001 158799797 779165787 249840634 923473191 87537545 783420029 893144521 519412037 819312398 180863691 96821459 687611890 214271155 862799254 782855860 823226899 741619880 51520681 965353832 413731745 603480563 326283478 161418206 712926592 935096786 416579829 534813161 60336261 821101728 338312053 965311769 535242532 429222588 216931634 184285370 765021895 852024892 47221286 715729099 941251169 55726499 912080099 673597862 844448484 892452328 323230269 432077902 55200059 45769233 551117341 932851860 114767667 280827172 853530260 149710701 422613132 117795475 55630141 843199350 984960176 803666944 360055237 301189280 116009805 960003546 236342844 114908594 474431092 351200023 362300047 99191730 477338871 733826525 385942782 504433728 937596270 272789383 385003940 50887111 256402163 299469188 437812870 387070354 96696884 356014385 804648769 264562342 15863810 364241 176669646 771263626 484887360 391191147 783072743 227617181 633110220 869288616 236482029 539211533 526135540 442059179 614209833 282873829 242593166 612151525 288874114 90174695 260984388 944720389 220594187 920029063 903514514 736872493 946410492 745883377 368620415 186331642 567931944 262784196 553828184 808627247 133136989 259031407 433223072 754972645 473950886 453284010 392479675 610285589 882788704 82424217 352159762 338287743 3610503 267907142 108279460 672850573 156871211 298357009 954091950 923293581 425297857 957609248 719623400 981869652 995389290 806614106 142291868 245935065 532065610 665201007 546549369 726482845 303984276 803034845 710407319 333087054 357756141 577756510 10074929 541031877 753475586 792000198 475235019 458371375 458921530 974848457 858398486 219720069 236439704 37518938 442123339 154810085 582094234 867369594 434836508 819845521 203015785 875702529 227900204 576546039 32277506 151318569 211294522 776155328 997720335 601085564 110889504 686276239 877652907 877279905 207194234 369698115 171522259 891184511 182949566 140120938 237980946 450363130 11490028 774649908 362134690 454069418 624004934 571494878 683155387 416434476 642844012 331522929 223761842 634415602 853039973 253190002 13838519 863160144 526808612 66670816 867129843 370227646 160836837 741043419 361933387 199971562 966003274 650669426 703149621 703010825 518538307 45449195 865304121 816104281 605832642 989959527 361917770 476352643 739948157 169138823 408202351 476119129 323539078 815495117 990057317 383892864 390262467 77754952 875386142 56427713 498394256 430326423 477396270 495378856 662670126 914079309 122693144 201683820 552559034 376770348 495326744 405161579 981293134 915972174 704196050 733086078 371327677 572927056 5233824 320955855 505873212 966371705 485529090 262007406 74831024 704374916 736374563 705687160 860386041 862914163 585334632 664836252 539331276 867218549 829609217 109384078 312341797 163288654 734385258 761885171 536862198 540841622 985205486 942730421 263811951 623922124 26844226 590464661 18324525 525123832 750352858 5303620 22921095 391270205 842450783 410204547 404419146 44483371 579918165 84670308 778581785 628913836 848464954 623741228 216760302 684340448 204363122 252138743 614688097 874494634 705523329 188468830 302035789 710463822 859219944 940207222 863186323 571940451 748111310 40616701 602867410 553790806 426046338 5440818 545221366 249874544 2972100 646235456 799958385 347395124 924418145 985039599 865107419 582513129 86323004 197344949 385677863 437494792 400798522 308838123 750673766 340034839 825864592 289194405 438286800 910044315 146105620 773797598 565312555 557549385 251732604 499176179 501033164 184820694 650510710 206909526 583776550 755540945 429967991 168768885 613501300 407513289 5678065 1710097 67893364 340013003 551738583 247525791 790548276 276621785 441942824 663452776 992074025 79644375 143020176 906789885 886016518 552070395 115997692 451921849 601520168 201306530 740368332 988488652 324973720 272941969 795552439 686428818 286089576 32152948 175816323 841904822 244418405 676744405 18957013 937266265 763969726 534052199 806386701 951926925 524179825 877856935 912899953 544676890 798196088 235677896 564518082 70185299 723115090 61963843 750312656 98857020 783918556 833483189 160596158 200434524 346883331 938717922 166637697 577875772 576765125 694788383 21423836 471856404 914535597 249573138 692752973 84401523 897712802 427316547 714450233 967344615 891084101 533770861 839683177 627039491 875016805 812466891 774630771 344129153 698155759 623909739 834767631 859968262 722006317 211744895 377114057 924875404 61269139 713256855 541993752 974639825 519751106 950879227 131588446 705385667 501657526 207797406 601863862 649116925 314353195 896010492 796717275 800178704 628963536 767568929 958069072 939314750 63784739 339909111 141636073 707830468 93636486 371705922 701419319 646159997 866201236 90576894 935519073 182016476 214097311 908569627 196880936 305677804 52293333 37959733 547192135 442166763 533223791 335998882 462371329 479259151 470389921 401999137 731349520 635551984 544465557 430800399 21784537 114812208 70525521 409663850 316957020 72150866 282799493 760744647 792271786 966296357 676479964 443332190 771458787 227153735 302831889 846434490 762066478 789817358 882610606 629455786 797896802 914824527 425271099 473008775 594297259 960629993 810030665 772784975 356243722 654429755 100955050 583007554 402652291 975774142 902925493 616472384 403708152 33230810 244130054 518163304 765447116 897766331 57836606 861563913 469957759 243052940 32569937 754337388 521748382 318148699 91183870 730680802 307272447 812913089 599183562 631720507 344499672 57018604 950818192 71552576 322178761 843654957 627164151 524309761 940083172 457488090 809416156 7420230 302437941 755691116 497418821 729878474 218013960 526642409 957804133 293267610 764430883 937933693 511903373 512585271 76192581 184311555 539799658 628251837 731790920 459130285 260191450 67038064 328325060 225149430 864525548 892498963 54761322 755441998 452585246 6886484 943172133 832263015 630349399 262939817 185258865 987200951 353834144 241419187 290925713 220022590 994406310 228720311 26449590 719300209 509036312 864328734 606491077 397056746 997668883 54313335 599218225 235427527 884395710 639935662 763281102 697099353 490992158 999379123 202624766 608367307 874336097 892639670 3729568 694121435 618356681 462137803 781510655 632889383 694306798 930733836 694125937 8229437 286287879 970788424 221656652 627309418 119895338 19567339 974452442 506068096 573504288 900640271 93121529 390865344 539260544 398636991 676300889 605468456 31440765 238951487 596374285 463004377 343764925 750327696 479483764 989153308 647838098 225406814 896092732 636859171 219472419 796668681 315241691 198129241 999732721 598894399 2946742 561965702 212017941 242372586 48218607 328162986 240669472 750085182 837746849 452968883 423019391 989096657 626172466 683592304 71116873 826372659 344167091 630897713 395866165 835466720 977592252 552682985 713342186 695809636 103703249 48439423 711010855 377207350 581274696 887995541 318826830 394209941 710161554 610640470 671372062 536343692 134709996 32312214 189008331 830539468 533700240 391586572 106051637 98529946 740598506 80744112 587507029 212453788 912157840 537948331 266385734 448982372 579743638 354038319 93723239 156510242 57579684 454261103 260961046 487866267 133070404 976019388 987542258 916741427 597643570 8896512 101432925 151524342 403727463 357422250 824191669 658629908 907615515 797304876 19558627 125457776 389240256 240232690 764741514 145849161 935108680 608815791 897911040 49973764 864213165 937094106 804236050 747564521 668765691 399991801 437490330 44581751 382898546 467339126 372833373 441288703 253338989 115732266 871504257 444278929 889148201 263848629 866852086 386577892 600544535 796539068 12364664 645085812 490629629 813220723 778583681 584159216 603663124 656151354 155397591 599929511 671591 312878839 267755560 983799541 594025099 492110077 501975018 832009094 201129198 577877076 752838854 617861817 353026190 993902722 644407945 386352124 889715050 538392462 768822800 5181854 928608175 946986251 392253829 487971920 346030464 539460923 260294074 78174962 101685020 597746434 756241624 469293227 516247226 671312012 141073287 884310585 60077393 365332522 263865125 251856076 350216844 841908634 123581692 72566696 288997581 785052400 539783073 140872977 361470319 822759744 868952035 18751072 564807838 963085892 307678359 805661873 600147649 322204538 983600165 512663397 506226350 233470898 512741443 893030557 286922834 629270639 296187556 65955926 201668619 150102794 216354827 970004632 309386903 864120137 210344430 639924088 55468181 396263579 370506122 330011320 274486725 196561559 699516983 916358574 689376410 421494406 883868292 676818489 87670433 600480797 833180063 745649111 638092180 877552568 447671993 906455402 314682913 1560318 629378039 754915279 313942171 841003682 248933831 75610419 995616922 713035691 109039540 435947922 154298795 843413689 745994436 428070124 399231138 622529698 885614276 724280284 883666078 943650966 331973514 458518179 226026535 844386195 412948925 315751144 923832115 60457960 802903232 326451757 934534624 502042230 314420265 735110776 561375076 466703397 724964413 891553742 749764285 665254279 852618531 505324353 372559291 731627877 639403261 320114135 728561615 115994166 304216141 670246336 702254635 899578251 732956785 792076548 111684554 410663889 650873423 364228563 845526477 526984827 539531075 439888300 381868458 566336247 451903903 352521140 203999770 838667888 328359605 540794916 892474892 478235427 852389698 8129310 383618376 469500198 787540120 439258803 541063543 534932813 737895912 365851150 392104281 751330669 552584833 950985777 88795385 443423098 452556931 389018083 445410267 477808762 66075087 532542955 54161618 449180707 446065305 624797213 507776411 292544267 683567095 498016623 261386073 641740607 297186164 861415250 536795405 636429922 930293908 63916553 838818238 468244330 7913354 212931739 550387127 634136945 920276669 688038283 345618320 784919759 5109185 811318565 690674259 170795767 297187206 227929047 802765610 625798048 82687106 836750715 181562150 59826862 530334231 987457784 253201820 415611771 930723029 722696447 430571412 918188683 892349539 130269277 97129119 155150062 669198795 310486679 289447016 934694724 664346660 774988939 541448827 777789334 462124849 199379237 892523883 867854356 677098582 479541781 513071148 994725566 423352863 299227110 338054150 570094792 769134638 619924211 840091003 566616041 959526000 587329376 187836464 127316141 48449277 550855352 83804388 560474718 803624101 469183653 439683488 627462824 628770616 931812143 817929650 930183929 498875973 116175982 92542069 876042398 574770869 161728594 60021831 707251137 966868590 519305128 53312469 835473932 627702184 124728431 495069070 673870011 522483198 363644901 893477754 785468155 526891523 352633448 648847837 774434225 113140793 791476471 439080205 841393815 165567821 347342481 359992091 993121820 460598719 390419590 208250031 232456081 633777956 637716873 516619407 547054156 321100212 50727592 146751569 770904831 520256260 881697171 663080953 420097479 936754676 588984650 346576205 440426350 967752158 104215448 657834976 658785065 24006255 874991069 670956025 379962299 470706738 911365570 774034840 372875744 77159730 997937813 989498014 31905203 347407256 982782514 256535765 479913962 327561246 464051165 32901270 179023404 926597988 244988750 489106039 420099555 277131021 536490631 821271200 871337060 923520430 737191021 177959423 84152561 615702978 713484408 351187990 754327556 915955739 448818346 405646622 737082533 903228033 417423987 295234133 509570784 703492096 674289899 57826863 320375035 837946391 173169033 382541559 352414427 215061322 5209297 631626066 915441266 180415930 457338850 629079256 579723871 989521659 523868375 699414362 317983765 673302303 338310516 166041804 471392428 831654128 518452067 889091717 255254044 877015961 538943825 323656197 301603132 509091630 382157119 937897969 306567442 806326977 11263273 325151499 804014198 825780957 887753188 434984594 114640066 223783783 157310172 226892905 359752671 100014948 138673505 249238209 237325637 165705044 799294002 357290800 210058824 849363501 96805248 458142858 216307325 699628176 910176188 58644514 23785775 38302129 890099567 4673066 269015247 4599379 556566955 524357046 806037099 339609193 529087692 563343588 195142954 180267612 218188184 91280469 40013003 251114992 220186182 61022092 252875638 702311166 649836160 858875204 147080766 218907639 527822951 357549763 623447325 853209212 830290232 575979883 862201167 420079002 282363008 443983164 140492847 606941799 911375077 416041469 582732329 742681771 840751121 484683303 237458519 580375971 623521850 627471674 171789169 221004803 504535920 847106747 572622213 667277921 659978054 705381354 721691597 491296807 785712278 750048511 360574072 17035021 956086531 866158988 255324610 189504143 395627342 605775905 812761434 20470405 395277512 245005146 385275549 170780786 758512959 128073754 856514810 975675742 394892821 801144510 47892580 338541735 94855574 885168609 466346412 317897181 397722878 484420707 888766246 267984665 371218419 255274461 305950340 666373440 613297351 713337227 424517681 45970142 621673657 368126664 70743929 213989857 598288597 935092559 318275192 555750746 279917699 261486238 175745013 16519993 934482844 936959653 361827427 462772643 998492038 397656940 885068811 527120602 247176658 38373778 889677773 802055438 779974091 852546527 709544633 531621581 751830410 823289273 308031527 322601816 197827243 3720899 952642881 813893520 310668581 138331151 635998324 301467412 248129566 464462346 760992967 628572672 692809615 637135036 324834190 820910962 878174271 208891606 640771632 560186985 245384964 417271962 573493206 353140435 366097982 48417044 901622317 903913018 589724363 512373309 540219221 616503370 429343684 951233919 343866902 473316580 453849567 553865255 214975439 973398520 180127932 822061743 714604994 997386779 586289873 776183903 197245484 774322364 621700014 930774697 132842634 535457402 714337186 91021156 931736270 70551507 702550483 601933842 53098395 273522541 729452785 827162728 749574243 240627956 315374254 517009968 694100904 201369052 955513362 964181651 617658356 432809911 239075056 173361990 923953823 470464291 695512118 558635471 261070256 935874784 787947516 707542327 374693223 961678690 832003383 939677405 831365024 154991409 807828525 566379084 870364013 558639700 971482110 272633901 470199769 849714368 512373219 871311281 229944472 66404611 794247283 169845227 690666279 902439284 870000809 28777841 586688745 927533789 779571160 675079201 792981140 497396198 418808829 666296861 519049078 150651775 261634189 196090806 936111710 306681417 319140899 117993629 477640834 189550583 313234628 110831916 799006092 185644720 751714552 352739621 201111835 197580575 950994595 522214529 275470777 187120591 858637708 241842803 26974026 584218542 968096910 465381400 627516127 222846231 996076705 217868638 404041928 804053651 488857413 563558943 143598060 693776077 120479858 679122367 358961103 337458035 39495771 200411189 467833217 211045855 74248433 459570809 819517761 614710750 197705740 174579819 639891609 37370019 715103714 79078018 164264855 155430357 727568836 440514251 982408705 592965874 344623059 525353940 789603175 13197949 34062511 184063693 795659706 27037018 684539145 722571745 771248518 164936430 391948821 457869939 867347737 521799014 885535381 941805812 146671224 602185482 828370634 787481384 375355978 81705962 924766579 828348991 666437053 717809142 278180793 32689991 318251640 420777939 201675796 58557423 789137606 312493557 423995775 243636006 800422773 43031284 417303998 729590545 782267470 463204265 651712219 308658400 484530435 50771256 555154431 329929736 520613378 207559588 776489105 323929594 156950683 410690542 199321140 857837483 584332138 484738150 77724574 937391867 849446658 491349855 733472120 936978396 959870416 806620566 602704502 739655950 976909142 790114744 324785756 987979366 802274486 499650947 375982287 442834262 759650678 844385125 389276709 461186475 764619482 137261095 585133982 511285560 561465868 921248046 281642982 490400290 452561445 486560842 221778201 963270181 668316789 47055331 332566807 671334577 243546382 486349724 318841311 38981890 633620787 106818483 112173086 116058835 524975633 507644877 463942892 625951431 417350490 431008700 685640182 923263885 952903447 321209748 477754601 660808851 104315127 140011073 749397173 7447308 666204288 947063235 736779333 550571474 557774196 524117106 970002087 452273173 812718219 811474197 978000939 483398820 772495256 851614249 82284846 992209749 976766635 257130525 995723838 494828719 597881380 233772628 904523678 326961506 664735996 143882706 85824990 233784846 332804273 902552203 180831993 223971592 876075500 51638072 490274369 895119953 872724071 312508570 287550569 70706702 179426411 854381959 609047413 846515261 690636861 820276362 323555492 547987841 383708135 272795757 996367300 8870410 354407550 798314279 927611631 22535350 411947105 760912774 403679151 311333652 38590012 180680656 292962805 542343050 459451538 877346663 722512272 134270725 608447235 725221700 890206597 619891524 400560210 819437577 319235941 471221971 326419346 514574406 301092433 524460832 743223231 991336692 598278863 146501390 468715744 540576237 161369293 425873161 86780613 597435780 364454688 473457804 380686457 151850732 303435060 457010159 457790673 43467784 763964661 460890638 971138671 602946937 974420390 589237062 709336994 268716574 546503504 113009365 546047018 100813912 446265120 306875932 152106073 509738238 615263556 895546917 582845103 336482279 271424630 175447398 599512383 310089167 395553435 424590398 264693553 632436581 541986862 634754712 229033826 634780199 327796666 16549726 235075276 814395975 15172482 994662125 960621050 673185848 182811434 799656353 696699813 113023713 658515509 132398581 482389231 187811254 744246487 430171650 541709630 692297227 172560760 775320656 799681415 819622524 852209695 397375380 281863008 531485338 693056909 142711701 610663278 880563735 925563264 992298911 695503605 162869125 387875605 350370745 294689086 912443054 388026191 557339939 60818143 640928538 171890067 94910849 482385621 730099582 76947546 570616768 267600815 33671041 60401932 497196343 543820614 367344080 115010614 249735832 948336834 446696011 249349969 178226824 50167624 856450463 32318407 695926785 978073410 229147547 23767757 731669241 163046108 276994955 458298388 686287019 745044159 294308282 786053353 232711308 289480812 55946941 860985668 994013978 510103356 851996649 917292345 543862105 243789050 134821329 866485847 792959994 622630716 923958698 953448133 727115161 390402327 194822268 127401433 117272487 758583818 655791177 899251884 902633007 747871772 497398228 643984100 559139568 988083605 528212175 965941009 548309266 761799499 919514440 427935325 191777113 262274734 595869840 211803608 150378879 797877144 400508604 498799177 76431905 556526216 253346356 846654056 310327545 875442180 305313764 626322223 793568606 809924719 163630856 485970811 536970244 613769751 599749019 920748137 888892283 17799690 960084923 962367268 371915963 266074019 717716927 503188252 385716399 909372024 787668233 77636316 67095946 934466912 445758832 765382620 466938774 547525308 856129421 838423401 394103759 511425411 661210532 89154854 453319874 7370300 75525882 119252791 434263960 554168202 6307461 469027656 210902855 949729334 641433665 13749455 702638056 919087703 441567791 765262700 60157467 157165546 654707250 684334834 356135359 89016001 291775573 714105336 411802829 315752276 551180874 452469842 988203936 648133219 171856792 920775819 610787962 586354898 319335682 594165591 399801481 237870180 468580774 968399324 156361097 344414970 229615481 551264542 20624751 107229611 320296311 990249225 711658830 626900000 697597206 948095020 271956654 446094262 337976183 295633510 588809376 782854789 46717630 665050550 680435017 774968689 644890408 522022426 675703093 257400122 179018754 844931167 857877463 398455322 143520015 932371933 722827136 798255807 936896317 815802842 17533676 940887711 838062100 473439601 849720480 596940351 588264800 67080218 952828679 565655511 35921885 316803959 901820378 988449402 939002406 127757043 29649599 622726020 492500864 546932222 493615898 803128829 42440918 461082390 684161431 879070851 523862198 806897826 624461915 286935868 551041131 156924258 603947496 561175611 572708684 664048907 671250070 464782415 370399586 471562180 408961770 709045858 36502231 355968355 832516405 325761277 452094595 926252955 527866131 95324808 426972807 517863617 1715023 765361324 59060699 611309171 217907814 531857653 773188221 442717546 465551780 569578851 691976066 75227016 581875494 373301112 22905349 808543753 34565842 18193622 578645909 539483805 520502922 175951385 214634267 48777623 792485090 379809586 280717370 34546491 947054665 818345939 137491720 508314222 531248895 441317556 300281826 134373694 774080553 440506566 384851174 919005596 342519022 736032980 820672676 630372387 645699966 875035266 639284915 152793540 529674005 541268495 482252887 515224780 356878975 241128385 737256953 614593388 20883836 960700182 258138746 778297891 431952144 617013362 803232179 839000096 622833754 448679396 754518377 423567891 71260984 238334837 59755287 843222406 724697557 466404689 261470053 46261196 437277290 184702589 256914652 8747646 322205515 707773813 510673655 642005187 559713052 155033978 255713579 75340837 778862045 19317938 771320767 57489908 419963934 113074975 733365589 333835698 648936253 349008108 906790631 680640238 189927160 813011137 453520726 601929077 449103765 32562688 812554372 601653785 587285891 450818093 34361791 243276503 364055388 996820024 151430509 784713168 951341041 864871577 236367964 389311935 142415428 884258702 258204157 202151716 810724392 163219970 61923905 978451619 364817041 592269014 734125977 270720597 264549170 84139984 72374743 841803730 998762659 297903451 466203831 813417927 956974571 174624745 896199230 93193473 682290237 873699248 27778180 622287335 591092525 278856514 971348422 233763317 756793040 483178384 520625653 637497601 139818638 703088977 132199916 879666488 207556644 440503541 105314270 471888564 301841691 5218214 210499476 287922958 771998875 657627090 666580953 57420348 703851999 730114876 551121132 412921902 293168915 247067216 190364043 315051848 758500106 248294616 263730068 335420327 697257646 200643461 920451323 910691291 130811333 188935563 445601592 775806838 490048209 79888709 818965912 708622319 912392468 122876822 453078100 714681738 656643740 526712924 563587159 454085067 604200013 127405988 206959981 811359919 11454233 150192178 613295116 552138977 392109789 836458530 844791202 250741476 26394842 833322500 103249810 658674296 386442091 792086374 716292434 658778611 863036381 384242088 794925018 229648982 75533972 904307024 860883566 284295384 78518734 918810778 325108253 816975148 710410678 849685231 546336676 990555854 607328992 448891151 263477155 388239857 186937992 54542665 49974788 637771268 979395211 363117910 869975121 864605841 421035225 538137131 142327041 725192041 778207716 214469582 329234287 153883628 973087733 886677582 688973938 274374350 726925300 610991372 652354963 784190606 74017001 221862388 867410069 956752245 283824826 775675876 748630191 664628730 996846012 691545450 370914495 914247728 651643020 226721039 239716560 415088687 207919661 679933372 121322505 34116932 602600811 61889355 286625181 201342185 451255902 710613267 46289038 4678922 779144086 597098534 804076373 378870898 616817478 644835705 765192672 134928359 818841243 32027891 406622714 686762551 951204060 820690468 732008355 433598415 286050261 308396305 356546152 241573707 598070691 589602622 776172371 793316281 631302549 954576870 442823771 483653515 977092729 776410745 559964954 133960731 14834028 925927233 878649481 510671813 592459093 194650788 957389104 164239046 97292099 694645122 265520101 811920213 626294107 411422362 360963523 984792465 709523629 981200617 144798030 497559657 338938684 111405767 755286361 89187051 858251073 722478477 178062754 622685064 904724028 515372673 554902453 34291155 433863514 157814092 418287981 693348601 795372864 887146954 47034095 524762429 661904260 879539333 185267689 472438685 462782881 601672291 913268638 782467514 864299475 674833254 401528698 45569902 216097160 403031385 900781 493725291 97883266 833895369 61679712 954223492 194224533 672218348 702493084 751942560 783015796 445965221 11071289 4015771 479392358 92327695 916602074 849443559 585398198 667462311 191717572 261514004 231315171 773835501 101321722 303099785 319408208 231071434 203942932 219695949 241962657 710531174 787903280 960098988 669162761 816562804 848507642 156191555 674589663 927178881 627598924 526729938 601497806 995024226 268298990 396319781 930235278 14080987 263256839 85199745 688974127 227896238 307936531 697084167 782224514 571487468 789807606 661691439 859941738 147983219 808027227 651023217 963438054 47485610 353416320 932709300 685472726 248525384 214950274 260459849 254642531 584229490 218135190 232762452 45903306 90748255 543555893 720991355 364640028 853850087 265389212 295354640 843143137 379906832 595361938 201224985 678747939 762607182 922098767 572344142 550484590 688895642 296218556 626402776 400242845 411448285 826643559 668289443 745250405 978975011 864325931 547653426 824630371 414695752 814011539 373103472 789686749 962874097 722526443 403625632 296166504 307347722 215172722 157544986 325097526 813439133 316138401 609206159 704708124 31162577 364064948 152666757 124228146 400822071 198357551 693855069 279281741 73491691 564924487 834638867 560117356 708822550 148510818 425202401 2738438 458072425 885447972 153399683 278460008 707289552 186708849 486273431 337400924 266207474 298906021 154195791 421812642 96720487 723071208 880549551 461233052 914573101 435361919 459984110 189348775 1167255 884265713 373682362 686253364 678932611 361864957 842112792 240196806 514257107 158342371 603418906 160435307 740645020 213561946 782629426 342361461 740828499 770877554 447933780 245900470 360398582 546054622 448075235 994889645 663212710 146788922 939052151 474802340 609581026 333911364 918654731 419046433 807256371 309340658 834495472 67000963 204987213 377033273 573182531 148452062 436340900 996149150 685324866 575295504 749096007 20031710 576713256 232167374 691449096 321354916 431549537 864017550 196556740 501255118 820568764 935321538 399763006 491740033 860725879 87581494 117086577 243485813 408876156 10523445 471329096 362337653 176393964 560898349 134961312 717166376 612808941 407774762 575882857 488521163 71197463 813178876 524679374 711874256 960612685 430366698 886786197 917227047 390256651 649528738 653599965 84722054 859596319 953126582 686447158 249233739 183633852 776764895 904637343 991232343 756886192 15593604 429239356 218543143 705884054 683558932 9068591 235771522 490174048 1806318 577433802 789231467 554240832 755123943 629406819 153986271 453548297 300452053 809415200 920656975 290483018 79629159 759601290 880152662 896279509 391528299 5685451 231569615 344218075 476975886 894093409 917827001 102741864 354294631 531304350 795875853 8049124 462853542 80651011 301279078 532917654 760450993 256094949 451239157 605084760 307807262 22032971 30638738 534336541 385906499 355239724 375638262 891634917 250758337 884479373 745855127 912038166 243585661 167894228 915763170 626653427 586446914 185386903 48087478 607684262 199474195 122696307 483242396 8039411 153703709 157261168 665455962 529198032 873541521 542337388 61782701 930737832 405800809 234770644 193399357 410541159 308626756 267825886 35792182 748093551 847038860 334237952 696889937 666411920 354932686 407156143 106531279 387186859 714657595 962142935 100237451 973894243 178208835 833658136 438057129 567408551 686153037 434000796 203085080 363346099 944918449 243466994 785714092 395119512 334720247 964127720 728299975 559383844 647819104 558294830 16172492 138755848 581174197 322244839 88671758 128880984 972665995 604001613 462264565 165053008 253675705 678714621 948179479 239701249 469771617 296052766 603294240 903847444 672357677 902539340 125400806 482167363 985262001 270556050 206080906 823093572 68711411 892495007 17816676 867391290 617229361 709094615 859877861 21309480 604545781 63685981 460850125 407209970 981277516 36892187 971397660 962336044 424545425 41591091 81154021 559161457 343770426 542955468 385201234 215924285 393697608 506367863 748590493 201624006 800128247 624646102 981312789 10450665 483032269 896335963 255632647 824020315 687210430 740643601 255681334 735624249 747971036 819553707 894781835 819471544 963963613 551326265 176204234 220790186 445315659 391218234 41173958 15881147 264116373 414127579 292871064 326786668 416875556 715432588 351850615 289836637 349750159 457929551 393351144 399438980 408983672 73725235 144651842 760812868 572335485 69687131 208224668 237066654 244318901 996398633 269720390 393505288 867293024 640237804 894845678 88865750 170000735 769623945 24491363 280943067 350605541 163672050 223479251 815754225 546250238 844898303 566420469 785767277 187783800 610320503 884082615 988122681 979110709 902747728 146768899 214987444 688284833 293947166 565225307 955740185 625866317 979658320 825973235 826804264 188848640 402522405 777055829 146192350 810711000 35411813 493773970 898253658 725229160 864302240 378263709 689866327 443606244 289118901 52120888 248895660 857549936 398758869 541686142 192492612 63568314 311135159 594532622 934135378 622553791 444338703 26327861 562194742 912521145 589440702 523098680 284760053 72158526 367357799 477167324 303894732 369686142 246560257 669631066 179148006 110573568 781612355 283328682 369008439 940180271 891914749 865808757 956765167 101122091 945606000 413120266 375962664 680273981 475350571 640804595 854837002 796081022 995233351 29345709 335266239 768168130 382509489 30543415 401710597 63496725 224932601 705464822 137665634 679556242 499728390 283606431 46422958 847933455 109587985 825467737 752889937 357680374 8458494 332704445 340163261 980717454 493362532 712285517 594926508 913848249 156934970 226574379 803810983 586928075 712219271 826245663 77904912 813944021 191110272 927971580 257597132 146288139 772926434 100470279 733271526 95239777 83580263 206686080 292803340 476115869 316164612 357677317 815537861 656066135 404240180 31170216 142903317 748026156 945693478 781698135 580330284 784607121 750019091 616107759 873045275 357607830 677822513 377035757 366706455 270585132 736904577 972047860 436466695 421328964 285419432 243961318 180225915 361416715 8554388 936159174 99532920 15571802 567007437 296528969 486613885 930705651 95766833 143929135 730409799 286175909 803727725 771786345 662637054 388439890 33842291 32021060 172430293 378610603 359770023 742386260 959018336 992359017 458543565 810408091 445621698 49327958 161814310 292406525 503006521 593598995 508627848 639660343 654894810 597488553 901183673 88183215 841648188 28035192 921080823 853898713 813796363 769692655 411833153 534004281 322717458 926353622 157448493 781865634 216758081 294614513 19879889 487134545 554986580 906539231 288149102 560965592 606604290 37762120 644047423 110331171 431692513 558899431 953532648 557048611 699337576 564255059 750277923 237095729 825054026 679703166 272772638 670272355 734141868 530353899 613975095 3992709 934027154 256768045 651675216 593368140 196751702 669197715 11348315 472718954 360345250 149539765 215227417 613731498 894161356 593105378 976809845 62558135 186924152 645385298 246728382 304376913 437489567 500197924 908969602 987651085 302314449 535565136 704795098 970301418 527970979 108543034 775735650 606720532 393576184 588883444 244954774 450999764 491418289 570837611 378281578 705433015 987648289 102528237 450125967 537506958 477664470 302505389 454123712 468828489 221766149 53715450 397855973 148195519 795699750 982867982 249187194 748561238 296005656 750175590 464683641 3631091 624597453 781004742 488735439 907629387 482624611 761667412 443908083 965358008 592757319 282140369 570356418 998097660 679865979 303179737 141276042 225833346 282837900 645100720 524926658 758827562 461613181 375225156 31810486 121269715 148403347 582547088 105245781 97528353 886697334 135581097 113719496 921077808 372121633 351891863 687069068 625462039 562268437 409744198 774224575 577819840 77373300 297521242 609308812 395638485 280836916 300055125 570590169 840096483 2901488 728486057 266039488 569424145 859400404 438388213 64221097 337699459 742865158 123999026 122458597 808411795 732530005 942801604 316866661 283742977 866714537 280914671 140184765 679780250 254601639 963132736 507444740 991018232 649228421 428669485 286837888 755299643 607059658 462901646 473449300 920314432 485563822 969118888 473434744 587372364 157604908 284148459 78317849 265297233 692751525 74334306 522310206 118846716 810764701 320473470 361039363 483317465 239248241 848188493 498551365 769282255 506618607 318402933 823317579 331758946 835770275 276436306 424328969 127398585 358462490 242612849 576785752 664499582 105902502 612671544 297915925 791291067 139147366 150542741 314357621 310362150 290582048 237624788 65121836 552172076 306852723 763803533 971525630 284076763 315127451 354200825 776787071 837135849 571112756 572831807 595645949 206769720 587646861 826793472 937194948 699124790 926268733 58621062 207319123 470584934 485999608 352601089 466407318 694663645 603971963 226420151 698675759 848674509 861559883 963884666 740650833 131396869 259025642 819947061 326992210 64839246 999188682 438995000 183105325 127984430 761899867 205637039 90530130 566831079 506729099 770130467 269798410 476911889 518614478 827607420 817633103 908322985 741321927 840573918 576659471 294847638 65740638 826755115 689648014 468088302 48380432 647706626 657834391 861883370 417797340 620757151 820005080 100231411 598021264 880405063 964679525 364169284 723451474 927317802 704595209 131157892 200318533 928741885 408404514 107196070 732147592 273558864 81760354 911657283 937746626 83784003 298724458 877616821 180615688 340731056 662790281 297911958 79515483 232871190 307948362 681870477 869037771 955274416 460274304 297016689 338087223 524826819 560991038 360807614 434165435 676185268 404395330 834087027 722561413 872402327 798984312 926682081 844585181 238115595 381702359 71884167 286261951 263156262 619225954 642473046 720714642 852315168 99921902 920052325 906598086 223815562 750265776 492395734 915222620 871920727 31733186 4562420 425029123 224045794 386843106 172358086 25023093 612446003 264221135 948239375 238895902 292407255 468302640 65941644 133706916 918537153 626615469 956516442 565786827 159446367 117436513 516728082 244983518 487975170 660852673 12222507 169249643 145679263 734465500 271245471 460062445 671415976 323816520 623086523 163693158 199454489 710759036 136434113 614742410 194222600 197143583 32169867 200186652 96053459 45394744 411245242 143466852 236418894 536807463 92590424 160242904 700669152 996635652 899263523 417251376 524185956 717929020 819847357 728584467 64320304 261863719 476202318 35941902 266052791 458564056 649011712 973410310 826210832 834861050 733586225 505062475 336012472 572563585 30830926 314840694 71070796 675601865 281773393 202675378 411525912 23216410 30535178 619005826 17653476 158789372 999088618 456970268 189466551 630008230 683693299 681609418 246792401 469545742 317664646 180284257 680170132 179238996 444814003 675655094 555657463 854171438 54923398 730079331 253294358 59354744 775231261 879903789 946413065 511863506 815207700 294218577 525023330 247083309 350462820 265256215 729738522 74765579 777339700 526722169 764441589 681110229 919587065 44867373 488408027 67644303 578856259 583830850 320915307 978612378 503418282 786618490 808668671 919255856 700429774 87083540 58855460 148916472 875569389 365487607 804258232 956269861 260325511 245098584 256229746 614795773 927751225 54547689 18125481 95051609 716805237 201565236 815610302 635772652 136721347 130238649 319716209 675714484 830406709 760514725 510160014 394926370 26109523 974998318 207647050 178776956 392403804 726653718 836531144 286761673 910833088 831561833 499375392 570145579 593637549 406706229 80560989 15751274 363252656 929944259 790146136 580181471 195042045 734173728 852777895 169154084 353727386 607714392 974993807 53849940 90453299 813876280 969020003 777540040 300884519 141889713 715766492 641128118 272265549 123415814 871149670 301397385 964076763 77043999 544119401 962471416 687738833 500008901 492680428 883428729 474827984 202535645 541919508 534231538 145797502 674444293 328201884 466221892 387958664 356164952 427099206 953266053 928246122 469178639 314516946 32914095 463686729 766859424 710941308 485439948 120263114 669917034 106532646 340349183 643146426 194104635 3931119 427011074 262385305 328919889 516436932 345241760 963310218 709669351 62275964 455148425 389505374 36348936 301607941 733289588 190860127 781803411 521335821 23553253 368496744 747362950 826613054 545610416 220324568 79280707 527889599 551265843 934550311 1399930 511167458 283429277 356327226 60609534 818441936 157426898 587778572 309993894 856932298 263112192 330979667 52790977 324792753 125495050 325938847 31953852 882680802 665138641 233010811 871150715 460095534 434831855 93625509 232985151 891708719 276021962 215978149 597740746 951418082 210041048 732666793 686662816 750136238 323665143 288260451 415079452 499239923 212433771 900041038 545856660 232092429 282026502 809860338 195384998 106739497 38093829 568851900 407278564 332781800 92374715 955466040 642421786 347158759 305234686 430663579 850487614 553708442 724784156 293693487 191358747 830750061 142817966 462798170 195874898 835419974 591503273 773314759 591686799 146054784 986386183 498433339 608491744 252502435 114782487 490555838 265727189 193065966 586265001 901480366 829225531 866388161 169414594 761200560 639671088 979509786 234093690 681407244 648010902 535582445 643734722 124229210 747078251 249011687 251334559 936938600 303349183 397273135 694691391 288149458 902680533 715750123 51417848 502707259 300006843 715953913 502524308 684837449 656829918 122772863 153284684 173350574 567813026 916652882 58873517 664114113 817008733 352561719 527337623 897505905 705606181 852229159 480352603 750327455 539858562 902361460 83615645 226998201 361532110 252316784 583142513 896115654 558880895 827529011 148713529 368063273 728825727 567040341 928755469 919746142 522559759 149452347 939536954 490162481 735735118 710836216 358406012 217400567 973775888 820645210 246272487 349384219 342067209 694122462 228637434 964491646 505171954 231307190 349004221 732670419 435037793 618712854 615772095 861974001 599080724 658423823 324044111 955208733 251425568 436412002 780995261 181958044 397534004 650222246 876648265 386869586 762356586 499355920 311432949 69404524 219460385 255852637 944169707 694341020 697702791 69697295 168763281 961448484 666875955 321865578 728170355 418866607 292710693 262648167 123547740 317120611 2256834 859739434 79487119 142043775 309690569 579613730 282097841 112265841 538303548 420903508 238224794 886579893 320332820 447708743 352308386 294438603 895241142 751674758 978678251 251393158 540368963 453779360 209075520 952238550 783703589 263378975 50039188 879848256 577208629 312212210 261743927 838207578 946487116 279187543 613639896 851344101 138619198 193765191 631883538 470570876 354643150 597772818 943367340 967608301 986281598 738731356 655166183 469715052 472255734 347623534 410760555 462505886 132730401 511337351 779261389 985822552 928891903 397291156 825234896 660667879 447701183 928429180 287402787 219944495 481871848 985324037 390454916 671513320 729841734 203974954 835648034 331205857 624887372 148386773 648040570 650548880 881516278 583526433 84948163 516452015 28531413 949065175 493427438 338730287 494292244 584631405 660767834 660494236 776529276 659285660 122960732 923422325 767328257 609240814 41398394 341005455 675784279 556775049 695298607 60720367 836443723 746355946 439321907 607306181 714336024 756883504 842222987 410596047 229600464 274883780 994613838 85860631 797572751 895870913 617004602 503299125 216154519 130919090 333692930 330394153 954711341 67658255 73723748 179049233 486052458 774972496 288839449 345425846 45065840 285638598 77704832 902837527 75691532 684983769 781636623 518436003 120197282 804531240 287632788 363169949 164640399 994085388 171830443 77891129 358998085 692617964 613543694 537173337 329078511 270418658 799603339 669071978 500506228 824484529 634641566 333214884 792222613 697294194 746706937 337181423 239710437 836568550 41883594 678279873 921427164 143374687 547189148 292108822 426608360 492696743 447460326 583271216 687171868 108228900 629093047 317057772 819090926 907518769 994132092 203368201 548774482 705256714 570360114 84951442 492403562 550839434 336441870 294302911 154269465 295123810 726891132 588220015 612897125 337958143 495134280 870532148 925464308 388733480 657788897 511326547 720221917 941220470 465787633 540271235 70439316 196681087 17050633 738395018 316926314 896282617 80812680 434450835 482541323 878814173 368062141 115488202 684530192 557823490 657963128 468256213 246911677 898267515 323620318 178359449 901931191 696340554 699176225 294977130 606629487 983392674 238581980 517300733 252472706 845616172 750815127 437463823 438381461 309124994 586945239 472768362 485432288 727713972 444778177 210888276 198877673 63431684 997391065 896231379 825257441 412665781 911370965 623889134 865059999 357304237 653420656 164079506 668135635 342259437 484328755 378297940 650586846 867396994 644375065 80602611 877460718 783676920 382728871 726104202 65062255 866565374 925590972 302004334 754618817 326281895 130805342 266161297 710330670 643630868 793869817 605437634 470806455 163109560 414957373 577091813 879990569 967948101 401544291 373618531 721510774 543926477 245111428 684830757 421216015 305469803 394765709 778035718 58438190 460416470 990516237 945788237 744621416 836556766 553673974 655784386 936168782 142651837 598599508 443114127 897584505 772098527 944683644 87309034 477666804 861334184 453309790 344530777 9765488 955843369 297873516 232276541 973307087 891894097 897815032 805621909 361210038 895794284 979624620 97504806 705612624 745456846 702517 579876396 86179468 281093697 990014775 847644081 946985723 199711143 663267547 112119865 267051925 984293367 326515683 467170369 699243043 769345186 748484892 766195494 203361324 713755184 414970462 752756687 778482434 971013134 996732659 890875981 527154447 208879038 735833969 940162694 813005073 187144578 324772723 1517984 511528005 954727642 501492285 14740122 73662774 108241019 74014557 107318279 983894641 120500740 860693804 612787448 763942488 240867752 586557566 439655571 503570484 267562420 530709670 592912232 8002411 248745038 321645617 269844057 528674335 447640749 331315196 395791084 611818833 646184139 107916435 740867088 102381587 42780983 144187756 559225514 78565088 383082252 566035737 312707862 557151895 953440081 159494725 44511573 958118076 658827866 875576332 864499372 446961093 134571319 87117317 117727105 941683072 154369298 631064790 522238173 687238101 504871068 176108538 91505354 52485874 430478591 27534198 740440434 536831935 850690000 601346439 833352383 747342074 741576244 461607402 866812618 453858575 214546208 74053406 145379347 742789677 855972024 515502984 186667246 2755448 51672930 13270249 873029676 820601735 545193823 307637271 657632600 731719272 816717387 854152971 304476341 513495173 909718563 112414076 814540602 489869029 908877229 805613510 49586372 376232818 459308433 158451389 938447856 885488177 490411129 36431397 654417175 184475593 275733535 112964397 435410746 242303451 36258431 172338788 218743072 983394635 153941241 780486632 932120302 583975985 257617777 439510805 416735491 254974859 393344402 376113542 227659178 228776871 89956719 641405967 378011679 115361715 627225011 579839071 621464339 105719246 551693147 453840924 120577990 490722699 868271672 959339966 591570898 863457943 697786594 686829015 35912045 726881711 675679444 334894589 940941261 320791995 408624280 849383295 397394766 904704259 158898530 151224648 344014290 344239232 22502031 351762016 470336747 693971056 339673122 127780889 722448390 469665970 774040502 542588634 539289055 322496099 877091951 540267416 997868678 380767420 813053483 848201289 979737681 650721106 10993253 188352302 430522041 452188543 238720332 993400680 453066762 627396364 381816224 373091909 402283813 151828961 212803529 688490839 622328932 801947279 623848239 887727001 611127873 956338130 193040753 347317547 306632291 965573705 266131952 44614699 507566374 583385755 10420709 561928303 315795237 858747608 616614262 511206229 325904874 201897582 181646471 742778511 749518525 857242573 504861058 505471317 7330244 722570644 510526657 613924549 299867118 552376386 94013053 321627587 36736125 712412374 431639893 366934380 793564500 189634742 531139125 321052966 14120159 165062286 572544440 923502779 296648153 543738997 714657604 816468225 378192894 239192908 177026930 189723962 840989328 403378115 757025428 146771713 787682070 808291153 585482956 378495329 326263110 938351171 250457368 754094821 344000739 501274578 992616894 430189012 769767607 299494641 658773017 28149613 537093673 162974857 254611771 197763863 291042207 813210049 547360559 796459059 192472499 748012185 423871215 405847599 970685126 93149303 432392842 30561543 802348771 471321315 559916575 749419459 384839079 75595209 452839822 995878775 117135367 222377785 916422923 157135332 737528328 53349277 61200925 647985158 419410706 31069226 737394199 367833675 142018769 747033252 998308597 766193701 116205719 376160718 444801252 652419701 470625463 914598249 919732020 528151765 106081856 579684219 970016372 541137647 875648011 226138242 788234663 412584385 857776139 96361856 479350420 623711449 273748875 623517363 298752225 666025213 716987018 988999214 406668805 30594189 624975570 473544125 981534587 787948969 16926864 284972035 83662926 150972726 111809382 727816276 936118852 349307515 554941715 2761491 972453544 143332223 362384818 106800155 183526098 543452510 193786505 988173010 341610025 806722589 469987003 333683801 105135629 858623600 930504442 956699434 35661659 907567190 914199059 448405845 799409129 858187737 362331262 163076543 13589556 457357195 28092524 979534910 449719051 93210177 990537004 295185579 893010415 41559052 718840881 650573354 991501771 191663400 876429699 611697576 631608645 819752001 270632228 832059878 541179554 451584477 912247448 642380572 512756327 512805053 112633438 369712632 416445995 12171248 976554420 70567897 711563838 470885804 676881848 798999237 220285329 809069276 431904833 80105202 856203362 466859349 653232800 102726698 805457085 725745536 104579837 120938269 72412180 871822743 777503970 158647634 137370162 164052174 193492882 979928169 361716497 972249589 347249681 28698833 795811276 759914322 534788327 992882105 915657336 174400676 458265962 699289674 326605646 885459812 924429740 385274635 664030030 144237229 884705137 83092713 96802619 441581328 492993647 52544316 468509174 721044132 576765028 792014024 695078432 336118677 98536219 78488413 197386931 42607100 715236639 700075311 923596003 961133358 81208657 540448068 448997050 810135102 435919691 738939774 723073680 362167950 548205786 272971980 251924955 975952748 511285864 436763991 964586520 274578787 687187128 15318814 68323393 326168046 454434367 418723127 200394200 862972482 874580280 340153606 871817123 683408669 399668485 614838878 322109325 466118645 831070333 595354083 458695311 954740921 64043992 755832311 762950074 879872708 756007394 283843666 77179995 480573491 768454309 260106776 199300360 302631826 676145774 599232521 721172574 452848911 588424217 278999059 240154715 866048193 282276646 784630277 593385669 714912703 290480882 261081201 427054264 385155296 106561532 30859738 408141210 442617494 842631549 887162964 282064373 583678130 609527138 433371725 581977884 981008820 440148384 918046213 563447898 15519095 974267528 745027371 170747748 200843318 487243945 965453709 720435143 883457054 267250432 162254637 750486049 644838774 425773082 867872554 566372841 997341141 664088167 993453070 838063438 94605321 894057093 80267277 242526869 707408697 707663876 676970444 833435765 167461226 332532335 238485234 327961266 138710096 154545740 792174918 277394541 473403343 498439144 945741945 428674860 896220365 316033410 298593142 608425995 707200485 324416744 966478398 87156866 268741787 48259545 73736813 362324294 493136913 325526251 742744732 759141628 687832023 804323998 65857604 420277326 319360390 887121031 340399327 851995157 733184252 969745529 510900428 219239083 187389733 624709981 185820972 392010457 430337838 67872457 571792572 610767377 104165556 489703991 350310799 196881087 864355211 403277229 217024435 756710454 227485932 786321922 596241583 210517752 529178609 281145667 861856638 172373242 955428453 710360872 372688963 779653566 43003487 434517653 327030914 473346550 272445264 145193250 386863288 691243335 33849053 359366722 276454915 726634475 638087064 126496277 330466673 401703378 826948035 166787034 433037031 764324477 642272415 621595843 694643351 364506401 479016872 650794410 986263447 756330341 391821981 171144028 965652317 279494389 383488854 818441778 21421689 709279305 82147644 196047419 434894000 79202155 567201331 865313301 431879362 466626944 151389826 714420750 319937743 990102746 439796830 423305899 162304990 54482398 21876964 70072419 228528496 400779480 164198281 917489705 694945176 490854290 328729923 173161222 242772147 417827174 344675604 873185169 558128165 530352487 955654488 308513218 872054434 217482880 874202940 302279667 200786084 824699665 284872959 454764239 141962395 985536604 782522013 730430728 252827500 985656580 73232136 660702826 743991531 328192866 696169306 768010307 376904930 226794132 564615637 451912418 711112503 472672694 518309538 609766576 398758443 58599214 684272967 476722196 359776260 882273011 895190861 614315903 811537080 714812528 177319835 913123769 431639811 372322439 26939696 320809059 258394695 16986800 492513626 557585635 224507622 892581734 348436045 18027938 366433387 374234436 154663230 321650240 715023598 98531215 704622634 666794635 269380297 314998137 350387662 303517200 618705015 578407054 440965852 79962707 795126943 769020234 157230586 139150881 111445901 553592077 130328782 67254622 525486340 901581241 177376512 746044466 128335828 755843232 152445133 412689217 48185073 687366404 719133491 257194620 127287033 176794225 838885609 35549910 314446838 774956514 341380356 444028047 897998072 695462177 677011772 351538344 570760753 506871915 778704102 632623021 128614598 389694092 253877419 207071817 139486947 534726608 376345538 522043921 354652475 690227260 174915040 711227768 454473240 396140417 588704630 64486832 51396008 43470249 834295387 282833327 918469743 959600989 502771550 766975856 338113465 234142667 185489240 752597890 110129720 490488690 791814330 189960167 402679906 167152364 570346213 195734050 256283032 846936865 764588273 82600589 259130521 556420086 321759895 459889651 397820499 987742610 185323372 774462991 937498129 50249516 153837260 708869289 189286612 573245817 522996145 473302840 953156348 369327356 581563925 103635626 376030179 243265132 700427477 356320585 846200442 376816604 691896876 627525174 106447889 108703832 202407965 864149115 205631418 612268609 355703998 545660627 413211821 781997369 563641441 477934012 458249090 469524634 977951345 435980879 713046249 21519634 766677906 680630421 22005763 763068830 57477945 892434326 926125886 880525700 355692655 943711833 62491067 847383836 215512621 294373749 990059915 709620560 342625487 89849966 489922212 585046459 690389806 910956346 779548556 523872242 299375258 301357277 680277023 539541369 154959840 235313692 132440943 585601345 586699810 893546341 375565642 777362875 902149077 906196281 139600454 933152614 908530937 722975073 455251790 206712185 232687999 699825857 973250319 248091103 617250861 221745745 604168536 992661979 111119486 13569743 21716340 322114449 804519205 724557635 129523104 367658082 651847849 626413735 878237482 4126569 599152308 518774884 13860595 849443846 760952652 233123830 957616920 58719139 122419315 579517623 390001480 757108278 355640059 869645085 946311690 977668124 756017892 609083701 257446405 354625887 373288079 701673016 705300461 764044846 793999220 962363697 52566569 211796723 152884118 196073797 771865223 855711670 510261877 88656584 550868656 426995995 560756281 550503868 311107142 178689155 93017418 800448632 350248549 90067680 870611092 551079084 54059873 723821806 604638724 841850795 872159793 16635547 454886602 692320389 88894298 612096666 784906904 255809994 492379405 264589272 503432011 881314472 517449453 507862553 496354895 580337970 408284332 998189873 659671640 917171309 215591907 274030776 372891575 211669022 370870714 294466203 799180625 808086387 965128903 824977049 368743971 663453616 608931915 761936149 74699960 477201779 959472994 42340388 348854368 425150673 236703958 38513104 388306222 947702896 500372616 400814516 983199126 843619924 286744526 978429775 61314927 842134708 956109271 596817534 880182334 229651087 752098329 84197733 394490592 860732019 819679351 136810228 654668800 91448542 886443081 236571550 707675492 274362042 193607498 911035653 89590158 375126922 929887581 49607067 221042070 450463605 772668283 735933445 263581119 545507571 480394844 831774241 967653203 90617015 518139884 243057696 526128326 501249506 994527351 582816899 664380537 458328650 527885267 991599964 315845908 844620660 814049297 533523458 237167168 586933736 673543961 176174965 235777558 300218211 959354648 996730688 980341422 968173646 539966261 469075086 726873415 391178170 548568873 408207884 897977379 428898596 896848379 816453849 16237874 631264925 931389422 856333395 485749081 342659023 506912486 549016402 564590820 499515585 657367511 789215813 937817379 274968654 658106529 838734900 637093192 163751250 714924334 354146176 57744836 579826272 209634941 194382462 138981777 681498160 577742300 880803579 285524656 431578391 798907356 841125667 889723421 27298603 212151113 343439422 991310537 783779677 252498980 345255269 738286900 294372617 93677261 779425982 990674645 384704258 967828646 846920336 86555930 993203073 538994950 305784404 696219746 862467306 156872819 114908192 548707118 479656495 785128761 548137319 668070917 367805317 120309968 541992380 206063631 501849360 402870951 306856869 226672627 389618192 456143468 26840028 115553429 660458563 328554440 659681035 681651381 594077704 294080485 268567461 886770102 985046364 315192492 538329360 115685404 586551093 659479510 580663178 326416532 233282161 907050573 514580803 986161832 428616967 871026835 430372244 48759636 598155852 763314302 625783035 918012259 936248674 356149605 362961873 224995876 978358370 516888177 796351553 833441680 973831172 63176560 985761927 952421840 882809043 894380792 457831958 442483785 232780398 504120239 403834197 310523488 327147822 207812329 74549527 270546884 850184190 944031751 667956455 346612107 151651007 643255275 423293226 229755940 170574673 984275693 946810255 542530493 479411352 69190402 223520962 97483691 843036232 13974692 570834421 166882835 152303429 174286587 691953355 237502901 835945858 148839256 653308785 648133895 237553925 331878249 945362192 725975018 451042556 87110078 535158551 162422806 625722139 826808502 82707766 720905582 240453999 318854536 49747511 519445837 80306890 323927485 31286704 284496616 263385914 384840809 313943671 378305001 325898468 57593597 378848580 652718265 918801640 603224886 535270636 17424632 967078513 389735115 809550496 99246107 401036430 221957201 68500116 799859989 175570649 310357440 74685497 542192702 525036674 633455534 355613496 739315912 978154647 34030018 682575157 947154384 764262011 177019948 596081647 416889481 58868946 564040617 649280472 23007173 928822659 920176873 300168702 349165123 819919902 965489753 625683578 270300165 693519069 437593881 783119673 755498607 642743337 421026160 907087912 715862537 504556566 280170381 680523352 725640614 796763782 341576376 906011097 55361174 570603362 493454554 290501688 184264357 504191001 626629470 381974751 185548432 424315462 276619002 296040793 365331951 281190195 906529462 572198194 943236817 118289737 953654896 778029860 431972207 969392352 995547776 449508953 267704953 638006586 124524059 110568773 562241841 797762610 728707784 5322468 270827418 870666613 702291683 644900627 183429289 153297766 619453236 922069829 420231581 462223016 754695988 758308177 358794399 718697402 624091768 99578081 656615381 338513214 325811554 482620934 667467924 313326906 620677309 315843700 937015323 532646098 960635331 32282131 821771571 645102994 701454630 544479098 806581232 989515331 265342692 683556273 172502763 278301243 392605724 57461017 958573017 194637553 49434194 605314215 926505037 306505201 134483361 808423025 186934463 684863328 45717199 565016234 622415300 933489286 330389288 185625021 435328481 491075680 26833213 128048488 552031260 304417082 651673104 587699806 88146834 951748499 731965972 812638604 128717316 786296918 284869823 219016407 268564068 308311043 137849323 245047095 402125017 369524833 669449755 733809117 335390921 815753960 306075397 895696474 958045624 788579166 783238817 95085204 305690718 848026328 862796798 462362253 315696622 522508335 844805694 805647775 111539186 842797870 925710335 116702453 241713826 795417637 664894626 830637593 592804748 767323760 20171348 342166383 317091241 250468648 4878197 70823335 285316193 35051885 234310467 203462443 123461092 294923274 348012183 21017137 911068032 705966365 525664960 839480937 338764070 279304857 121480422 123746481 552849936 992815231 19884999 169304597 240554674 197884087 10511175 977661356 562056358 88289575 677533930 179493992 31677677 731606949 17060885 835308556 412589885 472823374 112427870 553984798 937640918 299640394 178211705 454114472 668003238 388547267 845784051 657224272 164644786 918554306 325104260 959076776 118720337 315582101 278344316 859260225 758874704 736679915 881439672 663055929 233584675 286636707 873731513 443863592 641080214 71681120 283455898 185346649 556623760 155763138 556364032 464538569 391199300 765027245 609659518 336815258 233786393 955720946 459760454 861212326 356166826 554309732 573990687 482560113 560138689 433157346 831821955 981967614 243405910 268975036 461591671 352072856 535616091 902468286 907022546 732402180 765671993 664251496 341765056 984563259 959804663 831508657 817473943 449503549 946644314 784979212 429582251 939837168 163046581 141139629 32527439 90287265 240124406 801787340 674838325 439661557 39770321 594121521 200614886 948267508 988766300 954440742 264431952 590710273 438227579 493180814 598033465 823401346 960086100 891500343 47936324 738880247 813578486 771198759 309315287 509022676 678031621 719466610 310624751 42442412 423150241 158342119 741077069 313381642 230420287 620779150 823566956 505248305 901915823 832113236 520720180 138645369 250566506 845488325 441283193 274210226 174164434 256338160 649737256 308381435 376995156 973847775 501986802 931206812 557243392 563878053 300787165 786612013 314078734 530666779 181375145 939352398 404624322 907344172 480205106 326111111 300085792 90052177 206055474 942964394 528892874 957353878 492567146 599503245 381852337 248169875 413429092 543309235 659875114 706705490 744046985 395821666 614443307 903066440 579913470 506773243 251862425 795256328 260243477 529765004 308558165 608851342 59300350 793710645 670645527 607078072 780872413 307354592 790749794 8131820 434667973 517760233 650128198 412397695 531224786 33845590 918000330 470628017 614575666 193067707 382889150 702265498 206504248 503069589 647315059 795165430 73810545 592655721 401020442 5228782 583964437 312403096 706684237 485230849 225121724 933913762 281065078 890381146 802680277 794889767 533409976 123115227 772721767 26029152 650616108 688656431 314567156 845468273 578597515 669218198 288002202 792163987 411629617 658765775 501511013 866864209 203448647 512812011 814131497 976425372 463788690 836358041 437281978 180546639 279288406 117011585 234174349 289239054 893664070 381717347 795107931 524827582 947136608 172792307 474953681 746552114 597460225 901844865 961558623 566001368 318682492 463708051 869342190 121752415 512276095 520715850 46121749 872991896 723451794 395118753 530193004 83035746 766495339 802188826 469821718 760140913 295003057 94577438 816075896 164767169 774769947 979676500 651647021 152098845 869352635 349291576 342025137 155906327 313444356 68828383 345000209 674074507 962690988 548604094 410823634 890763015 354797257 265123482 317177805 240457436 910597132 343292756 924486897 493004821 315508608 236768255 956839501 9751248 369767010 357637058 372671217 243793483 25813562 664168947 135875946 197848827 818247950 561279150 641852653 691891212 658937567 527016267 523575059 673400830 936411920 478970614 10181218 387002861 504292990 716473633 586287138 450044954 280199114 978271188 644299634 714282365 98229965 711772534 741827145 443387850 831716434 691254174 805209378 993186259 552988081 766692483 979648218 849149145 943339882 149516809 360998097 649451056 264235955 524601690 453706107 964677848 473786612 19580103 517845158 592073928 288530285 711848541 158711401 697606701 864063498 298317790 742813368 286106725 18121759 191668785 885134843 612914988 185276633 922819663 921905540 128284102 218959927 249599986 672324992 586665073 346161139 575107856 19220763 637780815 820488887 450457381 614988504 151145698 326355762 557737973 617613765 764518188 344802121 766906819 919578721 977710321 410542821 112644943 966981124 363357742 560219014 962266804 239327531 705815134 697022433 59013760 287128432 102380347 651796072 785061578 773949738 507421486 276034442 948015920 485378516 414072399 498449982 530537963 834578636 918940 931440255 134653650 475153530 334520862 648448486 240554775 135635908 556854548 569078786 529667787 316956716 752839656 390834987 830253754 331701198 235637535 413621096 107471812 62179983 556218302 925880294 374407865 742301213 638908913 425878111 803317439 323619897 914902513 999695678 904476087 442717225 22273503 457792984 170747484 702787325 805279774 378952046 634133563 605203998 45020985 171034645 907661906 40915277 696874922 825233551 16571648 53894977 126787695 512709008 642308388 398072757 191757520 726364154 357094535 314280813 421303916 15243458 437505272 364619897 679745178 622197696 811893083 498863815 43864696 438257252 4629884 735026982 927111449 478839873 105227496 989109717 219654784 966856975 47643650 461721145 875429899 65401755 603488624 98586204 660061220 423546979 849424983 178137810 334005413 806525060 229527251 595834050 546696650 56806299 151301433 989138270 507660457 344680187 242315000 130672394 504532357 891885811 521074872 920148056 183376785 30581606 322226298 461079716 95469085 518197764 801435040 847595468 854485579 807390211 182428824 900461627 606075972 386983509 713292505 154703578 82112708 857492342 625497309 410362057 339656669 736351787 56180907 736464589 384020916 319287548 472817903 54037153 588796627 805455961 495373925 366479523 72874597 393260533 44430483 336055692 959164522 376838954 647126549 438789366 259784109 140784563 515459807 235377761 382906484 107941075 759458697 798608049 414987824 829039127 675486348 164373869 483050684 109554540 829676689 594252178 208326643 731043750 506294394 340625985 698878839 175388111 64545444 808421661 857249806 791746107 824389032 435063202 506412753 771376467 206646888 510314094 48189490 133998830 401359275 66738489 813552183 713614325 780831467 403306021 988521231 353833746 527590228 550800802 323202550 494425312 95117814 917408063 930643305 886292619 202276794 478726895 219180834 292795206 506495877 889232398 524396704 446368774 842435180 70736790 418407757 959319147 669470367 24065201 660196900 122589400 260537746 161627792 345843189 340142096 447739226 870992487 28216289 151214828 405206873 27717496 975562710 680466898 326213685 879491649 62769295 504635463 635466999 385489438 479921784 234550944 689562599 980447195 790010543 732556944 767886271 546453276 330134604 359688707 584495365 241376180 542757260 102041972 279379080 72159065 142012630 366957427 294531899 860728076 893938487 62236433 519315888 428926179 448196632 329595147 476929446 249466717 513020868 779318467 62130671 7065959 452527452 877844894 456431886 355407237 489090931 498724813 841572926 677248185 977841635 329146183 502235959 452916226 907415658 981364976 261540582 304190019 115192682 404275771 636418465 254830355 456538963 866312007 271335626 192117437 614701698 976885339 650529837 606380234 770312907 732786059 239789746 756638024 638585184 711634398 220472534 212945430 26907521 493501825 750511468 4233471 147662409 259839699 904848036 170935345 863893453 815403502 328619209 666130580 531048712 799754174 787767099 325273178 84954791 878374196 106586821 185712713 634504522 572807931 405971179 426670940 43065260 92344902 30479476 603671396 481190637 215485327 829098988 26494482 947880070 949876611 804577154 16267206 643508068 501378475 73480908 267995528 936444668 86690781 303993376 788808680 745959323 448738208 2732677 823908681 535316412 571640204 379506200 347208773 399831159 73020486 479324910 374244898 386568911 89713644 796587119 801612673 50508658 297366496 447713912 934315727 10688578 436088112 143271348 737576125 399825341 490535060 978807538 667094565 313708052 636207231 505732290 27913424 664392529 958111262 524339859 928366909 342183652 41543165 427089349 146696378 82255170 129168964 941481660 241460453 397250567 217393599 477085959 462265972 799915680 262295880 257368106 421579401 965250533 890220249 642609454 351000375 609233744 499708633 750553289 701471717 923632133 155544876 848663811 267181229 941442035 275411927 350953269 914186439 124125855 446978862 629829245 413273188 950458932 691947827 596493088 532909098 885471999 934182400 692923414 866102441 132367577 56540217 973472170 247338800 109744310 352132976 592420843 236723790 102528332 692504674 336350553 315521581 600155254 170856408 82127753 984331453 245895151 490460998 126623740 204412442 847077697 110112932 874929798 771245150 636476101 920805058 677473169 690537890 674040784 652503971 649482879 895312296 627960288 190069177 634579921 280936280 835733453 180691619 775217227 305673854 318783850 602433555 209455489 354500990 735066015 57884832 981830859 225352883 81353068 728026360 356494312 824281738 644508492 882368702 391591639 143269810 7184839 723506435 700913811 665440608 993854366 396763060 90444584 399701300 843452656 602205948 832576084 872809680 510269272 15865515 623542848 139244206 785040563 95470161 428482128 553014235 631641376 222512292 531845103 701571501 218813988 844869786 247167986 364105020 161680515 572126603 111712857 965607215 370414324 378231321 901902483 42569570 237258554 53971874 603907724 73994980 379088836 248368159 601582088 338145397 487997281 422681980 604122169 388409708 172610529 233578568 837924131 69490104 467997499 830169345 166285707 472591442 156756396 364067861 928440915 154982684 965295270 381755020 763494090 332409483 447172068 570846128 488635120 964027936 383523795 63683702 101647673 353405439 62933337 483200554 60663230 233617591 726397364 306743858 882809078 979904506 274709613 279710849 588473861 227655661 856240579 704570556 397596635 941446928 749991577 217576727 964967890 247406416 434197624 436746133 545857742 801710313 210095841 439877284 969104766 592606065 77445073 540635847 206516983 373376921 732721182 404284375 128384141 431033865 255383625 502352593 212013480 797142637 180280686 212572386 629377852 133566138 150055649 762232009 681526695 166243925 714585209 985700766 584259349 342516986 294602949 681621624 235835148 228407030 808189469 445676241 582081277 685647386 256636584 436860515 966256222 677651689 164962165 514633532 913699055 88650058 180664276 552436533 603628460 308624385 489631760 802476445 406755549 268224488 441220588 755085920 740747133 522441802 956469076 178540650 589500630 49089609 208541274 787617330 802947374 502583145 437564273 617947518 731074842 29031243 417425172 662948511 731121288 275560956 428090669 50469378 5199893 121523244 334513675 963700781 536655731 208456002 422960270 798931494 566076124 601617328 52697780 160509850 815074922 273100720 707392824 236678584 770843705 850056174 713568062 926563772 233282426 216466375 345636476 795994026 254166568 319237813 592565578 145240487 30100108 90899456 35782017 875720098 958563411 941186869 702464868 605485687 154235851 609185713 953608398 731804640 410834472 772833964 385011771 498033689 851924662 862996327 512277913 963354879 57847144 517703035 861745269 92176951 260227643 473047959 909243198 257343888 966716786 635332325 629667152 883328700 5884620 343156702 388021839 545336156 575432663 667610181 77268495 464708988 202195113 699996115 542714985 682133405 414090035 545032154 665434029 85979581 280376262 784953496 755586952 563217714 152132583 574129319 970296521 966527231 132124282 990891231 728818077 357380327 933064346 311431745 693976236 550266009 691045493 194558889 119256570 730817536 597731155 672371938 896320543 288892260 12426956 777992187 416779612 657586926 412365621 87835850 533384803 838419765 798405240 288322216 509571466 602633048 322134937 817081281 9199130 59580422 844497517 921053774 343585374 562878365 558473027 732478550 426619525 197647064 560142950 570040090 682240937 645529030 394279529 177060753 24732132 718191025 954425184 924146524 612207653 136118226 301610514 583726877 849899326 157117582 382217215 607905053 602325742 485859631 596567658 910033513 344627869 260540938 432186686 29692763 799698078 704833620 21099465 132757853 20467142 823438657 298032433 58582526 459360778 262582215 67037752 964038006 609987830 823134992 289872399 267914232 882591381 878275892 241876733 634794153 685715242 753461403 43835010 290672906 470748261 199282678 647135991 516732172 936717409 4426950 457836132 461646672 297367958 124532502 999795923 887581068 963929958 91253121 991902618 192530701 255133093 674096597 192122294 830307701 936012874 56957318 146783147 973613866 65673653 166228935 865012256 872481153 980602977 478305328 555030426 451241253 607515168 954317329 492758903 950430820 816914355 711041687 970316546 757899864 376110243 318845475 8928124 190043967 848437732 485617294 658919947 690756096 727167629 770881406 691675610 523132013 433707297 816086661 214216302 892310927 336320237 10879039 693787141 863827333 578056685 600471261 824822437 623977968 996212607 343840445 479260034 645801368 117238162 701156052 456919644 640446174 39157554 401225876 887274002 812600181 117755533 570928794 322305041 300563368 265400811 239105087 677114156 680622841 98700071 911909544 362885908 543112015 463223181 348301310 566322975 665413655 811405596 537510457 980557570 989894954 384599906 899237504 936965884 304059207 158407523 812891090 441113598 172407639 647659593 749476814 27887287 86791195 354221846 938794567 751188123 829768845 444290258 24855899 240892444 533085499 603931855 381267389 455940817 338403178 207297577 645419352 319902978 375515600 211515596 970971964 846877299 372710749 565848826 863147036 859596261 678475478 844037822 924420596 984204039 127502778 564833647 829042571 839754102 716086078 537467755 176722533 874804733 948543660 485940187 778710506 918541678 426024683 64535958 505184284 359922287 991540675 785208319 976335267 15619396 759919862 138564864 266173577 151350964 941118658 134910349 645999452 858879891 224690361 707815269 855453062 144087547 717515991 908779724 300705136 859330464 267464955 464142914 55420826 907768241 347516131 929871699 150710438 521007687 929772569 269437940 579001172 22629461 585322963 762113346 160603756 237180644 136673047 99415757 838710211 90217489 254406612 597545740 974062155 352626472 928798346 252369297 922867391 385205519 636013172 381405632 743715579 539522009 165745783 835432291 165464573 688506923 838072004 694788719 621431483 268922383 252321970 125442759 212278885 135604558 726253639 169418758 604649532 134717601 547109058 602638357 506131309 945685863 947946567 894097788 404710107 396905242 553139995 568808877 765877606 7796526 874563089 812572089 806137396 131600665 724927533 857404545 571055510 177417969 925914510 954974964 147751864 755270321 90892775 433464528 527965251 488047754 821968762 706099028 98081992 952532086 63099200 202717324 586624330 861142371 924299663 787286669 175077714 318303278 954010623 303613167 213214592 786758288 414950376 902397315 822400260 903338514 324980498 825588660 636983898 137020980 141886928 875802200 255925844 877307362 316777602 443264787 544336617 665777110 870195605 887564847 883727578 315617991 249887196 735241728 186794141 875878560 695098651 153997357 741650093 311848310 815866485 660755162 355302430 347579924 802421181 36221781 964666909 845388461 934763779 176354415 851622524 984660000 595885770 326629583 654216373 175281715 874643026 439550477 561124766 86261236 86741728 405753238 632256890 968102803 79778718 316324787 326767243 196484464 687683868 55591653 738254428 409530498 282653843 880523535 27026677 740886758 538319557 293035285 722157436 915268523 378807869 785716886 339997763 263621170 677005687 781170627 732898462 129078676 914493708 131763414 513218617 385465229 690639700 437431282 767734562 496080225 334858772 575819701 314667283 987235957 902035914 766337059 598325971 189199865 699824390 78320861 480011404 860796893 268930755 842090604 486955131 805261657 827470929 757175258 420000557 712635486 688093019 893336751 454195459 124776817 457378558 340009851 341368205 476001436 641664355 775231101 380088784 18208497 329795423 322257893 400433685 807987924 606476160 530806796 904890675 184569197 48926193 510073872 878547045 434266697 571376008 94771028 642053287 902997419 411779805 133648358 588791457 477931112 336766084 411941036 862184702 765636641 882837771 33421300 802068575 27357785 148898727 573175306 92478873 159817716 250318259 443319366 65208193 576155211 269621742 356756951 277884593 831218981 84548699 795129974 282899703 368904410 370004745 940372776 998883575 970299189 172451891 77906679 878311924 612168200 854900468 140338865 240342450 493905748 202089469 112902925 14273314 792193917 930852322 7748075 243723744 414231550 638389027 324020646 794532901 221874117 848403167 160478547 416568244 228904885 94097436 213879721 142373152 101730518 199644840 162237088 810239221 598139403 534411217 231303249 864526849 746026020 249566305 393438328 191595459 797113779 611207279 830295263 151838206 974728381 811125586 125646682 580141045 677018966 223366004 432755528 20222277 866321898 719870017 542797359 393525145 137597930 830422127 436560511 207435378 224863493 767043465 464107589 231526416 413395222 136604002 489230623 153344562 507776991 946196047 711256469 314129704 708201869 342932881 644391565 251722151 498421091 640901700 619987469 625963252 76218359 607225213 948964865 814243827 614847015 900787742 102516359 260650018 171442273 122845486 745316920 99839315 175115923 261625367 760517909 180604140 292112197 518191159 258556319 852470126 423884780 161662288 558074399 107250666 242862673 679488228 712776989 914045211 148197201 790131737 448692893 283157572 16932185 3000159 812261150 921760854 112640290 978585075 251414505 247226381 823018917 383530169 676856057 399868398 393065390 995643627 676984434 348336784 994355444 866669115 548974430 753263381 454317537 309398753 663876433 600222685 914218983 216354747 476170105 380921409 231887695 266348070 395472194 829987148 769501188 239244698 729884551 591011770 14028869 250453989 414616594 446564480 853440268 55383954 567828842 116634387 444616411 881749676 677638205 28374229 822578381 433335760 749604216 238176987 126282430 365505488 701098216 647842166 552918098 456866854 578782624 771911993 43082399 195934795 649456224 778094923 850749378 89823111 77865671 626819745 318713667 646859308 429951894 805782235 457714407 192652065 315744086 542767435 12507429 193704317 288807661 598441070 75614103 670517558 697755757 264594754 747597128 36356249 543465268 261596516 25733333 447405105 195889846 563565214 230410900 754500537 449366697 308293665 620068016 748416746 751818902 495984093 312784881 552861329 163455268 934286755 216345740 937619627 858211272 219061967 548536716 420486527 366339291 814751160 978494601 255829824 199082559 359721597 233734316 689930929 156165574 825407802 671709804 402620095 214456702 480365308 972841414 417612858 163440907 531038549 989275986 967362743 894541734 604860103 712613585 82126681 992563238 705381438 813548461 141536969 422437569 818314565 628826000 832692901 322221090 887596779 577543230 513604590 465379320 190425120 381201737 768118299 393663314 439194776 831746703 159741217 857904992 742194180 255851185 360366152 868523569 107215574 352012918 484074651 358612283 692451282 971636209 549577139 776660615 220309493 202818933 976280644 275252793 896688920 916741313 367356506 328102546 298364025 322491215 898459898 654341360 688071621 223580964 976334887 471544704 192218304 66257149 52888879 692027828 90782822 613984381 93727382 92901972 731547039 875367020 833470757 542700119 38587471 108425750 523532721 298609099 699662966 621819472 879489927 921977887 702918640 469873677 75416637 77967500 297741448 607190358 966442710 761907145 270660762 818263078 807225332 914391424 643964945 672399721 707338900 980540378 984529044 527127330 351023411 732825926 725141055 995933445 14799768 430521682 66792457 84030355 910197841 916964466 938009162 223805058 661702691 485743786 512059280 776888137 388965576 555022474 248557423 183799623 986322017 120292158 423384261 184232757 931081027 739010675 413874178 898053148 435286020 669674608 564726605 453011627 849322395 312931998 158822695 107492820 823092664 843617939 850461538 568432622 516539157 503404276 320030291 952080206 216861669 248680057 303325285 184550328 116984769 658008957 435121793 945211780 485781828 320268757 894148052 447882281 932320787 836259639 989597544 568227144 116866434 795604289 626702614 76653992 241066057 450835369 7431255 601075978 609948314 477086434 221613801 637191623 665465289 679498346 478635735 813373508 758790764 518675531 957631706 946158878 894056785 467260560 523901288 267969117 518047216 669286301 328667313 16893596 738423027 832241110 762258017 880566886 394790410 891574129 487915631 678791002 526847374 17446516 217057384 343804026 754113082 45593962 729226530 159299439 260942997 680633939 622388128 838379217 598351993 573530508 283009824 60816655 323483265 879382815 63399704 426638605 626045136 923798662 182590914 918533565 471791355 776949402 237739099 594196329 360470871 178654164 632947511 485843498 778684670 889526087 661843667 859824896 57102598 31714113 82118910 322943937 743135068 804207807 961011962 612988249 107276367 396507398 19781875 309661423 56851854 173718081 4133214 272711111 732583977 589169778 316072698 397003223 248508537 850254515 483665225 223405691 740273966 246421068 495264475 540532537 847712375 356023252 45854575 2603172 555063931 460736126 689583250 381106252 229951321 548262065 758230840 394405976 36608895 332407413 355405660 642863218 36650078 695830675 874326690 367864107 909787927 993060471 196018822 861842107 835684532 325642635 931789331 21554192 825259596 376384490 517747082 511406373 583246069 647702720 654399248 435740389 813957277 849323941 353996792 496616817 773289238 125230228 949735567 46590487 223433258 743548523 380614777 72886306 527105269 452558446 7573366 64771874 881635083 809641196 415485725 941282095 62488090 988868319 47123002 670649797 350367441 692263002 245538333 468063318 464720007 171532581 858550665 167678152 68467880 144263247 743551429 9281642 787313344 891935033 943696499 638760343 329096301 800776992 18199221 546712594 662765575 985201921 530808320 584336011 844585385 936517468 972408979 93820835 490495218 202784473 396997200 590094924 256108417 112291068 124080871 723848461 145098953 536013829 950946377 926198215 458395306 209891363 548784292 427724089 649333370 428227128 149852191 625344924 976023576 502863072 458697776 617351204 102344609 521060050 494627478 741419162 884790816 730316401 497543094 520459517 583031433 240141705 985214112 585330901 635591020 253181086 364376264 655527899 811736479 894652561 993829469 958569103 378937089 331568106 333022857 725226762 591941895 26578889 244441399 847312699 114322059 836353277 711714032 698702944 253848312 888037374 270900662 997609282 930756902 842014651 952401720 723734769 966909777 646282652 532431817 1060484 343623188 315161174 974384458 795124320 292167237 843703263 231528000 775553913 836549275 152920803 840427566 802672334 416587952 727649215 328426025 23001293 291794593 724429598 667659576 15404220 583495580 624790284 594433626 915599237 732059831 425615945 896273941 463559494 568467069 2741812 866266973 946254081 265394791 369718708 69000077 31469897 228827880 552620905 876750060 321211374 55574255 800716548 499581147 768745707 287586239 917928733 96882194 699220266 158172511 813372986 342261639 277415144 308705541 360552776 614720665 139096209 489643257 944693595 258507828 557169954 495663025 516086623 403449862 710796113 97486815 744062651 362285729 561719909 211728414 873415115 672429608 459694195 941943574 464021876 578693466 157621484 741080434 710596238 667808561 557601752 961239964 447950315 663791365 85741119 871679335 297000273 398769357 776482113 346705458 644336716 782235043 907098528 399827486 445368041 819456919 596866949 14076277 508009084 125946376 687923863 55172142 296808413 506305252 975480312 979885672 200834914 319711099 326807329 546899905 43597231 592173516 953997519 459090334 831190008 682903487 654561683 720050094 543126334 235159455 448955428 222513163 690326028 713971737 507750029 813314702 139815776 70839931 792054882 455037352 788378266 704171490 372787005 475881792 225256206 905608520 378809826 193944011 684443193 782666115 955994805 396649658 803006554 255710417 958963602 900236097 711596378 961212902 122194757 598150213 598144059 192399029 220571594 831321570 594677403 346261974 367740282 700049321 370793395 488416095 660102626 849733705 322792812 500824251 448340861 818812684 408043258 10585492 427541131 893722467 501352656 636645737 21544073 369702790 143090230 93257535 631275429 20568065 863794699 555646580 433542590 307708986 724692263 928768237 330816356 607654366 533582901 38439219 723883757 723189271 182840828 333078942 194689705 535834560 267223102 766147667 54644568 534972587 161246612 610078733 674569866 39120307 336361225 232281903 923113305 144733125 659469887 192399540 433092811 374336755 391484422 187893669 405899921 87979565 890591061 233422452 153400935 62107421 224973583 540945792 853899264 312347758 87770844 231663396 96331373 224172086 378257281 127389657 810350627 196721564 166449453 75529301 218805743 582793383 262835983 36311568 554048197 742590069 831774107 811893101 145973861 102067399 420412976 231785111 871364394 280239139 939422581 678519185 922550121 642232410 959916927 652500488 102575894 366757694 257558190 768979732 700898415 470584422 611942520 306835118 142436165 604879655 51103588 918141760 558390293 163835649 568733085 147056703 56381 814136164 559107810 156799046 761412574 786259325 968258496 890594213 624824346 713263245 855827321 852861459 442368775 105902023 737643340 615166594 18478418 69034716 314362979 566525274 748621084 399397754 521605925 845215626 709359019 344755133 18381737 641317586 279809223 234910033 31686249 751229423 930372667 251993190 309476037 156253078 416183221 612557403 391415318 499721938 660774457 667238339 486884830 176377358 921340291 624606570 320321128 861648966 249469127 878719949 123075707 11116390 623006686 92190160 491929067 97845672 147544866 372692417 449558897 837870696 552049312 647144102 519499108 371147282 561759917 861560939 292045031 276270153 606791946 174607446 155918591 546144090 951590204 329456068 248458511 131404597 167011782 474077476 113226594 508801217 986106221 776699166 332840139 728916538 836868051 264586269 179579242 154511108 348725295 166783695 212305400 522453738 909800841 520132088 938566494 54421788 454714120 822099158 134186188 125631239 907905260 750916615 666721481 777567691 443685501 364487500 80459914 577433259 40207510 56601595 353713029 151439753 945853015 779273047 588016540 4264290 77507155 522751000 605331571 884104508 568149266 387965269 590920356 399253978 344784938 368705072 240481123 239360749 882147893 85564957 711611575 548639068 611945980 869777684 376973160 713234305 665277783 820709348 437002532 319197530 100107927 966202243 684108000 480332094 329542093 232964386 169067882 329946573 223826186 503377200 714426198 767615116 93485058 180204713 445738899 94139352 433261888 122673163 843262658 652088018 628686013 617193868 160399146 120022580 819753990 776070434 16712989 293429797 309487240 281753284 788966497 820187939 54100143 360774995 963553848 69142724 840604767 292379541 79147849 788474447 930987888 514303316 771789148 282029985 768259012 696138108 839907770 224703818 602814476 58990919 81815288 151804657 877788585 954199370 638520195 846050142 737336205 172728016 289218028 681581623 559999209 870468390 787549285 195184531 777728274 348773488 789107590 362939076 557358275 61343738 76302996 57034611 882342784 292038983 88039562 453958403 102601757 95992302 872736956 740731492 276111796 154651075 240013497 16974341 27209856 522557578 882897540 444999129 822652827 290086542 51255396 329854472 586450968 95083119 57963380 773646800 850843392 33046122 908635871 157998182 903115684 232951616 192583070 465435432 824668799 33141860 931847897 945976313 465893227 908975167 330341515 568709163 711408609 987320597 70624570 744357099 543759948 365439039 920950612 645208576 115730923 983695506 962416578 168191243 153977191 232609646 345297483 974837253 711833011 327076699 15499841 837848352 71138769 869423291 938801977 536911958 930701704 511846620 999852569 370691036 968875639 497670483 608823367 901105925 613649275 15812280 168622940 978112927 210042349 96798744 556218861 571416886 576938261 784847412 899004904 709644388 149582387 308405752 834868367 36208811 10929861 776113106 769619461 935975429 575465871 826993273 530681938 971041598 18379004 130813499 97888930 756010618 665352459 710772331 821969920 321097999 732752416 322612314 916612546 945698981 786669305 904092685 809583591 600162222 193166688 824770460 668017429 337020854 422020748 579358816 292747863 356276447 589903390 970638183 16737408 165210938 159229808 430269367 185577525 81160715 751015935 339563234 335122658 559592697 288735685 205045695 324405938 538276322 401119617 289378418 250873872 179374360 138284694 599743205 225479628 756824467 528089623 644558494 591950125 4385988 810834192 302754366 89511130 927484815 31854167 581750103 201725312 551157612 254418169 408129920 405411073 293008873 718134699 284503108 69000966 481934576 943790018 381648481 751234968 864653487 536215428 128476111 790381530 148104033 542894020 931643746 961370544 826410562 328246228 53411278 322566747 420082583 860000577 913860940 749188881 302093232 958087806 911792195 999541650 854707795 512456454 245040693 637003456 349850058 964179603 517741971 921224958 513169607 237296766 852043215 806220305 122610251 724587145 465295645 137252775 320886274 311319481 69125005 308530459 682370432 691284947 541710741 301007986 239322137 743719474 582476324 819203468 813912366 777753362 873282300 713618975 727839309 919892618 771186174 283229446 839427642 556791838 452742654 708923629 141339179 436651104 309846001 107275272 969225554 106711223 391394686 491344301 161677708 72721031 950160678 705050906 265606222 932357626 835375474 390821355 458451570 952186730 522971066 233633265 753681549 762136947 985906256 224883867 557072825 623335494 1201963 395356772 563470920 407612066 403033041 236018496 686069696 128209791 146382866 971459418 811401069 362661323 10838222 89406229 64090516 873425922 203480106 193264122 158872971 243195611 726659640 902829414 880432107 364506218 676939448 847283759 779516515 554546015 571566683 764841292 513206940 136929595 500532421 654790331 192752333 34461723 842593858 224005304 39860465 952051416 701613597 653650151 547940397 487954066 94091720 163531537 431598201 317807482 868906774 900228287 905977272 996448569 903260088 6796749 612764013 61959262 818723800 931460856 9493157 979552235 606718056 546503827 933936341 172609754 518707103 967567932 122204789 440676934 298916521 575751525 505180610 354270491 177451256 110580768 864313761 743459407 327175993 60684869 698194362 258825912 985084096 602567366 12518938 42102970 743708290 276911720 449635519 555327874 455649765 980273341 985437176 955444439 436056011 253005505 575073883 412531555 494999634 496646189 233198868 326380578 523391631 137503209 810940593 174011734 987956851 107005362 703518214 167732880 775778180 101180369 684764905 458725864 943522055 183664252 565193652 990240462 39418882 159531880 73912763 571882230 96893379 605029707 912581672 180527540 399001199 248173849 41792294 72257240 849892823 469894341 204940318 297732603 446976913 606681493 920304028 260541736 797649153 486177338 25814027 794453778 564662752 399463353 945104301 336267483 948924019 610051547 746513322 420030174 444070390 271255236 339696372 327695675 510381124 397793980 404298303 810387487 954765728 919684217 165064376 112609585 303801296 813747760 47618625 259270126 417531740 375668739 774545517 110493641 367379187 524687845 783010658 245874829 22742465 49490018 17101814 953654229 165984054 775295486 437240901 193301392 886194547 339802007 552699190 491892826 740855387 796445997 439214990 513477004 198404209 416222911 542565794 290766870 806618927 479952266 391437452 246489846 991856110 698475301 49850328 994281922 309960473 718314017 975495657 616711608 137106498 750034492 369732680 448883709 845732417 858831412 794916958 359896314 710805467 5825647 553599971 543457797 616759659 239297908 163977914 71231097 842599506 136690150 373854517 806001646 821879604 21512727 969939362 134776028 781671698 838416257 211681344 615905720 908372114 587987092 816290611 763882601 632143322 225189515 921317786 984783776 109812866 116717136 785273253 56435937 746213890 252874608 207815435 71828146 366069190 482963224 870537938 990045461 220767190 397110406 327351074 760428577 199746120 422255618 954632216 231136676 230393244 727882824 783982987 318860787 952706536 694788904 772271114 667290966 189671902 556535843 923530301 105968953 820445192 617799300 714073881 937977823 418616662 3176660 177643714 952726365 130138246 250205980 164183059 846587971 938892512 345092480 993439591 802414049 660144960 739712323 428001217 934056132 365735223 498946966 773930263 771383853 380867304 865939072 804595308 483696416 49765428 527295719 875198538 542546868 674067619 429923844 164662859 453710585 690837517 603472869 758312707 825040067 709179000 439580937 769403055 98844719 331979901 496173667 100454577 58573802 295279455 988863681 57100149 928531863 157043764 510505608 523800813 556102775 972594972 606715116 157672006 502372203 311112882 498759233 4121663 297053438 543509972 742895840 64942238 488904509 219052418 11512316 397931590 105883338 201990846 83425106 950757329 132388310 180846710 653774741 984337095 781914869 730363126 201560032 953050997 114898168 988628298 352355832 702360567 30639466 510897208 155461284 776089601 916177376 711833714 75396630 635822270 971490793 489727129 866904814 715455359 171584716 636799197 120759202 359591081 719499121 969028644 8849802 957080255 187377749 195209332 913842899 461525125 164186721 641721512 845922831 631438542 629157114 172142825 314275159 301303832 631052873 752396008 906096223 923025491 880928319 904406288 28860464 475755622 329960929 93449646 740937474 806391260 605981916 508776700 231349158 693687138 158943455 937503013 122785528 80782635 233601739 804479648 38389862 430079521 942018500 387125523 552012294 201956333 812291990 257040575 815008801 315581244 878182019 517918869 713740253 167051693 993400428 839168004 861085140 787902177 455215976 462162264 731977246 503344536 656644068 249514327 659999057 695944464 91737537 291076307 349695630 571619168 717078849 698780391 764485986 733339071 411677112 183926996 408183138 24144517 698696472 409259016 648353954 187036413 516771413 861853850 728525722 294533494 267748882 40890601 854824699 520485579 160263656 327226702 613805573 393822167 100964594 561359497 19536769 127085399 664437690 242035846 484654525 685418879 904069797 171907864 466813758 204434750 307522256 605066 967544346 492264858 670029055 754597241 396718058 921488553 684942133 824882362 815865284 772947864 829289076 347924151 502586627 106480448 49751519 66927998 494741372 672968956 853792712 223998650 391677710 441243084 349433473 916072061 85069308 535134750 795013154 811125002 453040076 363647349 171753811 380673640 475402003 624956062 596963670 976215460 134134829 820498999 802660090 781438487 287496178 496789064 890434333 34153644 621384921 272651612 595402994 375599449 605386102 30778693 760350807 272284208 54547332 951497945 500843487 529739610 416823085 922337754 777656484 72038060 734759678 306420641 322779899 320080859 970122901 62443795 780297695 895315264 43714486 361659488 664669556 334735730 231129925 812838521 508699976 615957943 825112424 449443782 477550510 643672095 875342100 410608975 489283925 709282465 355622643 793242687 790274681 914444123 926488019 64214083 429411951 545951546 445451886 439375743 807548188 711710436 341118076 395126 331213841 75766129 609448570 449512230 547634780 382373416 873964751 317654913 683442419 334039808 905718791 157739741 675184005 9781632 238607046 129928050 56431939 89902431 618415805 155086987 919903872 976082709 858161321 661613317 961665326 513121069 487777666 492815995 64979412 952959221 659981649 143196161 873972876 926449513 233368800 638196575 188886786 306993314 593686906 511341823 287942220 303475028 89387440 578556507 914512318 650748526 374265359 410150409 459356109 953322981 292063129 133441245 782505740 814944353 502785202 33462838 940070555 590812816 40092391 703949409 608695566 245797085 62577878 581328340 399860819 16336080 297745824 23201763 331448494 500765052 504807549 975026098 139589372 659755068 731961813 698412150 229398217 148065236 815834470 421865284 494165373 375103533 153846857 835665131 521140596 651067632 836912219 809085430 502226757 817552709 897615424 549990114 402656429 463705868 715257928 521427426 871629466 288578014 687632868 742727646 412962614 624103233 361995813 946088360 3577628 714455684 657832648 782551381 690205703 792354536 640113731 372456207 72333595 708998606 67418616 657650698 4599718 896873128 62310875 37132110 991902064 527134124 67578630 945436063 747449593 74811268 966531421 481882531 2868996 574410723 267657448 612018203 437004147 653059074 456926326 391467628 217466358 195098960 899988605 188363621 391062699 345088980 349269855 257958135 874571222 592119151 612789432 454312245 882102731 90754140 225965728 796221330 795605782 237031362 715233436 707791458 877985188 18165069 143468524 772257623 916586187 259226994 638905431 643949977 672531003 400056652 442633971 620414815 60522217 257518664 155463421 873685519 590061077 32556946 587656198 360394604 674075888 210433849 877859092 791974200 407589172 149331397 735522243 263624637 759062382 559781819 412235688 439160813 935021357 312174565 297876509 298850134 559817533 844843775 940142700 280201934 94911637 891248304 354921324 929353648 564701267 378241319 599261650 838462258 738612081 996853960 98794955 815914370 176624266 662018420 679643712 42460236 506796019 398790137 413051050 609861070 56012690 796685279 865227662 840393708 905142263 446002126 379716411 603278522 17629630 776633576 756730849 2202315 486599254 761019371 31938620 86191639 333975821 540129994 375429895 640590166 936144740 8879178 266658343 702278511 381738088 355857135 841730994 756251391 699433172 786827879 437251604 143133623 698559200 704568473 128959170 764064407 248006271 688296899 613726780 934892551 212160910 44108463 248408454 949853583 656860027 663112412 354288981 841010747 679805251 972602490 993315251 186234821 629853672 120270535 972377877 412320369 21151850 29952551 943945282 588306990 443253671 371463925 35211499 754898612 998858470 456799894 804318315 185730396 273365104 368060175 129859940 764903554 704083285 899738019 827248470 503384335 256711351 195310877 725531342 776577324 250518267 397666737 996536339 585815164 279519495 569572436 390013959 584866920 444272617 570691730 361824712 466648673 586681817 241351640 784111883 679478399 23088482 791961472 806402109 649107308 539044121 844651386 866587546 971113819 680087320 754090232 721690560 890990095 385069398 985509941 657448334 626751798 564209037 639309470 209761274 367440734 311322274 390293514 624051240 631610097 411795720 779636137 457390831 159730875 78046595 867034182 28787875 354686925 271289927 351635210 414594896 868989416 566687111 185153808 41172023 110115474 221296792 25660229 914664530 564257316 284441161 912717333 16349417 503716481 532154651 763377701 709243738 448386840 552954937 644664156 155009839 605497884 300009772 930912640 768389293 455441220 530417647 614463101 630970574 563534756 717297864 414316082 49661168 838128311 93629205 962720884 210668924 782344387 486717842 260863184 117968884 54421992 26887672 165622443 860818908 88910590 619425920 310585564 758801852 342711564 511441322 308768220 5880075 694659181 25812762 158039018 494581019 1284702 349354300 126031322 912107309 839943548 773669454 689549744 196791089 580658928 139229174 215685363 869731692 805926710 871755963 840380649 903830433 479257106 2122764 505757691 436793396 443592236 639886661 558850591 904630991 881202911 311632212 422154315 488707416 544176996 717427670 524844844 379534318 366780866 679477661 372972028 316876329 535711832 702801338 315985100 963364608 214783438 640242460 407054379 708622714 403527090 352109884 510472383 480432474 555541800 151300938 113250905 479138667 790430690 428150997 131745347 996739436 416188128 263473232 669716950 244683470 736204341 277606325 984018663 729083762 898201355 974265036 932750137 736801798 139825957 128001940 232810232 29116808 597096109 208566043 448549862 966162177 945323428 523512060 142214837 720249977 697204575 482893837 161758683 566149390 788792239 815921938 633954813 17842792 870446254 785837833 296186220 743660632 579274338 655879583 999429401 133773787 424814032 976418291 367815428 726064092 469422792 692140205 722326088 498512770 882034301 560929960 86532976 356292202 734133215 981848562 353582791 851241054 737127169 668739269 697365720 688249060 633044217 72437994 5889846 381538787 895176482 517500704 740254853 271111096 915254030 127834769 206608712 965099235 842955116 64161265 14391527 926885444 903889197 66147570 126428199 158678868 602439669 648459884 687772871 844077500 362165130 591876481 780317158 766503981 330814736 806489043 464962223 898503213 936738839 340668997 338360351 768825522 637406099 504378463 470332743 284605432 510524344 908837315 412910738 548329132 708606547 180478564 215108951 198948298 698620980 658747743 468492190 738304224 331336197 562368534 317332129 58168800 764549716 389825402 37755291 133039024 185166423 742028281 215401096 66112123 446134627 725067806 941090670 408652856 890681401 398013313 919282426 53594985 576399867 471238351 236085957 752724956 665830764 398850751 545327749 424460247 158615015 489855894 119693508 688858820 343570562 865450422 168522283 871597917 120920599 634142037 478286650 903416517 237168162 461744034 100806570 159805441 982113442 87325346 581967066 977931227 637848161 503804545 635532057 896097136 358860460 303069637 391482207 27128940 120193718 681732213 87155323 113363435 2662095 247428234 539962511 687168340 226162481 523173974 777877465 217264247 352157514 745480369 611732213 447828477 862703638 670040036 589512440 399747105 347220609 319026319 296621509 98258320 3776091 331833578 709501367 512483895 88105716 2705065 121603883 961761523 839752718 312572605 577997469 735179779 200922189 435406947 415775528 992569082 646382541 505539856 725465776 466015301 351459292 864930679 637924424 284850231 654389254 93610603 275071014 827539902 14782715 151002271 570119008 851853418 114377928 38132346 467735870 713063211 243987442 836719723 854648848 109818129 973718366 160145622 531134203 784525791 229834604 810565383 804721506 398515721 859712882 490548464 691155678 728376052 625043631 212124238 720146766 842853889 782068598 843849071 84048317 819531968 864458106 990068376 740127864 901299684 471338551 951231975 348575381 924207226 760136207 806857482 283862658 989350680 700212361 223591867 844655292 311855343 505686928 572946896 585425970 465868453 138496838 250977136 527846704 37630089 647825716 169524571 112164701 121446759 756930582 779518571 513177582 314812636 103810159 657632470 70745601 786289687 298715959 884720205 728451693 622204341 787515419 433477913 460611332 12146733 875291072 860252627 756555683 821614711 414588493 349089488 997784015 131519748 802007774 132305186 814386387 541121672 459704976 986868601 225737192 268736003 7073836 410574072 73450061 281719877 177446199 756875081 365910331 240354376 120734219 503105819 127719785 758997476 724388364 86423923 397019336 117250997 809600721 176881189 924606936 96051154 719239390 228088339 671323006 598471834 282926576 133369939 275794915 325653320 745259824 742231523 794101571 312415287 135502403 698583347 275459599 572785579 381103917 340241909 989286708 265313268 479727356 482649692 223614240 868381507 908512097 545905648 185457489 334905879 810539079 244636648 845406500 418495616 178119585 61988861 708012075 296695978 402409320 326870647 507716157 795338248 246115966 322555141 291705539 71703164 386935273 657849245 969576963 118998673 444631544 628790064 391103505 448872171 733778976 665553900 443809080 57783181 834067686 659002238 603568900 872790496 683268372 921336815 701971402 587052179 614445509 649980102 48074960 311083053 673284975 90309284 236338249 739554724 240307064 881962758 247268554 614866189 48103268 842454031 465807967 589012678 946289460 989621479 464800087 761725483 821906896 463007109 107294109 748578637 730425492 922030176 941160481 117452051 866341051 852803604 415512882 779690596 342162855 227283567 89277171 165236328 611656883 275934863 364262462 257324008 386709836 218681507 682814401 895181082 155037245 115379957 55449444 296650701 457729621 99039466 343755427 290822733 763076787 483107114 645432950 102014410 385650814 700519345 295129364 289448271 60678515 684141177 832923057 873922051 309978948 195795440 351587542 869642067 586928530 951651599 404286703 413051768 234465265 718386776 948560237 843954684 182270437 517821381 36709587 36024938 276017850 841366171 350616756 776447649 256478204 68648557 339933743 984454450 544529912 674666178 91180909 276775596 711095098 195798326 747247366 237529578 607785621 712527361 374379613 760339832 213461373 954527406 550901931 919834479 860663620 962251921 799856669 263821650 842582415 798470344 434922603 22770047 319097463 527609336 683174353 134648324 481424904 725162416 725182472 114071999 148299991 805456718 185716482 575190386 503649494 854788159 807602001 121256160 867177095 242909510 721576657 627404260 79786015 323214164 249311389 200128309 970667381 124788383 102848277 610864922 123529793 470533696 968627453 337764878 475359834 523885827 378358717 130400224 40270083 94698198 415551279 677160865 357126377 287191041 75423452 695193803 493826110 342523291 212175606 990517687 80043043 753124280 728591722 855171814 685298140 223512402 82013424 740245353 193650459 191602836 547157368 347933660 481794881 116793984 879551633 597649410 447907587 511531148 994813086 576826923 761789794 784915475 707601190 140681972 68259301 594574749 245257139 121521370 341618788 834547503 887048832 372534342 377955477 532091516 610943570 821884016 433221594 245687484 220654690 989027246 843928705 959491926 33212291 271475886 579232614 261812658 537330455 773813008 949034096 440781641 36498706 158049441 676505836 967730247 506826727 688470485 172312536 967867462 196704364 643651776 374352654 84512979 249203223 201592079 712154081 276155234 927468058 419917853 52231660 376517772 287238740 246584894 7885484 239801409 782629596 719779671 671856629 165610332 256582367 709776295 792305866 923352304 782694387 739264584 658564765 888032573 962994514 693954471 249187468 827325114 39038686 225057224 792413409 840597469 317303214 240145095 376939226 948977909 682465601 377810879 170657673 683558844 996078007 652992795 171855365 608442563 758424054 531896948 386447733 108860620 448126545 371163032 437618138 375598182 1040486 769969648 312323251 900590769 802690021 128484438 158186347 523674093 404291089 633141192 34141526 735493036 680541078 723008867 736078671 341979725 264995809 602907956 853951690 214012729 64036959 578193332 771631781 818613008 806299410 624607482 796390439 215568698 611755727 783645474 433773947 913970175 44905036 948913263 36631964 353668293 734485662 197023968 595226003 387988129 478192714 905997332 517529682 327484510 340189593 683830668 547494156 558855579 218840132 961200451 769681580 346880068 171572324 604021807 91139048 586670501 741181186 658044460 877499066 761543239 109497512 152043941 463464510 442619813 877057976 655580537 904726918 974703920 586840731 314642627 850565751 481906345 931346361 178714801 248246840 595262325 979204877 151196957 487335842 334916641 543796535 499042553 447008954 889360455 805516763 425268351 958252801 909746640 428938208 684596427 520624153 196356329 330931776 827595414 770547833 327921598 242908035 857400123 508771819 175379857 740638780 207026323 183735931 133796116 710697798 385687340 927958553 437428610 490912500 51194660 654508555 374196674 995164031 334539379 707030573 118584925 862368009 474258003 987061666 652299698 516082081 188902455 797192065 732496024 322724926 642980535 539346489 827946297 189742219 731007035 471755976 641279505 325872567 53274919 288822279 808080126 232281194 196125574 619645775 885926988 705766655 15008196 869892456 972551250 344758956 202604513 234299270 977591401 528992358 789993632 202006013 175307227 584668491 418301890 186393246 597371439 796897378 218267471 339694172 855267419 336296893 644855628 446318671 734255597 859934526 274401091 162871710 730260867 500542363 518403684 695087054 792885232 982933274 69612957 183372460 146004216 925161677 753316858 555871877 702633817 466839590 828702578 196989311 30949163 394914712 300242259 331632118 455093154 873573891 974025059 702039078 352257489 871363308 435920249 27267646 105128364 5717156 414475775 41265090 494330732 416043978 873845513 186211998 171022542 305745719 441641620 48271979 294297965 191203647 502262130 122909967 960103747 341525668 122145403 662842448 548388022 772071650 296126486 670615843 882435188 633371197 376832306 116137108 824083779 494286114 369687874 187384622 69135371 665162786 912413092 895344175 778510693 835799520 871012921 869911753 234172881 1795302 898193546 537105982 265786993 114054897 714543550 330437754 374496343 552545071 209793304 247995188 393338029 161562126 521967918 789114165 243528860 649988332 873348641 822299244 39085223 833057352 164133423 462198996 122893148 427282971 618997259 532703295 826525127 109541598 556353491 522710997 984727389 326735755 763138811 166593193 591725814 370123279 482615309 516331037 817262160 727841177 401846256 117934084 877880986 536609338 704781613 734615248 719051519 330860975 673109254 857998717 317195743 508788134 729578694 361212634 813871850 992362736 31080208 151086032 49691558 771920001 165728597 912875524 100319215 978799897 365448191 440673024 363961343 107877191 642019325 788005207 911502113 295380642 990235548 979200701 445255511 658052498 338733171 811479613 545018396 536499596 813471156 347735776 889792345 856602241 822705887 198480146 262656040 35344950 902136819 135893585 43784755 630235609 303667936 595758038 129837231 988138460 754041925 826911791 983736310 211322335 797536333 255399691 596358536 166650196 594301642 498898398 856195117 409489999 891215120 899139292 639315569 559645609 192545466 999816746 296406345 490097442 923177515 936681636 993576940 260313706 255602521 674115829 197750898 338887953 247166945 600938974 656256618 845278912 417426616 800122581 75849387 802793801 661018514 473505867 282195514 636786141 821128898 624076728 440751667 379908972 671492120 827711741 376603212 507876817 801406652 486743305 520942439 417645866 256020232 175110145 671645067 504083762 325812262 280309061 603610267 397243110 487397471 639317238 665779350 587470223 430693159 31605162 241986745 756057442 17877223 199811128 752719087 21485965 586470235 573863330 472665959 352327699 601641826 922191138 124772362 985468399 797974292 730710050 288575300 683134355 295909516 966186719 646779151 893207704 358139539 926017137 523515733 877511792 352123371 430216815 453963631 240253914 265742511 366523560 511679574 727293215 349151146 243803908 500659573 535026173 206010530 969985705 821856709 471832526 887956227 344344683 988760878 228392222 924508050 471620643 276651253 724489109 549757576 188863594 740961583 752609379 346443521 59293757 19085574 551454804 616108713 755334296 935459403 874375664 769686886 200272593 908983586 854593186 979325281 307559797 706664494 355734046 92917108 666281541 406664953 698028967 107445324 491670871 890263475 717042796 586314444 183015767 85404288 181796584 358282727 932723568 241529363 770321561 542544623 459934215 458342570 502228885 332545068 500624537 345197331 229271373 365070722 126841008 761796918 225994177 571435372 863250061 895402042 336243829 451425543 895554301 440156093 255462974 313414866 605020459 391396647 877356829 171137811 190142786 854626747 431647504 698969432 525075292 654785488 49935001 259063032 90425633 815356471 869500536 734652199 527524996 646798512 627008964 545799581 356750254 602387635 842936119 14950178 826122078 89362953 70902264 393713745 134699715 197573730 175263262 403956011 279913182 330162583 797054242 208438602 364135001 42939224 800219236 641747831 597443600 94442987 930772478 278099052 404874578 28987896 527758768 467420651 926426330 510892496 982367098 44410828 276379803 688327058 461802903 772196098 147955451 796914368 346528896 899864924 130990817 968891760 428968368 300335311 881989849 350626742 911667895 6421238 741704937 396170102 86687118 799117513 666666139 902373365 922675829 106952203 723410517 518289609 500676226 605397116 75711339 96233815 591111320 798477345 154641702 908775015 271565298 293354092 626379533 473690924 44111380 486823258 980952866 388854739 383855851 418155106 451347129 843022836 725451082 33302107 44310785 869868375 449498562 445586810 89339800 605956225 30058020 156714947 66597815 790705581 923436411 340096665 65864022 9358943 541379641 889415716 888526236 966926179 977600073 207910703 911304457 903136078 363557254 6716713 179063781 210953177 804978905 812367737 375289841 313856645 124197944 741968430 475269563 104769760 24462385 483267217 610843791 896348931 429992891 991996807 978522718 543416500 802116967 750395925 240107424 23383359 718697923 958370566 852080835 306114626 507532113 650236483 974096935 168553628 657787081 849649014 72170789 347761975 342304107 403133038 530212948 29049245 157936037 944234491 617938255 634296084 329462083 637731527 168338627 872788196 838528404 885647475 962865834 309700998 432316590 75937000 414387641 890085838 241232901 924766135 298561929 104110692 296054886 281979756 168166711 447347526 751467054 933447262 458273043 566953200 121187423 318276806 167566104 815012043 721275196 780278252 841007152 99755142 233155508 195399118 965331902 376231306 886691833 569519098 181879191 469237932 843597075 240766033 157125196 997662846 115320422 174867906 111544726 96106042 629658095 850834554 142736533 114480643 270108638 822887507 490432818 467129823 275848905 586619721 64150652 175568783 944078051 836977874 993569706 470097008 674659149 394027119 124357381 7780177 865433949 665272913 76143657 294097714 566918036 566521222 909239320 565456042 727634855 590953075 590259749 576615216 190303628 245000209 233727982 250372035 837336467 748540542 537427462 465544354 871843516 207647122 513997641 449384278 994587955 705984553 31369797 698774390 502601015 926450235 552594992 832279819 60907183 295726139 659060264 594207397 352714467 154834367 353214281 488524413 146541312 84116162 430326012 270314462 723199147 269554007 969677850 324238007 798378803 161293793 415377000 95989677 722835546 267466575 345055335 210508463 60955222 718869462 359951490 889690349 900824507 81979038 857102280 62598919 844105801 400401935 168654586 864163236 803806933 2746145 15024607 190783275 678987268 569439649 419202444 655430464 487055385 638781444 569701974 281067206 514427690 707896419 520624699 539356119 292013693 340956612 859180930 255437915 608550502 117807720 342088606 525424660 160582051 771188559 530238904 17114089 554504378 33728778 91814808 146140986 435679235 994367926 862097499 991553150 323512626 477095155 409064258 335112615 240896408 424871528 869386921 605417239 824858387 240386348 566151117 575480621 961580939 664874677 175813458 468969885 263757832 617747756 366732606 676556895 244613282 620891175 42894350 376578207 689141744 906768895 675971612 948923472 558671976 66819491 403384056 472646344 433950039 912838987 28050464 104311957 408239996 950005215 530381371 220308598 397504168 68532630 833734491 645278525 63148678 518799340 657758831 461209035 258147377 738657499 620785398 105732306 918738076 45866767 568777747 923065964 884245078 732271021 968664885 392364891 197744901 260753515 399350456 444039522 815847858 963513517 313547519 183653053 918314143 798330123 745473036 409966252 338383257 830361467 270343221 541194842 999839251 274511604 713693339 797640808 39556629 896283261 128693694 60033200 962879106 403731909 101121710 237353025 176944110 868621066 773363643 561413788 973893224 761621866 469186954 333256978 739151403 803508246 990448387 627188638 697911407 965264225 985613665 618821556 556781606 248898649 136725948 450631429 927574451 618110880 356522432 873551845 925843942 677410583 827814329 32186085 257533252 680788301 87819924 632189445 751820060 144275444 76687550 980863442 11616797 195289963 394584578 64047503 163750660 535860915 855712100 675331318 661872985 329278115 747091999 435812167 377519984 881064195 119489467 455630909 478791634 811462400 915512367 832865878 231311591 496619373 588289607 683787281 935152247 741761210 196266132 320034649 226897499 882254107 68160143 285900680 399149594 773229971 675065442 997926041 577293835 38881408 537645450 249588033 937493954 540741544 45503000 278999758 753129184 957353462 124399845 34566602 154303584 360752981 400632473 37448448 424838601 138718258 516225925 166985902 244280645 793694123 463764874 813145860 725606489 740660205 105685111 435489460 373411284 18404993 890172380 872174114 478348608 814179677 866060173 398030646 250071961 282255477 788859265 192967648 414025591 798548936 766134634 651800871 829712538 557658390 11894622 349585575 99848758 68353765 757269846 100996354 55277391 608884713 923880879 326456281 960641979 943013469 51822480 135739738 136022634 863401253 913545673 380628968 18983439 214418931 98552837 482054531 364152511 907189102 96908089 185933263 147832116 934816888 457331607 229151236 754137858 671542931 16563770 154055764 309800676 794626014 133080691 145253663 241390439 158391378 856862348 25739528 905268636 608550949 545889174 987807322 295998704 533809798 471387963 520376760 651182483 396144752 938034470 524057562 566886568 195404527 785455654 770339030 109306082 75102819 278315116 166108439 273678097 650042468 76265865 337425960 433090350 377164326 237592447 498619154 639346785 167574634 472482945 315466646 80287873 760145606 806812556 151129045 14185846 376276732 315816035 840022058 442933730 757924827 720543663 670070494 410393272 733324915 322942346 146355780 87025600 38500682 515539785 189496816 774248113 399416573 770098965 147034247 625563326 645149227 997892148 936711715 303490835 738926271 789099857 912080292 791917933 29744252 424602962 470237924 907473203 690535711 273979796 379305782 251366687 590167505 776994085 840700302 190945299 499504046 944941557 863264132 222409636 628940126 22117198 773453900 746851739 921625216 325678050 211964380 166463228 234595997 221956659 289661333 762106520 867735196 872862947 846136509 160520312 357741956 711956414 743119981 914076158 164541712 742124417 483840697 810226413 573209516 86367098 211860385 130357120 750861908 860374985 498876445 755945573 164622956 884122452 223631708 872303534 149963323 510405319 875394291 610881609 412426318 846156299 268794912 669415614 318703802 815742008 478088323 278476912 913172068 335310921 633578018 383048794 462647245 139503970 865000696 662499741 913831505 262949434 261831741 867588984 735906344 49642003 103149839 130187570 620458739 811755518 362783207 573730173 915772170 966703356 929218260 507212054 144649212 570927423 373475441 60376906 151262246 925863035 717026893 791049770 668668411 328007356 26551949 786317062 390345049 633720125 214340199 325483226 963079324 344814692 396097476 424956270 813135631 927522444 562515675 732909272 996337778 174661144 569757456 669771501 833958177 392240890 523034329 346437887 445889104 874355139 909480272 541652390 242321409 350197753 840315123 527487889 354863925 255859330 199095428 114569304 181948722 472733009 747077760 376985669 557159268 380829039 798882734 993763227 43827642 530975954 231403012 188085603 188446393 417113167 54825848 717979128 102743718 156017436 878952902 597970339 76505746 482538346 754632567 586521893 222639352 952045380 907048037 148604232 8329036 938696827 43994599 818009265 482448903 238942408 149680281 542037121 245646207 941012475 614977981 952609488 749078263 906881868 411176444 273410901 69012020 922082107 489119046 989323015 424245824 754357202 353814865 775017325 230616395 293483626 112050627 773909004 68023295 512506923 288309165 186346085 62563795 339191181 300217458 889053371 410282842 428789427 311661731 646952021 799130206 506484547 388885063 260041032 477511367 669467613 413306765 222794925 349623341 100114754 864050817 847527181 727320687 8977306 579825291 83993213 326947495 17836352 915776866 254375178 45543961 704955049 255680887 351168903 609443943 761532136 448160034 794154415 870689814 10232882 444266171 313369986 277279831 31368790 108614101 662374894 558053355 342403213 579587516 575828243 247850874 724389379 557279520 244587788 76831003 752060219 517366588 437810400 334125554 86641544 540196435 983247441 904162874 170776868 513375256 115085601 726246257 296134575 191315543 521410820 148848907 98232971 726254265 59212973 772196233 705509602 407704031 141452406 481317796 298907796 321134674 259396323 352605823 26950504 754142398 234031795 519154330 776659067 815571717 134684266 687574615 889408789 48492000 774923946 393211508 711590117 721674599 580098262 912168600 10959147 447684258 697234214 323849240 111435614 639632553 661224481 753733940 450938617 903299918 674041207 214688752 908170432 940880004 64992733 448596783 279109796 796426813 409404416 390968253 217027129 198181934 389857000 868358497 721329874 211752050 830318127 851774315 202004528 761304271 802793698 888779924 687162382 320904447 236235787 973672529 679966938 109070583 573924885 341766766 571905177 371348441 221366597 539987704 488130693 719902594 444886719 798892060 791611775 221850440 657921605 892936534 716028757 564071339 25400533 559922273 862382466 917416938 678326071 249557026 314725734 505639479 132332965 611824841 130698067 750957678 388942550 34174477 194531367 549928743 169034480 399376241 294162527 841157791 285547879 392103118 595491560 739391092 981506657 65005147 442979926 615633256 802595211 240962120 860921677 775673756 764990756 334924548 383019304 664462582 407460762 426694416 461307935 557052039 295169948 338091889 778970828 561541994 938042848 900831561 45647913 751472378 40807488 679710891 515486734 213227260 10205876 449591899 834533918 664094645 724499034 102163942 824145465 14523971 443872871 418825507 730013187 381500318 955951935 812149303 298953597 329173613 630182517 681564424 287369072 486091297 526177529 359683403 56075401 660224753 511677206 868072389 297435474 323776674 220750748 246553245 849090003 974416773 571215219 134691050 514983969 886446182 824422959 209136909 171947853 11982537 625452417 365545795 981273770 643611096 462128591 809716233 14620292 192409712 419080221 925914350 729974892 4406840 593859405 86707303 46949962 322186147 805327346 108003271 787198218 91992547 362980665 214370230 809364757 140333574 580579309 336667736 594787696 66782180 646653698 635495066 251461255 873743173 568757154 542308774 32385598 409832753 582939433 813546144 629986062 584800771 440455981 261304049 939433211 245596823 558558479 839619446 726259205 45226960 288427908 355700101 344041151 849481898 958790230 91637694 221890894 661173629 584656465 197174667 876501918 609340309 613770997 183448048 674210051 124418417 946089242 234776676 765761340 499478375 810133843 315279129 138432234 21624839 778008781 673625482 771479052 3576844 57182508 985154855 920317913 226842774 905844139 254272949 189377692 932874885 458651902 942347052 391975331 134890562 902039225 651899594 625270281 941514267 422635410 684023146 977904226 112155598 909085899 610538154 46214691 457514260 532392981 570643346 434241883 225420261 291166910 605889789 364254427 590010898 120628126 540289006 504230986 605556294 285387780 322908562 515367623 909733292 836974176 813272180 869682255 794952801 531040611 9458667 628431162 663668525 160843147 605642548 614373001 500707417 567992803 727503797 967679366 903452698 154327596 347319536 591266873 993399539 420469143 939487827 980502867 313528595 418553839 270242463 739459107 413775520 421822828 416824624 137556276 948633320 294416374 601608275 432304310 863746467 253041690 152678579 841160373 817789681 735852142 641734988 698417704 729703007 166393738 868855326 562173248 79333357 873048769 803419247 702264361 821269335 338483930 763771536 859000838 36756802 796878701 257469335 8128943 285466559 722945498 2521344 301527977 97430061 188737903 753079032 463145080 212845059 236586008 177967987 283783118 916940873 466723991 389737861 711203222 766077448 349380878 399767997 186229164 147734707 755415860 967357047 211716798 469107666 18219485 386333492 914800990 102085424 98615015 692502676 948262388 246096548 430349627 15047087 203795286 447940374 320904347 802947747 677280477 53612803 152965227 554151865 543739591 667938814 257240434 717746989 598669715 229009475 625206392 555007547 134796192 383772788 641650210 155673781 288093596 577407416 778047560 365658522 915865019 110124221 740347930 228530903 841904844 786669411 87989261 63991419 325467902 17002777 539231159 862060396 306672776 313725734 521621109 367942409 144802878 219313777 661276025 461396198 253124453 528955433 314415668 58789947 204929032 255105508 557506727 195240254 651122485 473450216 643895905 920563267 888888409 594111338 540050356 109173193 668794776 342123983 457024922 848087931 597776816 880435081 664481696 613980593 91531780 868653791 26395950 726603136 460719907 820999695 84479628 345928342 351804581 813477188 148932041 857785039 307223989 297374894 43141800 801294293 480126768 167752017 439421467 633059945 499466914 878797841 260224771 564503255 540720327 630806931 189914013 151774648 406948491 897885959 636609118 529658536 256060193 908299065 284500626 58508020 222420128 409322128 775686597 961434937 813902482 175052907 702363635 960934481 123863252 202008141 912784065 280169137 715412513 364401577 244473074 513420799 46501059 526352391 337092281 752855297 285714447 269249039 804229495 99588685 447326883 148037817 994425585 299115197 577800932 391644911 46506610 405186779 439454043 937540713 754559970 837872143 491626114 472227040 888129791 356132870 354798709 21750727 902708787 834851840 944064006 786559831 66421979 883683374 317441432 779006203 114976977 788415365 183029184 805432755 398667426 333672818 59976462 887882682 465637767 947014498 250366431 103347521 237238153 202651010 406326823 821002438 677497557 151193879 406409476 865981924 855038902 747460110 592175798 511097752 939423359 954322123 10268429 235036788 575962896 576473682 524931433 738518482 989272375 373956768 179190154 225736124 579062793 33301971 90284670 609971578 861716325 781844938 782777708 775836364 321631459 354381154 414629870 815139893 300522791 206567666 846012233 99956825 495223004 613622084 813549130 381616210 311000627 340246686 140152238 519770719 623309275 860067097 220567024 71411096 903240660 841635737 386787667 492877459 579001160 464108673 498207537 410408578 541831439 954536244 458299000 881868906 655730934 380226302 441033902 935318776 848929410 15881832 974075749 614948150 359666196 699993972 788898077 702427552 528564274 779657559 582183635 931506879 354137287 685664467 971380880 620301547 14836993 788118346 796665091 90939871 962148694 824555435 638765190 500225377 230596315 587014965 121715309 504276414 406805741 9096907 595089431 268156951 297884913 487894932 38309078 980368140 503552544 459725153 840330049 854121782 956816783 919814613 274665733 748523240 929285127 572778437 641089209 75985705 946693436 54913425 949747755 980005330 312664163 881624654 243491427 600574783 148724708 590835966 201775330 491437348 840948193 942626370 493637213 438184029 7579351 836136 244184983 75096699 650739415 74947312 236234348 507779622 240054820 31398771 692140399 173714759 154650098 683708275 210689622 365985740 900157192 160101005 771901620 954708660 525076410 860558049 868671702 984368358 148336647 207291258 524266797 479693058 607981359 194490897 508384913 122226838 139423159 343777336 847801596 833870800 207554093 531586147 292558790 138860004 509476279 462405147 329719395 102818607 764772014 381842561 393330449 145286551 685941342 358916404 528564775 136598738 368975855 819580871 8789386 341146296 111323835 816861652 250880620 7364495 989604758 872562271 914359997 91827415 277404750 971166344 219945662 376251142 267935308 60470745 113593276 907978072 599134366 992580456 679067767 765314240 252688793 287770932 875985969 353260242 80745735 83140183 640082140 471457541 82740651 299078482 427474964 174580392 670658658 138482303 77728684 462245099 345388823 169686185 510930811 757224118 607046058 597890816 253804008 870825288 216298079 334827116 980902136 134996971 159294168 823338708 750058593 247078987 473237182 902079224 889866393 622930227 356355456 797780850 294053814 314102893 612986277 596583395 160730115 900772226 908695651 130793189 59397493 339248974 539669202 563186559 564023070 276782624 722199858 318507683 897156601 895813561 857373490 601409713 427308592 589342000 699610549 619816999 204252111 991306229 822745416 590389348 73710423 319896804 194438047 182298563 550276438 949769621 356315599 177057725 791741440 998351454 818094995 407712318 465802289 921691580 974327006 552938030 544597409 652126723 400799342 378204924 739737961 325878941 560242024 112539850 915443478 812550178 586597723 139252693 403091777 303470670 934074426 813883682 389655754 500413147 32063129 747657794 516013016 553519542 859458591 204562344 262244763 74552219 733346172 210678003 500530999 704969381 85773402 229864421 189492414 587612004 921272300 20222284 193843716 885822356 98526591 917657616 640356108 33506942 88577364 640733913 765235912 553015933 255371268 183197841 748253620 264461956 181688241 112366568 843800734 194084912 695534501 12512746 326918915 944819653 817838073 427350798 449132223 991964413 709679990 860308378 999524823 825648657 299520042 994644708 21824790 63976079 304575320 702997815 526998927 53840433 159130382 692396438 317476817 534879505 870158189 786034133 188844995 285809479 465132203 442656718 279341442 38148941 505684875 638689943 157154914 305427751 424389253 262536239 31966973 532883982 283619595 693681569 720925681 448208003 432797133 5055423 32384760 137460804 936953555 538220431 435785254 529806045 580588021 891903974 179174347 348527492 104636114 151894918 14213708 175866676 529920401 277467024 452753916 958188338 491224052 142595873 689539291 259067755 320868020 196246008 517594002 774783115 885378868 515656403 246847152 232511903 500039711 561523494 851694962 189183789 738031963 130150388 33268140 95253274 404211491 51700902 134199014 498449402 354014330 886627975 191795140 383213898 958221967 515569273 818096826 212461894 330952124 63071105 672314646 181249566 689679159 423220939 202758884 837329991 635260145 268604304 876334352 627165789 383863744 490905750 555491537 502453334 349038117 233811878 382509257 279514577 419480445 444387527 638417218 283267935 131711527 612310492 52163239 930062302 951289979 202823800 956674377 514578400 16168126 266852334 939463075 905023276 239787789 202692283 731018348 565529421 553824791 56232641 588995175 867340638 888874344 472799415 658389624 211634971 862922198 768412585 589428723 32867519 673318023 107957422 608589593 605454101 631466650 835523337 978092060 79074039 619412278 507120832 481138287 169009429 983115363 146601160 869237270 350939941 896477585 813559836 460953806 98972520 118571275 649244674 235724953 893608501 349644533 667968791 392228354 716309711 578029109 174054753 396292952 534150755 282452394 345327216 298607788 787574200 261817144 295952466 531840756 300523945 992655979 242398470 952007882 917553380 386741847 669650377 781275352 498263399 493869254 267052385 729416935 776582167 40232464 919788916 318247371 334662916 978967120 979121658 362026572 113137993 488221562 700756650 381161896 366313945 499506077 658681915 42806017 291243768 965782659 460786860 599044821 305287928 151572965 393916000 906366287 924064091 432675451 66755973 559359515 212005245 716161439 140026846 807542302 639374246 214179890 772133787 552160754 415049360 541335800 968724878 465161760 115831067 652897931 124862944 837437725 834687007 892824145 595911875 932447769 334813065 292501493 990089668 157170686 315276331 656210835 641399235 564709298 340949056 730811485 107594385 975018323 618509909 457506968 135416130 523397024 924694046 863805820 342057375 327007963 930363000 99526883 918177375 586735649 965247083 362691805 354212353 926664167 769663152 474336378 561422610 362608963 156215596 636811943 571387040 428812985 948599699 240086749 459612683 760366191 940079050 82499262 383903523 879665241 985113053 531850006 524150509 827211753 17120641 586669778 494677428 765996974 859044953 203504208 539617124 524394663 294782116 285127831 235206122 31088474 753883019 62539126 621611753 795229510 159931833 372151567 522906059 815070560 564710596 450166618 67478086 869043827 19738536 432058073 547099942 940419336 907971960 936918997 575418776 792742984 859004014 837739723 725993032 355746750 366430163 943977981 144566614 461072859 355411601 431661804 806806990 158853880 106013838 547255816 412772893 32037528 508914842 175503428 716845260 914386371 172548551 937689886 695113659 991875930 505997727 534531187 810407601 989959753 23728427 584017459 890435558 787558194 913563251 27351072 592989241 648213837 113773281 963519714 860148729 531848851 383082446 980128573 671281238 836233497 478608222 729373418 479089969 333469849 716599361 572171029 909692438 162521388 8469290 83871538 107402038 691281254 906541747 358813237 798189171 306547047 657184504 822542585 516551071 816114404 193835758 104231644 561427604 725359212 112708627 183822017 920572909 684410377 595754603 154174786 975098321 514017959 603766134 672925340 438589289 714531291 365269162 154558774 695436248 636427213 672134910 477662037 99306956 647709678 113808946 770793805 249119593 102490110 325303364 271951923 342193999 163634 748814371 205782051 208893136 300950012 811497292 65164335 570119863 716142532 326772870 678745082 574511249 501597705 50988572 727545621 473939330 229974622 663738038 189122218 256186993 842806042 292918190 956476438 239479868 56704598 482163202 667696770 792458481 448100618 138989682 846704153 63027964 90752527 686692364 480350551 253906572 89633809 989302660 945446860 783392047 991883895 247763580 852644042 580676629 603200144 641957812 227770395 232708561 291139749 45028349 232075317 519234426 378000870 490053812 541100072 588485001 264569526 74562123 990386218 798631062 237598742 529416296 815177608 592629055 537955268 141888230 205860313 720569030 776222449 193587517 617687178 830212897 527962305 766868 510938483 718518830 94733758 765038688 350442984 18751269 111353231 635200309 50525122 935728157 943088429 797285910 987727811 246574518 315357868 706133681 378155413 156793710 41332538 657516438 240307157 241676376 78088109 315105298 793370180 958653722 828308139 520022834 778185940 790274731 538845282 446441357 869636564 438959920 984232772 859662468 297940323 241111075 772636660 740694439 18733123 517010169 246415299 937242566 130492465 282708200 595556478 891734298 695839286 911859918 191562098 332578647 979057072 80083785 417716298 360842747 647977200 81033914 31586250 643316773 649472225 372217992 889599307 87796913 470449105 976441975 154863856 299030093 577154748 583910930 987023725 306630120 235932456 715846722 930691695 918902406 421313642 801293688 639790303 401859409 947954553 544076536 204888341 119306413 370680732 352626191 230960534 204005031 522830236 966800092 962207984 688788454 219643068 658449948 687496729 59213824 785284262 530206148 535907592 554854611 149912732 561147917 499711392 587046970 269842129 813289809 40415169 427179177 985222072 148838059 8524858 65586695 425141725 41699477 997227392 802145848 53364419 962720291 230854886 6739743 224065366 840697757 676017007 741884365 303791567 464351196 683079812 85559990 756065694 430866824 696158581 883010492 409198348 164819791 51880724 27820396 971759092 3405625 418711500 951428297 71130918 928637554 578817878 122411390 658940233 573646955 264042128 359291161 908954619 199683220 922703684 162134950 45466198 767098728 39843044 531930924 428159995 686691101 692763336 340623071 214956847 68397700 467756015 810726863 946629403 435026498 397148061 841558535 930989283 626152043 785486745 444562434 896037311 381184516 41249210 459330346 618822503 799794893 685045665 143646641 529928697 988524128 825456936 259737851 654576079 375122442 611759042 231021903 394556770 298981529 549785933 366253870 705431342 299293423 936961189 653048020 839614300 547678672 790770434 374126412 510602142 657579277 176293116 823189071 982371811 836600744 923041218 779589174 821985267 826185675 762889863 270267684 395770956 762603019 234314311 640913109 830001063 285409795 307119793 533855153 838243517 246456099 913899094 345348316 846814807 278980921 401283730 290612205 106683353 435101723 841101440 935431600 836238008 829055058 915508499 258770923 724307319 947679664 515489341 563808927 424215511 708778294 696439303 923903115 301871066 286712981 149425394 287992736 249806786 259520722 632459620 849392875 969901784 492883714 661848479 446585926 708284002 222199942 846103275 860492304 180266753 63807577 678509907 575349221 182543987 109191651 174232501 215453667 533795534 163752468 53667904 257815830 478038129 306127219 757494770 229335086 578917011 462194138 155545501 707303447 224415984 351849400 538488059 394633738 381361506 780640407 644900220 862209243 707418410 479597422 738189790 619480353 148224055 674790811 637474252 982446142 52237847 270768372 301600484 104299976 460236531 335155678 234492577 566728682 266774513 171746883 26740024 669511009 454514152 630055243 340241331 490602743 550941565 762543106 454453131 114261312 428434544 45965705 885906138 576402572 73576197 667561433 105210853 79820399 510521145 701920896 570364270 592295430 705851683 334995703 31848997 568910111 529065715 140837704 248510480 936202805 742248989 4740851 414106702 585943912 63909780 57801284 35166898 828972638 691118933 594281874 484894573 553699090 205898072 727518756 274269052 767625318 408652732 193633760 898550027 937002071 634219640 850425976 715529550 882716389 90522463 545733107 936530207 997188370 863436770 941497955 418255321 209199918 684250259 263801302 377040603 171693973 739880480 68641665 253117934 288092248 8496868 615660380 590187503 562746914 213159037 916976624 578961084 273417459 376716106 230496122 238807735 108753281 787425672 665537824 951444349 313475847 116343341 458482902 385990555 847163240 541876095 454177190 507757482 137302554 689078593 126995132 354715394 72060329 973587340 519591864 21159874 808238175 549721238 302031548 149121476 669994965 540279299 894575850 677755956 316672864 937336057 118850357 692493704 493954356 886033761 21061409 140617763 358749250 755391498 767756977 317636494 540147970 724682884 293319136 197651023 697052526 64001959 319670219 990263143 139356992 386396593 137605668 669912061 16829011 481436339 587816276 162924350 669036215 326929095 450221167 149967936 945468820 874060332 16223314 51959761 115411955 44820870 26381679 142549321 103801314 577862056 146455712 493921002 736068402 257233234 483462612 420434136 688571467 792032880 964476948 360362656 530430171 241606727 557757896 109838584 198100118 389157682 948303673 273072501 179087867 287033017 683526331 746061855 319421437 119441199 634390385 575696395 98359093 446795457 214134911 746147700 305943281 491515910 685128639 193127129 857957798 644534089 22215970 197806070 270123343 601221924 333670645 826993230 463701494 779297803 521349158 682756365 872699786 820311627 194549289 176078444 846217357 190916983 234886303 496405564 92077801 301362431 428477740 509926235 811109927 391262613 772446119 135921359 638835318 383624922 520125959 394692036 593837228 809716429 671203170 407136953 642899347 661798936 971346031 399497078 812732284 437147463 961897168 455186097 585944230 606877798 545849643 734522535 461622774 394236857 427753082 671660485 911294371 715756570 134146035 112985013 275595295 935094902 22025509 492907833 796194000 641060798 832195226 777714666 866306032 991100334 34192230 585263548 269756482 195835550 372981056 941631704 943070574 87785017 807078356 691937391 491883769 794700175 359865135 655190405 925526797 587210515 220209653 896764698 696913452 155324093 132618689 47254401 489981738 768018405 414332511 933171347 138424020 487582006 795689150 948562395 497765631 949505200 774708299 216158182 65669466 526124998 534181909 194276244 65192805 77862304 217394325 370422711 434806976 657653878 455424894 802404673 263228346 490337236 236156311 253480343 566482653 932368909 73687751 401473613 575747724 291452924 535958774 298890574 561954314 740815828 145492930 756518668 201801609 301191611 841338906 183852534 767261700 580327847 216754864 936629248 389989026 469870014 252558493 281066564 219840120 606092686 237420026 441499518 252436526 500872952 733485514 139129456 90260658 458467644 625142451 649648468 500554204 335379523 11574379 649851359 879832786 694091100 305962940 961538007 929662139 40480315 648482872 544892577 897420496 896686268 505527005 594645051 710335193 341953399 849806164 436932919 560147243 995537001 991365558 127946257 891391133 38266757 645762013 571583705 97819564 860880265 178065498 182535969 40195415 71278261 570550414 657138828 17340606 712049418 156987362 649765629 820302577 597207709 651109598 86395124 56512609 793653310 758410835 14805115 114210075 32091737 203001977 364567280 323464206 468451626 669537475 776220805 548574396 538970786 872089142 870121787 447895756 872922965 96095271 572073717 578582268 820296788 135535309 667866581 582841441 124111055 51643872 25519247 718282927 399463795 438649774 417901228 907352371 962189693 509636991 460913782 992575286 424314188 3342303 937286347 230204591 328386333 451299278 224794946 226593876 488623728 655567722 918249316 264895788 145253347 119765570 595880807 384045173 851936958 325842913 180190144 668881697 739469483 158015650 389379456 360764525 821664134 221434817 976744392 646161753 565057978 466284661 485466828 114048565 518869504 992766344 152382211 294161280 520099070 725705020 327747569 848244677 435661289 754507225 407453573 958408675 971913193 194655398 214806262 690575626 841006643 559718041 868578590 931752074 139849760 442275087 424309295 965112231 450068038 218386286 413803254 532852254 894082623 654283455 103362510 840724407 277572413 521661118 389931028 322434794 823905131 500142578 203157885 504165291 304951589 601308451 596678499 473939559 627949273 955730362 693795721 334218396 272268288 120683805 210294210 565824783 284077411 955830821 726133808 723406238 348039264 764892297 222741727 70831583 349038031 989370341 811503446 106987194 990810613 461188976 651939533 935958633 431818736 78781695 708466266 870660775 823859604 969384753 561896448 655778142 458819835 297533032 565165168 958979921 876890666 173504208 903791786 106843089 770055002 9170706 914768509 470655219 460089849 638821659 378765999 269575213 952959008 89149750 279515020 843733911 393988914 899796173 348891088 706895513 475247357 628746646 132167001 317324136 639298985 973367968 68374856 434481348 537556454 477210390 989518600 856795150 854967984 125939279 237871526 741844519 815199520 909015691 143150063 213305208 227486476 530992947 193405621 654087699 820174432 186173190 975392187 423529211 849390785 501695893 538194400 619595475 696483450 646958542 141297139 66329304 335404027 491615770 444589169 600592440 531544967 529321160 502983364 795973535 649761300 942969668 365748327 962731054 93926520 923722416 650507875 287140023 356733885 700536727 426597573 695091539 254252419 685669367 522449134 952635773 289388647 339769805 830616829 719256353 814136959 966922233 266153863 368576783 417040187 986141189 179691553 778490974 552370319 98530925 874413167 840386814 636253723 455652463 886855806 986476145 754383299 945719054 114939559 107641735 831339155 143305353 207885941 568757593 642226143 430009656 458931233 618614363 988433899 856309430 813732912 459290534 104623889 292721983 279236409 869373474 786187518 228113999 898978677 215244257 29590913 40765151 140682140 486585801 649791171 814638243 202671658 974048910 599823979 909237720 542069144 513101960 493835963 152047090 736953018 1042033 829296049 456664389 772154719 924358549 351458097 85689491 775992131 179357664 659799330 40650019 573316301 470957712 437635275 153477585 935751763 441994077 477719165 590946521 192551198 561004384 48744250 461218725 368349852 69033529 729803157 719073990 5145678 70338477 726380219 123163611 360787938 309707949 843591511 746017686 316974094 717657689 585310195 688499581 114134407 321594681 619368852 295147280 831982427 642144911 660824440 984251746 416998883 565803818 209272939 774770972 585980746 701247268 264452136 484195206 274862137 493404805 477993725 664446570 322356450 33280163 833570498 669203700 486203254 735139096 77531674 95049655 883130818 740659492 175274380 560505201 794529742 273788408 321989060 737928013 839934437 75695091 436213891 846049942 639286072 317969871 719576017 66513618 601709913 583491223 292342158 375798618 815502921 732602879 389898942 679395544 550262936 641372653 210709956 651585379 707012413 334502739 403757194 230542298 377162899 651137409 576633581 943581604 104037262 687427769 568322228 97771140 250600436 898120650 879438915 589873827 87003482 223898408 575953777 192682631 480433498 79940415 294941407 539078459 495729067 976233957 160615765 786689363 121043382 841010215 175050136 125806292 38887852 738426538 168342267 950072130 497367217 44199940 636739327 630278637 8931730 428235800 765582701 553426774 163326914 834836141 580925686 222694638 819864120 296100745 147478872 920147596 136605619 784692142 518152562 99604036 111366672 607108009 7270521 685365548 496100047 879172898 735863441 247948277 564242236 748609865 19450218 660140555 92561704 6454745 44347718 632162998 23542789 975295863 944952959 322104185 128509019 440610390 788705073 47833190 428921899 530628256 771188261 680323894 984917782 636698768 855772208 620011019 758595375 188723049 995957606 380003617 569805462 17331768 674846392 531777721 475843632 28559342 992186723 442568269 875278394 897062381 261774210 892484354 209172741 257925491 502019095 833223080 553889691 745584990 808895060 750273644 186579741 493664923 526327585 762188802 464386207 950738618 964168030 881174972 352368355 754703573 793867265 59838037 295934076 410559200 695670791 801118876 449921490 419245566 404259750 572793779 38865246 818082893 799252432 290129842 11501607 419668047 254040843 929553230 739383484 707822242 203022569 62350412 492333774 492873028 127206431 573271998 575556682 256594645 587050743 273672027 836315221 204915752 963009702 683996342 718687165 578288168 289639052 729394053 494755731 608475815 942898602 340750611 906064465 971392685 384905857 608098451 771226944 222825463 375056410 196359350 880806059 331542377 797319393 589265494 652077377 349801816 636150134 571370682 322976608 529747214 356020803 770781524 104168117 57884479 190959988 620195402 53221104 331286198 197363013 653919494 768368673 634724728 237321709 934899485 822496995 278302721 37895929 99186873 30889936 124371545 934850626 131526805 612490587 764903234 185831068 566319449 151017758 752191931 264551407 617769518 459786067 936893396 816733800 232653701 865054914 977633352 263413088 649781304 882415482 896755243 330201784 501248529 722215704 396218688 831955440 817305572 391492786 321270848 284939833 90116610 378652401 581331016 774328036 315201750 694063843 700677198 99807096 220738181 348590526 143354840 438050979 256526580 152563537 634839738 413974615 327359505 186699452 909887922 483656349 76538392 125625039 156421800 296677067 262225156 845945025 99325863 735983552 905846347 30283690 60851471 413279869 274838808 770778638 463818335 594719180 525722134 506118728 657083092 753687836 164870671 281188521 310967797 915426036 78129137 815235394 161926894 417449973 99723192 172347332 861242257 525679754 365163168 14705106 671294302 216820535 704515259 705138329 416443383 695756609 261560939 246282164 207911035 435346879 944296819 964536633 433702757 365189655 639268220 451407059 751117253 910424889 664006876 542410032 274410645 349251847 217078987 929632674 50594915 787217368 121933578 376565307 268220918 611811424 460944053 678948974 631041580 787415406 626565795 986869626 231336404 213710987 316829750 716508108 217442937 202402612 283380669 968913737 244545775 501219425 929509817 192712031 999733874 977216072 254938447 926982729 386849070 784684312 163814548 382494547 885818405 98559373 482956166 226907844 673840864 683305543 687073411 432519678 839685661 71978359 446363910 494200855 253550797 209312720 500467477 486769678 794919522 430491936 660323157 306387477 200231253 114711649 509840125 93282527 763072098 542111391 599147507 703928165 344635851 152766538 584370698 516101721 687919905 399298417 612075783 102610877 796365968 46004529 394823263 6701171 432067312 344028902 737381205 658492776 620580938 596185571 843966518 339533139 691414168 514228120 41925323 213028264 837557018 425252742 381637165 334085745 564548589 847095486 747892017 586001086 851030644 157738286 456550749 7979501 948362384 309759650 214370315 169246877 103512148 323124341 800179531 700740354 247322103 179428955 495546258 970595388 237533334 722596116 153172996 966618386 67293300 587329423 556280299 62675817 973926606 183418320 522704093 781466127 436836945 477401531 66792480 731056303 503203183 54643861 286256007 397453125 869717540 545721496 292385641 370051640 926168018 138440143 347718752 76570475 826701210 659541142 555127498 783771595 398536491 911984282 679987045 886065791 292549925 220230648 650689443 457597839 542270397 704620724 760269146 52138985 537629803 212403726 233710616 811693452 163029091 938605078 324497907 467933571 303220030 786734679 400195408 352265948 251463638 29671000 13458467 850606153 106641058 880150476 845490931 812088228 6399886 744618720 58736111 504747105 983633997 604961304 219485891 394555997 256913445 840501502 663313217 698600545 278983827 424309638 642623304 309290439 537596175 566331187 357197910 347638199 59650513 887434079 652992901 672661164 159456746 816312597 226090161 126167959 745882259 202419761 901264205 921168877 818666902 969918503 70563616 254736371 469877743 228950326 7358970 964209676 27024060 967691761 157272010 33767309 494382820 339054333 706251456 480179536 152369357 584811791 903760579 900110551 595310880 74426575 310245962 936785816 315338583 80672068 982979587 872924396 277326649 879143074 887330582 491624386 886922525 872078492 562907079 787430199 139662493 590157852 734932649 118357493 314432023 831924907 167397268 68284340 708541704 380809688 825167291 560155712 939718652 907524853 708078322 853962686 922953410 128766564 128148869 989865255 530339995 918582019 515559312 714535606 590721225 780517989 43281193 25366615 813806776 88286221 671488541 782133222 1955078 991384503 55294407 190708679 358150977 128379473 66541498 935770914 971344173 890058425 53151268 774335490 858493230 786113313 998112426 111298358 527944884 298323652 382593376 824343528 485796376 29951148 669953087 101157998 612190901 56436588 370181870 106084357 584290481 868025349 344528090 377507747 522331485 707280428 788831138 223101604 339241911 55952528 238724906 290074003 30387538 334436623 28592050 877259805 937841453 119538911 897839813 585825035 15156919 480258814 988416396 965877009 320302229 584137442 356042486 937280202 946935320 602105594 5428213 501492025 864106838 5539000 115920883 430653074 30033262 595941844 80476420 617738827 978029475 21327898 207715958 500668521 856287055 671530218 242894114 338449418 463090921 51900609 673678699 134404298 7964183 663914271 472612375 642629936 16647826 474243428 256304917 934831930 284281493 558525043 102444868 364367091 703481187 317440314 223361693 429490881 63446655 498143317 453908604 576152825 654227482 368268532 543662279 991388113 837599058 138646762 949477783 233089587 685068333 326850339 6746443 500720389 290478250 723008239 998805425 70129144 561153075 596084615 49849072 160936885 405151608 431736818 366708683 637289634 921277148 374408481 191400833 989654100 126392929 457605226 463907600 820499397 511555986 891161050 781614898 925138834 401654238 360965049 744398720 497413432 487303575 670060949 260569899 848260465 335191681 426050242 193540919 414118585 847729312 893241186 509406511 789847870 76371203 154622919 458522711 509729123 475331669 370237505 645665257 789058015 517668758 670816977 582870908 519877219 216719669 133622690 789600271 123054526 893810707 912861303 487511930 773098397 425069862 963855377 456865418 384014037 723217367 187330233 713162171 379261117 728419343 833906384 640164391 785249627 250497563 541151677 253956924 249258306 41555191 580204670 195140961 80897729 626545418 71083388 608056913 613329601 659639982 963768282 655380714 746884056 229079052 738296796 355020863 337945541 808935036 65282509 398233516 566720596 579809869 641444893 594928729 448714364 943172661 789442931 737948226 271042635 242509896 405220945 865324213 841990651 316157112 536548897 546596337 832989712 116559206 452064589 938595489 94783352 956381320 914751834 324274250 957764137 930918831 959860021 149623651 827207485 432631831 983810929 565485686 986851261 430561220 970457756 776290400 468139580 910591843 731344099 151367513 727396358 873044880 419671202 874476444 91976471 410431131 984565128 78389934 779537677 682625497 255632714 569728195 445570050 202215414 703538035 2666713 596721402 536319451 283877289 681137254 951080138 580012361 964944153 723909394 22078193 695631853 75408885 722245038 296525233 32305065 247964761 570073592 691825816 35275875 735497882 596083107 959557022 890458272 159698163 929859997 833155520 51870714 109643738 85321790 886908737 473679305 416624375 471856469 62816381 149080674 974157746 682462550 2952422 66250107 518697097 784020712 130074890 135316663 498761992 248211727 945557135 994554036 960282045 699008991 169196565 541963600 952399808 18596365 279881193 988654298 535076732 124996364 431296062 710045338 522468214 345846362 145301489 293646058 66717461 787112457 343416036 915999095 526443098 552911151 224552002 461230857 868630232 320498513 809373729 565144360 339801250 349722826 986874671 862330112 253890082 714758137 541661513 234227946 566857713 189591425 807914514 957638393 691848599 14340502 85021776 177518878 727874752 195880535 944108344 310204456 660112305 206684739 525858929 376410388 763472357 412137693 109321217 420618273 454720442 281645972 592097529 957389280 922319100 870289224 817651275 369075168 431582493 447131830 200207017 174145121 748677860 527277562 976159250 670473953 604972601 477731721 995252500 782740078 754906288 78624169 760886840 425897287 699784501 948732364 578855196 335804678 161055805 11023983 209545600 238157159 584293439 196385457 933843141 476052906 524937615 769126819 193411482 467015257 676138043 732924332 599401868 813325638 964044995 185034821 716192009 892952258 214652526 366977727 752081509 979325438 631180761 23650407 355041461 527427964 74274287 19085636 506553056 764851437 997218865 411105483 713826093 355159278 777991536 732737990 153267246 203111570 811917042 364620596 82472070 681636112 694129456 863912451 233757255 396233494 633174116 768271534 892272764 316797036 884348247 137977379 476423908 326982435 156390147 722440759 70992812 26877441 582288390 605610151 974296786 166147468 104064302 917342749 720781575 823441627 174970579 688755629 54779552 305804499 497503072 301654332 902965398 301885974 339887222 547095708 294478748 349181105 965515741 213415439 836716483 345449691 509735474 696935174 648291832 562082788 869458505 444920573 429255163 748077557 792978568 242302247 297804174 556676260 16922490 207806280 765179208 33127718 385400986 110287458 852240538 171897201 438503102 967986398 143900714 483831003 512955113 77744983 910885674 863180589 330234434 334727622 864153163 53830196 357256871 981184177 74892032 917584431 616869151 544977026 496270153 641263326 325105879 103085166 37895837 509996822 229983670 808668249 665456986 861311331 849077619 30177570 633647907 256582449 270506668 873282872 202715281 700437223 286884277 871673497 606559991 281208097 742943964 914946483 649338575 60617885 324430253 273237754 576979653 106176110 288924655 295767739 137530194 988026642 136261977 459564676 281808205 672275474 364796851 538592013 267546095 906704891 32592635 13904180 527780032 733896827 770149745 101473395 488196513 125633882 636544456 941387170 828274842 252268998 716356247 622974798 527115869 428280347 215213495 575259963 905707836 883586806 585559263 374095787 895984206 420637925 98842105 420307528 997192757 613324549 410168935 121757430 532358693 224929717 523222933 990937049 189609375 465717059 434182705 946390479 237331656 953690709 315944561 315160883 326555627 234062656 920653269 552550023 504897824 567604605 238691215 752589669 147080002 964571472 632581734 272948777 942343601 801997941 68074346 645436381 930491989 718889225 636340421 995707517 592610530 977840706 209510883 334288050 476385363 206662843 759384154 804833547 207698413 453481391 73985523 346332290 366303605 640184663 59592466 763244392 81666039 68160816 454752695 805231977 842455686 755980949 515457309 104642357 558362653 499426672 678951602 939741001 839403642 537791433 741678710 890207678 355383854 853927946 429712173 497520249 502939833 934108182 613081769 493697664 474743062 734997297 502717835 396453233 712922876 380116112 898249688 477804158 465520761 235687302 409047715 307136761 158040056 256848575 802269165 499291396 839029624 67552312 715485566 196723138 121076312 675670885 458867730 178966713 825904484 667617178 189563604 859399737 835707578 835431351 487451969 830610907 580839163 837544772 100102407 897553141 285046124 217716502 850598485 627670581 38555216 973778769 431801591 855666871 311190755 636457639 483798847 595697082 355316123 412328405 867898013 167361003 981437162 725287760 576079177 597208586 263993366 223094648 483696860 903319713 114829500 572780877 291254607 383890053 735828799 460650197 358897017 414182771 89718527 148102015 731144651 990958538 598429421 524844453 446225762 339910534 858176442 302581486 220038545 648202823 83138112 737805048 729929288 806315032 643179302 856447798 612449311 431973650 19549054 67136370 377544973 85234715 620712143 234610629 122634649 71122359 986954667 856220008 610052928 252742608 654018115 791911178 688612303 35346997 269272622 964978984 842589306 233123344 279274768 555609993 212856793 439792128 387777844 409923305 939161140 550158732 555995286 911521136 673683841 398022949 668331164 52946677 439358907 516757732 328958918 305708702 915181348 424212304 557496661 492502355 300007616 784255152 284949752 871498752 421243982 114007268 925315581 938809256 421720958 836426464 391511404 824208997 581415009 237482725 716987556 854311431 10201503 419770784 542308285 103875986 784874490 699541018 121306119 317374583 167342138 94626237 403275321 301377229 504823474 486391311 554461759 710534084 669708956 161599173 55031891 823643818 750424784 67468358 749807087 128377087 937774021 478020611 589482982 503648838 167139474 964896733 568623325 576908672 487827639 658493309 636652478 579134038 728999496 557987708 49049916 970705451 693676411 234430630 505918120 414712500 505414124 744605498 350190391 863220285 994527143 692888629 383452404 988207587 624977924 933638672 826921801 328046505 921882728 132879032 764599192 31291547 639778633 241282404 70705965 302797086 403170817 575296002 294532878 879205312 138032820 158276372 832297333 41170502 921076532 665785034 184232213 50793050 778891739 582800594 634733016 335611913 811794735 340216173 879655371 57995297 894487624 762349083 838551781 742885032 959608265 428977981 731615294 634005958 460158938 781640831 975059050 725816880 986642371 265081668 840021239 287568462 730842772 362173064 473849884 533451047 667130268 120128504 842545695 119587953 289398069 952236388 90914550 445883907 659601338 783362767 266239338 458714302 298226811 374455162 199883926 864955066 990310934 152079900 253819356 962261849 327926512 526565722 960953328 87067421 380137501 342170912 840145239 422967319 530280160 681789682 647007463 137551794 779889352 768369560 881085717 535897688 747120530 756254766 439462659 939849147 335068368 204542986 10891622 959806711 348092260 358140064 239546442 207874350 991898917 760756507 725553293 54354604 59026861 133287432 703240030 410228110 992107023 172444379 631840421 989272660 563304562 69269413 415924042 155698956 767939776 658552137 312900660 366050980 53978107 548761781 383556965 4942521 792644790 215771773 958511557 887678309 771478942 3422908 113737333 370185740 303902696 207332029 165698455 137999698 756318674 291029231 799178265 276480718 808791536 824134789 698419405 242649463 783617373 221740115 196275690 961823321 199553830 733480951 101694049 66823920 534334181 584811629 936967151 631495065 123381298 973477906 891859651 540100837 568190888 363952499 707637984 970580605 599105874 673568332 133683097 565367383 515805895 62572248 292549235 918588276 21460383 348237848 167498768 907266397 621748038 345453890 381883351 15387261 908282815 528869839 553755223 545478460 992296727 731292000 67358362 773510588 696261299 611472989 64100101 480194147 50856034 120758362 395523277 599355887 980843670 604568829 488912496 44765076 500958951 721982967 84171988 60885123 745942926 501353942 353253590 903442528 904727155 853722356 828483364 904220004 655554913 338076572 778907868 162488489 617846258 37503954 908259208 727094927 504735342 763638098 351352354 849275589 81668510 123152176 863035667 888200744 487670116 111409677 963407366 563529016 370611799 165652107 794804056 31467557 128396996 568153555 906990076 578839609 27741346 984811655 135517153 230234375 756998939 453343458 405911544 523283403 883782379 332269867 751976949 917493467 867762009 259053436 384215476 181745443 387463519 463313187 643295108 432949845 80721253 242648900 683026267 167005952 728569430 155396884 880019887 702042626 774538539 366402190 594711547 604026 650316265 632288540 886031613 555354460 630861640 913235199 196099583 125067216 943395992 60618348 964023233 300172084 856249088 968921824 61053782 173067722 400001991 602102063 120456930 303476542 194147632 874385374 328693090 648635950 97913957 531957383 20095265 844961375 87875478 386336970 839488349 124512725 945190788 405320717 361379007 479275505 840551526 584565962 702771849 612881877 197996996 320563779 39135269 328668481 998724951 8672283 873154179 820878992 361730454 272951409 304795670 565185246 329037606 825642725 840576552 648975390 883347476 791862985 779375644 160336403 276333076 474224845 617411522 503675679 344295829 367807923 426093472 937334231 144301652 106440520 282365844 436431603 273248569 854015537 419257867 64468797 199398336 469428172 185567179 371146245 752070577 843016281 702441697 847224451 849528907 391101507 644400766 173008873 980700754 818708330 554026716 107222167 423886193 746936561 21003003 282922433 924723982 329581888 967844253 599320202 947780250 540496019 804316403 497137301 626260381 949818809 302646039 771145350 70464785 63106503 193684922 854830092 385013118 784783252 240547724 832858955 90081183 481303843 295125228 979274475 454833795 604777181 859492212 67379690 7007091 24338671 77348286 613922030 126439988 308309127 356033029 973169701 380974056 185311394 82687670 236968780 786880887 393292679 807286792 120962915 694535486 971090729 727580263 929195067 428438031 958440790 581381544 687052121 647962723 860528515 236255417 296289344 663956354 536932522 33824524 414749965 707841351 470157746 865604529 773739139 119649724 91249382 274310979 276787369 764768442 818142378 252281766 757733992 268292518 690881935 296541651 500929316 496463261 889706245 460613437 999378676 723775865 569351882 597976463 123334449 749788996 118479451 249722456 128534062 732780106 174635675 473748209 804106163 315285580 810466603 209133897 640223583 215472590 340810561 358674420 197187002 357897767 648814584 52433102 902069261 22384235 560700893 246581973 781738012 995924858 270285009 461430830 652880894 151914344 900430189 837642633 399062358 506345519 171417751 273014273 544760328 102900315 366895540 741370371 902491384 755389289 520420458 395521711 31504499 355965239 987865276 422639813 163565216 922522401 300459244 58626951 349516781 949862400 40260255 253394826 830265222 103363791 391624094 894131855 634315779 239119023 860381870 657277598 150794289 106425476 752201606 259076351 402345735 493142920 575228628 655853443 854538336 731822576 653493749 40594336 518519516 829044780 849914763 190571630 454662765 53535603 984898211 838640921 365906523 372604300 483202659 631487030 455820217 779910377 387834081 609513084 888826851 54113323 920106714 210297040 903213074 928295455 811475223 662645059 878215074 850444919 896138677 948088904 354411010 298329755 807689622 757418540 936396821 381117439 332459190 91858028 785055354 934046182 393483067 525358585 4382821 575870208 458923828 968890632 538856621 541033391 219454065 644153360 964548048 721010036 538136992 571089833 633049009 245555518 248390332 822088659 81962336 962678595 205229383 653422285 891060252 110902062 982584627 972972350 329687456 409355453 348892243 884969275 488366073 799096140 759417736 938931776 852004948 861366082 403315371 76485029 684163971 92029738 236757532 303953111 919945466 146951626 991948863 338265920 159293701 343774378 539325176 170051606 989692373 623540653 647952574 852527150 236502619 80310713 811205228 777748548 325390751 105949962 168090611 761408396 130190844 320731405 234648800 8598315 216766177 222698300 751566882 413061234 336178709 253425056 716294347 792839076 688400688 545338489 231754600 42894600 465290157 789094446 74983447 565272039 412907459 560825065 257027508 298755842 785588704 614451949 630551506 378928939 426076765 71165673 622179878 4793729 672255341 355833667 587302289 397344389 200011051 881614739 163103837 582843399 696532042 860815810 777608391 448298606 17491130 740856784 771999911 320319560 33937004 998141342 322684009 210734442 169847717 646864564 577072495 39559020 897530372 907142780 477602754 26011895 543459042 757825097 776554709 567030311 261291141 460777442 911994994 788367105 322168291 496554257 570139175 880614798 817214928 442553297 207684826 834491031 712852053 336009016 541037240 856014210 670863426 394767189 847952421 731339454 807842938 281786521 446675223 162250489 946747884 504463840 344026248 707238192 345768848 651988390 681200458 19827825 660115379 469986203 718666380 858640892 713201650 900936627 107944576 217847887 473848226 913622095 552947795 396525883 11505272 6318078 392218580 184026425 661327975 615082635 228863167 213381174 716000407 984012263 641425210 233113649 803590657 749269060 159875946 314859272 5390273 425739299 673469023 960646469 271519585 682856536 483676944 395767000 249110813 351861428 278158219 140556520 825717331 420550148 264414816 809068628 255684416 60216791 239359095 647888877 370886112 166579813 430077572 845450944 129468446 467563937 888293282 275133788 397962965 286032447 798118775 216699096 265801030 712158685 988134660 632185573 895829738 337382956 568245663 615756697 861169753 671653018 273776166 517132776 414579533 552013693 147703323 605572876 52473864 878169154 202783285 529011506 476418269 978660817 425417658 55307798 939700974 209259236 923981674 439487840 429096669 734746198 643719336 783966152 153187625 375592564 278707138 724853732 104491542 923603038 301457969 721607766 482056992 133441823 82064800 707297091 691942179 668941517 360189936 650164274 678401731 826397265 800161752 45669299 783733021 780431167 726189772 596035853 936041917 529636163 673504707 523049369 971590410 503662937 727275835 87266339 267877160 198758272 156739194 126400134 324069405 935477336 401088415 609578343 873844831 889813327 219772353 199317037 682498698 378738964 976811983 193766179 685265057 545309453 389199589 841077764 952328964 709446251 405091395 689523948 541774988 301040641 361059648 64708520 810360376 305116422 767002458 112178425 886393265 400103474 964951623 533407082 911849547 496558375 635923630 992061524 921744810 275573482 526458752 141125726 498923700 485182585 329995449 781794422 105193089 607944464 316061420 234290714 508365773 25017396 12099304 307830439 758653830 874547348 510630193 207570109 886012601 303434296 709674163 853656445 896969863 438377390 91041970 230817985 755096739 540968189 515149843 824052537 475256691 456615126 218717104 786004568 50263948 478759013 661361422 436192739 383183310 474037186 310100783 795654430 139664439 448980457 626890940 976486103 487283502 698292691 11482775 117871318 508822373 331343807 554739422 624443931 367255767 681360202 650990509 572356388 968234435 968322853 440090686 343022458 94611556 174160562 519680582 342634705 592790880 255107490 20611552 631579292 227755719 486046129 188156441 871334850 829448461 914105615 816778307 135820558 959695068 85270482 126604131 163435223 969765139 185751645 39264821 183546876 9736562 816218186 811578278 177088391 617987605 201568170 527774016 867606805 738107069 858810650 763360083 812335170 24242823 188663057 941438518 243920955 190307061 148976027 98146765 948175610 346013811 310844138 479717353 551629222 491705976 614910729 463771375 675304915 312258999 927840732 66981640 751357811 715183464 943926646 70515873 762939744 916628467 835838718 508816751 688947401 316733881 129851674 348820962 515291035 533164105 883646445 392640755 684489340 790936073 675286289 644574342 434795547 4194468 520088773 185277627 620878765 809871021 451150346 158091353 996496506 337817464 423865751 456402342 15027487 952600353 409998350 382374646 243625847 535592210 756800301 977391526 897966990 201577828 598727825 70192506 733053491 219298827 117712118 644810479 49548893 376609656 501609059 335256491 34970359 359137930 996899899 276637431 604528007 445079141 393310360 285370144 249105711 339105239 85673699 71765877 154149314 439593821 748459974 162954470 496351896 977985878 765069623 485291709 655222634 211204229 522423618 907005985 519953334 348151080 898379631 322197971 864182052 231213982 306089682 265738422 779852348 920686359 235746624 727293212 923801638 357676140 60327643 623848041 942555981 678022199 959881692 461784877 544249994 314709231 565109686 6859353 735529127 368494948 439619617 910396269 594753824 673825849 514034954 558292221 330689241 819291688 692131767 636522205 277171946 452967808 100374896 537837210 829797686 527521000 271041756 861215672 483163419 505382076 942976530 499811062 669423814 550607207 965995164 52951312 887165632 134444812 258967404 203653256 851810720 221170025 538227680 145087359 77577499 184107369 196484624 731416719 505575710 917566297 660090823 702479250 771633481 74175453 391782661 774495308 145384504 543152507 194725417 317341911 161271522 527630371 79659204 648265525 930433662 822952741 132516646 849182931 664510104 223783690 479868559 861962842 273125817 746612465 175950931 69472255 744457721 916258605 664182464 404204579 905050990 648661927 883561993 542113304 832525856 326545510 337227643 446936157 160110499 988451528 423142989 665985927 500976546 949495307 204146948 872999803 160723934 298039431 147763800 789342641 323621026 317604969 20424184 801383593 987220633 415420992 555034346 622650583 592653008 521498231 591635888 673945234 778285275 564400749 856867589 764556412 668359827 518148271 896918903 601839093 926191014 951566669 487602208 762469788 990405046 171582043 780788923 62872256 603287509 621269472 892598041 732232156 14762133 193625874 184050773 469334001 657168841 848975667 427586539 450924156 535515614 445469703 687852805 290738771 758212340 44966529 96904539 55375250 893334401 281744452 716533677 529048983 396863464 792602726 191880335 43034545 706395058 955133081 247800077 962512815 354912771 587607911 938627181 87852857 549822167 558231252 165279917 666598117 210767501 875982020 609771932 900428272 40294963 426195847 937346299 335270297 90770185 59966563 563771428 868028298 751202881 352612938 836681156 18963442 388139834 212422173 298902336 277637922 538392272 780168616 112860033 981868260 86524943 443560917 976868751 351916677 446095474 405235784 792901867 967050737 229777456 242072847 891239491 597766887 966769004 829932953 984838853 645024466 874566187 702849270 173011129 613434849 38215288 429122048 481720928 401480062 232065986 369739248 917474347 611967830 201673247 39704246 466182887 289261429 978087367 682268215 449455966 172263897 525470423 953488149 557925709 78159323 243992808 360987613 779341521 613526718 752154012 257835873 703044904 922303192 379894214 938228464 262631769 9230653 757485846 220807102 303990277 69173196 138975116 38935722 830815030 3239967 513725941 878279431 513627032 127980896 77989660 550934483 740946038 877080238 993584578 850172487 217726976 632880121 894205474 600755616 73926758 505392810 548525363 145728096 925395868 813004630 857872811 251426935 773765967 277294621 799834510 312963013 976761622 524217185 691995277 631286140 555662315 886284111 423073024 295279888 763877083 6679810 553972880 597955049 25887120 93098988 57860875 410440219 321222580 206163068 158504200 694872969 280692153 469917789 813817046 356520295 545096356 964215084 945321175 14039266 214063172 997808923 902641912 197273307 208094650 344319261 74251131 525571960 610875069 415355373 561916470 900405827 199656472 838388772 955470493 745123931 991945024 492757040 420807094 857513739 84205242 560130035 349892837 525046175 308207081 292066012 719163592 433178644 536431167 831211386 562020498 666632558 194498156 856584964 853703888 731689718 148161865 104770555 827800500 61880703 4720674 948792006 137998309 207065471 401026807 527230877 281076321 492663424 280757853 435905132 790629477 512245863 693704874 315812461 621927349 745998019 754981035 333893990 410016215 804752742 626242112 606805517 268797844 529445636 932387094 443044485 976753414 568614087 982678344 942048178 741259409 820393530 51921326 886890952 330602042 152320063 704500416 114822255 785933111 73559050 354097013 936079593 370234554 27907884 388730899 127237639 404622922 719591492 522582853 710439928 930255529 752786288 977999817 316462734 660495348 186302493 893550995 144700780 421770841 555969653 309674785 915822018 478168053 109783798 637071759 11188833 226045004 403976021 327478598 601248246 803399635 304468511 777127640 171084585 106549851 486204763 98370615 147740389 11557568 344315250 371167554 502906610 29913881 235974205 707653276 657225124 566647170 170975937 395197237 1872108 717741931 321762681 837459000 775361849 264181021 603724571 284428691 328053736 489889065 194784214 30225237 762329244 330816469 583671948 547634988 516164495 308787916 164905024 711261572 938965501 469992183 936486359 366011091 611362150 265620432 742012312 783678330 452641202 489097787 137764495 991147187 471765679 117296209 320514054 333182191 481346534 501154560 307030553 703458921 280132837 71026442 547664749 79927571 548375297 365196979 51328848 315976233 711952731 988129020 239642861 769517560 386713740 273466073 915324061 243038869 207635386 131652730 510358648 633145156 845227661 908654028 453823230 82453038 480321053 899577158 532112651 556151783 49505223 161068983 430155120 580085422 796725307 728404705 860988706 985727343 458843694 484697593 386443001 296369565 134679984 404078742 535158193 616531344 334089385 178783296 532450649 584663913 63010732 216275859 732170024 873490381 844939878 173157309 58569458 614373698 146737808 486821523 89728842 318519389 467464571 873019316 239388769 253724724 221751452 810952182 62916915 493304449 157608118 799693601 930567729 956792518 22382686 865288592 720885531 696875420 298523034 400350562 777901304 215014118 781184421 756105232 262411693 159465464 998893431 660616228 643857658 376452594 294663981 164676309 229991928 880928900 699779956 28321832 797814180 208507769 274218712 341374901 275271531 346936863 160141389 333408206 329718244 207612056 121899384 361383024 449031787 813557715 479783275 197974898 556289174 841413948 865414246 83025260 552108893 450963529 899212040 813549272 536970777 347782099 948562202 799607094 704036365 644463215 831174860 976587407 403949402 413925346 248421205 117061195 768147900 446216947 4688889 940221064 976276271 858502351 787612063 971871423 730775494 507294648 810671723 35397231 22063577 505120161 566585521 999080343 451741071 927228191 304212424 471266564 59828587 194296445 809781153 34219231 257394479 794813141 324826696 691757958 8355554 464649192 642727555 105359070 454175802 993106236 785074155 637725893 370773985 811234653 208230507 231606753 133020485 858648957 289621307 770153657 456173367 83942510 963773992 721153913 167438605 453059606 347882741 118545825 916764708 392405843 22117426 570104191 542607148 658433966 56772310 346327098 91640026 155037778 449623719 33641604 255882934 606873999 408438954 330155076 166389916 102919210 985586800 212715079 865325863 2241061 287512886 394572374 300652868 834060897 650893450 958594356 371448886 152246533 242486361 831976517 167762153 517493839 441077523 795117020 672274175 5741967 934382811 678347043 110336516 246205873 730098964 755294100 894683669 180675033 769049868 948429215 389082058 135410897 410616692 917298312 732592819 496102489 965641808 215344430 383149111 686903873 592751754 413186999 59770219 728619551 533764614 607418848 588302167 140264423 119780015 718496945 472546414 541831295 440672236 758782851 940443187 823923980 259628967 86255008 89358524 529114222 374546812 986968926 23349360 74221553 44338945 859053058 642999267 922012854 438980803 393431374 735837293 733485248 131652688 681731076 82294969 354824211 135908043 341164259 725436468 566645795 550321972 35056551 66621380 290519303 556101018 2120335 552504365 413706470 954970109 965870435 946093549 172014611 87855412 706534280 957751450 377970836 80862039 502338924 862272310 419617481 248139532 831675078 350448656 713115399 614356451 166355317 217013502 58043981 771808590 180407080 88651317 557155953 366647840 226739557 837126061 424326022 299272073 133244831 603574351 492907295 681762793 876216426 129247213 437548155 696635686 302897024 946718719 576157322 398775407 852868192 602408599 578522954 989725969 885309083 100977262 124636031 870893992 757763342 752899770 108767869 892307543 790056310 128111930 680007520 375413866 237578993 264953063 465715965 999986489 453294720 934908606 345544972 690340968 844363327 10896483 921855126 720013925 960305953 842054126 421599106 538429430 788783241 661826756 423981617 258709935 767785544 254985096 401434187 86625570 59537476 846240269 852309439 882141490 154964039 757594516 895404883 185146369 615687083 167474569 896482670 164116319 308322988 595836720 52947901 247397593 412994385 436286457 931655910 637272996 79027820 3986169 59088068 590288653 461628180 819829709 235975158 8208455 432337272 992068481 393933360 168904977 840703102 883912583 607099592 620264929 362915649 344463589 690599932 133243324 81351480 251808714 837106941 690979815 114614494 697249123 338446569 889403485 253283801 64647700 520535509 563316295 739864713 36992040 146028583 950662970 383410458 130742362 872300932 999853921 470953263 334289337 497357500 672120059 697058068 483364286 498399290 99526746 678316383 284630164 574105384 295902723 101105921 243332164 739727586 406975980 522578495 410010003 327046241 427909076 763015244 926452089 99491235 468622560 798187300 626199777 745456361 202550701 173821724 101514307 176979256 379727410 801104999 924180577 124041303 161181230 217188068 193512172 377565208 613038253 803043100 188910847 748516803 871365088 749966281 707476042 444784963 749165564 848496737 599371285 292663844 75754871 900814037 651833257 141495330 611119345 842652186 664876363 477679697 766507380 544986468 246419884 644366856 250399806 82577219 740839002 521552104 487941724 32628993 451346563 413221637 960590127 630633877 457240383 788143897 193949296 352523924 979408203 204318230 389186167 218498475 799263384 59092061 459029896 9153759 92900926 688151953 749969598 884670251 359253923 539288195 21127888 875210106 710329349 181746527 26828896 94151519 294960356 211564904 410682396 985261690 32085142 78144684 416344747 981086427 144871425 587971259 310368304 200253530 999572975 629152288 334029600 597530729 759158199 668017200 975046308 791058420 243117202 664500159 293898230 62714498 323430392 275673359 499165611 520241021 939383058 831030764 998257224 809257991 681451814 496572249 325444493 443565674 375462564 436774071 89258333 323066203 384417155 415022771 607854680 307323612 962715033 702757730 386054918 799378895 667373354 905934882 763845653 186441431 34955590 925168328 88743140 672835120 433883386 424007967 278805257 717642255 884683699 210823584 549197322 895701221 677988772 772011671 88805033 312352621 41448811 723412105 510897121 265927570 241883949 184603647 513507992 230631341 948237256 480632018 792723208 566851039 965820179 58808487 855316574 214161366 29688063 662609354 534820642 450307988 826705132 273567932 666309141 137893661 910233764 780595639 623481475 557603919 380745252 455063043 166651417 10806473 150240342 174775152 981167862 301759795 540262833 858343507 701380293 872580747 854547995 594655605 468961544 736458202 561196175 42531648 411810988 733279890 52204515 75848822 651476778 119151167 662059063 682555885 325987105 478601207 816298077 390249316 734118236 919446558 63793157 613133717 269577188 3491444 475995530 404070305 246318401 146323089 49730947 143851720 586825600 824853968 619262494 373948025 356779432 704015388 306726977 251178884 899431391 787594662 854883736 422493571 650379214 705436170 137358174 294291025 127885176 226576790 249881575 765836877 688366689 244351665 937631447 55123972 722090622 327565980 435213539 392757245 524084795 169101475 663022614 692892610 389207950 780414379 302855907 20210616 518181040 215126152 396472760 329934833 591164437 660998279 302710713 582006678 874565771 360225384 690963714 784038124 769469616 914652430 973556636 670103591 71861763 801771473 67573671 13439331 758560814 60230480 162348297 574096891 112859455 693020609 855461424 793372767 316480598 836751250 783590984 174895516 603277867 849100878 651145768 277413404 309717259 428102784 645675113 589432897 974166586 106942667 957143124 78960676 178761066 648099185 329268995 80632208 459463933 833274404 831881834 284445029 406304913 464804616 180323224 859653872 959455811 293567024 142924209 797740117 336575271 320697686 124523660 786360096 817086838 999998226 122606606 620610253 281701887 411359440 414040159 419304602 726782736 360711166 703110831 571030795 355933123 118226682 336462483 181016173 646923036 149711407 945146139 142911663 248325258 839629292 256413874 881027269 912399242 487239990 940731317 920414445 469157685 123935171 966692986 663450871 308810002 102928358 697291451 82472760 536229843 74341657 817256084 959365420 694214945 378714829 112955262 580152930 665431966 255357576 586439308 212814282 497657983 247434658 995941906 806265638 970075812 134953844 259409105 206217345 547734081 839110872 778201036 109202183 184970572 940879826 817461828 389420440 824571466 595237863 404224423 820893000 446259117 494422400 210680542 416151624 909495278 714502447 267215623 407471512 50808083 913171961 743284014 291439621 93528480 266137345 145144303 799426104 833910890 115288147 42995141 267531878 617839113 323515666 91992205 710646026 868502810 126961088 70314757 718338066 684632104 848532919 654160789 208199851 278816128 108513670 97553688 251007327 954501071 504146439 387315549 206127105 289575790 14102334 617172857 260385135 130383025 110853507 752846401 356768200 189211022 775514876 63630357 430285306 731171325 246991131 981965280 601546536 640244626 749199312 162742248 161521671 418259476 511815611 867599638 851071595 989362163 525328799 617553530 55745867 745290881 391172893 730643277 361786309 290177007 251729000 951679951 652403919 39669008 15770940 728871340 156088385 85924253 813502006 868074591 755715489 342195037 568695070 953555986 814472243 852634701 377606209 121581744 118406750 355027198 850571431 143734705 501146980 217324111 530110987 403908875 2997206 665158272 140555171 128016018 248421556 652186905 290974587 662788174 246508854 241411883 84304562 818607350 975627069 526032102 511156075 94165710 65767392 431849562 718431040 359264690 463985680 978301813 583485921 414471108 733293948 391337641 397496568 294279433 524654153 783260278 628994777 453526619 849111280 745257132 327207203 755101532 452753738 683028582 25151350 731770063 48630222 942279624 520388323 822521602 124582584 100104419 296994555 337490375 295112519 194093833 759843893 569072394 639686203 404380015 282999178 656887575 466247065 984713299 655627481 901185626 967964476 177046138 898840365 634423264 350240205 45296840 587056235 363628472 592074777 771054478 459853668 391551151 98914248 118067786 612248175 207028702 14512926 982086495 509897657 675790340 398800354 160493349 34743257 375667616 27865218 537878897 293818108 459707570 998786430 94577102 272278890 784172327 138966550 759620739 367568370 928633480 275675198 978566271 56458637 831956576 165819575 806330224 952416912 596263960 303316960 68081798 711664794 764301461 65897184 670455206 349668342 682768713 687160118 63124841 58771446 559924627 681067239 228633095 128126715 934082060 526748555 804489302 571120285 891568101 143057957 643996803 813958913 240153219 1229122 322061474 55911363 824328918 68275740 924508356 293928189 846532414 306740735 640491259 421715886 627065547 135339380 945971591 409782956 715041550 709222744 789836744 555666727 405593479 321633016 938464748 272379107 277109280 483663156 12043846 533659172 16187868 704439244 447974557 360803525 560558661 182322309 555309399 903309877 808810317 157346893 820681247 229779699 61426481 180215940 820639635 515613211 793322806 643767461 837079684 800338922 411572058 390698266 60083718 579229769 578771557 351801087 402323777 308297217 215727224 449195736 482162654 315490628 54236997 951838002 918300810 459879652 165412919 581412600 156629318 846102275 775981709 833108347 78298867 661995683 892841549 888324759 309146810 279081340 490032537 636497419 635071041 749362269 882612275 337441697 19902674 492274003 374140108 128287442 136031251 504151871 976843468 368324958 520227358 447939601 999283771 770358030 227373075 893007213 977353632 370010285 188159651 907672455 678282800 28136605 83100016 265271667 418639391 587749568 908297291 5494514 439697999 678447127 642468818 131273655 466201492 587800195 287698773 209478990 786548307 521516781 94308120 415616163 163753005 279701834 225263662 912615907 110215201 699358770 79149872 451927887 648751458 565085469 514315646 569737425 352979200 543920521 974780529 980771033 42182104 58845845 837436871 657885013 979601289 809335315 146751428 785875365 866673901 860223191 470738726 74713935 531953671 305112774 1260165 200071713 784299618 288280981 512916633 503662995 893279563 882728955 842351301 733311510 923042329 136614557 533735904 562387690 248811624 921973813 544174586 557140574 542437570 691040661 270217623 302179063 991433422 436397782 382616213 734604970 747718982 722548522 349243613 606281070 300517676 329429412 400806620 885795434 831139827 818889647 333046571 143488916 59370769 512871158 605257744 39977010 459785906 655205934 993119961 830369891 994698446 212559439 478744289 254551494 185352161 957075985 413314739 686686746 868235206 489469057 766406945 139885189 756733810 21400182 682303251 321908282 108630228 141413443 486731707 251397781 60300826 494895411 739628343 67213762 150917650 763512580 795825612 740569040 16515226 922579360 266638934 442038452 125698959 542403251 871621637 925674844 447001312 353348751 13494753 205325938 203950135 262314610 528099709 985774479 6568958 755742821 766419592 576417101 410390657 725811260 252783100 649509954 32600786 640533655 754772055 103708228 95151013 606730141 856094786 822928708 657422847 576943227 485084383 911675458 539922497 740393502 625164814 361803835 926970881 420240384 759640881 903777258 990005029 156377281 242014639 859174267 307932450 332843159 997254381 80589298 397403533 78299115 900872618 536807746 318441233 72760442 787591800 538352428 708096521 515421121 27936216 958451410 627300495 391099447 170116834 593636884 187139795 604684401 642093920 167968896 511755849 23127923 772890254 488024521 428758812 284514034 296485385 116525791 195815982 753380371 358082703 640676685 745264032 370810525 995251987 301721987 415461725 31765629 892102034 942461479 860093680 758601109 301932417 133141753 132765771 488079289 489455843 969914100 540215837 450617273 454453845 190593479 492289123 228643303 117210596 339051032 235934754 23731935 14710843 888983137 663421202 841344303 2855723 410902516 52409233 730595365 285615147 947929611 553544681 35597052 446328918 706504129 390166501 228161266 277649414 952702417 590084849 386466858 177689920 240185862 829390208 409099414 204359741 354575354 398477862 211526000 55314222 24363960 624469417 841480007 414045022 885827107 832416124 58637288 609721235 403555856 717103951 266057528 44513742 393832031 858568671 755260980 967319547 701326144 598238683 260161345 26294210 47987935 15864117 917823922 854935426 58663842 343385738 282846285 373779516 208124529 862853558 176571332 114430180 568415386 696389776 472064300 997157978 425533621 135666658 842313800 141044085 252194694 849627693 801472700 644126345 71985534 234634113 841460960 456169761 885511127 521229697 611875138 773794584 184297257 832987543 592238854 886939817 788196233 866937504 81906258 657899032 969249773 782948272 170430749 683805622 859441547 151766992 251178709 909000451 398272018 165216480 815621201 601438663 555963021 630878501 957017161 942896040 363352627 340653666 375072279 245550254 115542787 177285006 770623790 931806048 416128783 264121260 423603597 949253818 665403471 277554246 32784073 466196150 529317390 72448394 486041997 917090586 758916194 618894906 481765290 850595403 227216938 562518400 669769836 601989383 761491264 702998524 891631114 364495571 665014157 35098042 23127738 405541973 807614123 475336758 911155345 230978880 709816040 249742473 971830673 709426021 688748925 659543209 469399329 683120951 376454001 3785787 335340579 75998725 140330879 235165310 762912122 168522019 858957054 98597236 324077507 791749558 469780014 132190006 662349231 327277680 948200585 680123288 75560379 943757106 46576406 629806549 617157038 786139120 495801958 891464209 347383874 282300334 468682855 330164399 922161499 584643730 955858072 214779057 151242250 734330516 432760145 201397482 281787870 758469413 355095420 8213594 626675280 981352569 587836010 747924874 459113960 109725131 565253309 774137252 17446410 278941643 292923552 169543440 720093268 347271829 224288978 927129465 800072545 423028798 144046421 721100700 106413641 866574345 736014986 474143595 344946659 233552144 5271622 805314265 359249383 100076500 118254145 90932239 737854369 960628046 180719888 773723436 9118359 374178584 99691761 661833642 174813298 408910325 645654004 181376514 104862639 347515667 318678500 387783747 957909336 140666195 730152329 362793162 344979641 410558498 379794620 168924835 190699807 735321932 290939628 394537765 360607079 962717161 355779953 846123490 848272254 221582188 896189716 378332466 492453359 796710751 338196859 744581609 441960378 725545551 155672666 145917385 737157752 928299616 498208104 656462887 398399235 931202254 869091301 24643573 279065150 153910585 923458856 252775244 308726227 255277069 703773555 144373335 177325781 824966074 329060663 65365790 890308736 10044220 31618061 891880369 125043397 457765069 922582306 27787926 504581838 689302235 326976688 671453196 142321727 410130735 490500734 641578078 456654212 550681963 431969063 686643255 767513183 209264090 126659621 284315836 56785270 506472429 762456003 955743611 150853328 866631504 584476012 187992624 171446865 913778219 98586378 834925999 548389226 799206764 808981635 481884192 813924964 374737429 695573360 956591475 753218893 72003270 226957195 964264154 645820857 147654113 809256919 769700769 230283144 628613397 799495512 145654560 710817408 542512634 748651133 748147652 278088435 517673148 27872610 891997369 665618024 201863036 206247654 12573195 764984273 153416968 186024274 571602025 954291267 981430353 110479865 708924934 92810680 26069029 846634143 745459388 7612816 545561293 656118654 666164656 175911556 778008580 260389599 358679360 957295028 799363240 417201501 746803395 239356694 560032594 493967082 7683415 747248622 814508210 39004143 220920074 582184273 189574483 854824764 744619300 230398643 362532324 390598462 10493471 621440199 528732067 745774032 406614407 80643543 330507925 757137722 976888972 986528447 97414915 480797902 176499278 377855547 625273078 679151864 918707467 368772958 166861025 110770429 786838774 722149142 215356155 917518974 945229639 565638941 95612979 355479309 464906136 532751372 768293674 473229105 271454731 253236595 440402950 648529589 592234948 973559618 839936754 416693606 760901463 241527134 112709829 75796172 753034917 535828986 350828981 38595974 23833163 51966068 279258980 961118581 983000944 805711544 937629877 378940856 461374167 899007345 307263331 847013109 437779562 421762860 681417691 961324176 170660799 59113062 759911084 380045051 889126829 334219511 783071858 839304686 713767112 72001819 753014363 855748838 262734217 704881165 66410174 388961578 307470136 422022432 457244589 799651168 724810215 489461002 922805530 601537240 670983570 93881755 935317164 625398655 938079552 947258094 645426961 900075711 33741691 491194363 259381606 104884282 128961213 239620196 140921561 2588477 143141357 749377232 352581666 540382471 818522982 376899316 543736808 182936433 262630013 239327854 597012919 235485988 617542930 125670486 645363758 852861722 967905971 895713863 419610256 753014063 539088665 439369998 370639984 14428049 43052592 349761464 256973720 8222932 174956341 385828830 249912052 638116913 365505345 918215579 15748920 582432124 637040283 769896183 855742166 434573829 641179214 912000115 44313354 333274673 38052185 45845468 505836622 53213178 767556253 707863002 112842750 977742905 953928423 727604880 741358158 242668887 517446731 798854429 99636192 534624554 443738747 979210149 588443553 989624625 381521726 438243923 281770539 481613730 895320120 850475938 70719248 36502433 438659166 908651297 943634064 40903577 230888453 384831121 135334482 429582648 471797854 641930359 679988218 243306533 911309911 135034924 752274616 20451928 414656970 318887149 401187185 866230289 745249407 848392371 962023956 155213513 640247550 353667472 909045582 74880979 190750859 551743578 968535197 291225682 173548804 880982967 480561395 376135335 144603844 469373851 877589526 547126678 840137872 665110422 280973955 347097795 900947319 830061666 328549805 591086602 341412335 874850384 614011612 405459105 696217906 261856819 479749522 798753708 777208937 943595627 674286902 852929315 984557712 110112448 605319292 446490071 628734711 379171623 702022091 940255364 468327846 652974035 649961165 417191599 992406036 630938874 382457414 567824559 522809502 610792177 525197241 756842244 309770567 207211027 576287064 647959749 317794559 302048613 432703759 456324764 118100155 221863620 841406956 837006180 42695919 227424015 997196708 371315268 429402536 527214436 746449902 291833450 689890098 67474017 319844203 216011007 680269864 866309951 902457564 248116261 831951126 328807836 294756278 860159615 574693129 983173886 945331932 970574997 428225897 755402168 959555814 889798905 967999105 108094490 262462511 366109558 956433627 340197802 698991347 177356589 763333417 972506761 612100990 736507905 989040382 189184080 276824124 782235174 86578140 131190736 523972869 372150151 684788949 643793947 445159659 309936760 871478143 528219901 83528948 599658908 717746469 249488651 760431254 587922926 608476491 521192637 339458354 62456745 653781587 729240998 516944373 142899262 355655770 803374699 368614872 433591898 445900657 272480979 278105200 958492974 488834263 720584974 401319391 777676170 821647341 218129489 597029259 109164012 533873298 259649344 596767434 619540163 737983028 340227397 932094384 492113060 319159428 573397680 537086241 329278954 489809733 17471100 292901154 324087980 912130978 934013081 51460877 530198085 785130409 623691335 736805161 324609274 68957059 44562602 317265091 610680707 981060117 388791702 434395150 16367988 799452092 744975667 663383152 402301374 293997222 308169596 385084897 504304004 789417009 807431087 132741165 870874033 427677829 730867533 520643948 452795033 459014941 919504334 932887272 854634907 567378729 304211011 727451085 89919196 785972070 273826553 827059217 122822282 107479908 413945301 836222376 493713748 936423988 388559848 680672064 687735139 888203577 265219744 742530790 293582265 889755599 546492379 908373854 541639653 127994010 922095949 983084473 273727770 213469116 269921251 879283533 297535962 726110917 357995499 630613086 437794350 884253603 956746814 62997126 102883907 16914811 393949834 76079695 677141061 858682095 190091734 970250259 899474674 184429963 763785139 661135787 95916330 106203112 882476270 280135463 145765409 397126162 881020558 274249366 104407112 8293490 100670851 386649710 137015036 290784436 484526562 730980088 939255860 135817100 825223804 240469537 327587213 524362451 440134510 649917171 916416447 167492132 767362504 346866931 571051560 738118069 580802447 35237655 721227906 645322585 795728408 570596647 733459145 703921269 811564312 721144282 939172083 871067772 904850107 503178034 764719048 291151230 611748378 927068937 715689193 780435709 414605341 438812737 414490754 209896140 586256333 618870070 46788655 954885110 607611328 331907266 900198216 197521811 853226828 948679936 389853584 201170187 658278263 478247635 123538300 508239785 809814244 405756761 6628626 996368419 941943387 77753547 949156706 211026051 300271943 66564905 511279854 542574833 310656145 783025059 679229314 457341558 650452057 479612511 414618869 9063599 363630994 16300206 505339728 212737881 259421179 607723171 687865392 66274711 474955702 748333736 864662932 183672073 186011881 310974168 915544615 716730852 837297166 166355843 403671766 477032082 216603897 285845550 428386538 972028474 899481034 448516406 174101012 688960893 384116791 319224868 83824931 982383447 738817489 576436565 972443510 133129621 714714108 414395083 720461728 364326146 577081064 119782654 382196606 7125270 941768498 871754011 296601757 880884048 932440568 949190773 948072526 867947756 525282948 713566091 755128602 760751391 895291332 964094446 646270548 342061657 222053850 485425634 489344832 634949955 562726749 291879724 891454923 96940329 813229161 167344979 271817025 968982602 362070874 696495895 315804072 706420994 502742017 763577553 522939669 876172045 725647681 369230168 700969259 191564146 918826726 592023367 603116268 242602883 403888350 646189848 126178772 560719424 46099357 703751328 843362368 354999735 328452302 868361313 790994119 824512629 549456592 411032103 645587193 364342951 340438833 21135816 27958970 236193533 638364839 493509774 686656271 419857117 396871227 674858957 621047785 287633922 80757712 14013852 464759026 643338875 946776917 129686667 253790397 768499854 582350275 23924957 565762278 288648809 730714266 637738902 464539401 662535673 848306699 251882335 92992410 454090997 709698569 723121146 812221627 633738870 209227211 655733537 727298901 57026834 653222836 862119447 32435089 399847571 233234929 305783268 228225407 619787304 761464021 905556677 717756786 326262866 124183388 301137011 353749303 547595967 223790964 745507913 326128542 967416905 146508305 572398361 125388821 223614221 174143297 287366285 391246781 525623757 310360944 760573037 845646944 367656650 80296912 885626872 102732590 532588308 675515645 405642587 470886780 400866424 181474155 846371589 610581926 157679983 167614863 310616590 983096690 355167367 618427767 927710561 806593068 708409721 32513550 669716099 539744407 264624848 572738639 192100336 854346874 940106606 716583760 466771891 232782451 790322710 487794768 186864156 864877432 673694303 768298462 11611552 767796271 244820562 863060249 328067822 500451976 829964415 49548532 511871479 586231948 624405617 625365164 642553263 546903057 118909843 307518266 196910787 287334042 209451472 816429545 300598171 530922402 116481367 582951307 337070599 439857770 919249712 586354971 641806026 44716003 435716352 740153436 613771278 475893736 252801648 358602797 918894970 497955253 60578492 17909643 622005933 763801719 290230511 547076207 331333365 428359714 754525112 97332175 161153036 579464009 214010357 238423016 543844729 321034995 556633138 203174697 684220486 578831802 657087909 453423545 651065035 992848928 583610757 661669176 159558426 719955157 304617271 341473303 525795794 300278472 202171881 474810072 402431028 287951732 225379734 346454787 725559414 716514886 114394436 387496639 187404545 342262558 953767886 649570074 677258829 50404290 69349370 646982913 890524068 462138103 655113405 537323484 565640119 652898048 464804250 51807746 300871569 295673491 260394368 781294721 775596574 605698095 659144023 962560714 522915790 914363938 665324774 616628781 910060632 70923399 369765977 680712870 960750919 52576106 177500940 970184106 377227087 753666789 257769295 767237121 582090593 522072677 113695349 657953519 648288077 74868117 967800703 541515384 660508027 195663225 562301387 16067959 571085184 48895037 862359519 205309363 720367154 429912319 39482538 401591221 722111986 295846769 659375653 207555666 116964015 585705866 8400934 98840256 550920174 367222609 464896602 321948919 60814739 998446473 690737959 303365442 984888437 999382048 316845282 354460237 414122663 927510227 500176420 8909413 13438298 643139118 490770456 408004961 232369111 783195327 507150782 901622783 805350483 859745209 539947189 732048779 976217068 314269060 11942986 709369504 209678792 835092548 700534810 615598910 481027049 206880244 84199340 772093893 231026893 886509988 603779971 311311669 352214993 3100640 62591832 522187757 666038387 620995896 465041157 973250440 804098229 688610221 253020805 666265275 174710658 41336968 169027030 448196372 421149485 322164662 511773517 352977650 8803014 63951634 268678474 237182082 46128578 651861429 609625297 929543051 977128171 681036285 241271614 457135129 259018157 637871335 276642787 870556935 493711581 106609312 358737194 761008148 423085712 951352561 994103707 469088955 480125268 53093406 621187482 906773527 831706423 962937087 892458493 36008197 845833125 685040699 162714575 213273438 451397558 464650353 640832516 176273733 348367174 870109616 107361610 653604991 738210025 944273905 189592544 821727800 289761773 777278901 181491008 651094010 223705482 788070773 750338043 149774548 522042309 316912233 63306892 476694601 255458859 301546968 267288903 373666935 527720070 32888868 759960747 190709421 245719293 493341240 644486960 365676454 187763657 268699836 977728784 34264781 746435379 358400469 317445387 538216986 127886630 723832413 417423954 336378941 825015473 914435003 276353580 377100523 528514461 499235398 369879048 622083300 92794775 140748804 556096551 49969166 778745358 582328503 500788221 839909315 4127136 803140570 530423089 706982477 165857634 394128306 493641346 8052831 132146246 659089984 139929047 88381583 705589321 604289507 203809441 673469758 504063834 17769295 413937500 787690899 821765930 489526708 222668960 78134857 125406758 326522403 695526989 773772015 5649953 570919055 496365268 739336153 22969823 206903198 226119558 375038825 859099223 872226361 550310560 891172860 602059143 813770202 185814199 898523293 482888004 78332307 363520924 633456315 893406906 404191288 262186688 636806163 204673079 673851117 837976830 781387589 676247326 606423104 786991732 568641377 412601036 838773079 133041594 691669816 185936351 451201740 713899113 895483329 361226764 240648424 840699830 173821632 489095910 686695410 452886614 833066345 253734980 904775847 797644048 509084229 602888062 856893107 639206989 946981096 651932430 452869571 724917100 957921385 941065193 972003964 789602545 985159154 864497372 516914096 73304492 377241262 870731431 768521601 344286719 604482981 350540888 611954499 236072271 104410458 772462268 855768202 302152727 237742247 161091215 623800661 994636699 523137785 641230368 686455330 574866509 499949543 443727957 33538902 297171340 514502913 255874780 436698323 538021440 478310137 628395868 60154502 13074144 572809160 446885970 867056223 56976772 753852567 752320023 620583494 442775096 496117470 359790743 567284087 144760794 714280405 678091641 727055103 95862530 569197426 186833116 681917274 362591351 206251132 502853582 662990875 106538267 208523024 729086011 455683676 67596126 30944023 661902418 999919628 700680453 448263284 552276910 372496005 494746707 330085050 901167937 911274814 340459473 469356414 943999031 172296632 327974381 964320787 13201059 832746943 470404338 592894580 741332282 673361676 323741256 268418170 45537628 84794682 282817299 408483492 647355595 383710081 810300159 101018559 868106676 453164516 187163589 535309965 714257520 418372947 672933073 63513124 883837051 517920283 489078428 354863485 854179377 489384954 469071022 944778915 910131559 723207110 942280594 495930770 213944191 638727360 556634788 422542019 449877836 962200573 478569317 748436556 40591445 376108586 658077906 397073686 914203564 550565034 215979389 52097647 238192991 577657023 880482709 817044793 794192813 394643092 360971990 426421369 213412140 979873716 528331563 361462153 231389352 576409258 473019370 972596844 114365901 66900608 567637692 436284889 253385402 552252488 94757469 618224480 420145162 145124445 307074991 41287209 982101183 911382531 793866926 789218108 833246250 37431539 320980904 260120687 724368109 571498799 769978125 751371973 461005425 861894132 416368660 638197435 826280720 842617764 118071051 594866263 639811279 262082047 780907144 983233730 551563900 455681515 379984831 672894133 619825437 400406331 328805323 116244572 326572604 778220919 209593539 835552035 871376141 779279475 83384582 490915019 937124632 54073654 562895022 950584079 73804997 495799899 587271835 238194891 672527729 464516253 571769643 15562737 137884270 914070314 168765708 339620672 388765428 575221495 742715301 440268034 76999655 862817887 240579269 789764089 284412979 493774496 395596700 562722307 197410363 580740633 342203660 247530576 179492311 804143878 54206109 750491549 343135562 731170327 771417414 275886192 689301902 807683251 750823399 765162398 262406260 359290601 791592389 915915567 94879515 987124922 156180372 662848064 645952561 673968 992811399 204756840 28387931 893676156 31471681 658074131 400431546 630740459 376697231 211435888 658272876 225637001 422038557 496837382 972743687 219675153 451770320 140121432 25137484 650684219 873608724 135404465 880073898 990081373 808347004 715215939 2759067 356703096 202093766 169898453 592098464 141925452 484227494 283619976 862791551 487640669 540262934 728078497 616951334 17601410 217617552 911795881 605517698 430325568 651259007 483738560 968057908 3678238 331567217 293094537 111169436 77364233 605543845 292219777 853534807 743692024 642140578 401449697 409361895 316643526 74006241 637293740 223758339 249115464 893788402 683454940 34032220 313808140 131008249 213005846 846257188 628552289 16808431 328488472 579289163 454094144 983809396 935560217 467621685 922204680 899714989 390592369 213938799 779064629 745621689 217449196 315543254 115060357 494304133 85126868 947710249 397503109 279373716 289741600 292156204 661793304 332104743 239143445 480340546 293193337 573190487 584533876 845682331 853753154 89335673 501948048 516106474 321120842 822440151 455149788 884112013 925739842 697535050 707657288 31616251 850298167 733171480 823309584 475912116 784373508 305497011 163365541 784941843 427995742 245089625 806980486 520175977 949856714 550505540 734107732 766340398 515677439 671594213 641213675 481043009 736312150 332109823 202679975 698417719 533908591 751568229 83015097 917098269 291617360 616494805 559933461 836939798 754459962 755628807 757086817 756562531 649631650 427182784 814390171 86518573 612318473 15646366 789713056 553646316 854533142 705357075 234237275 316787464 337064392 731106775 66725199 312216114 704849448 732913980 10890579 867879163 974242728 20565788 980300609 808369453 453554067 341726824 78859155 163528669 613716493 286649954 383317835 499566706 595106190 548025160 647449444 459375225 987318057 166531141 752435884 474537947 30054740 499138181 53734119 301848908 61051049 320726151 82850588 111626583 916083324 726864578 129548167 903288112 755571288 464114827 55390662 892040228 587570957 64881326 288745640 819243974 170495258 497505524 166774740 59149043 792643651 627066799 753484650 443619613 21433953 906718390 202768920 545293905 796187968 491588414 759453761 156428713 143813869 486957911 759077157 251959658 212030176 4021181 342506681 989176912 932642548 445640181 722994518 829973146 344618131 148921898 406458140 31812019 867234565 694396409 140117090 19760536 280561908 882106007 858426904 880202365 170768139 24894788 764352044 861536845 846970773 714356388 361463099 620524164 727249325 343822503 247162078 461997137 915934202 138500464 959598737 600654576 695035752 419141601 653350638 278512686 147240195 534937566 690536220 448457682 839670595 367698762 929139604 862661553 379483497 526182057 943206804 294188525 661673925 814789625 400065322 979224230 743176730 985246152 824405385 717873248 837423069 597367247 482278893 125353672 860888632 571891143 163313522 437671155 684041030 485925047 441887609 784712964 290044261 712064114 408847884 775624147 440955988 702897267 299709591 549688161 802768803 74387241 157019264 591411062 218286338 831270373 953868253 885839301 916304258 786686268 121833761 370742816 612696952 941691496 708007756 797243284 700002066 215386942 512101924 927386428 295955820 835360218 717817066 901104840 713394471 862709436 341323008 785263578 576323689 434678770 56135933 937799788 178250106 210855817 7757030 895247660 731590679 292721938 333822834 168067942 576560192 782927638 102331459 380845488 325289777 678362797 658195673 892104882 954697643 253581132 405003357 18820650 984759147 879867808 970786094 223508817 971832933 826039404 121732229 845005913 771978758 919721247 191683710 111061661 56770085 758720892 400779162 63434385 273165445 696408928 177704686 38980594 361180886 908701905 231058989 450167958 917807701 395437010 523279716 452734975 936263804 363661380 992134293 288683445 987573255 12364778 494611355 949737256 236331317 280437532 540475536 549136610 322024854 704936916 642556640 937765548 307907458 635659471 307418854 279031831 979768659 294628946 189245290 270359174 253005479 535005014 40152503 652836664 326741182 436769678 940152898 611150062 829879225 360977197 557455344 974845901 818751199 285299707 760518319 331507100 19138608 809822 752486365 386815599 227348735 812185798 263572324 76112557 468378510 808878186 458954791 635087186 373397313 693925267 347511634 321288546 111141277 896986990 769136225 448103117 79335111 208795844 602004234 291163988 434224951 290873585 210917267 554259470 951895337 174602532 483669478 950033940 274598785 972807889 463566811 164495361 817756024 620506736 641602915 346046275 92518083 524308775 953913668 845641325 789948799 751661949 202158119 766600916 842466379 123646070 714158760 83609977 376622458 531229984 252795040 898407872 655699195 789537370 754448778 438052919 523434874 403790170 10654226 10258662 195657920 509478287 925838656 258522606 631399515 437845459 21842424 780050215 680033872 946278258 137754225 537412655 783848490 932298573 273512732 466292813 145047284 243060586 184665291 329699220 501961866 542601603 274378954 641466570 363174090 143950934 328941563 638031810 55289841 165824879 808581424 495754239 652274915 932042035 293644921 658548074 591944746 505175861 582324969 809956938 975016139 13792845 670380942 877652481 830138019 539631471 711205658 274727840 993151496 803138546 11712730 297047978 572582455 404121836 286894897 471153123 364589744 214292112 550660435 354897099 822996706 99869369 366216573 436058132 922120693 369895707 566267302 395346516 933251256 64915536 400759206 821582944 13274872 749714349 971323330 61163967 366757062 736491084 933090964 81632182 672193180 545689326 761199581 620713449 911637085 992932065 530314023 692439039 816847610 904638861 96819433 889686204 616806111 492593546 941397741 59565464 575758127 737643229 307298070 30256277 709663590 339910978 267410870 573461555 489463441 736945158 898643870 520201492 386605741 758271131 997121314 763102760 529725916 602980322 554187992 709380118 987555823 30785908 877858803 939888374 463990379 762022687 846805065 610652156 766083647 734635916 874024110 893652755 840848816 154418250 343170295 72639954 263253091 902186691 246613671 901636709 215799211 153046293 909997187 68928178 959964791 100370306 97529856 263487496 44607122 358998678 249820662 394061297 73357190 818152042 976577506 37314322 394182595 435851640 834655566 686629305 674627154 987245710 424168647 563044300 19798876 725108598 438111409 988514705 711907381 570273770 655725918 581389990 855044548 450206484 94648186 865829223 537281815 266764711 793628296 690401169 811095197 435696430 857999861 354745518 323561736 936635510 39549308 457938224 162732413 487935541 443769832 335521496 764805507 419021014 791942463 688784305 490338745 284817607 175688889 520088414 744039051 913366397 896064521 8680960 297204937 738115961 982175256 274435077 66315853 608822981 905346061 602387956 827417721 557752774 554484658 963344458 68162634 884565672 800084801 165492490 893594810 879286040 795511823 272647565 955702181 793411791 586429075 101413475 270012946 633505958 184197708 168315980 566577161 542465948 460564672 131716177 70311510 128346779 751772151 62853228 3598202 794660701 617279447 743050034 6286599 322742158 606469295 875082838 897358198 814440435 293310157 48568822 849491465 762756724 311419011 211633742 729823960 879705554 887368356 301626493 502687053 671897269 171013290 426306876 996413978 776786700 168304575 577897068 177199108 876183519 912948784 564858514 628985480 860384611 776504989 50264942 611529007 654185277 112872822 810270940 745461705 699976733 654198772 747233768 257164929 715463951 698492152 901749458 910841939 864169473 152461280 291259130 319302784 525475809 686567717 626063613 882595882 541271860 870032067 254574571 548138576 946571777 121394220 363900901 680900126 334458625 329920053 698554658 252424451 562472627 553406298 715965075 229727336 631384694 981262049 983443293 700343813 774643140 24281403 942052636 921231284 209434966 405248446 859339146 429191540 326141895 232134703 641536116 735427724 145368183 30938247 280400999 537766171 893813724 241846504 737639691 30858856 570747024 319051604 607960995 474908451 970016535 629790212 169809739 459583287 904726167 632600071 814592792 21984564 72574129 580070309 851433666 326634016 269422274 260031395 222049359 970287128 89776740 165313284 871690623 156472207 822580776 526009770 823821860 324969203 810973830 453469326 103769562 147787582 712153408 806459998 917518736 117975222 315529427 505611322 484824378 563422947 119500764 666345766 47611960 922064241 460027542 332847504 930213911 628637469 331731841 407789188 342136642 950220805 611803161 523079766 421209212 147793477 189642799 566255734 310183601 800010355 677309795 354201878 180091588 850144379 409663111 766210156 666382475 985998516 692656438 901082116 485832163 917743897 391173482 97106132 312344098 519957583 158625460 582304052 395452704 89313401 509129167 23184151 850189669 788281981 324597129 119181781 725093315 842160944 177185196 835632445 69958967 557763086 384205326 859150297 501092644 606104715 716718495 594835541 5745723 268030190 405694090 561570910 242961334 847700695 600437585 314999444 591621338 765531592 632142791 498522756 680673371 850664768 218778894 474712586 485408669 295238410 822528396 940505766 269026936 224366013 124829258 723276097 80059541 865118969 671717682 615800243 570240741 272651099 952851997 958713501 847657611 187608213 895174044 826436583 334237653 386109196 133198814 284701516 384442234 550773135 557219046 653521408 58692663 164369563 691342320 1192032 182812232 368040057 223279623 764181145 209941029 257694078 173689132 902668725 215821815 171183190 612709529 47011393 191836116 432956538 934747247 893806463 448159740 612581255 456086811 630432504 513266065 335585397 950569220 27828559 746127771 707216578 476291055 406555680 146871224 398644852 166356524 860258172 171735468 982704742 429643288 758724376 175286576 452159762 401069754 5495550 882639737 295046284 504525877 137945891 451082951 30074892 784408099 12533077 67990729 817739314 860766166 630413514 129046315 684568345 875933170 3682875 735283660 860662518 881374588 44735858 167047910 315508956 678631123 203287129 488400027 946296823 612110505 957675756 91131783 320611202 850051700 53338288 865787141 356647576 849856198 388907902 830285608 280375056 979024462 821306586 586171885 737500600 616029138 570168676 927275506 499460663 631045662 271737885 5252171 405677594 84035893 433273053 502510399 811945084 525846855 637843093 108268961 769263941 522555905 289178570 246761650 743236342 545062572 876701424 240291650 402418344 116628270 832131753 744146904 683719828 132413637 833721482 868990072 750037163 906496770 757911074 415537740 683582159 180255803 496506555 123580859 528887091 505841398 134866359 183326874 323980626 526089558 943867123 990998514 520966884 322041725 620362539 900649363 616702199 15391542 404066336 834099560 738294956 745458137 482708858 171991536 743334654 293679240 117949254 380538298 845783574 674355959 63079482 657530646 291063793 302953327 936380705 54950875 657395861 922628013 851497534 825241360 322005916 675727350 165628209 12357561 226237709 198306208 80400779 309201008 892221705 917543660 465879610 121687072 62030474 220374255 115432018 78514040 102383105 430598184 696067203 210144 424238111 273028861 751047890 468166681 133240179 992930039 378774212 427219013 1960803 156774562 102499427 861716313 68981689 176479989 66837250 615534933 263828917 327395935 410687909 490689758 33798371 836527279 814609215 78105449 955059615 108377671 920078960 917200376 871216254 465576817 390755853 62523725 34481005 714922987 711316011 205232340 908437187 665414014 816998005 416699416 212978024 237011349 422425984 341603544 501584729 26851421 296050203 464262766 28197324 550052084 365356619 118583932 628147937 253116193 372478556 876392237 415164674 295101214 394929531 475967009 807112151 563870385 998839358 350317821 968337445 333536245 544029021 659715643 802506351 467849361 213662854 719077466 807650673 384665656 680768237 456208510 103835109 302610057 74642356 873107644 956424985 961176021 165578902 20705380 473015819 300492033 468292381 219557920 808838366 566192887 271892874 45835765 395010594 49300641 714896198 179836665 210495975 457171259 957154952 415080292 317765800 714984561 31157215 461034959 898579329 126999992 88478454 812000189 590492871 684265893 190863404 490971133 776013844 697464621 393735723 731841836 417028055 578803030 669060103 185281116 577319586 991650064 437649167 192970168 573702388 799932465 627958322 974433501 950433568 397881893 68295806 328953430 382108654 703177718 544637509 442416502 25181336 199608664 240872666 855023499 157468888 694841805 585446781 915040007 144376814 408754654 596034310 376299595 381534842 614128868 6420822 563684907 134775205 543881678 889674826 180327943 989092624 686662888 864582221 261664529 928823940 190406323 973602627 652431199 250903983 986979643 822387453 734374047 406925017 289611526 844605471 276045340 782389542 331138484 37405145 761851051 125703347 782499552 294021926 284759870 435033725 473831790 970598985 80850119 628046616 35960388 204915740 606544120 733753804 282661996 937942335 400922147 270822378 64065333 421573387 978496005 580465618 98521547 405706130 549120769 226533171 669505439 212725129 244327669 872310323 42524416 148736772 844385191 6782217 745857028 300650843 601984170 851277646 347577916 755448355 341572202 359757881 533041348 81529282 108364763 11807676 405819469 2196908 421506856 494955148 505165813 788363603 889781609 716468625 99188697 594740253 883591819 637137810 933257726 846141357 473149339 442904632 476443024 210604732 302361620 443098848 802383236 748675319 508711712 940088191 190561514 714215691 959020892 61516137 205297047 974702011 346871749 329214017 540691017 459421190 54971309 518736617 981410063 785185462 719144423 115510793 170632042 843558200 993403486 539453659 981146853 669796393 412670083 687592728 635526814 463055645 888338851 888005360 244942643 829684151 366154539 414816314 120757267 250848050 506215612 671576262 40338963 966241816 484135057 471288720 911621439 235252306 548401629 371280673 55600035 362072271 740623134 411829958 254704205 273473714 987775375 971622144 83441679 614361228 276958974 232543683 549213005 156796136 745234831 728007151 241964897 840892527 229495900 514987080 776538662 350908205 802551437 810369201 330992324 873009111 947763262 983424728 883629784 819130205 826042576 449067381 728492296 833744201 868770283 436095564 850367023 688422084 458625221 419675165 816970640 324265064 655573528 321944630 863951450 639080063 700077081 142119124 673762433 466349432 897212058 558594729 836780453 369703320 185999657 966879167 425354432 623447703 401508197 937360731 689129201 117337216 597624958 990052817 682183630 951475558 254566846 157803880 766813148 999101648 846514886 901929688 558727965 367924898 135287587 339496774 435753140 337904871 172652513 720161403 699376583 320275532 234227016 915744894 847486649 746186727 947928118 310149966 162611978 366045249 510424494 456023223 868938056 286419524 705682134 167976014 726783087 435094119 148345604 949253927 882784747 397832468 546057953 682553460 845778753 512099890 518427699 596096280 48291399 835307535 839949635 378290451 100601316 858805295 322073181 832449776 733544421 278974072 68408489 76723952 368095625 897980774 909068319 938875086 685134977 982930431 800494820 620899299 138631956 684944772 519760957 256242821 127716262 668004665 405591250 79640748 251557676 137419086 869596621 25101036 4237697 919387603 649038797 508830961 57274090 128054572 263561569 565981529 76266077 884019240 664545288 184102185 130601001 957087551 668126036 755035643 822831129 882344373 618389258 657405086 324274091 875999083 420702923 16598439 822125927 580754526 342524024 63984812 25389818 793269381 853027330 540108828 703125592 855979409 922906944 608496853 315030658 551829719 298983718 176644009 124541767 297361154 281348913 369165682 966272961 488441667 633927701 885840779 97715912 836405677 186028813 624354526 490130841 62237777 159744516 214766284 399232411 888528691 544356642 949315123 772981490 918979374 803520648 487044335 876051209 100850001 26126511 937061416 499022794 589328943 658160501 359767388 538130809 541677669 165580809 911251002 373873796 18819548 917185606 718068824 225648368 740982817 256102248 975882994 144159579 165374708 105497861 830138826 551554700 654489361 764219759 951771887 71094559 321990889 774870458 617648708 879179431 647378705 335786703 673007128 69560507 726090864 586037158 975370283 143299393 55684330 691320075 182687473 706459711 587214889 702750293 399496830 429259708 371282441 251414837 486678601 997270483 313715271 133999047 42276706 402727805 974508869 499863639 503686150 607630253 425278858 595944829 840771038 373123717 561843249 373855515 306313902 821884012 825734947 34100210 160364617 535781066 599247579 874446856 518513548 629635163 773434565 423521180 619918285 175807669 424439370 644869351 320573868 602953977 598701276 569654403 948782483 548072948 25295251 510257629 460311033 506875985 409649624 952625219 947261710 661578611 796664320 48817476 864890275 691467750 386422253 946755083 445447436 767573612 93359724 627501960 125106098 753583220 920423816 723923869 69966670 275156607 117694357 681453685 678069781 159645814 773437801 633201277 602187672 294442223 626253274 430497254 151142497 631646816 905401027 656633323 467793923 653038166 400001526 856676793 100443940 44252892 429868739 962649358 115109082 964192382 464562051 605707895 381681568 834182642 65965551 810618448 188517986 842126210 50672106 444239994 186190018 751422288 547249960 495785170 260391268 278211967 930439991 807587418 422092693 576485896 280141642 173987046 159680675 800983609 386764574 848826064 671354593 3430067 583131097 209901331 995678813 170145567 685459498 578644073 576879033 813201619 153697596 914396927 917533837 727383644 737582259 131355509 392325668 430559670 325397743 298517499 136921665 244062818 174921695 291257582 29319520 949584069 983283568 731454874 716969822 559717221 605335654 934375634 64155301 815832843 582078814 270507151 327544948 506721353 411239220 245449020 463415572 178303432 130346186 19961578 1042595 460104612 510083623 389252499 950377697 622152052 543724892 958641948 45445939 582992964 478945809 671919587 566295598 757663314 603259295 883207624 295765723 602394267 632784254 968779024 851551470 157716257 766614205 857404323 126081793 783532669 365963382 489287627 446508561 137332117 595584313 830499704 433967876 800332360 821400365 470317528 330676616 248694139 576158195 61913025 107129969 275354848 97038802 677201172 785655955 765162365 210752443 310303614 13219044 403589906 567929647 839670495 293337221 326592513 203356848 572187043 314424033 922671954 530077477 224982897 2689883 232707148 986061697 223281060 864726397 321620141 427408280 7595398 42008305 980566 361502841 193840802 614399612 904996288 388205023 401036191 631675317 300611308 716968678 685424719 944161922 590805163 666420978 173296592 74595753 32195176 830862777 424409802 838523867 482015848 958664201 144284079 752794305 455555033 742696832 485099509 488424474 299023777 577227893 608395532 41236462 388418540 600201268 636542586 77138263 688179777 958881541 28253417 857903700 969195377 887651493 273229103 62827971 322674375 365103432 907567603 87461583 998608415 16601680 18256636 911199183 660995450 484787136 521040797 750422655 996650449 242174218 360585056 671599217 148385027 985518655 928720879 546377924 29689005 454732234 506494795 992645821 400326486 642876228 590442077 627160857 145159 53634632 994641461 68101725 438622050 527720174 410713336 930578987 15920466 516888661 891704554 230611612 771296615 473632772 521799646 896455481 537390254 108491294 880190014 884367324 87568511 213297242 164528383 377280254 97579830 627794748 7294457 968441256 228147285 736049350 535770274 454126788 630024110 127472710 101228646 346990453 690245465 403672565 361399739 814315948 788132940 910103355 42831110 463200404 684294878 731260287 630779995 200181484 174241600 538944881 824318046 888514073 955573281 351034117 829650110 210247596 851267496 50822530 662629478 989876790 297354791 405004144 30286560 756832028 559747038 747889335 119395491 938869359 501568761 482167170 944453185 74739216 359104198 834491940 945145069 851458728 479853139 741789646 204982593 91293358 403538731 7799678 118595996 224001893 966299297 957234409 257944233 456800598 549914017 62995878 178737954 785071049 777316911 940689572 494847730 759817696 62668264 609077590 460468398 396782091 846261465 954312091 679839134 939148401 318711238 555361256 227743247 766123854 765105783 614229281 37942707 382006191 595346067 858659108 753395314 524077172 249159778 743006780 24180425 241171763 38482379 126549786 143961079 732781880 168705578 746869485 813693488 857112718 584849167 241569541 762445031 495481447 461845828 596713380 25313786 219821472 569921128 451025750 50621534 64956289 184533674 563403002 739908161 289496171 390313653 854910983 674475638 819258116 536873399 268184443 672751927 969738084 819803632 252532600 870414179 884262859 384473680 232412602 321255700 239644671 548553257 142183898 843880990 293711179 670141341 511502528 981612217 284854321 797025822 194016520 766315942 178963050 713970378 993887841 822403536 770315332 986810232 927035056 951950712 386690797 908245936 494097091 152613405 968477886 307219121 621587742 699086439 391729026 920173707 189937096 484087236 948019407 80893080 746166719 667016281 754695110 529212520 510110790 394395450 590698732 224972867 457808918 547259247 264579278 603796635 616814805 666046223 58151589 219378519 398538093 691486742 362073956 521418573 350231923 430474798 564476891 163330686 950458846 726445069 84795919 494412977 135910498 402213601 428778320 721967230 13414617 361422463 391467403 173946408 683679347 188235585 618335752 120017387 209586343 617695699 317014162 316053781 206973120 790193497 593495933 702668928 31217661 709419559 236231020 752885007 151582889 790293041 832323608 940139850 675402465 907262253 549177366 969990249 334316588 402218469 470497113 517499935 807584517 199276581 379297283 200835238 826439681 104623497 187663889 477053992 74331695 660191998 263085565 118045900 814567596 36007409 864571951 947070339 281445318 774597881 393689762 460947296 175142260 526939582 338828998 686399907 340615005 22660274 462813260 91019507 66185975 244724303 634029880 463148064 141232953 747014122 965233712 293167099 554546086 121587880 494517163 116090013 620258535 161726254 831647315 605935161 395638494 839172812 633473515 676121995 531403949 999914104 306025696 136449463 173482863 692273648 257055917 356770300 687167746 306938098 22228472 428103115 654660061 290080987 347611401 26116871 415390339 897949838 999775116 717855050 528570516 158306020 192254965 42393255 895516290 307064684 816232227 862670986 822424243 160448217 217742919 874811923 232372465 622129034 982036395 787670478 531894802 130052262 715499321 663391782 995166259 247115599 949589079 877038258 427354712 98416133 244357462 334825553 326931943 545476785 41345587 6641021 817474106 470158782 671816736 894823480 128457476 991384107 971948895 5657066 826216475 928693414 681895341 813261713 289246900 183365505 494824499 805008140 876355981 832921321 973112498 855428903 922240376 10972951 555778508 187070251 147405325 115647044 377371425 626350527 93880272 63500724 629421717 375030670 76363990 521937614 601255961 876979515 737596701 332323602 773178576 85989730 890317906 492599332 838811451 91323552 380811993 298307674 632670208 219343886 897965809 287346814 901214590 725358527 463889462 259478226 412720628 214480431 387800883 270367342 191047115 692352663 192319522 71148398 110389708 552625698 854153301 833931623 648215193 874240127 318032708 624374595 126528947 420878309 409529469 889249254 358139250 479187661 11959537 277933497 624729360 241202372 893344032 77354763 26060682 741623671 109612636 62812074 309940860 941430993 3129782 954964967 446357001 459394615 708892093 158492813 27673530 589955696 392801431 10388400 515406730 485549234 392451059 324355631 650383239 876520651 998604899 443082885 391178927 64374666 964690294 557343930 937606937 989065217 624042874 792320282 549719821 834542252 752891041 26360816 746936426 210566659 402810652 981938344 155818372 852102290 978537612 872854038 474721469 542838453 377655096 502204395 822712361 108039089 175479818 868226729 347523399 734269524 888390959 717339534 476496827 369604903 43003552 738656277 82446489 33382275 263659361 954595913 506196464 421151569 994843539 368468155 948709050 281125905 168875120 429456032 872906047 22155778 664926509 946178 485655744 497849274 852731483 387192017 665085342 401261192 603366493 331928595 399636702 418520117 32757663 598899885 279972812 555961531 801613595 109848970 308525778 719756244 748064204 843349693 982521593 846127146 18264938 643028357 738548340 499949946 460975153 596357532 444865561 210706756 458121371 626176514 771489345 704534868 203280053 64981149 431450584 854802566 345159184 369111764 972533879 215668013 816565708 279402410 546724887 624231834 200386602 998639752 262882061 601178605 203277556 171187275 730478490 538841786 9442251 535478540 943468650 484497298 468734506 917922604 578187761 973620816 716926516 418389605 644157723 196521379 607315927 233932778 742076022 735700182 328159909 647879660 874576674 543392701 567433396 756789121 250950321 565825833 765716172 330930652 694726185 996986497 56683865 201916155 91682600 474060096 44127219 115599665 680789565 230937524 481957602 450449828 702436716 296318995 536946194 404438268 334006348 51566248 244268420 867609102 173201587 325855513 806743549 684497296 247370386 330893524 98797453 211450653 592283999 75537678 433459433 143160506 601366902 992228869 112709139 725343939 533261213 415061363 890410886 549117102 38460626 988274937 489488225 363107102 317361654 963843161 987024749 856644415 775874554 651609760 166758822 782463878 878627933 971494949 835886676 583233437 369018995 570859273 310403641 612216019 208408088 955156254 921780851 857489568 70508422 365967100 992787731 54753229 136344018 743933011 15396570 373153825 43240612 173483241 139415733 893252165 789812299 378097237 998006252 516271658 531812544 687750419 418111841 303818063 306191974 394997146 307485264 200159548 424681773 353354399 400207852 522213303 269917064 992979387 878951998 966840213 693534739 23940176 290392638 218183353 948080125 726775027 481031659 576434764 90014975 236434208 898018971 56615788 741097640 959953682 880624784 843260183 959024544 446906274 424794063 288244255 989921412 549708511 460717602 283824841 575159181 12342291 236851937 922899659 527773725 58174110 348767337 260918912 705177809 282683419 834662327 210821103 456280277 422643700 421842072 40229975 822672110 629169672 219083755 156256339 317914267 692843357 870700641 896071367 340899202 213395927 799595148 417218167 415290491 399494792 187458376 653591632 932116946 857552573 656121505 79735885 945239881 839705306 629671728 114343213 105363272 85077774 734124345 412870947 646398426 212327936 188368170 603568900 853899601 557687846 209410800 710540979 595815269 455219033 864814953 577903280 196376393 63396865 95919445 992959229 941176657 827869085 965327265 528761520 290635203 804879741 628941062 266662622 667871427 376232440 950853001 709798835 102571030 386767710 16757264 776384525 21814936 828349622 280125556 612601241 621890439 416664463 793768595 456957696 852305511 678590349 907262281 732738290 873113313 984345060 867113753 204147418 200746065 659099479 158137461 702902383 419134312 851953482 871499062 589710846 64981495 268999001 940319533 714712515 103187017 163525251 350906539 213599292 712573175 254845024 186935037 249199501 9730243 396853437 177769201 339153070 907614632 657146115 140592564 884123606 929512332 247572003 502715386 596168979 770768085 281198580 259322317 188634698 698093723 856996980 409838256 640214679 140040767 702285896 751567255 601098283 183546286 895318468 655727853 188673792 134316333 71819506 704784376 571465925 378362879 187644269 113307619 908727397 591538879 624805952 723124084 450289223 28556351 46600524 568835702 692652323 524548887 406306383 617536276 952309559 74266262 398255111 94078696 793173071 538847325 479462990 565236010 176394064 192601532 529840641 593713674 983272192 721418488 289350002 288480487 158390777 552127736 781198654 880526102 19673299 578895086 889039157 5020554 333733607 898781638 95726479 191657021 500887861 904620638 119148051 789007826 789814373 98425767 225561083 672721500 206672971 468745331 365540432 530335764 867407640 272895800 256175722 260128951 11443633 536641492 255970273 392407085 685215671 833010204 860746431 399259621 838884545 430329561 15997349 491210014 467438429 202864548 15649235 935492984 265859932 462754764 858496000 725124854 186118620 727013158 82480799 410128094 419138942 489340413 513556999 615562565 254709579 725208191 154228521 503960109 605498413 269433488 442394666 183903804 921374529 622034546 209546572 804112104 604340058 136982609 826833900 379851578 48024397 169736881 581149801 72996050 37936106 860698461 706075186 808108801 909644890 958339550 677788981 562789449 560667681 678842141 725641421 399911717 586635383 243918625 633565688 677420653 688864716 415156364 291863183 386297834 752047385 989942411 227802547 487879340 310892287 383132423 20446466 888906879 148199636 406990388 465223342 172981536 158463811 302324769 720487113 677947981 929830785 327392972 267931388 891072047 232712139 270314945 779026654 990281973 934706795 636298714 455196346 77711194 201659248 867160335 702486253 440289286 77755831 967721658 782449663 448636757 202933435 259908441 117468285 818952516 49980044 157038812 908244168 621955858 499807146 993330912 242617226 887097649 834732022 968778423 253034937 471109991 22828874 886928548 809113576 17916876 717453155 514380617 454976045 459435037 129338090 305471551 211373880 812760082 455280949 766774432 219690196 947769013 211203604 563478881 253367571 989577992 813535663 656723945 674784026 708382789 448854969 625402482 694262112 902763083 754192321 922042042 232706673 519438319 935834056 819370534 286824839 20764091 410080917 673036536 263700803 498601670 82251107 907700680 805702692 306172347 326985475 686913067 510064257 777924772 118104423 178596421 628847174 841729219 609624695 682259940 950014396 268110316 920427466 96193181 952181294 628174949 13734203 850498482 222600178 342910710 741266967 915063828 853157190 201939875 794872635 676453358 802412279 368982232 668500432 672417141 947668557 366850990 828259856 978717715 504508726 637940456 120544825 820669601 329416329 854984289 380238254 32768904 329331721 57295622 142613956 617195535 740002136 76582187 742632707 346458577 114530348 506453998 315738082 513837154 319353430 632021263 80561032 388964944 637722024 7683303 805437818 275305508 134665060 489451747 459349214 814600022 1877800 610224135 519723371 315358203 11931545 549039550 66513616 758319868 796339856 98198628 614525133 438295983 656729162 676641962 363499773 628329354 622733730 926587116 410928829 324826564 58019529 334038659 65747627 125513051 270083179 107392180 381171869 331541387 301412925 891086308 107444147 410570944 236800588 618711435 695998226 613074655 41249747 609635894 740078857 958390102 435099681 566378493 291626439 331983063 881408810 723404468 523185565 561377870 62254304 268065295 340561461 164646963 106958364 893130041 870683187 147490043 124708920 377331822 622736177 957481057 789104203 703353603 97895456 156335171 321045882 474014795 591083285 196706322 358780762 253691619 182351001 649168881 345659313 205001608 726355699 366292449 243216194 614290699 875599675 157379464 643829294 792265512 693851291 87628560 866454067 834294484 669142766 302504423 648629216 485792331 956650666 375207684 997530582 846673394 805353639 253922930 843062005 25147860 383843130 811581736 21248163 928637813 499228160 446905444 74847517 839852660 341550728 158321023 335342181 801535344 793068897 434606203 596048710 142886357 839683201 672327113 749340944 243649742 114029525 716038417 949790399 101088395 770842546 645291009 563983345 14882118 837954574 206546355 561041983 37924612 459669448 480332991 284162187 770742364 998195628 364060165 530255952 557194430 341069797 88374653 634577761 794649822 893076224 566475966 873569040 685511717 730700358 670528866 105995158 252687601 15987209 248055209 853565424 636258931 667773594 114663272 338358396 340203526 972903945 755169283 619150099 778684278 552223571 107071284 350771506 863307526 534851228 953314332 954218597 622207973 761074153 453386545 528575602 200466951 532078540 181320556 978939359 13550576 799679752 432280618 600710756 734630276 960149396 535882696 769324149 4688061 934184254 955148903 247180137 406151400 480089860 186122236 895343468 631816817 774999246 736208321 259614577 70260621 824194949 129967727 422054321 851137679 253045115 507764872 781942415 66633993 409684122 206658722 652497052 171772568 487930993 253627217 830299219 837513286 231483259 677332878 102399367 986405863 144779157 889504648 570102118 252377152 906104324 456940046 744537784 130318589 669083248 793680281 995318460 768426151 734336553 546280292 249240579 751979468 680306072 810560355 795407545 716774998 941108127 224974863 948361637 763353066 741139899 719887126 858112232 112542130 691031448 37706993 38624960 987897997 421320261 153073093 364203224 381229283 82355336 12127619 628433393 9131418 544912390 186057693 342781886 84022943 121760837 119875413 619999178 899532381 979607634 337266803 588927560 961003349 597362987 415094194 391725790 278167745 685471691 966115897 473724767 437532780 22505547 497833736 192990300 24418596 272580435 467540362 427400490 761916432 832311947 330992531 813187301 205111329 223478268 655634629 891150444 781768190 682813224 869578019 566715855 923616850 366159086 150136944 217357651 806289431 708134593 664640148 463162340 565193650 293977750 81974977 71188791 693982160 622396295 522517559 237524466 211989059 946263189 438177046 825244167 300648571 409042166 835908109 335336116 787231077 540836416 421512397 886148860 514093550 875401094 736672971 988731082 902130990 866605635 765069199 902683791 118911281 243922946 102299782 642755742 996461711 478816585 929945830 593177063 760914818 853818025 702053981 596541712 25837704 180270723 314652685 93130117 96713563 849641124 526743589 856311638 397546461 596390193 696854343 978516005 200142654 139630392 732479059 240739025 98712078 837609250 676043039 277721353 411429331 885531965 177220388 875608697 785018947 88602213 890505685 736863807 878070353 748369948 227851079 1228497 52583844 785070612 559311611 404194429 755497431 784977347 932647017 197290841 633148833 960732876 577742331 630625570 627188335 336485877 66340988 210562144 158111291 821974289 509755529 322322939 826682117 914942955 456951603 318726841 976367354 40771887 140204015 206975853 126574241 736885412 305823047 7883169 157545486 733297394 327836420 150873562 859811820 515843447 819303738 264424229 18317799 612713145 394503674 133421236 843773606 257168692 297884256 359815997 419666622 181192257 193889826 245511432 223583615 384827781 27664061 442642944 86627447 492846604 380352165 597375072 360930515 744666166 152920446 231732458 352000081 820819872 193877638 230160043 99991864 778247687 366498840 264021679 644472569 22586677 235194503 609997017 736295127 903785879 606393947 813324027 223861505 346939439 229036184 995305723 783588498 54874883 169767930 878337872 33829045 794540409 622448994 572119428 562007497 914025621 150028255 168915405 216936922 407306230 813880045 279285572 973482566 852480896 765576329 11532702 738356609 50460875 408858434 202888537 371072803 508396477 323517328 819167003 31174228 383025088 485774828 632169939 187932582 3460501 647976960 398794399 574093479 560663274 151603179 121827604 655535623 929252391 435290342 332860658 677785930 770097169 251589789 208576705 637257914 700383467 851770264 750287478 276443001 270901778 349728778 260749245 515782095 28172877 474835987 142142105 577657599 483939764 546689442 834562880 569823347 910844127 555141663 596289881 679404161 458422667 787846745 321283620 246695883 695964513 635944186 565578027 154446644 300287890 768327506 823548632 27278503 927548121 322941975 25652653 461891816 272825897 801611164 317287890 827365613 323631142 431143326 37409972 611864243 724240760 378314398 749176528 179925112 419552439 24428460 447885404 528200101 684035995 572731992 325712838 583594162 741891629 806808935 830567494 550849609 989590986 495989308 955710825 49241145 618953753 635979206 205881662 281859422 918887640 378559902 374289924 795786017 735423362 756310106 460395378 561727518 659453055 223411981 579013791 183824064 655493791 576254214 289443284 234008341 34359462 516754071 816853643 603874589 8679791 235655428 259311316 46454568 851140718 575467251 448055423 761941094 289407019 921100926 336450949 670342679 19886710 108539489 468586392 724988867 825920769 678521422 275663545 922015629 630750464 887165140 112665816 165727039 675063578 499113906 135781790 50825792 381862758 115718935 532776335 322785315 206292117 256269947 216658498 128331307 380542752 519921163 615952354 200579751 67371677 275133099 827803668 183880804 695310680 857624056 867734382 768978419 965094844 33091655 973168294 135085180 547110733 206119345 488626297 960121095 54070042 744733348 349938547 673582772 313975934 527667194 420482905 226706299 449019201 301326783 391992924 893840806 831296525 226881260 570901920 126195471 374500336 488902662 791420112 879946406 547264076 811756795 763852559 759022244 823452263 312303496 171784198 584485586 846968282 883845192 945735678 33102493 451453706 616965143 905717983 539039843 485427171 204286716 218318419 703484154 981503289 130785429 527636729 354895250 384589165 657541022 101327989 349687366 654026769 562931639 245435095 121027933 192795846 699264085 754905822 57685220 760352746 217543718 341750976 608066505 102007366 331468160 263316322 782772807 432344797 622449342 323716125 726696679 133620518 362004083 806842938 53833258 973555959 894384169 638342613 659137649 689385149 474582976 929340662 181882965 161373991 640171763 34618685 34503461 824662191 361673755 551373591 514863131 460335941 147494243 718019426 463025489 202230939 23223823 152453239 144272845 914629436 369591797 709269494 429313092 605999683 392174393 997681391 572136094 111919664 532267332 789797691 530122361 352904701 64593918 560774923 902905105 106017910 732414013 518124384 875829237 319146961 542150598 444948476 306433966 972578154 388698436 576764140 444067021 812922714 294302979 569635261 706111675 960122413 748673002 304637925 173673070 167165200 715783667 97091177 767298647 764546232 322516188 234306494 713601870 714180191 310277671 108473283 297687449 29171415 297006752 196280767 984178693 258118853 696568726 612887876 358201800 700827946 581086872 196489129 584072163 233832433 303510175 822546931 386502690 629465524 998413372 256232388 146025756 1336778 347048495 370054564 34538287 344254922 135172234 460741888 959022775 716210713 966758583 414483547 981892089 318719788 787990904 561214128 784799696 156388538 74473279 208137867 963265899 950375335 472786921 207699626 554658876 488051134 936987731 217618757 14125483 933692012 230234382 978150712 333505579 660933678 307947398 226332869 993954290 656275586 626955185 624119582 488719138 23531936 454525293 744395019 247703648 557216831 357174677 800982804 941519644 237492843 698330360 37143413 955897373 34756613 22205292 778626069 121994347 560547259 792593793 540500765 916917441 1239674 614713227 395258708 388051646 842482 435766503 674616528 832239279 799873132 134783951 638465167 786260277 102575354 268433714 936032672 895254952 510827482 690601456 750709746 948929880 841098505 142993561 935670140 675702848 394227199 508626623 383734113 792820687 513799101 946519889 826554385 531803125 650109563 729252995 673420364 26734626 456119629 640344488 72558882 692697182 606420059 70930623 470871177 189969903 692108471 480910075 533531404 938013635 675518882 98594143 687613242 464033777 128280517 828840003 15745541 224768034 374473724 289248867 706144906 678349377 783575522 251452184 407974705 310484593 12138693 771453831 806162118 315525656 509497011 845319319 302129202 794616368 139746596 915629764 439784207 860687541 49701767 327967974 207977571 720210469 80789650 316705423 620877973 332853383 371897252 31171477 367984666 150671887 816394118 113807081 501577716 739882892 378589174 542227941 335707039 177163728 63389147 77811306 227398627 105693891 576530465 615191719 273774682 141171477 468981731 446849052 154047424 872304301 869959113 203116157 141168146 478693532 357816999 198455501 779347261 245761495 344663552 391421797 376555707 446199746 939438639 173732959 935291337 189587876 905977445 521438633 842738220 126385899 825920379 305629186 207901465 636737732 97201143 967072107 72025896 997651949 39068853 668427361 932420041 591566749 641509988 998781585 721176521 712867763 198169149 394637595 622317212 362441761 101788123 643379336 540506332 795180863 421158033 64474796 147609395 533597489 248306879 501304359 812337494 69463880 568551570 625539422 190782355 547070617 920058240 401612744 213334594 176980733 153433258 530670219 229443197 626723651 517547606 344323906 71752320 736528793 627479552 984762637 132828686 937295168 42339622 122845768 492063250 50901443 191749104 550816265 705982642 321641109 557312288 111882443 300821594 602614812 894119961 292474581 791637685 556117431 928190920 245009744 650992080 383744698 791092663 655812170 535672583 967149421 648321457 899415598 589456263 854605423 605831864 365697418 15843513 588271096 950411835 310642048 748825887 727289910 284035219 678305129 977234956 522803550 825537207 984583947 577967185 765265766 810931605 93781960 50631052 970498189 776621143 91390846 843375370 919661851 288058938 458180811 7080302 960601089 798672761 466240022 509315022 371493077 43272645 327887144 583709268 80735811 451224056 398411042 104936323 684504489 109067345 68128877 211424539 545327714 693812425 356772464 636586334 401133710 671290607 944752451 728115172 479516570 101051256 729429823 155454304 106401113 487648968 130973772 102908221 848773543 274086533 311765117 758277257 26540650 119112504 949488645 419540601 919341173 114734488 849478962 382915772 648749306 246896161 710050168 12514577 712998181 796726950 819576131 568386376 598156242 171760754 347065629 916161412 704913098 332706188 627410673 488428300 896126073 884610984 817583535 254905903 403590131 251258343 14138539 433140909 217944284 419035433 527714399 943854786 974460630 105150859 801606616 481185773 250992842 953068674 398868462 526762826 619162458 285390465 565634718 57094972 897672463 478944248 304943758 212692592 406552590 219858702 413011528 897116862 56645163 363160521 371519318 567708295 431169013 995362734 958078622 611039935 335347425 729693492 889745834 663819688 842944136 954546362 400352284 158983209 579594438 809264408 85968449 182486974 502912419 474781259 277773608 581479279 9431880 767030153 808962793 256282588 549248683 393765991 668324790 594697865 501859151 54147747 349008140 247320868 197520217 125901841 755987447 770003536 123037606 637316631 986754685 550475473 680709324 420888244 233961038 27199234 769395085 171922187 316457660 658714449 655090784 752358697 573642779 156475343 542292678 630240306 387191223 715973843 283838174 507480182 816673815 506600552 12743845 354860478 1651791 443867281 890672333 31975823 656299753 820308653 378625675 447139672 777720304 197651113 755609412 646634021 540479532 692724949 520886147 307629511 285717973 809835363 124633362 768282929 612284265 424691555 988546373 622767409 380530023 53781269 932344884 509130365 968374648 470866593 112211554 844610142 164838541 601326682 497086352 639986055 30573018 252874049 893889154 127108435 659672088 538939389 926160904 954636121 884818776 709458899 156708005 549812880 725917887 143519104 964494597 623857405 744594675 804353564 185754478 502764356 912170750 395062098 791112033 322144308 837151960 662524911 297539759 861966947 745882389 743529139 762564196 388060454 140413761 674808419 315326297 687285441 137145515 427147017 900868383 191512784 646278832 360181132 436505531 460629744 600478261 219779998 990812320 269897648 949220686 212249295 601371877 529344080 329016957 98408385 954281043 321786322 949536341 568773214 172854798 589026487 229489262 850623576 433691282 860202750 741793100 63807447 980821254 6620046 2838693 721257069 503806222 610752188 473074988 788416849 37997669 776930631 749874349 395209878 189419696 725958430 583493915 126235631 751222231 148275114 839723907 924447469 528060293 821322568 638584995 271960192 721984245 483666123 263102341 2603242 89151983 547945792 423531560 425247073 549960839 551891988 961105275 496506060 471893182 643613526 835683307 589944898 488910906 195652287 625332943 258971533 58554919 72605670 263356432 513206353 606778744 560735152 128735219 122292250 788782517 127782947 959477579 267890857 715291700 302788823 374623462 424452640 819803992 735511503 273365929 176648545 164358033 820533913 220000394 870334536 848907797 119146073 896581805 238276419 987168757 321083723 456660997 885727790 235501580 320902898 287826525 184934459 822087382 438041890 465626094 530614996 629523311 271119284 495194397 266404749 703361772 974227010 394160016 412959020 15625834 904609865 208977502 465040209 713893995 123239310 225738533 966351734 828639767 909441533 903820343 621690505 141706503 326064365 717977199 343585638 426692020 355683054 333368147 416519045 425310879 112617655 821735002 535798863 964018916 252160794 920611627 86420497 654243856 834043610 450678870 93608210 5154193 947789084 797117161 145971016 416686199 681250517 83297320 829335289 191828313 752913330 647169655 598026535 149992960 969910424 252592434 507026416 31545034 631214624 474843222 987881592 294408806 307154063 418125816 241491324 69717604 446739393 548698092 124559769 537420386 890634368 178001407 216744148 902810234 57926548 877302200 366633998 34959751 949491871 403307374 943068341 182301575 163799785 377421094 710974560 194593717 176304440 166524225 624770234 648744638 127272996 678468594 561653332 545999477 880924412 941330145 128020000 2177674 55449310 540415281 12753896 970503386 320686961 126484019 433066082 148888538 561975207 299240978 947342358 5133151 152651171 132692950 689541385 114355835 830115028 246930942 997449302 6995711 717925758 657477044 820831170 179060511 979190667 358659682 884002368 598414223 341202251 503162797 135029186 100983280 859061646 273677979 315089680 596120934 883727332 315114334 859354191 62237238 3659871 381253587 721743571 861104008 139309638 953377311 999359195 311439653 330406449 662940672 459070116 136548702 258005369 103343767 268085656 825675541 942973559 38637447 376045679 197555901 29009737 69185918 474123204 152502828 670624739 173552597 988073132 193851721 597812781 827976959 918496282 902055514 990729143 488811539 784047303 118417809 818424653 669903282 254154324 661042363 417410465 101964052 215558073 500347897 403730478 440346289 561991418 224235611 801814511 429362350 774321802 845438982 267967372 981793921 106085909 536620341 904773657 493186244 600138946 100760440 714964489 423143043 586050339 810470019 296013606 61531757 114341117 165033398 635439600 573741863 787125129 525171790 121936133 605113718 92963346 7269111 264914886 858123247 460836627 558275935 761868433 978452579 510700305 587075874 416805673 991723087 652653228 951569904 695800790 70470953 551740213 869032215 568146642 788755910 460243208 980989959 498363142 765387055 83107075 216990454 147532673 774112644 99426238 618822326 544525770 332389428 944804645 159519222 553394678 803312639 187878942 219170197 525104248 266707023 651168881 575977013 840081528 67302207 847286687 521552759 547594803 769349640 279137807 332652625 373490329 651342791 348112358 871456882 213092415 110109822 308803694 156639652 790877312 309735469 885253338 273097220 18195084 564743855 914901813 570987433 444270947 539370383 723645340 182258071 948337164 847009370 298585756 536322795 788091749 818724908 799706836 632438640 790120252 232260180 221210630 840673404 865864445 987395131 158438092 390650354 45234624 76965330 304713064 351682898 66769764 187166289 412857631 893991796 267184389 19730857 556527706 175260012 214840151 159548214 868221720 752581745 899954510 335551479 820031515 895604165 54010621 567336148 633561654 257822759 229521845 28381872 468622343 395540417 614449634 736001195 598301496 691250149 693448781 181165717 26542698 86303302 880059289 961926509 314030122 957633680 630897892 484648292 815380989 822949994 898979695 948317500 868944512 370371426 561982657 729308775 937835670 276319380 273798391 29320140 872588114 361535471 459487129 567573195 161441024 598703415 293657527 446771605 922541521 273383230 783571161 517136012 385570754 314553841 115358966 965614321 685316532 489541509 339738073 372801017 761275033 316557385 888029321 613186131 432585902 103149177 811553797 934130521 411183013 562541484 832903413 926400536 811964286 412780098 910576263 120780039 467100820 100874553 78180224 246054298 806519525 45592150 874948037 807331010 542384558 969814794 417393375 106491020 242243918 447740463 20396979 983418198 736125214 2632289 138154674 449357055 187577998 446907909 146794854 442492077 48150290 878798653 871795159 526471078 726076259 252303036 58043550 141107989 1443736 828889774 116506082 475998562 895192973 251320300 157466465 735106984 547337939 955545614 339919670 434288065 261180899 925909033 28131797 49642096 97120226 895351992 14827368 431796557 24008223 602207775 465612775 701520924 285137478 866131340 231729374 909884060 236078754 163483694 398718124 713603218 46036832 890467032 224876094 817468437 508334460 927856984 21841091 111418431 103870497 652370499 66698086 242090667 771637691 639480813 890975737 852735383 311488622 248065307 522698633 321551693 735266624 27857614 732862058 862683342 192856585 382257105 697353501 912068238 668458616 162533190 834346954 193753387 988263929 204854836 46291327 400440223 255839904 12123578 895541565 227178695 746534463 251854108 531882689 355933909 690387432 356693961 682096144 282026435 786510683 249513020 685475070 558929289 84253445 8742735 389077394 244531480 670434413 861185410 483208593 836186757 832107725 373468401 493730667 446568227 175462517 718692134 267944219 250931780 860183917 554869237 812018848 68539677 947387764 506855481 537198560 151543663 418728440 441157681 976334032 258645175 235573905 761271960 74988797 766230002 571826232 949741260 145840671 799837873 580819282 754617153 912296823 371547068 857945040 524228341 538322721 817347650 726805186 615273065 984199886 455489707 325638396 735425912 437393221 963810809 196768091 237084757 996907853 263166914 532914078 493252978 578408932 894157245 515985400 137331458 383634114 621921504 950134125 563562917 177036030 312158468 750951818 527937172 104320991 809661203 535162768 305440254 595230173 862578025 3606812 540659511 174237582 486274634 408657158 690812767 50353758 703864886 535148111 232695068 549634578 267461820 59926233 386757311 373319978 118414670 529895115 97750525 542182155 856276 722987148 887292838 88854712 402954907 568851669 989320301 580880235 204995967 555847381 35441710 541178238 69499830 220773130 20412433 187023568 91694308 795878140 155624494 41325282 121238384 704441256 112042571 942585730 205219081 483809538 86203142 862181518 750014966 386834153 526473724 683882451 483699355 404136180 921952285 510145495 924400557 528735356 391402928 542502477 739128205 656634576 999596462 648455150 284968155 776005468 183471894 916096923 139736400 252057542 437468157 425540635 506048096 605437734 871059562 796892325 28789493 960883278 420167305 78262122 296480507 339066401 882400827 654424483 399648286 245387638 879647451 125187685 749099372 48823324 3100831 167593686 892865277 912851304 702368734 561366128 701344847 290075354 484426276 294345528 774416004 81906434 372096523 815213151 150681581 322954648 406626214 646566669 191693633 5791075 610256577 259083353 734237370 379389948 375079650 14896469 578088907 999153632 466780527 402367159 235689480 249272544 812642326 167933959 616615734 703878075 206713592 77414303 155755063 857431998 184553695 10357309 903069944 265467456 125825181 347936094 385309194 733696551 97100514 361148310 227036518 57936362 939046496 82953260 684392522 658639080 323392083 835148165 4104947 28729537 693514100 240512615 511879716 725621977 851129521 843674639 403344978 470327087 939249304 682316759 703215499 796395481 442954725 640121516 260733077 286453673 573259459 492681750 210460596 743524989 669181538 162468793 771095944 84708167 573953077 935541356 542078754 237360728 523193783 661060912 394996950 831979454 784942490 283140058 120264434 563815098 378336300 268530047 858326205 615823966 767265715 625095591 68433749 443460435 76787889 998477394 766463104 131899395 737536013 120088029 380006046 180257539 702254574 245192973 510951147 937128557 496754146 696905434 58759133 452754342 353682677 762682421 983712298 254611033 479854254 372735550 767048121 465160072 309296773 28731368 409320706 370507420 421522755 38870883 3220179 686405037 601025825 613555528 526567487 157051595 24004932 312021773 286445473 734500995 667009761 889363219 698080967 318785287 389054745 737608383 811390174 365986074 80595535 71187737 460024546 481659960 214025022 94710613 668032094 876583016 601109855 549086753 49986540 704229739 363702094 407363595 554742194 543342952 46948960 201561274 606757622 726711556 128805260 869974095 166635271 762946581 505653754 252871185 482180937 242775413 884914348 555339713 913562941 579931868 715415679 978689112 267323191 891836271 863717544 665468420 531991860 803712699 208573169 410221989 973957424 922038293 656686312 769911495 172709858 538114049 504336881 733562877 775788380 709312055 328370128 712169186 502349896 599161007 681364088 186185235 352374643 799060201 13947392 803060591 155878697 916896316 197255977 202775296 436598406 304425157 785104812 487092365 133834651 841487298 582285863 60717824 910018261 690973093 446457042 386562436 292444608 81690688 545917955 27843983 26183342 987203099 882237415 125701522 185098981 164451421 166210925 878793892 158806116 892141223 735018165 212760050 805398002 526193713 498697861 449524860 226043545 924580774 818194066 446208247 793579873 553124137 252184043 848618958 706190444 752315383 858629527 552000980 587000633 817753623 61068197 680139836 549516167 346437747 976018909 300954314 419355330 35093776 709509691 57374239 218781147 120067004 547132073 755577538 799806362 956336542 168493468 592937271 801748461 806846968 135729753 240189141 19107129 881330262 741683647 389237435 67050986 123704271 678247365 81759584 130916033 434410146 398749069 160421785 564058203 410414142 503220955 421036572 606871754 563158222 171246640 450268110 577307918 672705645 921215484 522855996 640354414 567547187 49327924 200049188 436195391 518577379 949085484 205834247 849569857 502557985 358439045 404282275 756576095 925033656 891481748 336618199 580481574 158022976 163933953 433551538 772823529 475083993 137930856 295195783 273567995 374573866 537453790 439169395 688515346 633405085 576955940 561910566 528448999 353935519 637604799 139179310 573139150 316832412 588048076 891054044 653545479 158967197 194098079 298904062 140696171 106150186 992507910 465100109 241124089 771919915 953994317 448867420 835167023 772770617 491210601 209223530 829640670 976762169 462797420 505840435 865674273 258471327 203686239 389474579 480969900 632544440 201984060 600173985 501918466 683493436 562472271 862553809 371489564 578902525 841595532 297472369 60563027 175637463 386821534 937216976 824996501 489125815 178323255 276913200 183998767 293019785 71440294 289808018 959839695 320522335 401614497 723821028 50781066 783918575 882634327 456664632 406762940 535036402 127500987 154016604 456411891 839700876 555775926 60417847 353786454 332290709 431434720 154403604 57884430 774028290 981533532 670522169 757273423 300214420 17127343 637924 882574968 901643590 40153064 603528856 743070940 803771014 891480587 964323148 192199084 542460863 183871804 366540365 648689216 544908209 434241012 204557965 460579173 335900218 238304137 582468793 333509637 459886885 561509836 914363678 377469697 247150993 775468372 462762763 466689090 683683020 529956501 312585459 215929072 853977607 68137579 681832714 885991363 96002761 616831418 25309905 437537500 667469107 151008699 66829778 475171126 380845157 224034922 475303603 515400109 657679116 681670677 75705113 653220137 745692955 472013169 921256886 534524650 987794794 690186106 241287141 475651645 869583009 640388123 307172239 400758504 395315156 389422945 648067914 306855276 368589586 191580494 598155020 300445740 794178719 229090078 599017574 862714032 260060026 457898334 304942492 10005146 731794306 622021717 477641927 147663467 605158890 251862306 184710557 227037165 152809255 705170907 9187555 101737961 170151827 943884330 815054486 255605406 472986569 33109452 759337755 790435989 569187249 131538583 759464002 988951911 342751175 219567315 782769700 92869900 760880664 136925044 778049419 382469710 981656639 887690112 883512182 362062662 379656161 945933984 363355968 301676712 465892894 450059536 439756646 489252395 135346282 168351264 401680877 220785039 26832561 258939295 149607352 622224913 526748155 563413423 950995243 380318530 63508620 609402773 500627340 926692207 253859405 272914319 931102180 540259433 481426700 418953105 545204877 451091973 895902860 237271891 959983337 84471712 48024938 75666928 471351165 469376906 218741480 843802392 372650894 631038287 194085424 618169152 197707345 538408105 379294540 138849987 493190241 947722874 604043352 692736511 510187919 900832382 526040881 849075041 14664050 578878762 582907800 118163361 957864582 891361375 715755325 527013885 18015412 232210433 960539433 856209939 110340613 35281302 863501654 930878346 859303605 522970820 799312800 708066902 135689648 449259319 230206003 547657880 843883968 381605527 286341036 927105861 337965173 673782849 892397868 549942845 315237518 19316034 555573505 600563223 313712552 603138693 239577457 356656372 761320237 365649926 921537591 370222550 877842871 182437455 761303786 659332304 267841966 917063341 422473080 154026950 92864583 327382245 409566238 897006193 902304913 109931715 701247013 530309702 777138403 493661528 649489265 487709709 562185266 983102469 738025049 416163865 385172141 339329571 980709407 117116827 82914071 157462160 63223450 274448377 207279133 994566943 74757002 98881394 378540704 97865230 739625392 371220281 818287476 427691080 475042420 923951238 174693292 304159226 121513700 148165340 964266700 194159786 945749343 155343066 49822191 17157241 104429192 521362046 361233555 353346773 231563848 817078533 775699737 724388932 440009499 827369637 294652533 61400333 528945068 324389318 330220148 759164307 722208254 890728858 519522125 210246895 875449515 268691010 464878303 27674108 342524021 228928173 923810551 123946088 16671253 719564797 166872799 65656937 472516618 326536598 521782233 310437163 86029015 910589769 750103319 983099326 503484550 874611305 124594446 7920714 218679182 315024178 713159863 938236777 941602401 733570938 67909712 103613785 212050323 890284515 548832030 92123934 105066966 568805418 469423528 462687386 851910683 978430903 461797064 933910774 69136977 156542499 668779024 914569465 816407632 158949417 236011745 715756905 238827229 280145770 131150118 971036775 669321152 791013987 187476709 602660033 208612180 125891018 651977669 552205830 296243169 729389081 222112982 770681314 532096860 452357069 44361668 117085600 487601853 965241014 18682695 357025183 627675422 627943321 387702776 254182034 355756815 317562436 514590316 772493053 345635397 942933652 963958452 355082935 619557920 754531948 892432116 217955001 166458397 261670472 846319875 125866103 40848925 127002143 352016149 626059268 952841400 965538444 127137755 613727428 611561785 530279899 821474509 652141900 853941991 291620985 357921552 559569887 607236770 626136543 724140112 468826266 492914899 608272577 753864481 186657283 396154966 178668885 321974916 256292235 273058219 100514867 180565762 991669652 15132388 110998268 749400326 3279794 645491007 531747105 493222965 442947530 231891696 79741378 581724897 416478192 509809166 334402264 631059225 142204859 606833351 412339268 596880135 330453266 552993831 405877480 203628317 790812731 797230072 81301920 80370421 393654839 990986564 536525342 869877530 551316344 514312153 561119845 724780287 668255004 414976479 157065399 247571640 545007587 387395760 151547807 508950916 430631407 891500459 609904011 402381959 527949757 429520525 84131604 714673538 336049512 375388528 129355600 893241395 387869014 790428782 640718029 485424484 964840593 677600778 58693400 99544836 624874340 128420119 870279248 64239371 637658652 703724461 920622748 151345739 440913072 401877436 869344057 942895638 709226254 835862106 575911693 185309499 682510326 447787001 675565840 22314425 607572858 375818542 793918084 503611784 448998914 932985587 107417774 61445547 135988869 764115618 597761150 226240286 57892619 375090390 250508118 407972099 729411008 879724036 618376944 557735782 730131618 518173782 451040750 120068588 525095570 204460596 1889268 151874918 325459149 368809931 225694719 290503236 198949967 95937029 977821636 266651367 258472632 84112867 264020389 150033906 313175638 875155088 978645703 876913470 88560478 197037825 718770080 723479383 35402759 313945678 141840001 562548895 288423307 270997787 69795872 711716025 905183832 897514600 653519734 110310944 756547276 179845888 20670433 481077689 67094113 31992025 860518949 20209247 822803481 140477732 701875779 578153778 184787307 265066410 152987827 865758944 125120858 998019158 728341680 924606103 38067246 233478639 621575555 355068234 500065222 238652958 934852154 275482329 882801234 610247226 510900669 358856971 237958244 445686418 464961989 229935831 977994834 54415852 779739084 936954105 54421203 849435301 182491798 289780036 216151065 732947157 807414570 571860808 569434833 381911194 633488756 493016303 758514924 112316633 724819390 36368865 544821289 716539106 726104286 641446860 395340282 732092152 621285219 689727119 882953653 482285628 581755458 736833764 98156189 402878863 602774033 874763127 587553596 671064866 818316308 266499662 460653842 761295365 797261794 87581052 336680798 331383148 261332227 115024371 658154498 525318667 585521264 427873988 254833128 102474465 289469805 593986005 566445110 813987974 931702934 661397645 453364291 129008681 20665021 332883902 960388826 216338554 988685676 565781488 352112996 26701561 545456523 813643778 786353764 102438635 868597579 106571942 602596532 760829020 845305177 45805987 836383305 453341424 514015044 849555346 315338300 74732756 813780732 864743549 16756011 316642984 720084216 574118730 951844333 999543492 521561835 28279286 518586379 394521484 168835544 813028850 830170026 721787231 717104500 830502350 279962502 439801632 598131942 491874275 247757338 127889585 759025093 573656985 645823101 890180972 904251056 480108491 760358853 512610483 227451000 631770768 403379044 795703511 710653527 906902018 892737069 450967253 884434427 720015084 190945364 274302232 446720007 692897208 200292113 299506703 101744972 744031285 849295376 117253365 250504992 589692013 856631452 71580944 150021195 561220002 580734296 125653491 824596361 403939375 424001423 55856242 715813472 906390941 107541436 291960389 133447059 740098455 411030650 282674401 680268334 975430742 879064969 434969345 579913551 99598757 384659951 910874954 906116623 6136909 166286380 828790912 866754532 826768846 458758533 260231597 798293226 642604713 76015460 727752533 502509300 138653492 233078646 186954082 59536685 775693877 535105628 892699383 314263811 300183100 926918723 988636590 599818432 473504339 320231845 997236469 753158464 384012197 367964799 698449722 839675914 187631230 388987 891444598 328615819 382644721 304569538 507107328 409778505 904611884 877374870 144627767 606596477 953451324 367487656 219576194 33850202 379515652 767168339 998390045 515668458 517205785 248459471 890212156 844561273 708075592 955590459 831531374 454046236 674490215 700725594 671979973 552650906 648559469 469070228 765905109 843558887 433572647 585762795 96266815 261473447 173271459 896335711 846569990 134107375 46669682 475841355 252983554 903358662 865725139 23646159 269922974 670578209 102071199 802412736 977358967 962339544 589161727 393357372 196906180 594396442 730253402 895755886 844609862 912640243 86029350 296656201 173265517 570457393 607472390 111711262 814021044 94268529 305208292 928242778 830365447 730182069 362809816 828810718 966405290 519923340 551084454 108014680 383328558 567645331 889045200 577766853 35584676 739991878 570942806 754631860 95703958 171488702 807977169 845376377 890602663 509344589 12534492 891899176 24194692 816899751 108624946 325598755 33223004 475736959 375797741 285732040 435663789 570705967 204169529 929250270 65147578 80552551 189687826 728059029 366948855 828386842 867729637 22090711 429346149 208966075 72747497 69925813 488777816 254868935 663237682 361706139 775350939 18634119 256751442 732636585 836524572 966105322 230242837 73605318 87232916 670120191 949585919 885734654 609488343 589597769 773016038 312086578 400042937 449902187 500848025 272350839 627097727 626872123 31751889 913318244 163749432 856007092 47457230 302729705 190840546 469101699 415407039 355741437 641650867 842577823 897218141 348022709 306320904 184634105 631115053 384536477 521335710 582383317 998509334 488191659 140435817 211658533 826401461 586308254 568232115 759135319 685790676 57982423 306006207 501977100 72200613 796019820 843405720 436245239 396165835 144026005 153744312 117213164 633582769 669593761 294883226 306700592 288388910 996445284 104659414 496112114 738505218 844200799 313880183 323504618 67728197 651550450 492603751 649279115 802321008 734748566 60576340 714972950 763598148 492507651 333026883 799698979 110207137 149304260 982712164 824726560 814756287 972989815 453240854 901191045 215644069 23351488 577116627 749641873 432444548 439523137 386768480 246221167 889875680 790074323 317602216 462943671 176005501 739751226 66362101 818851523 197028821 693875850 739864106 973186937 189990573 615323759 223865996 421454626 99969523 764012632 324637914 646526595 889117556 165659638 634188915 555634225 44168114 259979753 930995611 154922649 888046386 728481692 73104437 473875409 654037740 389224969 497657684 566644452 904425068 66496539 76122083 911956838 143788552 284412226 716199890 251022635 423080500 623963709 695814766 466200124 779133665 771654924 895177245 138066675 148496619 977466287 458893761 876491404 725808462 945886839 57634908 915041034 409619564 298761919 427664186 668069233 610486866 274281181 225740365 927695644 983326585 120841437 830524007 666859957 907452369 182415326 729362838 478551293 635558072 22507024 40850988 900169699 557770995 342729384 667381202 612424480 69422293 431554154 931670730 902679 182512079 82884915 149939918 838129775 198036655 173884281 871870134 500046207 252989236 53221941 566015566 858079768 404022567 530092314 817580982 283408178 968184387 175916460 130477280 173466575 465233910 112515332 281322143 675903127 786631121 159622455 617169783 340950603 451399658 423305062 814586469 668522921 3297459 949581201 464900991 600162332 678857610 617413948 883641458 840374842 516941541 521457218 617837846 671731323 607361711 939608761 384902546 444744526 134607227 489780895 235710978 869550090 11342172 504934322 283501035 975802669 651229172 434077325 381492311 439633514 359514929 534830983 39566763 564030814 754597998 638365690 797236287 841280012 184946387 560028773 784273003 278050927 215949240 728219934 81071103 798717621 469820773 997720248 145945160 241015487 10971245 580820702 848218402 175721353 522313816 338332964 750971986 171088064 906410162 697807260 122423272 163202523 193812838 181927342 872517047 754062570 200636711 855909843 466867734 594832691 762061293 711426940 841483175 89314348 76409613 266734629 381887880 674733938 155733479 197221783 725772077 786723864 157595542 485828026 147448289 748353457 913449248 192478510 952161803 30832346 109682994 580065529 480804895 814339611 406587473 980135515 764806533 681599512 672784133 356858838 257815696 940288880 838683620 786214714 13690305 918386004 603953761 702375616 17756562 966476271 304887483 360431638 655948346 509121100 862512669 918102034 459067849 659148201 312876708 270210696 727422117 663587159 393066388 228932660 507398616 136016439 867846408 14671515 241215215 874284700 70438467 929406178 203193624 277140656 968137646 87475820 162722719 172111755 957790697 361493833 264576904 468398305 684906879 608812464 155337062 199337156 93124567 728403568 639340455 705756660 642528107 205825714 215941380 632068449 593710446 981471175 311099159 422277893 720735625 714160168 257284731 86200163 750216843 443858923 357493411 838592445 853237382 195269737 532856385 37187199 398996759 448142298 168628011 41361551 613039250 307259508 95732851 911517631 53527649 378746828 492513484 437330145 111994727 301140853 926677962 120749954 534482944 306476277 260409982 381276872 873214095 214556891 212548905 681611255 521923821 309110042 22930053 721850768 479164473 102288177 892474443 699519041 397824346 900599539 286723650 647566297 508425111 84516544 246471461 189506763 782800017 922763082 20372969 309936420 533021902 713478172 534051033 886105106 217339909 702448640 439691888 296940434 73083676 741955930 103393575 905935849 346346209 213815945 820262877 27885843 768235278 927794150 999289219 859687869 246613908 725380164 750238442 897110257 43379736 240333228 708303355 607638744 337382986 14102222 631442893 796292667 871606779 883156663 605763791 239964807 821395396 147548232 785261080 647207710 700697981 16833063 777758329 577895873 955677055 221826646 100322482 967242600 993713587 254093645 862984715 702094836 475980923 644352895 277041919 770221670 701778818 42518459 532803765 272700117 742731711 138673016 465906770 798505185 331171933 875725999 177415173 430862317 308322159 329479805 984302207 12610808 720219209 825932686 442188994 820253569 398754500 26594655 487243737 169362287 860752800 10052287 605306936 953092982 131571595 387796543 331743384 657964059 246941070 442102322 826062735 652497821 891209131 522796066 481315882 987250829 371280232 747940140 785089219 632003115 511711788 26640241 968217642 996733409 231183009 135520134 791822197 741572347 870140949 439269812 748052173 701238961 353970507 893101427 269318132 587037117 30612708 125270323 292874999 424124384 565954903 591485470 261483010 85269749 854627229 44923389 463455567 751235545 231000537 156181250 516473080 174252970 342978729 172533126 528139885 747009768 367308067 666789413 277180704 552921635 524501310 242021153 580050960 844745790 956334433 721953183 666714432 158702435 375853552 989762939 504519189 180360148 366268724 833901769 569852131 230437908 856675638 111356811 657835708 494818558 681182815 255287064 543856812 395273938 125237346 703027439 161844675 765871616 372328181 443038390 794097211 851900648 857760998 5974711 496086695 261559085 213404489 826761637 997733663 247784991 313762676 277387096 179359537 92109566 425302255 970834974 339222488 838118281 807021066 801540246 492873332 307816799 349520101 511461280 97110637 988096051 195444648 895226484 497562464 724239452 789256051 649802668 65328440 679074001 796566050 339096895 146974873 106504461 876117750 490261284 111571396 73390730 526764769 105459033 90043869 681320987 332024651 897732362 114205440 785003327 94778040 401971016 180850361 835534556 916345023 240188145 678786028 110841976 926688278 948527187 661074170 492807188 659262626 527423499 455310383 611902525 494240299 840162804 767269010 10762656 595547277 584801601 769530038 55350729 106496566 101237013 924082690 86260056 977725835 618931753 830748702 667748755 509494951 599889527 721191786 812645957 377400697 390043337 559307447 582940590 185932208 869736302 319759690 76085750 258029063 609938757 589407301 619105986 456051514 667122514 108327582 387867345 916892915 561097618 224566260 108868151 31329968 704402072 231143600 501719017 278106020 464494508 493585471 75375568 652999477 820483660 333351988 467859986 450539832 311461178 600851734 909255312 328569049 90042603 528882060 477154887 720830264 376819212 612313384 795383198 513890439 399807578 861329281 946031261 920107266 572191051 397960859 557629125 244304469 525609071 673491144 41546020 695331094 148660236 194569368 494268107 791442982 626962568 181165091 704901950 926941447 314044005 382721202 207356440 721194083 585918183 891815653 45477816 89552508 196528171 325634417 365150163 826702200 200431953 349230145 310241692 111982351 748347668 928707801 725892 973948573 411292325 284746537 757118157 679260542 185407063 423745834 714753844 494118724 80862617 244922732 769072094 122986584 12350612 635452349 538459611 580238239 260541325 652407208 126145759 130534911 94428325 125250560 481523094 99600859 603868668 989831142 407999625 233111437 155961845 685278969 317714835 935969923 159849581 483136159 373824922 838524515 414666939 923197834 319400364 247715328 452550721 324345645 688835344 974584685 909634857 294858353 287113248 557220452 379006865 476120390 89788565 64738191 218752553 369249544 15503411 283483748 441718208 874836352 924591045 734630715 936813138 327026802 522395882 850763864 368563749 79680322 438579848 446618411 679563590 781237987 744474725 464973802 757323966 390937018 657189067 963225135 391218124 807209058 602269588 180277793 837249944 36259253 368156683 364187163 188155085 893184876 764990973 978055640 815711184 48745464 678801239 928639207 610099708 514594748 39997066 818196558 417641572 776836229 648474228 138953931 795649414 759565 105585973 282679263 938283337 125538967 633631859 179380134 654537882 685061590 773165485 910034359 637193932 950505165 267036903 79822204 125290441 711173119 680939729 671206161 378872766 180435658 385044390 119648992 438553820 912979425 97641798 230676782 921233749 41106706 490161790 794309251 554240270 137400886 636735518 847718055 235258565 173703107 813515658 176157387 143281895 980220187 387279529 515316999 735257448 181152426 714086424 975587830 66333940 923897712 55206596 842846975 809720889 302897386 706222658 547970829 495187039 77706565 334348659 785348276 590832127 630867773 786614275 552760891 89905592 217121789 902520294 232984196 532467513 644100892 749834051 750181127 491243540 831389656 61092304 153117078 790388226 506275716 263142526 21815470 233774584 62402887 421027096 400805590 803248571 860713402 525733507 882773058 503041162 193899048 472318417 650451704 405187837 91629891 620724742 938514720 42636854 416963761 393803871 628308844 806434352 511013232 886425757 424777759 860613592 338383139 295631058 961655701 197833892 372732381 802353650 716308208 176604759 380145439 852258382 470727921 144491581 30781413 156490330 726146158 224547513 232801564 263232217 435934730 986824857 325618750 609149510 604727151 476161766 555657530 586704421 644480086 511753721 152796107 640668451 969685494 150794684 560240264 460939613 811872976 897873502 190679464 899343545 236094900 335391579 808897933 15032853 16672319 241087227 812447708 23760664 299523372 106213651 256007475 745296474 56501325 565323933 353549659 155967892 984613695 553398318 437812379 469529126 766369396 822457012 910614029 721035545 25715634 726386399 479090669 277951487 93959861 101269241 271013293 319269957 97570424 610090290 223215333 455645539 911273032 369259698 203915722 758089003 844118223 22873154 363600234 337474682 193463002 587723625 561701839 827340861 820246428 776784979 500705307 124874668 280304119 279225516 984707262 951328540 328795485 761193005 277779018 543253994 462872842 253989595 712622593 737047791 466067667 990126517 938154122 351205506 696287905 20656877 407154831 369891323 53991203 675798469 136477964 364323130 66728367 142866977 88581812 876880598 934185963 440104122 612004361 455815327 88106692 91368100 618562204 758605361 821711853 783520088 480281486 909635370 284462996 343129166 600480235 937518431 503147385 328751488 607102770 88766570 919992933 214152230 254523676 536588022 423235781 916288737 479657995 764138612 508970673 876263322 11676893 796926230 717040663 168715278 845295001 486004873 307992073 142524392 97471221 795778053 813549215 838569523 703877292 342089685 866239093 899904818 588218511 285284523 341697350 873871090 926311291 133331244 21264368 586640475 732907497 891076159 629517823 943761499 55079271 63156762 947979578 510301837 737341168 33475114 980826669 482115370 351620441 442350545 779482075 178948037 909408712 572284164 949274642 140055332 108508371 83395056 453565069 244394619 409239419 544569728 855068388 619074897 295650471 378902729 930644091 267890373 895221846 902504138 674606020 464565019 271472929 787596511 946536609 730857360 366168850 835499832 646986103 955374620 171637370 183277068 453177864 995835236 511521068 871545218 348561306 20997022 733199086 820011267 206593907 851272740 858473846 876319493 743532856 604168692 499998713 602444082 217522892 724766440 982571833 9725924 926194959 114249576 581018938 96111260 46602080 755151805 329858403 15337307 233704888 757004707 648766768 252266227 404130540 802416346 161151729 546697220 941107412 17441863 859554204 701848226 341764599 188613008 13824851 479451250 851453880 991884167 706779555 433172213 771019645 126591824 60883555 981203414 566277506 973094840 685103643 771199739 260009496 474205246 849716754 334830165 472949972 217907568 787443052 133848380 125570171 885385859 843588233 847136591 79637753 372967714 656496722 833697361 774970485 431247913 222928448 950665951 105145808 889164227 961926250 726211272 736783594 555208532 671026343 133043932 993720907 51541961 441182374 473047082 270583122 999444195 39132268 385447800 771453783 61382611 239630595 293945825 44304778 959027575 656254741 10893747 696868488 889912745 580010772 872271983 807910667 421746532 288544828 31585097 179794767 728944436 154441379 545822679 518738165 532103481 836592556 765710864 634526011 829522708 540285812 680875701 390970424 125962047 978454020 967467903 210819855 521072189 936215426 940241017 14020734 182273470 821044576 665962409 968576657 464839159 556606241 349720883 743451507 425367693 509030319 831713635 868285183 55308103 525490069 763693744 413533662 204034980 573862106 441057572 824011271 359193467 758145398 77798596 658646507 220388617 214141978 962882218 687583008 548478662 266632440 435099149 472866763 334575739 212005467 335861006 41139062 190945995 69748383 837940723 273302355 462820177 229605072 487494103 167117987 752152573 63886160 978428858 505927281 444778218 769183271 661416088 965819401 876542019 531503594 3162938 639014571 380350040 330633108 408891784 804230227 393627699 175856143 287244440 97227448 545466348 650281959 89073442 340173631 862467848 420983710 647282865 390733458 962907599 521390637 434821407 26767427 74467107 204463446 197464481 857472627 617279711 346074431 90195433 864630855 446463830 777254274 304785948 492323920 375159261 334304766 829069718 672026664 38146816 746298717 292344381 168797778 479984716 828022959 834328507 761608602 628765082 490852450 83700177 129350638 171226814 15137117 880559135 367180941 917270948 234748587 562963750 514804004 525624054 915868951 710511501 198150703 323248876 720080580 567263828 573708229 866970140 816319555 765298626 578865395 91376735 825021669 15610351 320169396 135031943 46806506 799546112 402170547 148084242 676808863 45844521 202208157 107540471 208467210 542588684 473796194 99412375 406997935 709211482 560736512 64054519 184422707 711406202 470659386 333318587 642909143 9242708 521770246 847968253 918580165 630338476 674149437 713464527 374751232 127187963 413356463 669344249 20030511 153547511 455551814 540668660 752033350 981476948 938883041 187734899 964597732 226542146 44921155 570089435 284176341 54234842 444870887 989329608 516216914 949228350 726777142 36966373 483078875 182897839 962303337 21808690 861618371 932675006 198233450 381593011 704894249 740366051 293715085 888010315 805854443 788930910 374162914 81179355 322318287 195760498 25114509 161441428 961052489 840251909 278873501 871161667 408271234 740664140 387452573 535725398 491851580 941368873 22458754 57652440 273810861 942904655 796552004 935570758 326208046 799858980 204448931 41631953 185550471 411533740 876200808 295329266 805781183 463653022 750917986 206007790 297705897 334708233 918407136 26201737 797942240 989176433 543017420 872409403 361107257 128604467 541613439 95553792 915468963 746071153 349092592 584307593 744316352 612464239 340246079 788614911 513056873 198110690 335988306 917685386 932934492 866842228 745160346 370887900 952186695 22331065 547546138 660181808 377642125 496623633 199088423 598800551 141653449 309981484 727136809 193892994 101059313 358954581 287918872 515719107 193902635 256151495 895898504 307324214 801368712 897405691 558760954 402065261 870715031 664110001 588486796 728437227 733275038 37744193 851193338 394194059 249166290 727857651 117197608 190017554 10769830 51532859 971816887 654988425 837198485 411521114 939645986 863970919 836321080 736078513 138587586 798496586 674185648 898141951 119744693 21619076 433211653 825735756 156009662 980594824 525584655 546601796 466041207 462550635 785788171 948217773 224161296 729072907 932243918 454304951 930379287 950357574 529035391 34941784 989218620 291919850 874907175 746626992 823146328 83829985 198040400 423631634 501716473 300043431 21995489 408574656 820930867 359925169 86195003 22952788 993853438 550873803 182152064 80271910 85833723 37989283 208511129 608052092 219747302 821645444 236418630 402401096 409953103 204462348 594256817 192419452 491379269 278013950 740068808 782538589 765396505 89495270 61601573 794285544 243637686 111725360 327418943 615185951 63164157 602754589 883264430 43606012 448126085 103748771 701631303 593862597 317292123 33758275 889876353 854137383 593871018 220390472 807684594 634413362 77682707 71907203 613408437 928359262 181335638 659122978 239184136 992382043 963374521 219226245 22790805 858821277 154601325 490478676 626717861 391753500 190495446 703668390 759232725 474324300 353420168 340783012 369475699 596940629 527466211 186769161 176619624 612322983 827305007 668826604 503396808 980656511 632018966 127108098 156883995 172721911 527303487 165770473 288236229 850136033 978988521 594254844 397076891 289225844 976963689 912921785 693999244 306870482 689531703 415650427 770243626 451779768 299529077 684870383 730608476 372887145 471340494 19228912 391180295 601619001 345736394 447270021 124621552 337163788 871638095 83213193 604471353 580670161 839062987 640574875 237405272 863117309 543260736 887641960 83946443 129127868 204190277 881793919 138117575 864534336 653303739 712917755 278532485 91288257 66814967 756098449 266633078 527896894 375930608 488228076 729375086 137592796 335427913 239070417 354419488 810956813 349354392 81827230 637991311 647642578 602947515 528558645 862837167 476907425 563586012 695779415 922527515 338615661 863378725 580531068 357800519 965848910 14481825 346032253 826202043 266401971 153158430 137347908 757753298 623936889 605193869 881993779 692147803 994468378 132997373 161446974 216465851 704922268 532751972 900341968 304121659 852435864 397490726 429440713 674139345 860261099 510427290 851572286 974655050 255864376 913038260 784693561 595368834 431719394 246181222 276261141 83125995 284679565 597961664 630893008 759009191 494706136 118751396 680022802 15760996 963767654 890996273 842752291 77112967 599630659 915058248 12566591 1416197 230197280 217367248 46544139 355044032 406482507 786812254 765945882 902493526 405527980 341468551 188374285 512853010 327906898 921474812 424025617 950675939 375316535 429367540 310302385 234323585 372535850 863530465 567550628 824097316 189617047 984881485 890837324 627530047 166383392 419195434 187516300 255695462 222768446 533094176 4363572 386605739 491235924 47758141 41031267 451738427 444402617 766800363 962570726 833372822 213721460 979719268 327221072 860789097 732136441 545738085 189219354 909321175 842614880 234546584 543962187 464889276 874466601 433726135 450753919 557348822 492073634 152229836 411318581 610530471 4304143 141827313 841883701 452570416 605939479 669767076 893091862 859934550 753553247 19337030 21455299 423836723 223497129 727905433 766557855 606196793 280357318 176866952 224187022 572327413 861190907 911113468 880314448 183729078 775686526 667389502 88539003 844594191 870208602 701874937 617195615 529309060 68636933 248378458 420127969 254178278 845138288 438823934 1209103 202974922 488534353 987651592 848831218 994403155 378304487 152658403 43179029 189115225 404930857 886991985 409223613 617198572 111063385 298122274 92909793 643014506 629292820 50839865 130038209 305595553 996730371 916553050 595392777 832088716 837342931 233636996 647914419 550740328 389546500 590029106 607767927 734883901 32619020 819273880 832761659 608097829 524848208 243082085 771943826 458242726 919617430 520641804 45235016 59514990 671367466 769051671 139183571 305706538 907302627 772392817 177897798 400209838 160233468 806959926 275987898 429942916 745073831 218958873 841375847 981691118 549772694 233787472 640691503 209754094 940869738 19651052 977420899 339611373 796630030 13946127 80561551 921413025 840238033 141323911 324866842 527826997 326825044 965209271 610461449 913893236 149514048 832894068 566857366 704528668 315949895 412791662 399334566 858473610 325923392 225874606 101306959 60156823 144668230 580817790 762544588 40293949 920021627 466637077 461066776 77202591 587498949 477858741 507501804 952957387 193163555 331192333 715079029 89863095 710096060 302108847 299516408 422214736 400058264 796256507 202844408 220772718 830779591 521729080 766447692 783175767 634375669 859355906 83363227 444423740 152586400 608218745 597293399 741312925 883453736 5105628 696997800 107546770 884777596 925843567 848278110 671491621 258897502 258922948 56061539 57598168 122004045 320689645 228982159 512440303 480514425 738857054 63422222 353904420 100700792 77565651 447582097 734197480 190059615 868089559 646971916 830265453 843693864 423732943 668868643 24587294 919417074 512726197 872549318 964312267 498164163 780588353 656083905 371753797 644344014 801907923 690963569 976123626 135080320 948510075 580710268 308529402 881366916 744633123 741981681 20278145 880127117 392197566 266146981 305813526 976093999 864987684 314571792 935907086 142725079 554066932 558255075 490608567 881725638 227143259 468849257 906464484 978113994 878272383 703387094 932289676 396268279 984864573 586791854 979655502 272400961 502706228 228175962 388033656 147673826 575435248 409073421 5069616 647197209 582001590 182636166 126991701 795321559 540101196 655489929 75252611 868667659 8127903 614878258 377115311 657122447 616160463 223569637 850439620 498228545 270924481 651614475 664907575 203193517 622733179 735443620 832344283 60960496 383200328 61012660 245790077 737444028 535746047 850634576 979206450 474727935 863004350 539464736 443819357 514975802 240451858 676135250 866460936 795404010 656111863 393728085 96346487 876432153 891001778 771182522 420842874 621150347 495109279 428322040 229590301 505772241 927369615 955649175 688621160 509984907 735224325 764447338 475636156 254388273 653831196 734967393 318815554 39958441 807528094 172628363 961585797 340928698 753764997 773318589 159874722 109671526 234558707 22575394 13488409 553837746 974447684 814739983 170666174 375007725 48002708 708960658 6538441 496964635 711222376 363436943 289439523 79818094 438521640 464060498 681070679 233586106 777084298 473076738 511340864 630840530 715070509 429095041 730650984 743501760 152565084 518513796 726239589 12337186 619104903 732448973 565213249 536500217 13492353 988759441 338197040 983059807 691957536 997019456 503731915 232618869 228956571 274465473 797293935 149648629 251499482 829412315 971981982 122216420 124719093 449059287 145365841 889329981 399198336 431082879 259077987 651709431 488716696 72966667 729542350 786953923 898935081 136125692 306453344 945847788 710402847 213554576 359181032 418466222 153622002 690936528 775449682 360899815 437715382 989227099 517538881 632846247 379468693 584738727 807281094 404306339 825293710 940045984 785654140 442218079 639702660 676109065 452917680 568355030 47960349 342913040 944492872 866696515 648516961 943521755 128609584 64481301 494720741 729004081 960741249 790385970 602369262 198371339 191405387 70620159 66224150 372330986 286558386 400475726 634234088 75664275 796261101 393871567 824279563 695558040 789051764 257356884 106271788 371565117 38907938 865301168 977957865 580723552 373686526 841650603 460037715 903386755 923598435 70911416 993868187 811225612 145295936 410751602 507709748 529425568 908407172 724690044 731836751 207935754 869965678 220582809 820836762 889165039 43116578 215482281 843088229 471817462 504194668 875458157 574375298 708585913 148500909 985177735 497788609 919957066 185314762 680977845 174971703 842856722 423841839 124525951 234989843 370385979 329603550 400900735 33035495 932760170 670395682 85580327 938753090 116841315 253694376 129407631 308825289 210917704 692943716 452170614 687382410 345737393 365022785 184430238 262147203 760976861 76175425 344676843 631540598 470363557 418502708 214683984 781294378 626233313 572100552 781868105 108580598 163335653 414387453 862567274 755567686 242351392 619259935 432841208 532541568 156204558 13942913 825738267 694075906 933658997 961442512 437258113 672634230 923732368 331366028 23003982 721766625 463964307 242393120 545066167 139178490 756425869 364022903 960369643 137692965 668451915 793759348 203935975 676434836 855882734 536926621 867480136 529489571 371387663 83290244 705068629 305179120 703281670 70968525 955320281 157481071 217992115 360623172 588262827 212263748 747353014 986646290 784939626 303748947 87090823 871154253 958630908 708861952 286827288 584369595 978368973 669241744 888948766 99517427 465030525 78514202 54286816 92860674 218441257 226305920 481802004 977606670 632431186 105788667 662728300 911597475 515368042 27711528 372111430 282394132 663528567 570289470 433033609 450772756 301219422 165311142 285943356 132167257 965316393 867259623 860699678 286884478 368995 489536869 519267187 155180179 37588233 565300999 113200880 220040036 562400839 55072784 730973296 812506724 216198128 410488602 812872617 175856301 555455947 432407909 445846084 608240443 514654470 116145925 498735222 419854714 750319564 677248501 84366766 187908545 643200184 742744849 550162847 883962655 959363779 779647632 465958186 815333205 393945388 403300979 799249189 691675899 499545320 571009798 521849638 129127010 746450980 74434459 730350968 173623560 545165264 268621865 603153204 458517163 437549371 97850479 604063243 538512109 740277881 810980146 572787173 53013830 257335072 213859646 43697000 878475786 876165256 206580057 439612285 573278953 46824753 74020375 754929031 554048419 43196771 856185507 170206834 599745568 873052653 726915690 91006388 539595812 811961418 290264517 120701755 796338681 348185994 488955632 72141390 651142329 441133224 271193739 944818681 169889093 219288353 342289444 575396813 90315626 79316476 738927278 492090745 579924739 151481365 169894689 712042487 739950328 619017417 757005511 798383379 889234877 314895482 584902243 48947835 512534651 314225723 336363607 551339446 957957002 291348967 658712146 307765966 705482774 11062869 896598116 414420923 410023364 928964942 759601757 903844498 581408316 349295914 362763976 876991704 889423297 456706022 474990839 987226368 518415858 602434968 334879919 857481286 203604050 203365314 322962509 639947349 652756750 293218024 549528007 759788475 797331498 733647248 912364750 407268627 963414790 822829416 963222406 106036639 774986283 400889136 613128299 623936992 857871356 236442581 315621062 925105324 169647524 985609325 316566997 793889237 417713180 423724760 507629946 753909541 18411351 540264654 160708040 356759205 582848093 824123222 507721073 157302280 918706198 272662416 168450110 315957796 897985015 908134841 940570743 688403321 111567916 338585539 179427178 406148093 194116584 212673405 951939907 358222317 316499468 287198373 802176626 973926105 384776569 502257802 439912997 582636940 866474385 586649591 42128244 378055763 911237319 2870470 930387169 625474037 488208328 797647257 434566019 661530853 884419329 599533819 631219730 416130886 148977400 616385507 373969316 62250032 171620958 354318805 762692473 205223194 338833467 245512304 598275357 782911918 684447023 704999778 222708757 399411154 88161396 939783443 835129034 237566597 441705031 681834066 272903514 727711667 940771900 846964127 400018097 630077413 692422438 791110002 189666954 616009413 666000500 478876701 998638821 747671291 215740293 994779886 839288586 995190156 973501934 139794792 522153317 709490964 538125769 33759488 7110246 806225076 112747345 546914621 174597363 985729730 223930761 414280309 151268716 930298420 422172235 165563695 814785488 53160701 520268092 243297821 314773933 225958360 321509028 743654841 831708461 746062649 721865466 269667831 906013543 71845796 693692437 676558497 642374673 677356320 546390899 224949508 752831846 682967158 915773702 253994483 321638287 485538156 555129868 767276958 595503471 856190858 339443674 845447258 327549463 352100994 921559273 757472240 158353486 738710453 681451109 362497868 22085486 298193179 959242281 31135066 196505361 30595193 413718547 368457632 651401829 406600222 924916745 763765806 789930137 928326964 904148527 348145040 40159514 259434024 712403522 198621654 248059829 724190241 794385508 952181200 535057177 976432095 395815159 660005817 126311939 59994158 482494750 626041970 881657106 526343143 725659753 599454558 662547696 128927884 555209154 487807188 832954723 325229751 369818676 10549920 993783814 89892017 563416736 685922691 44674021 339940231 835202922 795629266 147391962 319388918 452180427 773550545 151887944 22812838 326106753 970009580 888164805 504936296 260487630 235671474 480754531 178961912 413878304 773648301 722120235 97722839 827899737 216466253 645951867 253176617 287796939 351974584 680073222 329732957 922080847 26100263 508503271 505246026 956247251 677063788 168851114 523382741 459435100 648971368 539788842 566994971 954084757 255471144 572349463 230598959 172581614 360305620 867115851 341461747 509253182 131722361 186300985 821382629 840271511 300068674 849700016 809536306 725625930 754016760 577280749 278655184 166209226 943127327 682257577 290722766 303071308 869585932 872319862 910143287 381287702 645261245 362469955 585500439 590602352 957938544 932416879 385753881 552440641 239229074 123702134 869671566 651653357 547908444 213612254 155708629 640146526 974773334 588966830 279478756 65854350 332668663 951159159 136705271 408279342 545121740 679712801 703560669 758732838 150294375 5354395 879824148 805723227 806036700 132981610 923402064 674904818 885576922 242938950 415712483 976663902 70745540 604591216 818642645 317996367 181324501 463472773 610057260 162035483 164307434 278854926 694071338 936290465 900668524 815186733 604466028 226020556 907964340 631440138 620515703 594750366 513458190 905786470 678245120 130910449 237950750 708776924 116100054 579798085 574942315 948376010 617050761 110448171 544364312 794734093 761762156 780747957 976928626 815327714 312663230 664936064 908337991 133466492 454202666 710920668 272825934 709892962 622746287 278731652 876821750 631207982 81482632 740493358 3873383 931021266 614222342 721955741 202356932 202046264 828000598 484409630 454587983 786531983 460786673 602299336 927654981 858136592 517969730 331342588 726480986 625611537 894106800 627506778 685684132 333235565 364132778 671329786 517300135 69889344 26978173 285591984 534598540 963547879 234235669 435991789 233790421 991722768 256434977 430116150 408675830 371329468 893928817 723105069 387634274 666191805 756593160 12561751 343149747 542206860 971942304 523940319 968481719 952664180 980686595 590776395 788216967 135102582 673980516 552972625 509597391 742289658 365993922 425883869 971752878 895078796 325185034 219231743 414919023 18548118 842072201 652813627 727081509 563015881 1475682 416023327 519208994 830475068 849056752 188643117 629334941 519533501 726032474 569191336 704659510 828967903 647129410 660591469 45381171 876895725 698080322 606344338 276383353 266097598 39661277 934686829 736791297 312828053 954255705 689299837 833498400 867444103 547106813 61530365 476769450 477588680 151178046 658853031 257297916 68653775 433239659 662008758 366743796 246892179 582615579 442063237 943573009 625909440 31066329 69591952 458980705 898292793 829250708 470756184 417227959 34333036 59681199 99609237 960885409 460157747 13205229 206593599 309450380 514840173 324145772 584267203 246860795 886739189 198797105 293317982 136319737 439042938 793797442 447776837 305226128 660012795 844447504 977601860 933258848 109277140 492974336 692532745 786963154 233124475 864066484 528950924 601092743 935520042 685023917 407837342 615649424 840011683 608298033 860304563 714997245 895088921 563321837 775921469 442974609 341646201 585742925 993807542 302032337 884126413 72807285 501585778 269036610 900286979 179657629 959316451 423776740 489535826 94283070 664974118 96894258 90701454 972977552 288424390 931167543 917205101 374831991 603641553 239254910 923029748 480572533 782517704 493011990 110486792 251300628 898132415 626577349 987833725 178931056 691660082 521728802 416075293 934993323 233042014 860571843 198633874 668834488 319373287 89079427 376150250 971527758 498273631 462057480 950224087 463600596 11792871 363363801 185337760 363911228 374524071 299425657 639111436 642736203 2250835 431046565 387334471 368420206 279202179 334110930 619533180 52976169 642480950 63768846 82826198 238349961 922733188 882171852 862308794 465247094 684535539 931203529 812392769 414894446 315508035 647684544 103355572 370581737 72969303 863343346 974003712 387760466 404226193 885365297 772376357 100668161 366588922 294039855 652876313 977312632 6765507 650962236 89388242 604618380 340308956 791976737 475581622 5973196 608966362 167352206 896874341 314841808 44236282 331202408 422588955 669799169 353254547 925272695 537760811 217550039 98685900 639802441 707044441 804616576 507135800 292875360 943289212 612793436 567770483 759323609 875837208 637076496 506574165 322189943 526698898 910031390 201985344 150346103 786336638 127999198 776885136 470531321 44210729 920928061 290714659 212583842 319299562 520671317 196613437 960038432 225851921 59952892 766688570 969376082 202206128 40052802 838899243 819037446 349979186 675241075 915459374 217240367 410174805 663815837 617734454 704402733 512022347 867677951 540673277 311089863 730681660 133618773 597325186 496734541 91908098 405045563 918739653 266627423 726451616 256833664 802712375 123306109 641522266 971741847 800166160 658054641 740372621 532888077 783738580 875422505 953313231 775420012 971909541 271158911 345169729 189492919 229737427 540323650 358634579 559001552 46053899 702171171 60200319 749506278 613147476 199642787 810509931 750016396 914847815 663454300 377801298 666950067 245482069 385940638 607251186 380035408 305376014 663748964 336142936 781300583 535822707 779266176 29799152 598429606 225328818 966557298 112053038 825806950 431320818 677932799 551475708 352338351 328681169 34276461 558093935 35032498 910716253 859560883 913552801 983631320 372998892 710914648 545224188 201924372 45878725 609835744 749206470 108435569 586883116 180438021 378581338 187668207 705796187 211291006 789981698 541190002 307150392 654603198 46057916 89354952 263215959 630037156 201911917 290588277 549688457 255625413 272047913 697022321 996764980 79034539 636489804 611232252 898140111 711461336 853930050 245359294 557658387 416649126 598439363 390547539 889894131 939370869 215480607 549963000 560645592 881653235 452570758 701977474 855882320 303209495 790643841 187032503 456096799 793840824 56130708 763547035 40765219 180973582 668067097 951040329 517472375 562144989 689978174 859152793 668355171 98071328 882960773 121779633 16816967 234692247 489551245 188005690 325906155 765966567 959997848 465240784 969117598 396924766 685277232 916638703 566355930 712013531 347462537 74299128 168973529 921985309 443048509 254482919 563021846 783799716 139821280 116305107 348495833 492961606 444817982 50456670 148687668 372866155 680914806 665249883 988342985 770258325 950252493 282458880 396836270 44792981 85324111 669771113 705046541 615638593 66242901 440074480 244663168 88450847 134241978 112442175 858268295 483748431 519187954 136220789 488706644 866187502 241313833 782858367 951700070 756624972 717673461 81389102 233567417 816290635 902602715 660921268 269825535 856624634 412415548 870549736 495017224 715730533 578843016 816987384 645611218 76692170 243999011 773478715 703599135 100537245 240154695 463810141 37499911 145946171 294887134 863384961 883740381 42569195 484430747 419313743 905136921 120944643 130940408 421892376 21199958 89746416 379967655 981138707 657139004 382804289 63479012 687067042 390271388 743713201 260512100 273538114 568216611 383412902 304708292 101858451 40379720 840651869 990001659 40205696 246344416 63992439 299752409 610613239 930071906 137032088 121275284 112604212 896832297 928219240 942056354 272637638 278468049 220771398 751563171 818466127 553268983 781219295 903681255 381201247 92690631 889254059 981823173 391476205 463669472 645936212 838097842 120725330 462138185 329496606 377525771 575949447 811963661 131948289 406248842 15680519 644363395 103183031 52105164 913873721 439199219 949104594 117894255 253354475 413329163 749351730 196685460 13535862 38867874 99844860 551895970 309909610 668699252 551289511 200358720 685188105 757683481 32658192 710255242 165220169 55923732 183012821 418116308 148004033 10607737 410197468 734503673 469096615 20067029 334032436 203799795 342128097 938510030 210961481 212640297 466273335 673188181 430768627 736244936 102170836 584971048 701883370 255185600 23733346 814925698 335100463 636582129 124280116 683009002 401782341 174151993 520851102 424792191 915198893 473170035 869719391 5614482 553534356 580731125 369537779 274867186 465816221 487535230 295751836 78841184 708253432 322760840 939258137 153034901 728643385 308561569 481465039 49298733 14020111 794594846 997979748 845282728 26159586 365210288 378700837 19047654 159954885 120522745 422819142 774200157 706394279 938406127 934930130 496512783 932724155 531630407 307025846 737739308 975281287 28627445 388356683 783884611 189111412 612087885 166833470 165196677 288312310 343792991 328946547 699424512 569479207 132081613 585670526 150389902 350892462 183510729 696784740 368298416 964822431 22322137 983193536 775424541 311017317 348660810 554175467 498489760 365561094 947305813 223729911 484190909 507314430 899263370 410164545 815699368 447827686 994940748 362761037 933569804 93241314 439396702 591386889 590407641 814708319 672266432 319014310 687594540 334371060 404695971 235122671 243197465 778833299 945722345 659565818 838298704 894113614 843997353 99850394 164765632 229141701 17541765 143663222 741206027 661202369 427512888 435307778 878391682 996827266 979810475 38220958 724213010 698924686 371312363 951452744 354943906 473879687 600534929 831054862 73351395 396134023 495825110 283606617 237867801 804510946 359354542 54324477 594074799 136384286 202435291 15422022 873370947 508376192 740977857 102610138 444466164 909804725 25757957 124423697 530900479 976873533 975754205 276101149 341791109 92346920 793267161 798957505 511489665 265675414 27746103 439087301 210067450 988777026 351136872 258229850 571104536 703289711 241168934 36270064 476256185 566009121 271832672 178911159 232928563 299805939 57124169 189774746 693000420 40980499 850061040 804228905 930515662 151781065 482242133 204932592 668078424 333534924 951485263 872767895 615510679 846553005 523511409 585005327 813723635 407134034 421708295 75721311 259954743 648735770 264215845 108934082 387614798 399651076 120833048 283137665 611624556 486759346 723164281 492627453 262934931 519333566 179144453 390572078 104197882 305568817 536660831 437952437 339690505 329331322 540169303 991476311 30338037 523413035 550081948 582897987 878930322 700635929 786104918 277881446 59182001 284205856 791712858 389966464 777346961 955014817 109685974 602907768 778412425 558670734 332140046 899178430 213188189 288853450 233277901 992586609 444463749 206370045 140076586 21559399 236747521 969952871 511413973 524805871 427873485 406788567 386560694 917764266 714468941 224284420 55016477 277473668 211887062 642646673 533809892 13830475 211327686 70136309 226900828 427509150 465254851 959061573 35455667 797407121 630820832 529873445 423456042 446806097 526773429 764094070 75953070 936243411 861552841 393549360 713611922 297358903 23186464 685925658 507725612 350760183 227321188 752334316 159149138 80415584 735396747 193005527 690100621 821611628 31618731 316235386 975506358 5694744 636035581 66139594 753122966 139846616 612289450 275962040 31644224 457411541 648057029 200876995 76777969 860158620 441994967 767465309 68394801 599657795 170037584 92348971 501408458 969506868 298449667 94216903 613795761 675972048 25708178 444613581 863249939 93338239 440755505 977363204 988478980 938555824 588315243 502660079 431440347 513715197 553286657 707402598 60904544 261566762 733665817 109303153 463153345 83209759 710830914 956146912 915120737 153252253 861398602 309487968 850569463 534384271 300158988 283399527 188637900 786014898 362596143 755431989 622712591 295480688 279941641 346603705 77964138 706246304 17127286 82207672 585984906 715096833 354972396 19674106 914266998 433959606 733882702 647316681 553622004 820275717 220560060 549312227 306677604 298402486 180743469 850797824 323099237 550583433 566447477 961560735 866227908 589377241 571748264 352406847 527165093 865905757 185897188 922564964 368627081 396618547 478174107 390662990 666459790 137257521 100726157 834675182 993322947 767955 919878688 464414300 144528598 427886738 472491484 166028917 545874138 590463401 84965141 305401986 194157682 540171090 726471118 651525382 378964366 472720664 416045742 227625289 656121609 488169992 91817429 802674059 342509478 885917464 221186924 470969621 325618528 127831367 276782983 393286127 684576561 297182516 784818231 756564315 671475231 344899096 287740713 512831878 53991547 338225480 563082977 813223535 773348229 279215619 509743478 184329678 890678878 74052791 657692567 140327209 365034348 676123573 32467847 135560539 223002078 652489015 886231484 497571612 428263731 415282534 440820463 737044000 114064028 673013476 509128283 750639258 660192864 441299780 477865246 796574000 188223906 33576682 545704264 196951924 560273487 326457339 329756263 607849357 535576026 292964724 29449509 92876530 475438400 927884139 309249026 670020372 586360702 19220903 949425548 440637174 6569177 380260727 265593404 346163695 280806443 504081680 519258725 263930752 607428930 574944503 363343646 696303773 18929053 515227232 91030465 823794990 897916643 69457950 383153811 727936886 204953575 477926047 117208603 897567199 490461084 722132180 290749422 952932045 34493224 105207141 769845756 822866372 705424371 321110613 300309593 446433342 792145271 332628372 656282541 646418629 600730271 759296905 691559451 80281292 810838178 97343488 18659574 831898821 375996993 759135881 852225446 284550224 462046639 899936307 139697206 532795940 333310820 165386444 352969546 424766274 791837834 329461852 434415272 927071305 138203086 464604026 890289195 402613212 943256418 149237131 18994270 900349703 864058263 34090787 586545778 868897854 644027017 996861222 751380624 303458343 200675124 314069594 846418938 767928770 746698562 598608862 992733604 937155544 275761620 419859486 818379006 796572296 17376655 791488672 406104149 554017138 918760552 745175913 137527258 113012258 264649440 177345109 330790110 472870200 578215686 254602097 314401786 720104310 139651379 575515337 836452871 167988387 41935470 359386403 923417774 438785473 260566090 476268727 530007471 688022984 608846550 365655005 531617126 1571294 340932996 811648024 835935414 585560378 954914282 598716345 76573101 554030264 409254045 984826766 386516962 457389136 632803244 9895314 58627609 275690292 611562148 203224557 977418876 125036893 131045081 265250034 268816 671353247 77971151 251823890 238380672 3982354 759046896 838515437 103700630 857635774 294605638 381275532 207276062 408770253 920472217 428030657 665661326 886862046 147812605 122662510 224322152 18939080 14016350 280699342 940000257 737077531 647398399 38644660 571624741 37581991 768674751 883001072 660420314 501879959 415432551 400887026 434533531 981506560 128876470 196988327 410441762 860455765 31789627 952318542 261232120 417589466 465692709 345346893 817684178 49358572 632977766 287404035 101878555 184134251 499925475 707443860 889355681 820040561 336295967 49905876 448266948 113922356 589320258 571827673 880228739 807347359 816565039 639798299 624504603 350099259 899822053 19384027 115786229 455764113 129994787 825507840 94406114 841738918 335450353 210760016 393417953 407387822 597966203 766957720 509685393 801119634 685135025 417769820 585527570 528240973 247197226 8808084 826803679 147666802 954303517 383364971 165839485 752118847 174254535 523220992 282528447 649968718 751667644 243557878 411030858 874689425 95656798 130204859 182284480 206894310 920995610 234229133 714600877 831047578 570876650 68183702 169986221 969194175 24146503 108281386 951721937 788283909 703074177 135258815 542951622 745737393 190430674 137931320 776625426 52601322 766963136 106148553 145888269 779983837 409505448 844129944 664672579 154550784 193383610 781864465 744514300 952193173 304658311 889176584 637530561 852631169 26081437 57718713 338883052 745172731 293453872 387738171 489809855 496693410 139191257 659981629 538910809 185000368 134119843 308748691 554895655 258855954 147433247 37309415 113704082 995403507 943659916 42695209 95194667 173628853 705869891 511123821 346646536 449717829 969231487 322740201 854598477 686867343 433888657 259228738 345880162 775381843 336341302 246606369 271766989 177041173 768229827 757541981 362104868 886296694 516553019 514892013 799504728 285025789 259195035 316956470 68955088 415187898 567129653 729585240 428095526 106015084 151732430 549718501 715728560 701084796 236180782 970425856 35626870 472649987 38053433 787552078 245396481 929583144 552680358 733483635 257518476 84788438 141345395 930815964 887796107 540437306 202118977 10027634 516101127 672177372 547055516 645678791 121135687 805682583 951645792 623885031 759965172 724170989 5896106 797312715 617206175 85555436 761553450 947047635 215646498 930981082 669734085 994782753 335721535 72732719 597632425 966893330 853888727 875702127 133135787 302654979 458919026 241767719 597535402 209465977 528124449 295094572 104177056 664729236 42294331 851751245 980634635 112245810 644149980 704361249 964878358 520722276 599681874 968999849 772954735 397399049 543707397 436681092 217001298 941738749 887058554 481879833 247500305 188864001 590209059 39645724 385820411 724326524 777237129 899147755 999605845 884583871 571418528 117117262 780491409 402803334 384984539 88210810 436476537 372073892 395575773 491565016 584189333 878722041 732194280 764268362 626922022 662975797 740117484 337236981 195509377 770583133 851451592 272460036 882252323 881123549 195614009 71433242 950603974 950283766 835427752 98996450 687544742 690751486 383173889 980689206 221058911 916835019 191794272 718471319 76827952 112675566 745847740 988689575 774209321 104898188 704692465 401522383 893991916 936836889 148542370 20857783 925703225 871017500 356688781 939861267 112768745 614516735 337536151 885809632 994018205 385800842 697200080 444037014 867361974 782749136 719640932 325278895 348187063 87428059 851138200 812926422 528865788 717357597 485121774 987233128 129104952 83930843 335498693 839138050 344384569 456328861 644048393 511320514 146758692 789260229 998715839 768011628 442265295 247716451 682180259 376492265 173919133 922328048 904868344 748132870 439163469 96126614 625828521 64280281 986332408 714091213 711500261 540708125 789665149 922402808 600924566 610643086 12662575 878230575 682287328 231130863 728140957 646274945 755930340 60790507 355399598 799282164 448838195 481216634 259447405 357788615 511686214 38971981 331955730 51851038 846712979 243353945 278684857 243520680 74299282 265689382 530200669 483164343 845614968 581803239 344078781 535066557 926108888 618414354 241323803 742942736 51038856 324579121 946235834 101926678 672742897 139586613 271273989 971697539 645143953 7227640 855710222 494175861 438563986 486033691 922066854 686653307 540733270 736709142 908395975 714372190 598856656 792691980 399092125 544610880 518107285 523819108 498502559 902055627 944869561 565004087 424115977 714082679 473864760 279172843 369927073 678196388 923133858 783990732 921626425 541240156 278444792 728691418 274328693 52023074 754730123 775576151 658514903 643148787 98181329 473925437 266594895 903920030 564552442 233753605 217733971 413820782 615893417 408506643 467260171 642656166 952817265 678759120 641188307 128588411 976828241 484767579 790388466 856485881 420761129 294872885 300868189 439377645 463586812 273161241 320673438 767946171 369817735 15772009 694941061 246714277 605548030 389107669 583174107 265400457 718534730 101297922 37008808 270016558 726895922 181188846 483848110 874261369 937121084 694818201 865078044 960202967 286886325 821418157 890341298 891144026 284582633 368950869 558825115 189458727 238939055 769536471 525663502 145182175 29802639 964400654 145089921 380821774 424209482 309975515 257004009 921684196 499324796 682275846 978434529 425973766 148582630 375462791 205917714 492663021 285277256 285874077 296901795 948178855 970853931 943916174 357523959 751771479 711386533 702501476 521547699 344103493 508141873 593975446 465048673 28282420 857973570 119823457 726926642 762355195 619499463 179937506 499421673 97467219 765237342 17035854 436327709 815105195 963610777 58025261 263002916 565149086 107358410 927570821 89772765 204917608 621189235 374301335 253307222 579853136 993685274 958429189 393112691 784143897 563843106 668417276 671292767 462545561 284970136 796418789 902795860 53433082 164058004 81652105 934460975 88298757 596601595 983309320 506547308 707262374 951596089 651551328 69272507 801230928 451904662 559913888 925541445 642524699 333551298 581052706 892392000 97894470 150705081 761223128 303850616 612546619 475604667 529551018 743034172 706153639 807779836 207203452 859490450 845051529 80621422 772245484 110865139 536223561 585177545 424878130 127905670 751535840 590661663 975820977 666423392 121388694 224365862 445512807 825810759 168052985 150480923 102889557 689527599 566265174 512533484 379955510 620264743 376077902 17626130 612135696 320886115 890584199 626324826 931792039 232754062 445437271 114330817 650024423 611142241 110610699 169805955 482162987 897807765 569474395 80485865 441948817 677913795 633164390 490076077 883329973 728018659 635972413 731604713 346082461 622652866 614728553 221459971 832212178 294765656 610029538 617551906 182378501 933437623 168683993 317615708 124588631 838944500 805905964 458476635 322106295 412519247 256968197 427899848 215672616 475345051 332861362 508659674 730911322 58364796 13208725 860986929 653734446 116603743 324711575 108002748 635484292 974008602 204280283 373306591 423683575 27208420 911514176 579833009 211468726 535116963 609898050 122432228 421511930 739958468 353811537 581827830 771813730 856385853 263716528 533778006 552620412 388671559 222473404 510288765 477419974 546562359 340844354 37608742 233759102 779676077 719488346 494305250 505783013 841079451 819109375 722484223 796622566 882566124 574474203 73847281 407474509 367835693 642386567 578567837 225660696 953097538 417965828 753594074 606668044 478333073 334536315 623224973 253198362 627631085 968206585 450883152 16149283 133054663 322278288 782928043 515508552 305760793 233177331 17653582 636743814 42307721 747358679 490183876 659548723 247506786 19408069 230319972 886320129 401986471 129449801 930476836 337604013 415728387 736235609 624634212 780288466 125422858 165222463 202199416 803474862 877727523 473523887 13619927 730316606 870489339 17898764 731917801 767466325 898989282 23965853 595570801 845077995 625024265 468318359 867661873 214783747 800825402 288088600 223760515 560084776 929292361 949011255 229638156 325763277 597433935 520932182 594716421 449098350 471254263 47512809 462883117 256349785 655214140 481258451 834142364 870600529 276003685 430661458 604736451 631390642 942827038 223043191 496935093 711183602 231490972 631448612 660380732 618949657 146162116 762819653 574217342 248157046 158317876 460780005 925890548 749634312 30923719 659011687 562768764 784874205 997121391 540644910 835162391 403409403 558130334 218202244 861542558 724929145 585402484 684749629 431611 787220191 575100399 468488303 67472169 734914888 973616123 284833882 287544248 121308278 327595989 411494857 512796439 76277307 998218387 158280415 960182266 353925201 61034592 76325189 557023268 256724989 183059649 174051761 27969037 268255007 613253371 933457764 634611042 410533022 447104508 883162923 139947289 747129403 378957421 7738386 672257965 211057768 229081734 571735149 412679729 420251196 859421105 620391404 2588845 359281016 711286092 452114907 864653967 64595997 160258443 606570528 655939157 968892517 280134436 874872139 891413174 219222464 137909780 684864861 850314822 279534942 749335852 285020685 442379208 896888342 643653039 197006833 897335215 328461116 670682722 792563494 7880454 43877787 406343421 870513875 697140142 295677655 630300625 48961355 875940079 514256205 369049425 75995340 291235397 688149543 196880713 947238306 940054422 564597820 288158584 714917516 121288246 44461136 559532209 152525335 531329680 56095561 19146057 143430307 850656629 213074424 774345580 923203684 35392548 118636595 657280404 34173053 432493543 838597732 443707849 177479300 251702257 503859965 87884013 2985742 313844380 657658918 71639672 971509731 501476739 550052787 614970502 768281838 524151338 325053608 258763716 256553114 260033429 473879775 600703641 617287200 329739692 669567773 791628420 924443039 987692668 847237605 243207513 576020157 75131943 617677742 734614818 597761465 978235521 454022541 546310727 838147610 851884084 81784698 451053690 198190504 694605576 475251731 850622576 831459951 707224512 234379584 940087601 166030563 246348213 113794400 931249063 368710800 650981068 752540775 313272801 874741202 743989660 829973104 777934015 439949079 94484362 816765073 32357364 318730804 256313667 115196088 62129224 385336192 74411595 82782438 974898667 261221460 331823618 508715823 961797656 232235392 533452723 567888229 991318686 976627111 568775841 764512703 483464217 135726590 548792527 339081600 956789493 696328401 150328952 744926784 380955222 923224469 896275276 672432241 921983960 262288076 122153638 627373267 136712513 477083534 764201961 177203053 394774293 657889074 275939674 190933971 441913051 777089391 900327916 119781400 222140213 178157339 2981469 12241582 761320048 125687841 33865690 240805386 987728137 438290789 59225185 965346716 331775729 47260871 554493840 701423012 324324660 754465231 324390503 44607764 703351290 591000306 279500351 318969709 464800837 3679157 73349886 288735263 667174711 824390973 839110353 272987951 113784903 203390842 124798744 534885106 5013669 693969549 539465270 528049098 618331930 922955513 83338159 896516278 152228955 482269542 275177853 625590635 430637514 200124229 313360526 243641209 191058250 135377652 719572696 340947668 936241127 800419853 750331675 669800103 82388164 132415354 878020652 388098720 433707113 857113361 238520129 445405837 361904697 254280644 156101770 909785321 737869451 703645906 175220876 62023238 765868117 915602752 899737963 540932635 323598545 339552874 630623573 594100945 164234252 394544133 614350129 776215677 525229102 764404164 812286841 955001982 939913754 309816548 805493966 33805216 955759209 8386613 167850826 991833522 33629244 912341295 288297351 970745255 362585931 248727266 198433298 128564981 257845407 470431145 361571723 753062787 239067537 880467476 271243300 947624126 936890528 947549704 764941466 124311433 271801032 40215686 612101139 678298144 863546763 702495713 121811397 512042102 296965475 289454562 563351257 458799723 950174453 600445903 475040400 772430525 278397603 621457498 368091473 998609859 514675073 249986348 659469590 778112538 557284461 948546149 49918927 591127767 610090527 97614833 806865419 318627871 250845579 813441586 301524789 377047007 332718427 813303439 733825936 370989429 674653542 313568495 962417491 153426818 132773520 270048490 804704994 786980791 682117197 986321811 44158792 923547682 933239707 515360857 47363716 380509107 414889714 970341252 648358936 966530228 435364649 168613291 873604035 392523056 802453010 475231919 263298506 186514591 810787667 553129084 945175958 300649543 901057882 55618609 851402661 899140477 208743227 362325336 613860751 721525965 121435651 243205082 664717595 411213982 838437778 601686334 76214718 782318211 601412016 230142568 617297829 151653462 958472577 515503726 766819639 954335795 363907961 108861246 11553237 670470142 92248069 127360955 980678825 30624320 663931070 385022699 871422417 915394070 34072586 884088095 899192202 282662075 801021485 851321656 135125838 926365230 747067578 266069818 809620398 639660811 972168586 981113127 397314211 862297257 825211986 659780709 389245898 957021421 650542397 953796254 333274266 250625720 204310794 389973468 842428525 905515792 867212475 225284858 364763103 560536010 740973894 482188909 570104278 918936390 500058690 139497010 368532292 666573458 974249041 549150936 46821890 161599376 965380553 715148980 436888685 168066373 96680481 938198313 672178313 936256622 272135951 468955514 36705294 184749172 776185814 293226268 384331328 673741274 682167414 781442693 62961000 961913210 123378664 368486250 980705362 27118738 865579263 262051849 352327162 38226862 174616956 840000297 704230275 70796267 984371673 622366728 456164408 656480831 889254681 168240902 569666896 894852763 167696471 830839516 648699203 825306737 690410890 575778182 931174740 786685207 712890550 512990072 345001888 194649947 307091029 988328010 861329894 620294625 385582767 675910581 520049736 829537504 27072557 322501553 930965532 70115626 94363280 150602282 327675970 246886391 456945332 814685754 331750016 897491995 187935438 272979610 814283318 136431148 757631529 376531597 941920424 995779703 894056207 507777812 758501720 999910791 419663650 921232264 485799332 105612725 182337165 569878228 308242211 11167582 245337473 216489308 124381293 406264277 665123044 859889225 938618520 191844127 161920562 79989573 4820599 958622149 322169268 417012057 637482124 605845350 851614929 537032705 6743404 854197419 605894407 961359606 201825485 481175036 68571022 567945937 547809536 279673707 897168986 859372819 253399520 150569177 177967137 639546123 921333625 715854400 218830719 403843393 903285299 680663483 259172375 267384426 824357213 625409582 548295408 273750480 885167000 389135650 796705857 315847681 668568441 20572227 903613983 499074325 925785479 623022958 195065890 609173647 980723092 737355513 922580162 50501863 755195332 12180994 507457621 573165154 781551022 153899680 483913254 288542281 926188713 400188168 599143860 800100641 378971197 110198621 850553937 548476194 824887581 565044050 69589175 470682014 461680457 574218603 734159884 272622912 597452178 207947573 27485303 258394281 419648108 117118295 916240572 859838260 394948619 684295247 832541285 479695322 50037035 412294387 753775763 188754287 79888908 640429248 200094976 878288285 862411440 477351307 462695359 546810702 155543197 46951974 433426646 602368607 857123572 394537468 208912404 217626048 220838334 841905666 207785002 469428272 572971663 188636946 115337712 990416935 434550153 628624017 746289654 437322024 614329675 270231623 736146200 64535621 118709832 756906828 371177874 472268656 991695302 276567224 967376718 862568767 645261761 843236690 294895445 249848266 113790526 482883552 731967664 88913656 855827313 903139293 997117162 59906674 980364236 380532670 94490092 79775944 281593647 56038861 93179688 357228231 181486858 707421220 473362025 998161819 776904371 653833274 997280868 885602910 850865744 939573157 978288111 190651745 486889104 150832874 228236243 156803357 536153825 526688052 281862250 492019514 281599333 101076661 778364180 202891762 128506065 669692214 796033551 597025075 805856298 640453082 367407726 577735429 965116780 392237067 173303300 565654843 575611641 894676550 836949758 758237509 719825462 549428044 297098928 116253535 668142053 912560956 715646953 237223568 107020633 472965660 940589617 115482027 993769037 316891855 980404834 108236192 303890133 610640489 338699043 447332677 853471871 412642409 27417164 547898258 195075945 673193529 35314459 684908767 166175727 866220924 483041627 240748887 199451896 182343438 164041238 455273392 599819701 592040569 457030831 757606169 759931001 810239124 911460229 756718285 239437810 898185246 179082014 691620399 100656701 378109161 405652379 794843622 703716875 883659058 149450107 727525241 539590379 484809490 452436183 568843603 452213760 717481216 669073215 236031549 805939065 780568331 656115386 27533409 948875588 307138438 664007004 123992339 784700440 153519043 772859015 502426151 207677432 916937524 674323766 581095251 933951432 901907391 976025573 678542615 358249695 145499109 711014291 452794443 826668688 327645751 298939597 536004581 152733213 14411064 15952616 221896039 369772246 868254048 569055720 542672316 858181422 216223305 752985130 398483933 629389359 719523806 238039577 937411177 240045776 260051016 636405516 896802995 925363150 3245942 737480483 294308804 234036536 967965410 428179659 777301460 41671986 612105836 203636851 4320651 671636624 880844375 517459265 357452462 354708957 17646149 841190498 627172992 321477553 41773453 354553939 929290814 79857778 238503753 784307779 770962195 919055614 636362562 53537633 227597104 709660026 782167459 762716097 703047721 843804502 559332399 957283829 594981412 961705988 400131729 282123940 980487872 661708283 387366732 239647022 98965986 294030058 845816877 262742351 906979122 558740767 941340595 756955662 90598661 951485561 87215342 965972246 840572454 84007959 657613057 207051306 963921241 97658658 4424688 824285538 605478125 708907484 448311621 993611845 665809420 589571702 971347702 473616644 269572551 53571111 883350001 675971701 117442123 377043277 1586453 639426474 731574590 690219298 515993589 672394082 475933473 581804899 896632984 996365070 332591931 867020916 669847250 948418556 159953739 234985656 6817617 339095383 876140621 100058180 107538357 171254084 436155007 982302355 623213263 868186819 904242536 819736963 655772816 434460242 254596727 577446943 511717786 295350305 621478663 875025280 74031334 720133386 749064473 126470522 344140398 844162301 696951348 401750934 415905772 214941560 341950925 625139764 593135539 556133224 135194468 513163279 577376003 291635618 877250796 325844988 830992342 396074547 767725811 721900574 936503649 778405321 712863329 361219702 398347174 798627882 582553274 451025101 453160156 292024869 121717094 41681365 887711955 851895387 135393700 632828593 568157626 498793323 778039256 576404617 856441883 443628313 229071165 708185253 239762828 485047947 584101191 874887490 866696768 740972090 854245802 153847730 359477616 995616982 974816626 384171515 65679662 113872685 619728509 825782818 274655490 20422980 507815032 95848364 938878053 801927545 77417859 588690020 318656881 7339541 675417454 645743794 691199436 65567419 457539593 359705636 77065542 609400740 635698596 447177609 369501380 899111217 500443135 645089360 319639148 189754973 59074126 157258571 179465202 22949364 447568440 262366889 798043540 125518523 680585419 580926967 787932931 945789085 165455135 782079571 414959151 316725113 925269888 174977235 495442865 660164386 854660886 291018541 782926012 432278968 407329694 242484926 248893931 225329765 495618460 944413864 583321960 860706635 804898221 780056502 254281215 498881137 326595858 600439042 782804058 203180440 65796143 991734359 169210092 467090268 823246014 860090672 833254297 606998763 219898989 876489294 496780512 561617280 114295227 368572515 297921991 486677103 647276731 827050393 696282579 403485807 825512620 597288839 932778662 878676090 714183179 964663771 452840698 268797217 633214691 174592890 547210075 291587114 953413082 263195877 34071059 715783514 912017209 212638053 949986951 5711315 367434620 884785879 10658876 22955063 378302959 116974796 52480110 723388638 892511992 397263927 706579296 265054445 147135690 104261063 212406556 854563191 733267094 644260714 465786856 400081328 861300394 401606386 545131297 117639848 767993193 740784630 25034641 477367802 398622348 661741974 673388051 798215191 936658603 765027460 772246211 560503986 321725206 704522416 155945289 301411139 175758338 907607881 964297517 445696641 730606148 829235129 343229246 136408212 670675901 738483965 477079072 452971345 766249480 452856805 852328276 510291578 721326492 597849920 23289423 526478135 815719720 316309005 18587971 566422506 334619606 978720683 795093131 969115688 594159210 633714686 18384258 323180822 582848201 700679896 255561149 526351570 731561013 163849915 447800386 463468156 124198085 8733718 914541349 133576161 290157611 951953013 585325880 918172542 18379052 909672732 871784173 27718582 975986603 184234334 458934204 355205379 132549910 531328825 838370346 291041541 453917862 605234236 395376576 375890953 479092154 560195308 200472763 877345866 624066974 911559091 803904427 569007537 713233484 892919750 544138815 180865156 403757563 174133613 765168759 319107038 277949003 179192540 190535643 572356850 968074952 943936915 233787806 910746563 981064121 310190743 261802875 728600036 806313023 748139713 338658710 131953849 456286159 12089494 754936719 34794048 598800980 847605327 889646846 824437220 168146828 747162823 782151616 786272251 83632878 42744111 122039005 701453911 29810960 571592033 820395097 135662936 547113284 887744164 402557092 947142751 421051767 824650205 862769012 911173081 163892614 605100602 676417735 221340922 541026135 892157492 172008055 82869527 102078011 725076357 399430220 313026146 306005945 781412935 514458119 190983927 781377157 85487984 328872219 5448414 538966732 474099646 806527666 173422070 214635570 639814059 765607894 630387902 119439099 665525746 880945212 435655189 743269932 864829100 594143637 600402674 42897654 564446235 185984782 547045572 696174315 175565646 623850488 241665859 510130707 883467228 867208014 145822461 492395389 46418170 610242551 613774696 817605192 788761104 917848691 83345227 341504501 449035808 663812834 91234177 426596384 732126592 916193139 520528189 796094069 186581578 591694830 822680312 366948371 269987839 980187842 218962997 485744186 557745489 262727152 207049232 291542785 314914260 755131770 490386269 623953984 218969848 175661888 673111286 198404507 800794746 243282680 589650497 671730704 474951637 654971795 651142307 966494905 663662616 300736017 870184707 955098429 624743847 740572030 990921058 439347893 452647803 686661466 1631847 708450247 28496510 623929125 243177526 978937971 919749276 825100832 997762886 700067834 856842069 256027073 929691605 394587344 24418943 84738646 116272454 930414438 361237107 241686055 907162378 814263349 689605383 683683877 651568672 175721713 234115492 778543660 22784586 281120126 190777192 351072122 85340682 801339437 543965400 633941641 762115944 429598494 178706387 377996566 782939462 254724799 751972026 968795482 380742485 726888053 332818319 683896268 836889779 550421652 323654499 257247219 474308158 374585927 963370407 368331767 782165530 56595611 251143395 266990351 459444933 625508707 191786056 168604152 108522530 751769015 262513725 99056437 153143455 336691725 32866789 950070607 915254193 297176480 29592200 591816723 435693277 524514770 510030634 666053385 490201754 302319946 597477856 271276164 462274395 56723766 432951361 155005236 104225545 826636392 393373879 83037590 909477170 816233475 769032905 634925967 798176042 744531117 59336530 303878109 730720994 750205999 554349696 449779466 424486412 290306549 399861501 921960015 936138105 125640679 880945044 310388699 752950768 614496336 262728112 387371063 141427464 601338692 858960909 926920790 631188609 152814529 176108823 216356785 475269017 993696908 904836784 818578186 981510843 334694098 684529555 647934554 359575138 730398193 770985928 980394807 973483862 629108731 770450816 758998015 50189329 818142650 549267851 683971678 874855377 72761551 828639938 290722643 614035923 242203200 882104023 105695291 781362517 381021463 1270400 534126050 712720320 782894819 424465443 760686683 943494627 811720159 187233671 388365842 450195051 900659646 177523427 57372187 101048761 515889944 455398474 587277793 492563256 30940073 889013213 731413908 343665847 782694644 100937146 347295243 314821954 756619295 155900506 424448751 892470023 349739313 156314229 144785567 142036605 539495783 665924673 951918452 894632084 349317209 596523401 686061545 953509284 694935466 323400345 316704028 302103595 510024620 497841511 381354892 787598956 182439535 147073085 835770797 2445824 678137473 423776304 580860024 890888835 86267028 64804098 918964604 8015564 6254399 368207090 230562551 211684242 910118761 817279963 286884702 554130231 201558911 534137693 692370679 145114542 962673157 389648193 524929722 491315879 598046671 603604682 824386945 294893678 139314267 451872947 896389717 104224914 670699237 931778839 55281203 826656188 981149799 693241060 500430099 9979844 35472639 614844770 553947826 139302088 438171898 533506895 296087657 577144652 331222679 400921107 75045949 378583474 607971193 628934254 528339656 628937503 525502516 448966644 454987789 946124786 700607424 445522267 289314636 42512514 133635441 261849305 780747581 735327727 978474835 759800948 204841325 572601755 26907457 76718079 145845027 657640952 739464316 777617323 435533934 605669583 682958311 779746772 987415411 569892694 225586893 338515402 93892409 152063270 641556948 247669250 827729494 603367365 607589657 400744743 523690580 195241036 395350097 922205063 577620360 491510543 506905969 774582216 762708664 222646517 893060473 140053111 695533420 17294728 575234639 989655332 417651326 526786934 106235007 23921326 393893676 297768128 334048610 684535885 99554800 854233624 826062988 14865286 640521536 4719825 512149086 164616873 614441904 682953892 283647981 623359989 221911915 56318536 254361993 930782988 77936943 881975652 109386784 244566622 67431625 663214131 765702663 412437315 567297690 581779143 353685260 443672881 176029223 350147919 858549197 288808639 596802079 732716909 659996345 424438032 522467919 942360584 812724824 97746355 223907682 524855885 349093607 611102302 673152619 649157053 173613143 135060318 453565326 601161562 184147654 710114717 354002853 637567226 335904834 865416522 429366548 637050399 55927796 336191521 126497422 472337991 543449951 561486181 135105970 963997309 301503874 266040255 707230045 684563906 767757241 748370022 531255499 28655836 487518912 43648689 110376104 550605511 586885267 488311634 671336864 685746244 358825573 459690636 497122509 664343279 699567762 399457130 41844360 595664296 217506174 722306361 26552180 392982553 875792674 485455602 246481924 702136672 696845355 21556619 485729656 682987075 601439339 90790719 244169487 412660820 184259454 751096972 877762211 404936020 262715225 181867194 18847042 591707043 653714652 387099582 846904876 298352618 689754964 888345467 727038772 973425769 804664957 160844613 381092359 743970741 648974206 328711813 27801620 632324796 706754312 834019879 850846078 839030029 990217548 125125746 735728653 238847302 45963688 864326315 556877886 797761071 369815471 812849750 934372851 399498351 506059479 880946565 539930579 964366548 911307692 394783222 619926034 465535039 336898535 305697965 14130675 398608317 547375517 952198042 403858879 92959345 805176759 54841712 181761162 731178698 857961572 258180193 827959618 686475655 900284758 343027929 577907811 573445665 313398940 328417361 313393328 383474179 422808405 952781267 557093259 844786682 225297590 732205668 238764827 983999444 190840056 488966052 224103739 430868546 758301412 561508276 896472153 962188774 134830292 623390002 49587347 351211694 155495430 31054646 867081460 882824162 880436381 297998563 929123564 514538680 924964904 563168457 94198829 449184283 768920024 651631992 692475578 229200750 224053148 218851467 56831481 993530337 277919454 289917608 712955782 922860589 650277379 223484137 764156099 106753352 388758127 769305492 338477816 751062109 346430548 135067465 497592794 823976796 762007028 501138462 237422786 200610030 734733588 72884727 348274554 825138506 297609601 427734674 54485081 229140598 118888501 575602895 71472670 870559608 375963798 822229717 926219580 440906957 130442865 711480534 694288850 38110283 90744048 60112754 67177905 434309827 489739674 648369413 48314872 677318060 716757778 979188752 510783683 439869301 376743566 386426020 985136162 855063647 145037738 245018423 779123208 761116923 850329849 706958444 793718270 150338100 842104150 583703975 937883498 179874603 771410096 514219161 743687531 584726637 386349559 983192550 258270300 563738270 275597212 314371812 51077499 790506072 588557740 508456405 174136446 672330293 515934244 424696865 185348463 122974172 914686105 235056962 966857994 939956166 507976468 395590641 356880445 467979801 469799652 691955422 132067490 444810593 344466716 120111102 156734558 616616436 452086445 36460220 941396521 571645348 163951453 170802156 223922899 625067333 287994927 978124885 34648970 318473220 906603562 715068648 547658038 605460328 452592919 369274460 289964705 842911861 288249833 220601911 788224715 344030411 19454287 618207533 549483555 866696860 962255799 536824304 616981723 924450647 11746594 561199890 444583516 740564136 632426411 471333609 577095136 758711970 591157087 964125333 657716470 793659985 736705556 744951346 571034957 841687315 444557131 587846060 261237053 199843972 452907681 81661459 587089934 427207808 570106522 36029402 805486783 932108690 624102636 220403695 752824776 886819890 104567910 500917263 473038555 837030272 105797077 314853183 146368208 328943301 467059087 397871187 687707096 684425820 781919165 548412318 407915124 564634985 209573405 994199996 427404205 545528494 26272440 647488314 131280805 914841510 712725954 365379056 661077836 436837936 540020256 939668105 118448841 824179216 309322553 638092162 325668929 408487355 621357360 20728213 476690811 505478309 578517075 737067151 981901078 915252683 334393483 800593451 155063487 520254496 632778003 740686297 424945509 803426859 906005480 205110348 192565339 498508963 685124265 708271141 367036403 156981548 901019930 803799054 781842230 378825755 535857217 927383433 982874269 499511665 566978308 418134559 520312970 149181401 785248539 547343518 260144445 907053384 470770656 278265475 73754002 226288854 470948927 964997254 589668734 754953729 395527923 10578424 470087738 252960773 41829217 691682043 861730511 73819483 712025033 384167928 443123005 370575365 244478943 71869146 730615513 393703287 267772436 745192176 488405154 582828551 511879443 788561308 368103808 215469508 164818207 382515702 436344870 633747865 941620134 207994871 473493688 994962976 292123716 813149236 958976579 57331622 299953904 389990769 587968647 563520702 285988389 429941218 866107814 810736585 922734738 912353249 473095014 954236759 947402722 265577269 252108507 890776889 400573827 514179879 254949241 338410733 893992314 870885199 907244441 350800262 524870815 47335659 884426347 774737044 229487450 906485135 584844812 311003102 814693125 929112152 913110969 660023446 75977527 216901322 8852060 730858983 217380236 160500546 218990376 952473820 222332389 815350610 683942556 526152131 798893265 240952759 252159390 627527058 801968924 712982891 83694119 346575582 628315093 183171957 322001319 845781920 830794580 81511133 776644247 708242079 108204988 193455492 527877815 299291461 398668047 203250082 480332880 13464506 335101032 220902915 413404058 89853445 387235808 258748079 698183848 322420354 955364964 839239683 334667567 465918872 812436574 481422777 953678733 750380981 917385962 744928200 538667183 848680997 151664658 468151106 235894429 485978445 969413223 742765588 998228792 780022193 373062741 571044348 475390331 769610614 711581488 320933288 957376897 142261729 73922836 416300930 620745871 528570781 810629157 587120901 849772924 924333309 529489048 705056463 80578453 951866522 903064516 487225553 232997884 471201134 784482870 927053193 425660153 565883998 551619909 393904939 293277877 898835051 71906613 757303992 894037142 934738092 759143990 715147575 893488188 996989405 866997175 108905399 66183656 404570039 584724834 588477910 125851266 901089230 573408189 608171792 57567490 152845461 62962278 903579961 695723381 876229378 7723129 903250116 742179093 401199614 391109810 529096240 208083573 895370630 306134410 553653768 91382966 237557589 985097761 987997980 774971111 921856307 118750373 171494008 555656648 425679262 89223319 387498947 436034669 225651462 865712335 143708738 185674835 677999157 703989945 794223858 600094207 997725860 532698771 940490927 659793000 914716008 82307724 535765638 753771306 659729301 951013525 186750776 232632927 843940863 587548171 938137555 23341099 382503775 895266341 612012174 132618990 835576150 391487481 443312993 421101971 13203790 895230900 759353848 163640785 857344496 325241295 406894405 618872181 670320463 187145331 479782545 537062435 768207002 993892655 648802671 299752443 222697679 810487932 695525169 378769120 720586411 101191709 440800166 93611850 236102904 450499825 638677005 491795355 521793389 313767940 914259200 909910174 95433844 637757487 350656501 159859657 768399440 261020668 326298582 50924375 462701552 439026951 130697922 697193800 269259984 802223051 598967197 751473383 293196347 470733032 328313467 359593267 635529581 649915252 16361722 332728586 133103735 938504223 276979873 564815104 799808737 933138406 387855130 482249496 374946742 788474262 24216160 363004633 657619631 989828199 448876116 869439173 3203793 12605791 421652655 880448768 428282960 300420696 494437852 278226558 697913096 989187086 119663850 977440506 7374648 647436555 322852330 937880340 123873881 27252672 409179832 936410143 866338113 259900121 177352964 292599034 594474519 115462512 80813089 230103731 703784774 559297497 210720246 466642602 341737937 62566206 54794018 790006410 301714333 310480288 822633559 653239199 653949538 826117529 470669534 413103824 925278613 314206183 476392330 630946502 135717955 866328477 430517080 57820225 301173096 23608633 681758512 307258 472365404 245293115 592141007 538239919 504610477 62671229 705235541 572348173 50182306 866612923 254856443 66122663 670765984 502672214 225694728 841529142 672140550 473285140 668616239 552583218 462707087 366375401 249215506 924255816 667850545 340887141 945708941 757791953 746334154 373522717 648188976 215725132 605251037 454734198 496415514 774720709 340296889 201916029 642737417 98756129 285741827 767884672 212016037 260226462 536647571 569196666 367838263 887282655 699634053 293503630 229178041 21424077 372734532 945508067 317833284 685291606 551745765 733457738 542336653 131453553 425988107 757876252 751004348 44680829 242577727 167454494 407771157 268353807 702009966 153899885 426073270 796319438 210862572 483371977 499858616 311445863 150075831 784228676 141051743 447536377 876355996 31474006 974608182 987095334 437703391 784846315 958697891 159495576 971263060 756457161 696995916 75678491 394244571 287677503 45162173 79006804 866155032 9895609 105584696 752857616 249121017 758905567 517149341 717530932 997918850 113888219 384241508 376194424 263662360 957227394 420305749 328336417 357366419 774522482 570483400 810601541 177287698 231769264 874645945 602418287 210344542 61460876 259613719 949890348 657050852 560195015 265531758 311842757 353535730 495807537 375335748 303345491 955652531 140173365 368129909 131493768 203034537 275135729 204862899 651202965 856607152 185911714 839343475 660692654 441770244 974763937 342485881 196753416 997633235 90772216 237053204 380439124 725153737 100267675 688377086 584867664 153101423 383613433 15972263 56873063 429099254 527216084 547169552 19004779 719747902 73459603 519631709 990292457 327134798 532671737 971642386 903241347 860392190 862805 525123844 243844012 375237532 272620010 425370034 34218224 584846821 639182038 190278588 546619338 526907374 692725549 635412421 418170599 113111513 504284184 409526946 546898421 417280027 805936397 358893685 260171545 390058715 246534257 271341338 675278971 505510147 593959981 277119614 766545221 1601877 573832607 831732100 907584293 981630227 656032069 889688412 707067023 407170542 192381903 752149847 639369282 897955207 466236736 81617937 585473495 854417554 786552915 532682026 442735365 34970930 341332006 141098685 364672018 461867739 13301299 269426253 140073333 172209827 869169365 359820831 529979694 457144983 346054635 798012450 797590539 191640475 120642499 54287128 416934251 621711879 317139777 914304859 134797763 86050212 259367214 550083669 656564678 405136587 658034568 60676273 13849984 583898917 921113077 518297942 803470707 119322479 227539585 278770525 53033237 237684689 484347583 817239101 815827003 750339081 455440160 546880191 892815399 126976600 311607086 800187935 677068271 131561316 129341394 151379111 246740126 292660208 136511174 590449169 155147697 510378960 418582431 9973953 324580635 994033402 357893082 298533575 958957128 900137383 558550393 323845564 503722534 98583831 614917714 806194478 497434933 766181990 725237606 773690291 231424828 63740277 185088028 57297980 462712789 344969291 895357123 102255959 327548536 399017010 171013177 691428167 769881507 101029023 336393454 727004586 154270041 139875626 308628830 560103528 725690527 841283826 197705193 807614859 563996991 265566151 207569342 437973150 632186319 204103687 230358456 354971137 782109358 414695226 423131848 526430693 63367511 935570299 689123688 18334832 67204068 685661028 240954876 886182306 540572302 363020255 823032463 861073250 188952887 281666182 703148734 162197278 925271828 651051111 630008675 785413328 765644583 931248680 450867633 106434285 265411919 299039244 755033157 661445089 862895309 622027118 688699525 469195030 624386761 785060922 923204072 309332019 806284591 646155964 14225567 931392973 657615510 176925787 968486135 303759091 79361421 425373809 475041347 405494932 57897336 274101536 975768737 464944866 459276263 778028238 250353171 421598021 162171075 684772354 503018817 58371399 762743918 154176441 733237634 191744596 646517106 538452546 701427532 446495620 503704739 701549676 561512127 767673990 905966907 320813003 826483704 332818725 509007177 89128360 995718087 66242078 51014702 388791393 377986698 508465318 884039383 60487523 282612583 356572108 499444925 893727899 390802336 65395056 806221041 900325111 256343008 700659930 872430707 964770690 756017838 304352622 985383128 389922816 30970436 403051033 706769681 221746835 959300028 364163976 434462994 500813316 761247823 395786619 362687014 226125147 107853272 20292394 7332840 933396311 721214335 649639788 462606468 349478465 859732568 480310053 868254717 24368833 548972711 602554851 632071359 772589551 675889706 825799441 833865560 730403398 221484054 520276122 604336522 509660015 892761897 826754532 209606230 47181775 402725712 845930903 720777953 828282345 477537371 835891412 454986549 773485168 950583634 12613774 926474154 270883437 851339475 341140646 638303237 355431058 402759462 755574604 239283969 608579671 639967939 910133808 683022921 102262688 47427893 419456555 822810663 93514150 579322134 885666440 426798343 602762009 983885012 204126805 569678724 104882617 240062166 263590723 159322069 873271846 764748847 525930548 576566627 869960260 458862456 281333059 749988665 362507361 172304014 240987912 184197156 488460089 273797975 861084691 883373421 181140285 892923653 222508507 100158614 720800575 223094194 168501633 514465259 900000517 869792144 32268382 479290500 141557413 292377514 166658468 242796738 976494419 748579180 190872285 324988319 690980168 313434862 678941476 814151528 855540074 924499302 43916562 92671726 268851723 275082035 551418892 911666277 343252404 776037261 641347932 277820189 875214756 345371802 176248101 23177546 815857698 301258874 854175681 32196977 31995724 258390423 447698246 606129547 836823038 23964747 286194008 229826468 333389241 566006681 716015208 763601890 843015929 431141484 90246815 224159887 443026933 486937292 523174956 715937042 582096844 575018990 134851285 980868178 708089101 734820507 528129020 493212814 438747875 982394736 589836025 180429341 998233464 535316464 904811753 644736847 762615944 559880196 996805806 190890895 74978370 990944814 59555505 821790537 904444477 540266406 588796854 584124711 994254653 298740720 516213463 576140799 503802073 222825923 179859559 850833953 833653540 659089555 98990050 269469426 802590408 123849684 862512289 975975959 505428686 642340240 516520750 219826701 695457976 287275956 689874295 817417363 123587826 726236621 519374671 495302204 161842728 195371075 774390877 475401637 820485443 377600408 46990442 965832680 982536056 391358853 410321653 207057553 98880174 414298414 564330973 674550786 981502355 806536835 739274020 540363256 877507084 987961242 403509325 527849364 198497705 150454346 410801953 413761851 343389848 154901028 913811628 883943990 744430223 419280089 674164225 893041194 427419560 72815246 345894275 365303520 585002465 224184694 540652260 641226420 904208147 606214687 154357482 190552657 584116032 52149112 136773515 26843651 888706401 263195133 79011142 213441486 887640372 420309924 17483401 158758212 655296548 737565073 60620765 994078660 951216628 194646560 17927909 435715735 956186906 900035894 731654560 610981084 385181647 746310527 36267452 246584662 421523381 384924385 970349609 211036582 193030763 457962967 724587908 692071962 712998386 311123119 389500570 135751534 616493859 163848494 722762345 746684218 331124055 934450410 779465798 300503528 825637945 397320669 260394299 890168237 648275230 684636150 796810313 879416074 980554822 367290131 258063796 607747462 901957460 951557284 552601287 945588806 302473697 287318088 189567530 533718790 196721112 144583967 365847085 144318229 418555145 535860203 108802379 768067548 118148482 743775572 498148416 254042534 674588235 543030702 912386249 21643064 660346271 67625315 372471862 110354305 10714413 645449879 94923517 511044796 872155873 50164959 215351026 352520056 211641079 142278167 417320583 281615267 455980612 206287769 748908459 821657426 187476997 830456393 920141787 345352957 394461557 68144060 529469771 982359475 516723975 892313003 278867357 591484022 833209143 777329974 417673340 712292964 545906208 55475039 981311232 386444844 716842372 239530702 181777559 924268988 860817470 972805750 409962434 367160963 215984562 351874822 87511289 112100637 319482448 739111061 90339146 782522503 557981962 480256864 289812242 182207995 4178511 314309051 477333909 107674172 419161550 316322329 801313597 459475618 977556662 719941263 262378549 671565472 2245249 490837150 371551020 547969706 403531166 479857036 693093901 896853179 871839189 380892225 613154974 70320556 321901605 248380575 157220835 83374476 315925418 551880848 681648945 818289630 680651737 673635921 641214729 453416700 821518019 734840965 776336264 779159279 491556160 994783795 63933871 322392684 39043539 471737706 179369971 473166223 375130666 526019994 752601003 655836904 994136529 124643441 555469180 880561275 687956220 350050427 309240336 267227149 406988033 807051681 866226612 279137412 81734373 584934169 648579646 812459442 285996261 331910263 511547110 304878597 416516822 792222265 595868544 443025625 38452279 643820457 256539199 159009647 880729758 721144098 993901891 938171357 928255871 345660156 180373355 878740360 727814907 335147240 197852576 152812869 905283044 129784481 825350972 212068538 988272208 863118612 484527698 221686554 861538990 746938524 372455073 365364966 440403746 12563710 41985589 745241139 84536907 795527988 17383715 94159243 427393255 470161019 182419426 703782968 586304519 389099947 467037911 37297508 735647341 603308602 440017344 170604611 932807268 607335189 125395069 346568260 693034707 434143497 476534442 109369566 173595634 25011248 306104536 464120639 692138609 442046882 426676162 44516232 329958444 696894422 554676940 39890159 559031178 461816198 908114075 127135318 623830793 276165999 954621885 687976309 387228837 325955058 169328020 192184693 952344808 58518808 658054306 923192446 603384355 28015926 865930907 422820656 178559281 869990494 541790008 749556105 240251419 838974042 992302072 817851377 370710795 190280583 998920135 406019547 445186131 392883725 32349773 657075058 840809865 300869248 89881040 862716929 323280033 464804442 273876512 58048459 579588212 328269147 27980008 795842534 23473725 811111309 211554850 181401631 485670029 965391454 806033027 493204657 446091699 613731466 945059785 313650025 959807033 769352048 529744536 938753342 331709257 979451844 987410080 787686548 684648005 246438495 386611800 759600304 216968293 848936269 318768074 518650835 485593627 37700648 134084431 329218969 275607274 458490552 118349254 153465498 828942846 464023790 290728721 743856457 270668939 522368486 680328424 823391362 175830261 824023786 237878095 106432817 910092902 224978716 364070606 804093707 488747303 986792892 328141085 255617973 213149326 937850296 213825943 148424709 128352693 365301475 195656 40932097 315820479 249785185 921062896 736550689 327754092 374110340 675732905 506925359 831221015 773033509 327980714 296386865 326031739 298098831 389694034 162244122 787336442 629162904 192669250 830700800 451893317 494233422 496734073 212554915 802789554 865620820 512793824 357987928 866382694 281736487 34783324 785190817 826167688 247516608 67050208 268633516 383957451 283425011 658288415 813918914 365137280 940617155 875364284 36390755 889533347 770836098 659117431 819246924 445800897 308693745 304525837 941717464 104427656 577324439 802561440 442663922 115283098 151966700 926275929 517616557 564501313 366507719 947065177 17852900 257679167 507261477 179045542 107193249 238154109 86506351 752801010 866528554 495564435 54772999 365393853 532172313 580339286 168863939 178410607 615273027 798235466 290760111 239595782 748035235 504198566 979023385 588434501 909070142 394940322 543657899 210197282 832119753 175523394 918753313 775291370 786205120 282545261 359195815 897351858 551323895 613268578 933628829 783390835 359167349 20192590 879765729 185577812 109925011 825909604 244168625 461187225 553486075 346171014 920975694 631874029 62615294 897074466 650879286 464355787 279769452 174749222 900220230 437157743 101947229 154933835 641956400 438300882 737149422 733036492 35474371 64787545 793349301 901820537 362125493 187971173 153925987 781942585 580906829 239996770 354056042 539617362 995551559 851773470 933649865 505082949 785213898 251464046 48003178 341248386 444143952 994588022 279997901 370276660 923595536 996048829 670113243 586852888 186797451 493058470 948640822 793954285 487219351 700649343 877767550 869882530 55278729 953559945 653180403 971579682 491074567 382890528 101139418 359750586 194153925 965733316 89115340 960167574 677653501 546446251 460492234 810006279 317979385 890339222 796538784 630555254 485671552 689631956 698029198 622928882 534713893 751700114 858698772 918141930 985138546 968141100 887354404 364655913 588883414 301213437 535068737 218858236 8593138 63698431 553368133 395751788 693149347 254339476 485567197 390470730 111180670 153767481 151309798 503981291 55021180 818641832 435605215 251238552 948718350 167986767 661173058 196764295 267745563 515140714 941695923 231066069 17468169 447470703 888867246 708531589 130480741 506705553 859525217 373374545 468381148 129865388 137855717 807839850 193698347 25541021 536455324 702472330 308958 58082163 432278558 207778376 619089425 303761015 294425552 261119700 899002125 509890665 425095479 702241041 207391036 543932672 777612670 494990533 480076569 196342300 715402648 436495870 356031079 766800489 796053393 685822543 203988976 942453827 534584420 77735020 217929849 66009828 134654939 444320638 621315823 39451417 789851818 865349826 377778180 933543906 790689165 829976380 156373695 220905580 314476193 686009274 641202391 668444918 686286863 832804244 449470728 673848810 869608738 408519533 275025351 646280838 993649255 476973250 213554893 80305410 170503943 98677320 402724893 151956912 761915277 900518923 913508655 67758727 141146840 46855659 400076364 399635653 325362095 954301475 72313217 335492280 727317338 308232303 963392707 573870469 173737 55784581 261247109 892691225 223476815 216142532 708903078 941679677 988743762 904186252 268732674 717218988 745959075 498396115 980108906 561510691 349975913 918423192 391209315 715791660 232171948 360168684 389887258 186933897 375673230 858461887 307717894 731880367 86428091 782582460 736224550 41969911 662503924 94609333 421164175 917719571 360408933 984622145 911397176 869283066 612030626 372244629 477762604 34129792 636056789 560466540 87660963 268337419 907129270 5537114 143836239 628626443 31670275 175438409 687690856 999048715 375195276 77418513 331332712 56098044 80528447 105798891 686924872 227193211 644955342 255896556 691537354 313884959 555608322 296644891 402825746 740105787 265331664 570924160 15616959 997248196 996598648 273834398 569763510 8797049 12611581 334603793 195042436 225918557 776260532 974393154 694830647 671234917 155842546 203603731 688197841 15882418 88537444 365749774 659004023 529509177 296460798 659069726 797996095 355855815 653266240 196929009 979824652 938961145 60083615 257553214 419823826 642331690 559147791 876307273 971950451 679702094 323708456 468056513 277121102 554046950 10883826 386341861 789446498 599044952 20520590 72235382 836116973 983628956 293519437 940602847 77320608 959224188 105263837 194989660 157678203 509389092 3469587 897843861 489873132 590650568 713668894 106748384 133776070 263997388 15645471 210036581 243606037 566834108 628335822 497367409 293416428 179909050 183157710 242045924 468852732 512273450 603635748 514638559 43647380 839268770 34470844 260166494 683692126 731922200 768760844 260914914 182141196 557921952 472301904 371632169 957347949 622061075 624492761 907929632 806716802 121512280 676279422 166685842 43933947 373924491 345935648 217933506 237261266 848886685 285591201 391189914 791026252 231723057 962581992 88075101 432779801 117302942 409898646 7447875 116242408 210517674 94686143 274046616 923989165 175988714 385714928 918692423 265131728 765075855 995546466 736561579 66691664 74806919 674511354 654976723 889390053 449208863 846337709 508449076 737494837 884349134 694245861 24845220 987285800 695843097 673085509 690906023 670994152 84492939 781248476 540745656 1103966 354476332 711667825 684217949 281131333 440929234 881966127 779776934 950350625 23051554 318590428 933657010 426018387 680414518 244226686 779497646 481724501 279210845 239209142 68473344 24139155 687189269 553803757 207620370 316522624 451820464 818210406 35483509 766784734 606474715 816102317 453950264 551783233 485962999 828164056 682563833 909389972 365552682 442781475 711808090 326693752 18820137 438306640 368947643 466306855 499106186 518689909 893255516 372493409 507024327 396330996 200990385 708881347 777150269 594562041 881085216 1340021 207221799 52360918 267781419 955148027 755196433 17784448 896211717 757910699 743318499 627964309 480341740 821952216 299073937 394657768 918423097 176965001 383575583 759433169 147375005 385066608 123790330 547835869 980138832 737230913 319050684 160444342 382375545 691330231 103817516 735590012 545992872 485905619 272315478 302392331 851818036 42357306 327909698 673963976 562392391 909516598 426942347 596768519 320829237 672519404 457866610 361100665 636088918 41077565 592693284 389053025 991215409 1751535 316032765 913817598 761104869 778450790 735097296 111649471 535238551 36393536 783867556 378546034 500359549 961099936 715565351 373149054 526620603 117860011 997233024 673163554 207706857 568043076 237003643 179506357 538022382 656671837 821607087 682664654 116182126 582080240 927731521 597207702 82913722 81375815 825863949 369722282 533938043 893820813 752506811 558382773 826897036 651388415 446499464 163711887 905441003 330843354 536406412 374778187 868961878 868124403 966665656 112206571 393527112 686110537 113916495 487783192 917478477 779735918 333175713 883244624 999863634 635974511 698051108 944562079 527984976 87697065 869801356 120774102 678916469 833929732 66188582 168792786 984998703 436562587 741328767 776086006 285271721 835592672 322337808 308700518 476818769 830688387 24577354 401628515 930916993 389085541 415153426 293087189 827279573 767447648 963864770 700705835 14063805 262818626 90866547 275263109 27941979 512911853 595547541 934144946 434155911 994914452 484310458 951403355 542428460 597828031 271603414 770569740 488284268 12538738 663759782 475331596 752120439 61145136 744136062 321608185 186234616 770084630 719578478 246273678 279843562 448265761 608963412 899418965 673700755 569178236 537612989 745585288 224501750 881894300 436918597 918368906 751096567 777551888 490110188 714648484 420577775 708156508 964435900 76524693 376430709 896384591 201977064 22306515 387795185 779388591 58625864 471442113 136691863 573546828 650094392 147271397 404439590 936563833 332269751 252672213 965560621 210198795 214707918 307840512 365217206 509313723 871113714 250508802 517872058 122543630 834428252 890416068 54810021 304489635 638560867 184326125 489477590 676815287 883660223 619862303 579059438 28490742 410995960 987171587 55138361 724688252 701479825 859312388 347130593 897421042 413709496 337288530 857493855 712293117 781285446 968791089 752808443 112605149 718433087 735138268 427601460 286944166 63162118 708867643 143419211 916592225 831107654 288861811 8769234 798452165 633732779 821675509 750414101 624720976 786387313 232910006 74057609 831592053 662657655 134990294 967363800 702601105 205748602 102858705 378069745 578263774 684069789 721741118 716597861 233408044 845398681 716767462 368946210 907246380 801148832 658313704 498318470 10232543 516632395 558326860 938192435 565844667 829921971 966727010 124857420 867701119 143401779 798871898 99290498 935920118 49721638 682485063 939728495 293378281 408374100 418134558 104212934 611515535 316697604 321916265 634642193 720394844 942245586 97051510 357146931 297644796 972393180 984825669 851990685 529475664 225872598 422330109 731550131 801901262 235619024 681243181 41165961 321295225 191093390 241916152 955476400 345710658 693250247 216944070 355335760 756365538 338357016 668526436 445190226 788058130 757183085 52690228 958631444 878084977 188784110 188334775 578028264 236462206 532678867 253522896 989781706 214149008 782947305 950108239 490483632 645510873 8604519 56467054 714860743 209238694 269608969 799766612 170543786 908251086 288253214 522100655 730199859 307880469 917366938 935842274 346779259 616072195 411530760 452247114 932963503 516516080 325278331 108142327 572843246 759637222 342149889 256102012 104103496 216335139 620672971 535704796 733661183 562900925 272968114 632183715 805669672 918177771 428877259 866668972 608217328 744540282 846138980 717412505 534135511 390063458 154516230 529441557 758786351 48500695 174232996 610213009 309565942 688043154 667597385 607159045 838650140 423856155 257618080 976850223 303172441 229190982 129540994 423213041 168497319 759861134 434953588 795062163 209438010 901065262 86849274 419266563 562263292 793794004 124464397 797074368 142985513 647492944 992863611 119904241 31168338 149301237 754757696 543136872 472717178 109109378 315650771 375161501 309389387 818943894 472714005 140602502 199046299 264627863 385002592 182357538 657122209 823963668 180528973 428282415 470968588 190999523 836216461 893021948 289381318 860123371 958765985 399500730 151567549 296950093 175910554 849888062 488623089 688843200 25738098 645010840 481984730 782856696 438142978 702546063 683879815 950801141 167648460 605146746 333719057 840411150 435925961 256657768 903952060 231750696 747122192 620527287 664526125 914933158 797779555 177306364 442018885 121909345 575754608 61326377 336363929 957152793 36707687 491819901 238409576 443352771 713638216 999698388 788140139 68740541 560801387 752468255 583696068 710078600 175073333 427619788 132788161 954703905 761829314 56968010 42639092 97280441 49527891 431842590 80714562 829076063 177467980 511295107 170926155 626535732 158966243 774058510 600458821 253394408 368187876 539459108 754811353 358615194 842853282 231920698 251718715 193181633 461258869 990343368 417749870 231554309 712637719 618607160 865116028 821337648 34586409 716262898 277115574 627211170 505674412 168893313 986394244 651587490 258238776 312532592 62932621 96373779 474081082 382240443 486624846 293047941 61842078 961959608 17552214 206496715 760777016 346761080 65347044 546863270 201508826 136892088 403366797 429763553 57423949 240298552 89786632 408062099 818171758 569134176 106573258 932748046 115000639 259906522 970453332 546094330 147662791 309884795 382056009 648092167 825934487 919806583 28237664 356450726 993469490 413931080 998715230 362098877 721609122 18128578 239949441 400514600 7506604 551693882 990217497 184397865 722459084 782479467 322468754 86185976 871255076 213349333 414562819 211732603 882622728 686826924 772779095 697201154 179321991 742594551 711017486 647740498 476758561 673855627 35802330 853358264 443572807 805587 938267841 864610914 167995365 301057171 886484446 196635505 513588328 854636579 705020575 341212843 60275195 112203430 539386802 90525612 861156809 954163987 152418014 289724504 464317019 91028723 802608888 252813566 998895801 465414450 286301010 377790896 392246381 888379889 872210647 105033799 844754134 459780734 567272038 317230076 532463208 673075051 978704398 527557136 337992202 705598010 620248387 909438109 693674732 491750738 730057118 851090644 115732947 681584573 238647144 751931075 914663401 993081073 446103444 882361592 21721028 269574059 211005733 159558976 574717800 276565159 831064492 375685694 983610475 954186626 192258490 933198913 949138973 860459355 217164776 273400856 536436190 777131055 584892064 116012687 238508953 970621946 412192524 418127473 736271747 418951835 684761498 477136712 210542904 805872423 786178795 684299605 235852723 73859290 630564017 136366074 217344208 613557809 859062886 129786608 895205209 79731835 281377443 671848040 886355876 782744851 858720940 518098967 421814009 394280673 671107524 292464649 440169589 328412034 57163570 753091830 865356047 346714891 959574615 288763693 609336681 959686825 891570553 460747305 593186328 666362651 656456251 183268812 887653611 142573469 224547857 507509731 556269089 37916104 620779215 186810881 918679755 348802223 69604014 285755566 421145306 825482336 160776293 274473472 126276493 990484559 751817421 893182653 877799428 641412023 54854893 655511363 315061987 429879518 746554518 449377683 692487824 764928887 15791848 411132899 673915816 765706382 554207164 135657323 850771101 736881248 808429659 528056555 65138159 675178713 813292264 96977720 429847057 674216919 245804843 436566038 501770953 732033376 501485275 752188253 304338494 975763402 113988698 388752258 171587171 907296369 70333544 243808344 861823361 931494921 199617089 872866296 738475394 449415662 655398453 501661551 420771078 982238110 99181673 928441449 408385777 624612193 284879690 683266701 943906035 308629321 868424920 874338906 159489727 590194701 400763877 921444286 507634841 47574146 437630727 373745221 226539438 624512518 242498326 587945571 672633205 614902267 665281402 77001907 616212278 536419979 693576101 877944892 22224662 921630665 329683490 680821660 136913381 301373116 403191336 991898856 132074576 535977785 513769861 415633468 940018296 256323864 272150103 939497999 774168108 901411609 461770886 108394250 121405448 864123599 348535445 177150286 487909016 642919611 178420870 564062783 984519298 968534929 193576674 844967104 929676622 91143701 428308980 400582433 274551361 654431643 202697461 966200236 493457647 899041049 81517158 306697371 887467786 847407930 866188187 157127602 616846953 976376466 940243435 807011758 829739432 906897497 260796250 814851767 249481665 729410332 178119651 945692104 285560764 332785058 213918217 982837626 330882819 521230478 234204488 635210142 80721006 989677001 671208466 942435250 25740859 818321129 683457931 403120365 98312786 801268148 740983358 22941966 705562668 809472206 78480308 513102072 35255646 727954465 52856486 202047544 177246758 864998532 65938719 148691904 863962698 341661881 247009634 922619591 952411281 374555751 94547656 980053402 991593251 962368573 411095962 516871084 442998780 208402784 484265561 213359036 670308197 264184107 765975415 19264167 980400799 124475156 357893277 60602581 539583588 417635305 977005669 341694241 520841923 900391980 423890137 925344567 697363432 113966565 237245337 8072935 932504694 938283593 379332750 81698278 113980771 783920251 455292057 326705700 716410586 86894021 880415653 165807151 915475345 195005316 551265967 88173104 427291967 928272593 213491259 143632276 905760919 373078240 509175316 405039102 122451946 313241172 699221251 481352640 23298935 337836403 928764894 879233713 676640804 799184787 207921165 153305285 945853002 393851023 693508062 2732278 258170743 997381084 473844954 156752203 768414636 47487099 860486038 13507637 619520997 559357094 895956044 101129451 267606969 72070822 710310893 793843981 12317054 184443157 272975830 102395363 628984354 721089706 137351182 569859331 226929048 252292698 290324326 184401296 114651837 729463385 341939112 234921634 24002774 965859371 480992949 699393442 677389468 718702316 357097394 797134284 253109428 670129863 530394910 994161512 193585863 970450448 376323673 727522289 858391402 471443207 498685586 100827538 231094770 924834020 7561505 751562558 26895752 486393083 874545401 392745688 248606127 875866195 331950282 708204180 429122610 977692186 702541182 68032667 634116675 437057047 873412308 196178050 618435709 984181551 961413592 437272535 915542078 218357387 568966226 713234167 240396841 280797280 645920520 290663432 977840855 417155679 731493074 798680886 226417959 639699821 911848618 389550819 820876219 487698771 187229918 61739303 616955760 829108085 524190512 798061778 672935375 743726784 669485779 222954381 341515054 462057255 767820324 212642650 475426087 795890926 278216729 161236693 317644896 565700105 142325237 31630383 388886052 9944611 370233614 851303375 985562686 966184237 397054511 848698524 967946519 220982332 971746173 608808200 364326035 951128384 172543969 751915738 907324810 267440660 204906327 449033377 541884029 157077896 83119088 276387000 557219808 867522361 551123279 55381746 801001842 674545862 450176192 722465754 380841891 592026461 118900158 250120747 872295627 757415939 503742003 452930865 456723511 563245968 654595451 177165453 509053871 207235501 414244229 296695373 167055919 947906437 273759942 317943928 128878293 606565429 98202182 215072835 330076745 522546180 66548989 686570547 777242029 264096071 676024178 701951114 667284445 96263323 481948408 551921943 242484010 384240391 519503594 557681226 19154478 305662881 227933687 710522884 209386592 382990294 917031134 270373656 518545923 329526607 846742457 267736190 838345825 358323009 5462058 53851425 292012969 256136960 705570685 296550048 809809695 61243004 745819061 978982978 105522105 165493300 897540125 775202281 484660438 284578355 895403386 329400298 740137222 307816317 234083575 247275 944782770 506180778 326657667 117654409 452240379 785960209 641542825 16415783 285855296 525747048 424203581 971270887 631069446 45284224 971356622 693619553 542071907 944313142 979081489 709303871 592438779 729643719 359033018 367212193 213277626 515696287 45707635 403903166 510854606 134079166 658731247 796053088 587155138 132667420 235603445 400279111 380001333 803517882 62892935 657564793 754054529 582860347 644758233 65182957 893505095 623914270 996233511 995555730 825543195 804027847 224700058 908001694 669239316 597551441 852703273 858020635 518159083 334255630 97748345 99507320 764616954 736823050 784134775 346760015 555604600 88750328 818503147 240707044 313464586 602029297 13052728 395519918 890741766 778344128 320628002 551738335 743177105 257961592 243444769 522243969 479016286 144328939 893564034 536838924 23070902 924815117 711339617 270049701 972359834 348497539 221404007 27453583 20080725 254362659 3107318 779625844 935076708 723071452 632539494 322525455 567231724 962806624 24879482 400498417 778614355 241659733 875275893 111817155 359393357 576045780 884927155 618133875 862039410 254233586 403451488 996201583 501182593 642032498 989642287 935994765 946180485 451848731 742982034 171085557 969115910 137478596 468228048 59289989 135994661 21713440 68089110 342594886 249071122 651473953 354141174 877414987 449917575 650366115 710811291 112940281 494687030 234174496 829035592 95067122 168686523 304282635 515653384 61649160 645074199 650040448 855675015 852065712 541558987 180752402 371667061 418304711 780513911 480220828 266894148 13159179 392749693 841602786 789561743 859860647 953707872 5501949 885871359 589002898 910974721 392724154 662488876 895532454 840466130 458398629 214169822 534022101 914690760 261868998 28850912 521274639 300821320 694875769 822187785 168851947 333522801 397442898 111313090 217525083 727868772 516504565 61113744 215320445 670297719 494844598 253434573 172763164 455781690 464253862 584746349 822926313 887392827 24832279 157293013 894124075 758572799 8638538 937692197 716274947 673919824 853531527 219432958 686910708 130534557 866764743 616670371 311004668 255654375 572676243 754202325 434897045 345428578 988279607 543034263 722889023 386917622 139355849 411805308 54820435 647350472 171065173 437782068 136723480 577213914 668637664 270680620 39700166 515069775 340078011 443246485 700645552 764938450 87548718 443355531 983563674 147660820 79966404 257566784 668399310 885172995 720990965 500885876 260761120 321499705 791632856 942636509 390557064 967666783 68552655 863480138 957935250 411780363 836243605 552844444 248914262 748947364 353775599 181943167 99531174 212723659 29269515 940497965 620187091 672031172 589289700 35040869 692156532 186737553 120171988 843317585 388453036 820910295 766103019 27216739 584647834 929361121 93606877 882940036 7720803 72063577 456931213 136395967 436881707 753048454 788131452 489655082 709461982 257378505 769929614 87094637 611680354 254188964 811568803 781391941 841488829 265554906 604262156 858420192 690877716 69602101 36443488 304477059 38522673 856856774 937104099 405855776 643295141 132100318 730818904 189011699 505233570 924035369 672337993 836559778 708432955 662394982 800771068 246936613 761717761 683634370 490816162 24671597 902709434 195549051 131997939 828954746 524473832 859031057 299150814 602662902 251687308 732818857 623886565 77887195 259356291 777849912 4608904 664663032 368238399 697894905 287508686 45917694 3209964 987937963 632171938 213056641 62129759 456325241 807526450 900863052 951699851 609747270 591798077 700932145 82970272 185999054 101265242 539182722 938280905 593921858 923359815 78264930 275399644 114362229 39852440 521453274 694028149 804719895 814483701 518593299 958280137 39166891 463634921 276177047 343206061 83533195 794822065 729964945 576709315 812525838 909724412 770727064 990319774 270903630 755452572 778345813 920726330 209738510 903236946 662416678 378680125 250434515 968540072 143670276 318387461 646429346 370520003 331593832 330656338 61150006 713609444 169597117 211104430 650876807 535437710 588679994 399124511 531448914 147663673 793887747 220862950 161253308 564392511 755565579 194636902 672273041 512008695 613808178 132900297 611784462 964630036 406979595 34390837 30865183 143991338 651918862 72107900 366797183 94516499 6003325 939133887 799532105 456529694 411550910 924760647 72005856 435511846 989611492 26664638 583591107 853517240 800743644 26174051 763316915 808798648 772683111 215156185 345451224 410395060 744005789 735772054 52658428 618955447 522192968 694216514 250960085 916955283 751361698 646193853 332454888 673886698 151057654 140097594 911853735 237940158 253614712 760586805 94337096 593571626 929850896 269731455 477949653 357273149 157322165 198761904 243660720 270834614 500736704 604399099 699760248 399260896 347238249 759505075 528229210 413177681 378565753 933768413 210077272 939851383 944180257 297549756 579883650 736681860 325811161 828964480 625379707 965122914 173421506 582094430 353316464 37257909 166695843 534170459 434074958 722707572 309209896 699889929 734689542 590223361 639325411 333448373 146737932 85498716 606583893 963455576 238986541 691454053 560590588 748935043 625435154 167995983 32222089 905931767 100593117 155465865 239121209 423606578 659965561 436277627 933864432 205388962 861287003 316221686 324427428 889609942 571287518 282393742 878057765 200234177 595042151 218404459 571554902 90414779 24191175 834827978 33356105 420883978 821973453 729012943 308067918 8562474 168065341 533827500 816606528 564190446 516758640 969739926 959199339 274800980 903901095 70299460 779158019 453952849 909759481 563663536 93265730 904640925 152457321 162990967 671590053 46983017 921074444 324204035 776913450 477775794 320843465 179028764 797659288 183734466 232963655 158780177 402591565 12626233 809078300 474006564 831289250 341267305 68490764 774923342 871272156 153305850 897669658 110110892 607172244 619341750 911098589 488986528 172575697 253437572 155859772 950754902 915155935 2045994 413208698 297509179 396660025 886440783 483323781 629350454 237494697 497971512 102327930 47863754 270236467 500354844 523459569 765356458 865006262 142164294 194216661 997839280 703205340 138612790 66582429 947935101 944953681 758437823 631230475 758601639 664232386 191453646 415898859 746568881 145207222 326528812 298111850 233966893 597345321 205584678 209310682 829703073 342588997 229957603 410199571 657511340 780948916 646751507 884873627 801504915 430231439 212320025 853481207 173343751 665753802 518253543 924805143 122437412 78739879 322468784 901598072 165611827 592502968 533054968 535328771 48188722 995159200 389705108 805325170 413872585 723208339 894123039 881414679 987074440 885518220 227456668 293203961 673188313 653569743 722190111 877824552 719891764 852105852 717324307 283960370 698015561 929682325 466854372 851342064 83347189 956561455 634816754 791826108 727958992 923735090 497793128 298484072 523063521 338185435 297634810 950583852 51961462 69686330 470895917 377956715 598944233 284293931 847423650 664363006 833331352 953161912 418358438 868726743 159813511 824366287 598193623 989545045 84590262 885567605 688083202 157123862 440633048 957031656 647076527 304688481 747806873 821625083 75158921 760599195 450690292 767136498 148471827 151249882 973106330 144936534 497231782 771648526 320316981 124544299 220119701 603635494 929455843 442963728 235950501 494796325 265949375 637935672 968342574 510112074 51500279 560773582 997786190 981192145 875611969 235251504 169594452 669996721 1701968 356935684 783200932 633561393 175579976 233101234 77783187 444348175 19320171 932485613 583663132 70051666 332952373 738364119 640441409 525921137 224363818 827170435 985588665 283502432 646714129 359537222 256144709 145097657 753864214 361554101 589948516 315666024 975254460 546948017 866991285 893960614 160094841 720701127 272799744 230334515 705326546 3822416 937024004 678483502 986811136 621794409 575961353 615142020 606788012 496280817 20175093 84890768 235936784 329439662 684843002 450149459 922000834 466116419 883270967 534941377 567980454 759817626 74685045 34146310 581245810 389009034 333629421 232386094 625866809 240880749 888254319 512724314 695089751 217618485 864352058 889019526 561608096 863467121 31881814 756252417 942576303 408896474 243311598 625263344 602902701 535007010 666451116 365485054 24524563 529970649 704062624 801319567 362599088 46563380 587632641 70705657 692162804 310573369 856870014 298240963 916543186 327817770 182731102 248549363 2026906 280430752 581209124 347078860 491885981 813250813 510365495 303047493 345820512 87066854 99487033 239899486 635902570 864583907 457702357 926575120 310460880 47673906 592088854 688647027 53141316 912490130 257111785 23577841 808995081 406129911 613935934 772231527 185220538 448630157 876563509 85652611 263191019 250660416 704359071 291540800 38519141 779453312 766314317 804397234 306963864 599535286 926599653 748525875 47214410 634358703 691720337 914095340 911041414 380081753 976395803 263181453 267741001 122611636 75320297 220026552 775886236 467383082 833595379 543889171 139036639 501555174 747691817 177508393 307336314 545880634 251257264 805580830 799748712 846433544 720118879 87315342 320802851 311387282 729638059 491844213 117203055 444420094 105986530 758838015 644403441 822196310 965409957 147267678 34272579 430745311 655968826 888718350 900155399 205709786 537735006 762669216 878057671 377889749 495595379 691305455 933221472 24358047 80466183 148826748 103717372 299446507 775648357 673430026 499838336 285193078 188565881 431838354 296992928 7453878 719074153 689095487 280376790 800730347 307196608 558645552 657515546 496951804 695173276 526501334 664115524 940165933 755818688 803268041 844664151 861759975 664675990 379808262 338584781 984698330 430898634 384132947 930947674 176655151 292985940 475700491 617271018 795637594 42872242 240245049 505625911 194509633 568590610 833611315 124825775 322243059 578540615 609530133 187145960 581292976 405771178 784966360 714353558 364754238 259847306 582728620 291887010 950712324 777491990 513027283 264417582 934393203 100205143 61381391 121336111 474355024 343870791 308402036 489299782 373901608 28946816 922139595 79999712 223809883 547382494 921615251 28365386 318723819 660907382 120569733 455093522 556484000 210091146 29232175 935917297 584277898 832916743 302263893 448901759 36186969 71970239 33953785 85469395 144054532 190213948 814526940 495036435 765241336 601003043 394219222 112658265 113018647 664547305 998793498 129431042 754902306 197213999 787529664 926858671 47352517 39699817 406292376 550351438 211297500 153664720 509758659 561573256 831230690 649325227 803507619 591707267 864103760 927303326 964530931 499874978 189742948 688498850 306925666 307971325 464716694 670293153 135581206 491479577 10300983 53808802 33597000 959917953 76506048 427819915 251360256 525546681 889783948 803833717 932870255 444545621 22186303 226960136 681659107 15788619 205341008 423529105 291388930 818392534 822600472 771654891 443707179 789127812 819250556 320868513 974696744 628940054 603125989 276042519 622346663 16204269 42244042 630743332 938536784 152074754 605257419 779457605 68559712 80662331 619283039 424515727 87870965 382614289 751226359 721567392 994306468 730518511 92975560 754388255 750511139 538863818 345837692 288220440 178921868 551426752 105591428 41096098 515064812 359727218 815080305 966047989 616523061 949683827 841654450 265693180 27250932 558559817 416188930 218738185 886012489 222555461 707467558 757398685 951770997 853899307 660513631 502261441 192597137 188033232 558406490 299307722 824926425 905417940 628754575 880341303 587303200 526800961 201476402 745718444 714432759 170640873 179833877 72330679 28128846 709000825 850228122 343494978 220535488 851930778 383025774 266902923 685452463 451888872 674539796 896505742 972543729 223900459 601344036 976651250 203546063 718227304 220467131 773991525 974639906 965342530 170976716 962550900 105022820 987755786 38465803 854453462 303439074 905903868 483929825 77798060 788733914 613077616 896118570 586974988 391459159 601426278 906373432 906813385 74448844 276591045 361103486 750528750 317452750 753313502 425217555 622736144 234516119 887533157 604311751 887567792 146201414 371094064 668724015 998938124 825227493 19853822 631475770 45852057 679694177 896079619 896502590 34823222 280386273 279535035 475399081 646295678 759994719 285508629 857999989 149449669 251404571 929086369 752409629 713975848 562974890 598573138 183964197 95542842 962140390 946916677 342714823 934240278 653006796 77939674 785171470 13864848 952536988 569519645 93625982 414037177 859991695 835708085 670322276 554696994 590150480 554919951 521868282 790115900 909250764 206473231 228108538 375140249 416760118 545919735 203283563 806429806 66334875 110926680 417788623 638032217 416505012 874712752 439754660 639852490 133650570 515285963 229660730 986636603 898667847 279771242 767164621 53163620 146915010 365718108 299969157 716743521 106176647 399194202 726955000 157785258 632948724 60805180 668392861 445195300 964409480 657985140 281720774 204101726 711197345 53820520 945675180 950054523 928665578 811605442 45997810 185540501 205720282 599950974 989542098 381036760 957402290 499930077 544253710 650164411 530570830 794175987 504561895 164896876 389686424 781496961 919285235 872727085 193309289 233649566 422450576 696113612 421777753 170282976 301497023 819252602 793917287 497702979 955333499 375436510 519821001 743519456 486832087 337212550 938435242 327980017 76031911 279051748 540959264 669909191 25791739 670824504 613863752 296434454 812317502 13689751 810601600 297428235 826542741 64660644 304418064 112777222 580511005 361081742 239653028 420377161 474903400 52948449 377659757 647319594 280299522 778689848 407230300 460588018 440740863 641372636 407507569 378127147 47215540 632460474 883291283 402172 878725027 749908640 572403766 102690619 276191346 861958090 221055208 902643742 396080352 36599345 23007794 734328080 607893365 237301964 574922545 941450553 992126324 889029109 465254553 330101158 697676817 949918233 769530838 145440671 777562196 555862999 216499734 551490472 853875936 581310928 906258003 305197011 217190453 141195011 840651786 889687665 111342728 386640978 383427216 758254074 864639430 846539535 876924322 452782141 876355251 380285101 975158117 799034053 651068117 134194176 913701349 975872935 820265515 855520700 541146454 283787859 604773488 239643805 988526624 654023317 647674626 812107323 958533043 313064783 467643210 278479621 314528987 598788291 237182735 820171470 46259673 7147107 335991300 33453069 55913798 681631451 26038495 374224132 315201549 991036067 696433143 598807564 793809906 429502364 936922380 163262694 229120573 827685435 20478629 28431644 400382592 70370004 610797162 858298188 564348675 997713824 206630861 177429708 779181634 501436716 180298399 883071717 764673669 444697793 495903141 297372116 741267595 945757710 585427402 35806433 67502365 115424223 449928145 173549088 253094578 408631707 598240625 446949507 456909713 22856108 210203550 285043403 494279657 281365728 190559889 575481115 269392319 679461547 492647805 598105787 167151565 87262081 147106720 515836210 44573661 840403970 276272460 549318048 650666325 93969150 246382890 694315107 77567808 330510734 401262904 145557015 933940603 461893012 198254217 646677464 914140664 403425032 38973867 211459001 530587714 331104126 713102260 727226443 211174313 428244586 936183449 165370781 917465574 655038363 584468896 931828309 386571821 69504423 1181282 354141172 653746269 413142255 533599395 348080871 661542370 67714794 141214164 228715792 531617312 448723825 737507355 753991002 597387978 320566163 428254169 905087342 411656849 147275860 124094816 511349501 464810491 331063546 850481667 804862406 891184860 640184933 150252459 751547782 510601375 657439422 388394076 128781582 329296054 125560136 49053104 76633908 892231140 801066803 647206102 285445036 793303795 81867235 764509507 826658384 636990934 996084153 475460325 909973797 190790307 626847599 334595248 224131808 35921508 757841102 303377550 684367262 850028771 715581341 878402354 768018260 515256958 290094684 373445420 472229697 119200966 826728567 586934755 633403503 62712903 96221319 135656610 331703511 609755075 921467881 752672399 971970252 328901431 851665133 379754008 867525269 399105757 837662907 290360105 445438374 374692466 907203843 57496447 53904718 903341326 764041311 345517527 572096924 635005058 732465483 198821990 139146311 462253012 367764122 412902276 379914003 512977805 522415496 465132497 488991471 301638343 991935600 533125059 283671619 821240062 773677090 324176917 766055170 992455924 196750734 647299701 465853189 84893730 558685080 832910800 224382467 242294689 566953816 377427693 218521046 482703070 358821218 287975606 20673832 713926042 255728937 895591402 246626122 858577360 442556187 435186583 240193704 437101139 91860343 560457001 480740862 671998687 533145242 972093089 622259946 53197591 338932578 261944640 381863255 308025132 965936088 149512335 679501498 495273275 244062086 945630488 355358260 393047131 795523505 703329864 395581593 92017176 30205254 236759957 310493820 28587467 933949015 40997724 65637650 485817865 932078625 311175354 574212460 612552284 633503231 847112192 780556724 472683836 940272509 260892707 307563443 531539473 685921359 590062403 673805504 511070444 941667598 804914180 626502500 970596483 567202232 887005408 336652622 211888666 274123072 121000443 176023776 384445060 743184945 930173109 890422018 709040967 841983684 38130585 561194211 626808087 253369120 435942481 374854971 608872863 378687939 419792046 597679212 216285262 801744894 915337056 729305396 191127763 394974053 57172792 291716883 780989517 779593966 541762928 24649807 766887015 52501045 322335312 961016145 170878237 166658172 448258169 934080875 955903690 656079545 266361392 299292425 200123816 543074970 824346457 765659645 137051522 555012616 397749703 490608308 935085417 380338703 249507861 138825365 60767380 901921888 513130906 629727632 774027814 817187939 120115932 778751041 205510563 240552454 416373943 322588994 490590438 110465606 603378191 957202985 826410002 364538882 479575924 213284449 102651709 460763807 633996374 894946383 445247391 118823134 232117224 957883351 154798925 924513320 132787417 372776101 879244811 616883558 948851600 392074289 68531155 85757481 149067334 966928577 587341229 862713864 555640233 337983184 279360368 961502666 443524728 890708103 29730130 428396468 116707599 479252219 300102070 78847551 188111029 427788720 847938244 488056011 460756235 796629656 671723854 706111682 646698886 5550762 858468917 384926068 271991082 450121963 627138836 854097024 82270510 722602199 231818744 349179471 663540745 450930672 655268754 156179051 848024106 479002391 783110978 257436697 478910754 191424421 574293923 882339016 365455582 180702811 73380319 654191304 877013021 314085580 623877104 422203698 881720130 638004252 139074725 40179674 674453527 184756698 740997883 666788889 71837232 990627558 316527594 230125654 274496188 230988900 659176831 67536726 889097585 402045696 432148665 993702770 115442493 199003532 690704783 445933848 539517742 486073101 974881335 274332487 472282270 969461265 365597753 335234056 692530259 702689252 640700527 493321624 352625007 816829727 508376583 170484403 381255321 119832529 779678065 334332709 422431414 807778825 974720033 267055965 533333014 760864694 542368380 464914475 301376054 524272751 281432643 573355240 836310737 115190175 875163350 91270658 696726779 208716179 311539447 407568844 591634661 287767127 860748801 793731748 22072009 368236261 626852934 156393052 606665534 244523300 80151636 780605740 944611196 797435963 559145805 331976297 895914257 984439182 891893068 300052397 991102224 210291611 266733102 349588913 283962551 905515549 690424668 722015472 826387400 934754237 402317929 726699796 560302696 837980890 848676397 221172791 933729922 850766791 885335988 283383510 678805971 405175805 944388010 904053313 350331416 377953707 653121995 445604706 39158051 340962520 392634621 512269951 532804332 807819503 479377007 953162760 494914922 93223214 349313148 745900699 289410364 376496314 476553589 640283567 696194174 978932098 493964154 180896754 562546440 361434866 711774802 124431491 168229726 398884353 684235698 163115573 365032029 799208767 552781276 498384672 972784738 834511150 571733557 956798805 209160637 341032805 480712156 160105705 764149319 736268828 848159860 660777470 107087411 286631660 924310074 507652102 51028736 355215699 185010918 208707582 375716725 62367929 218832847 336493987 952542987 74490482 492188000 320511329 83686877 744488913 771760111 476894962 974241558 39542161 308974336 712059516 922010115 97553648 742967323 713053222 535835421 606997571 248274393 572853469 225684642 841763339 455966869 290891057 924124637 857336833 584309575 25547785 7621722 525591895 656147153 53518671 717267110 979199637 589599900 978970943 453357010 792853706 112919931 627549515 820004352 850198646 644349146 249614947 407124202 176898830 229083025 165594407 892850964 962488260 99835055 127362572 743573029 303083247 95826124 560335101 255833773 538775594 319972406 727018523 946311130 513546079 979378509 196910413 903182743 489074559 644973578 68599381 762912074 554156195 430445009 529371110 435513074 319680657 388569750 625295975 39837969 76127801 598451629 448847991 212258730 382015115 15933241 328063875 548240019 829259786 869400737 261741304 306206695 235779258 563123736 261588949 229734336 782205625 518977053 583009511 377414644 432265837 565484245 950018037 789528808 519835219 313472908 651519224 445936075 572417832 136903433 790549410 548387763 336974076 540269109 65632118 687137499 221937322 617201479 635154556 457982652 713392816 159625498 52555652 279161627 697574520 196020453 881883756 675801473 260086998 604229747 889737786 460070506 145393191 208855499 116511294 233697168 15139022 414006165 931406923 160225825 72750382 430493400 62009921 798967254 862235050 532054320 486269015 263370507 430575876 869213649 334964598 293092852 83714558 499915115 354300323 803174570 332658136 21694084 800637112 349015220 250369242 335430248 860677610 9406413 631462098 591768307 867733623 892941039 615502697 902316881 823974290 365644455 840196894 21565228 840382068 614871249 507581345 343425481 59221656 541460763 625585467 515143551 603901949 798803825 138680914 6426817 764095738 514267571 965919638 49998888 379377713 813210457 921055870 506209429 955049850 206882958 369009539 859454649 262522114 914964056 521096774 266988891 445441811 871842245 191491089 799732282 758285995 371620502 948822670 147618838 25182103 83285506 657376369 331757037 466718560 290876695 995978971 738792702 775701456 190387456 703265758 46509978 165895657 978878530 888031256 212635562 412092509 759593423 220667019 163542884 940301434 239710414 328619693 782358856 112478288 962921691 320860548 769570175 470180198 633336606 79802464 710822697 403694899 151526828 393394971 355124731 487296752 809420106 955197963 855438427 292863781 498772559 355678978 451935501 896650998 618369683 566895565 422676657 642403432 888977882 719174168 130700518 642315461 659369441 158275583 456884145 776933328 373343737 310019652 365814330 174487544 495724715 51650680 301521167 583213327 159334467 570504073 527835692 201178039 825385700 251565706 809472581 422329972 848481616 518503893 513020015 814701518 863423060 296834152 189582883 525407590 669103885 430860381 407821575 388697624 687337243 415704510 420851870 748851696 602086978 182431120 644785668 407735114 395968484 268941222 853618437 502826564 2795862 557843679 911996833 650005913 846561727 622559149 493924487 6851970 395779739 627372838 683979144 769282770 57261362 458112794 677304151 728410246 558598002 716535861 91948143 190939819 398905175 488116129 394516602 788363666 20952361 62442093 799304864 808704990 537664976 787446805 882174245 519297156 559939115 613442342 921413183 515658171 374213870 134487986 659103780 881394731 916818770 912857876 520622412 270365683 521423379 284239412 185851118 346784523 909155024 673412104 205769001 572510843 111235430 444348962 287992007 132001570 89078535 710263201 303498005 55869254 115648305 916655398 523679040 749020947 908211303 884019309 717445835 503587807 297056864 206699973 535263689 60975421 557666779 412445457 227084291 277543096 281573882 82704191 740685887 804906278 752646175 501522622 164728239 562292346 256838045 934387910 177608370 664324666 473914152 575487202 711200846 188957689 533282827 793189607 523105949 426997619 742820334 449132896 833787709 593651035 17112200 389059540 246244040 773244154 397527727 642677815 582612657 977188600 647201047 283210265 935884084 186052627 55089579 402294403 106957910 792808332 97368980 407192218 991665365 618452197 355221290 338474869 612607233 594314378 495581467 627964033 29324509 277708917 962129008 224777374 360818276 822679599 121794235 818997658 443238557 319913432 968495779 491008016 563511837 55174614 135787495 49128847 152364151 797187719 784007466 87892654 329838779 415691594 776507211 980164903 381143300 903721053 782057909 148990025 358238478 585777661 7755267 976444133 114041165 734349905 436318491 61817051 934684873 392770480 86819348 800605570 516983329 653311727 475630277 406623963 778312162 102833714 190231247 363041992 790112840 548663682 607064316 796728784 875687368 406919198 739900813 286441702 274701136 890724596 848572435 959209948 339454076 831666197 150097167 571014821 967562023 406182546 722213707 859955862 370216719 846563218 972618167 649323101 341274719 858672277 328707202 753652787 990340562 839779211 639424844 953805324 142294446 269387148 179202593 201467919 470860799 751391345 439858855 155851630 694105859 817367082 561299010 452637526 796292291 861084780 850323882 123610031 588086520 702869479 850856966 516451503 652494161 464276875 579652007 107365638 124296309 274743893 540378056 680430391 514752772 840466452 401619184 922889444 879677769 211173860 76267638 505144313 117058416 195237309 624528634 486795350 814416055 794179033 485020076 479278702 879142933 865322770 82297096 107501452 666910101 409386559 872757620 872567568 824030258 485881786 235223748 346030726 269934994 508991335 119886750 331758310 472107083 297337092 743228090 721378736 952179060 781530907 263483585 261658289 192098717 191013457 574221604 837223746 847554258 546441233 992916587 876553896 941733476 48055951 840581502 777928694 793829928 835028511 716244527 121911499 318946310 748057088 180494346 316664143 566051634 494327810 602887931 400079034 687439042 239433252 500761178 273830220 411260854 984788936 256653231 669006912 751848254 519303314 517792613 461975792 342692881 390473684 815351272 47717997 50437852 997663465 251151528 552468183 51600593 914647518 253868500 779046575 219823414 740027634 578824766 665150238 549448885 919990289 964241356 316383592 241185730 719826854 45046636 820064891 895320564 755388217 515302478 530224908 437534326 133162952 82221331 758989553 254167621 580142667 766519373 474426881 409747536 506374883 47066078 601721709 186503301 40236622 464239740 655276719 496810297 474175553 65595886 11739115 14721153 774312764 105555085 462041693 863462379 678682392 563469184 779094788 967467379 328019128 405843471 73988581 348929013 727319387 485148805 249848273 951229321 354451676 590332938 25823097 467109577 804754110 948799218 584302297 609652853 186399325 629538387 505137892 209309923 196736434 178507194 313276483 65875706 817338644 485082096 332368486 834360649 971761232 113395888 799238938 244534757 916078419 778907207 821289075 458174657 249534757 839975846 466188364 592216998 105494626 766492429 863251457 620208168 868548789 214371749 27137024 504024960 570521962 409005739 418934639 754577060 92298166 807137663 361789135 917724789 497276746 658569041 431163013 830390105 722239126 115317006 85293885 498092594 366459149 600459442 920254505 564932146 708378189 845289573 304140860 606756060 180348038 701959920 721566375 463334423 669101399 792681348 668251036 46776663 484282573 778671102 770544695 145311428 917213387 646951481 562710339 539616045 961767722 389611249 218084912 279213773 981086080 3841905 232176618 594061590 200871204 341381868 208563053 439661490 211936082 510052585 280737877 234602319 634536708 880351390 183593964 271391532 648768869 23027004 987042043 982258695 682016868 106421612 149204818 853908150 542560094 772195836 311780912 299355810 961973041 328125848 372087005 365166411 782171316 527645427 789770945 257315528 306428540 566309040 783133257 616756505 623128027 933341950 570528307 891897390 249460588 808901928 493777860 665710210 337670913 348211567 585629987 890591506 690949279 770039603 325827419 16450851 298751595 838188148 115306491 823875932 919836945 161195724 141005255 372113867 75103699 119759131 254702942 322380984 457766333 882816600 494276463 132371091 529214974 270263767 296136854 537903304 867699568 272505302 244216449 366056694 889221624 347936280 313332588 494037627 757768953 401230152 814691993 618915599 774727277 279421809 461242846 535804327 533818167 30024576 558651866 236493581 826604657 650449165 151419184 773639425 233091156 905993811 210108904 10295894 242286783 191009110 71144905 509136726 785670015 798277817 675449010 620172624 103100116 693162736 686008908 710712000 670641030 560156255 711181679 440323960 310257064 725134324 380876237 634333744 445395935 673927774 934711121 909086514 499804414 643085753 19153065 739278380 498958013 243790126 546741444 277537808 132656211 152241789 297245582 308259496 228142336 929279032 662671490 470940092 508678777 962136757 70594781 67003344 871119417 644362812 881229481 483410117 653229337 601224650 675600278 894193692 952197394 223468326 811974532 321930088 438484078 547473158 708187672 807179619 370408925 173279817 547515856 511017329 940969598 470564845 923444693 581232949 569192379 801505228 158774460 815752747 700171192 255965432 250295457 727976978 46382180 494434551 672086936 230793287 401914837 255849070 568201871 903376905 303729299 531334921 899691661 523024963 425858891 171365948 676396972 39907877 264355424 53724497 948830699 292426746 123961426 645116161 655331078 402351009 38200869 797222057 476660365 865454630 116123989 506295594 18629642 103997444 323701548 370345847 42687416 467853341 999410616 394954098 243385134 330863191 203410079 904081120 36987753 432636452 635760952 528920991 492926334 704470375 630758386 946394018 246077302 211948294 325771973 794446539 655760759 715482264 367955043 521663330 504915847 154112431 254465483 152017448 404723386 497892344 203203686 570319436 528830232 903319613 863461939 973862363 891906824 291201642 826900135 736144789 132538560 75992277 184126075 626342711 876425509 743019727 315538085 999963762 702531612 347155273 464768511 697848118 972279721 984116988 81736736 411628640 812346572 97861397 219356864 699628180 520162434 334743156 710743724 937515469 513165261 13301719 268872113 641012815 152224518 824719109 405580956 582501675 557064242 397066322 855878075 379130393 138838012 20224810 765892220 305252348 815734025 438726305 407876678 306876770 34524989 133330817 751089721 108388159 565067012 11061254 198830583 712508787 903565635 350143081 926215350 530495709 453294312 887928380 941227916 251311766 292358359 597520019 4602841 209394855 411360204 183486912 282581188 226808125 196466701 728180933 820702149 72782498 331619219 742655710 739562985 87153023 570131622 476584128 625008498 948875923 579542342 251428228 589971284 358388668 670012945 840966170 675696745 269524521 948671869 967499531 592073018 237798230 834628823 608186190 602835213 541497645 475734377 395062519 238450192 615523824 557693660 913183400 941682730 548496479 613497506 958484956 122622264 664674887 128003847 709960806 254879431 239617503 657177718 637016525 550817320 587136052 888561659 218956806 205948502 143347759 48383047 962110589 938037091 788463672 567405162 236636345 227771607 30679025 565957575 656588964 304878327 263955659 287357343 355624035 843445771 894136648 495172811 146814578 506636790 785409397 958808854 54629243 585292859 48248363 618907432 369364121 802710047 698599111 673196874 494145690 893968678 909513002 397016039 643447452 729294655 858508125 35096312 980691597 427690182 587422015 34781865 665077306 734172949 539602427 998352013 868773539 781553491 329245620 250986512 167813204 62963415 509541858 608444991 180423265 149078080 918426664 872757941 363656955 750021620 263593179 829683027 628283574 771130709 281890784 59893110 392058456 791870245 388390843 806103186 829123158 206810395 838600655 460740312 141271977 500007671 744584458 448435628 368520532 787089953 59860071 319036 485606283 805177776 337370805 56113557 359844526 152784217 455215925 713692924 614239638 778266890 755532862 567695345 839702625 185564095 83415651 77703065 313749714 452966971 179855309 430250336 626022571 410039043 308879707 774647227 626281378 552990885 795083917 992832174 501203613 734199761 445726336 311089610 958870627 888627468 304486402 920119629 823454106 235920198 302031574 703077924 559951048 937783563 452673969 354788875 776695588 228700824 217354158 472369557 615280120 423188190 283427717 536237760 816175729 520765128 813572908 217545750 725850842 724183635 766336562 248014397 992996919 491660806 900003597 588859462 5157292 276767323 284906740 135897714 974639156 169856499 127685327 458458913 545919306 745512917 211995109 723542536 72555513 714648117 767037167 575046355 629548234 838899012 204259830 394548581 75912119 663902623 455088134 789286491 943040589 8203711 261163515 624252182 431091756 917233912 656823477 716423687 804643031 763298672 955233395 126427378 888087232 514535384 257474523 496191341 136377455 720196448 97880890 36413934 590817657 729729458 719471316 252632228 682450783 34985351 947298650 994845789 993057563 580075267 504299305 416618704 756276599 110434776 441305888 765016402 530016661 780681690 244601573 284935441 332867758 15245887 222261967 738526002 166967136 90971223 248777291 409162461 709177058 804452050 713255485 287803099 339413306 245562725 27282096 780304679 153558597 136189704 989332208 621007816 504949178 1216191 161559500 110388796 465711887 702574902 555731903 685675573 647388999 55967759 240537860 843863994 737746941 269434876 428653372 529943668 350697066 557670285 566617831 175953897 903331883 940576242 533524004 30069585 866857063 569412482 794436798 54159971 621270422 356254005 33331335 918781305 90085353 144304021 368134755 19817843 124346340 962848759 724940034 279177049 468768249 211978329 760300189 413777836 369477883 283895150 133802012 416964201 828779454 987464891 675747901 195423395 188530784 669599121 748864995 665523599 114785961 370725832 540556949 697972868 195785404 179139389 686620303 757060190 967542912 393210996 572140270 737932823 368767693 458392923 595999366 189896911 602381244 490236213 821537976 553617548 588395446 773586226 736912018 173000419 356282916 35325505 994526297 517335866 460958881 334045907 514333457 339011689 18470276 889280775 320286918 829257744 394250290 700740904 493002566 505865286 749470771 945914462 302471634 146144305 5802177 240243765 256060022 68017936 80661244 145124978 210120110 192779407 375995339 554306741 630615541 586438760 605177505 940164313 941189866 592706734 430784201 226554251 48198223 537101594 160967529 429592800 710988670 926249656 744333943 809408602 709636095 512616892 676401031 194810520 419111253 442477089 339740521 587126872 335760598 424267376 895656895 860737680 255689435 530430178 370379067 751893860 612334506 957849368 48320304 449256642 781691652 588805938 603817956 973107571 822890965 362695424 788475872 603562246 701685993 735002246 913931741 23538018 528576583 955407804 279691293 443839652 821530479 997360200 950111081 548204084 398454546 351156309 169962310 470958241 222608520 940658804 95997892 766842693 720400899 260808738 228892968 288969778 435256263 570217554 398564817 350876836 905346849 625749606 92347086 416029865 19327057 288738161 601321607 872261544 921264710 813184271 560638004 616917699 997483492 175912589 484182045 711638690 153182393 64053356 581345378 208441508 546781618 98359005 653651539 634205713 303429112 502474302 101514944 328111967 723842571 498245726 231777622 734297048 837880466 236980122 263441795 889778307 844764245 520443316 714943375 132400432 17471779 449073155 173826991 165229807 10560676 817064115 384366995 845207383 475327025 990037000 667339860 85304888 363018958 932677574 646376274 292191258 620345153 356335701 313591564 799313791 290188917 646450786 182992629 67749896 766827495 458951883 864126937 15786010 944331814 497517714 948731843 96404818 571757631 92457701 451054853 390600766 916501393 353674106 219953735 686765791 356411841 540754299 616792124 693106820 193660246 487415096 651350931 279608489 864890411 151200088 398936631 370656331 872933273 608182759 511059606 135955135 62729782 814381187 307048563 699070527 360707314 286508494 807932363 695015358 331430452 373064413 192606277 500620626 870486478 98324939 952554780 301277550 101118512 880530322 785085363 82408668 964813170 592190931 373284091 405772789 338743385 836418519 272880971 331542923 349808417 14024537 622506752 536205405 496102383 736129170 919829109 229823736 167921351 195364185 619246050 72339574 436548775 842816675 758305193 392315225 221950261 477684344 259149572 336255477 998890714 320762560 31147747 88349199 705618791 26909557 116958156 543501718 485488670 521093913 379189401 801706531 347786321 889572768 509245856 497988202 581207749 387704215 192190584 342660674 750932228 678592052 435205377 330637012 75658216 417673265 694859449 693825083 760093430 651776550 622010468 515849048 258425793 284208551 340263768 89422250 957701611 706104173 400598610 481573584 255084103 905335848 591226013 978314129 831028224 638154428 569571123 624371187 236872378 472227724 353921017 982801211 116735037 945945899 44909941 602204477 867571068 406323986 543756056 911078193 730982958 482771757 190149666 736018300 232064991 401311253 267245821 779007526 310360469 501519649 52803454 871884165 518545384 122634973 357581293 659514173 581436345 589433236 807575524 840397479 493467215 905443227 536523105 485033071 474485072 910927176 717071453 368441406 438969404 469839035 87013388 789061007 281975513 726873518 442752056 418612016 313876445 931006908 953839187 161045865 309763966 389455666 425795654 935775692 666305048 681656562 877264992 816331781 264339078 913946431 281830452 6778786 389324144 870459625 419278104 518826910 682200535 617002946 427969408 320578086 919096977 206531851 335816005 731196549 59250674 464554642 81687096 312829503 709933541 902549290 337014173 373883104 847550695 977003195 126169084 445438675 152069422 311906684 521449079 822212183 435333240 536152414 943677894 714613098 79339477 448221676 400432763 530454256 518298013 593422315 970386243 39718445 133235187 10530390 726780081 306400450 739230587 766867715 137780912 800035692 859285521 310026589 142566695 670105 457676131 629235298 451420009 164338200 124548892 519721106 516532416 362499168 458096954 112681700 678889487 91562171 542929783 90065826 88475122 969262915 502178483 646613466 268619626 366980710 268371120 769250063 600221834 761308858 346442059 984289934 658907033 140223370 84822560 456050863 970089958 854914762 290766467 43928881 263827282 588423703 203262723 866729469 781449997 834259502 671088092 852326745 891559684 257041037 513144706 648726115 722530648 113170739 918345273 948183018 158076255 444394233 722971288 867852580 508538687 602371704 597717793 962976542 933208397 516318840 492508771 812511187 589657781 673840530 43966054 465303607 654924879 809547104 632414629 727125959 896334225 329466997 783911438 330765656 79828975 751876996 473773285 519706463 279919931 462006120 618959931 570137276 269999672 401409202 705816066 690469499 679222293 99957794 494747581 102655948 765148786 113660306 705998293 22410518 91822836 664927213 752343094 148531759 154732727 181776015 997223220 336751628 22205450 515006576 497972310 694571451 266490930 923936523 474875940 120409588 675681842 680450519 102280547 747827840 901359660 205977713 557230503 401489266 585141367 849000493 803973473 520477058 557995294 781344661 86856331 583302802 819761902 782652086 553084506 15376169 61857062 456628507 956460301 218293247 859220481 500328338 863529872 543447063 144718604 186191283 778603951 319433065 591611345 985689109 103836337 335207865 395992202 860478354 960692239 830576514 202536108 720806984 819095732 980112459 154665953 3517386 438467039 403705853 870789410 317503052 79951003 196063367 985885106 602087401 179923872 989569856 75692515 824893849 6283146 12179532 694937318 804756320 824246131 58006320 679527685 140752578 60315093 943488559 518419518 78437192 800120878 543912017 494609318 860158376 32635217 254672410 307545235 518537763 360744123 60439249 852975664 417395084 112935911 975634532 522403495 318002275 580368044 296417341 749540993 582298931 602477155 310291099 957260906 942829667 270409072 397948920 334653299 520615691 848372510 93671326 930300907 358887164 526245993 354343336 149508771 207530594 308142381 669994581 664659838 255527801 943033126 726642223 669032053 16967985 509514704 484697031 13972959 191032723 756932222 82563444 391940520 817877831 991388893 319386933 733954787 271664575 480310041 492378310 628087529 176756461 553037574 69027141 830472501 133777828 923762267 83252165 388466595 174158822 458735128 44456356 394016463 978244930 401498626 3130907 145737317 642449178 10969026 829126783 391971598 793815415 240853187 136545675 284368424 840310786 479428639 297425598 504619091 592051807 518972944 67765031 208052601 776259471 193788194 452299297 764759629 587262136 93602276 384219087 720209746 139821564 208568462 776679490 253345659 223639522 826432757 185185448 50291589 342768647 879766891 612554580 319152668 375158598 455787691 841659892 387535837 326133258 442634362 106128081 357159493 117378673 623529052 643631340 963770364 817031507 963705314 708163094 9787649 185518799 611848819 254217199 235796481 822316193 614655491 297398327 923025241 217921147 308717570 810718800 594941552 437277888 718726290 472490290 778394917 503211564 462186958 821083353 979931429 347234955 884325853 288277546 466596536 305601570 967902576 987065696 693943575 464543130 963372438 881872498 994921880 193434928 376952864 326885855 841967359 183957952 124931319 728481375 621574519 823047789 136394535 713807045 870581791 639982616 648731808 31565612 645147287 941752448 719590019 561317613 100629925 845566201 438499283 380542013 61972921 833541184 517775386 318766928 401939187 67696835 840793598 502619558 563759629 563075350 721914630 619364655 508031628 24489643 49928401 319719559 864298570 531833244 189036670 356587465 931115873 468131993 234300407 586188477 31877782 362095541 825684631 507400749 417879728 892627016 555596182 958941773 373283046 957691037 44888780 169511770 347227473 940688538 325343879 464064853 767376960 271248354 359131537 635976675 338749387 9949913 584887997 590054558 286252164 859255954 125065013 350342415 35214921 980511969 981726521 662632442 884370190 272059143 444920768 427701171 970058994 854473006 580037576 164976650 678642349 513540377 580288254 95772542 788863901 744724121 859691059 863536405 927198321 753405857 246944719 272950847 993519646 983650493 724658695 500293847 408930885 213364579 825457033 126313803 610481951 764307402 772526200 715692194 167285529 312038999 34058497 417137897 569299828 115893066 370633881 524077730 538660055 587380576 139137896 990309723 38486775 10581527 855840999 461972113 558197628 133921380 14791386 602159577 708287112 448838254 603179288 699785916 336111939 896741227 100056519 583629011 983032953 599603121 686246010 59241481 168600774 590134736 228746233 125770345 330123290 332784899 171470837 947286245 543798442 345190464 920179620 469565713 841213962 727266881 137148754 964301808 419489899 251631744 455734661 914071752 916255000 635390707 6905971 95090991 698200022 718568877 835141731 960503937 178112224 108156858 922604504 763444858 742525613 519388922 77316697 266880709 661295993 196520592 918997412 561663103 67558343 841003890 689679009 308606367 678155320 870554203 14620312 673345157 468651612 948996063 882946810 272027580 559286045 457728982 171283125 466943038 342361727 295668689 450531302 302751062 523334035 503370247 719872546 214384126 689128703 141285498 829493028 32903051 228610969 140907482 399913244 223575548 51579038 966188589 320467200 477344797 825214417 510267273 353821736 947999617 544071218 550942387 412430962 24464145 89512069 110922288 184667976 633763817 415818940 738201151 858693483 773464155 980932374 332743130 926205795 944362972 397891228 351676046 504210380 427829099 126924528 993646551 577553409 510306802 465365661 418182757 609096415 201607523 789988350 961414710 87535929 768465914 865669627 834092894 544997023 381729358 987855150 491989278 660012846 916991008 896489805 41957767 773380455 139776583 244277548 624319478 960740182 693389429 365568578 838660787 125145734 199749533 519123613 947041850 510488804 888204338 884823474 275086617 396863954 774325632 724402763 85719679 991373867 553135140 730129112 707743099 375179736 166220615 277906959 256207431 761936559 257763667 97891625 284572441 446401810 896338180 247010997 164716040 557686616 22888530 641465993 734932037 662760384 429605358 128404637 897186004 823898763 462577114 37839574 432779161 775996823 528014566 669139282 528714742 39901 490096142 14899057 704017414 248972459 910286729 483123183 290798820 283988995 518495572 888479930 26765851 351770373 713711595 874998377 727707540 85584449 690316465 18547911 899572056 456687822 471205169 237093609 670178219 208207357 866817163 411745593 255756888 758452311 405138160 608066211 930914450 145890453 54247058 362646176 104869482 777753940 880389217 947271264 229659822 423339405 718155927 381257440 666918606 76933451 313092480 447657877 619281218 798224891 16570907 802016091 278324985 385623586 83318605 188103395 465053730 748094799 8432529 376715116 710372121 227188780 556484595 143207610 331597994 19186190 649051256 400148425 831632492 760676710 158592297 675261746 254635587 678038883 777666478 561062129 267807944 950168999 447234882 634621167 378630973 76867210 163461028 752249675 753514996 449191179 323189771 921088537 1543437 384140847 665974075 645618313 682595574 412935762 722308861 206397849 979213120 835576070 731617780 858307817 629405811 3820531 614513455 756351936 566724250 3761090 48564723 159642545 869878618 887933833 842134727 84580825 802160037 80891127 781034997 981368159 427053606 395633566 376844577 562274914 581178482 343543521 360378456 484744152 688128788 556773268 829455197 91134569 516485961 815609527 619756127 989194121 402925851 168292027 163183460 585951457 42477832 943514235 281578780 898194580 323954805 471727587 36178045 957627037 899994384 896476233 133597897 234902068 820483886 349560982 489606638 275296900 756152122 451114275 897350895 976930555 473428499 649190905 482659853 539042353 58897111 865839525 644226939 191665190 660507526 908886567 689699285 945293474 245600259 101213329 607621085 449021322 444343660 634522097 442371300 887618894 881234111 938832382 966549135 108884969 896888619 358222871 595445477 950630499 371835208 721036482 652486737 694745366 387916871 211355934 874759771 457399237 831211648 662947236 960255200 269416825 533469113 569883951 53908764 36041157 257371501 897192586 271752171 469847542 567517644 142816275 972598925 905143325 444364537 109852453 952821318 637430227 414896226 856883456 718347483 379622788 180367598 273697417 557656151 554880435 293460358 216791420 416747993 819334713 497655761 946985921 889230756 889610511 697232244 375826003 690755215 974577413 390425461 186497466 590666789 982684108 178542248 192972563 100356028 239789114 39921709 960053700 5264856 135307052 276226037 998173236 102035526 315844151 492863579 568288726 414671345 882605747 159879581 65658445 603212990 312624763 740594172 282750989 95651771 443579774 136341864 852355225 584750689 76348045 720059852 51670957 360932738 101399797 764882025 41735797 189583313 568748705 797071280 161522605 798648135 924374204 912533534 779303624 901448255 4807076 533169629 179463363 226800018 51253272 534913392 462368071 950379736 317954526 398843984 590802667 508082785 191208641 281738686 399927420 868220340 186903108 605089290 482075070 675954405 618563616 413940071 150110106 275052982 719996896 479463042 27944800 75589854 851938183 710897714 132762941 872244179 735045368 200261799 73886955 626746335 283267042 489456831 481754073 752147603 381067838 615432928 323346518 626942420 389190670 49315220 134138126 715750393 967053868 680348905 495891257 32771726 854722795 912211694 814213061 965945346 108596923 24733244 820978771 498797106 561842899 759927157 407869297 282301616 680897484 466052526 222716173 421595142 966818539 565470777 948275928 258288237 881009323 478349508 945985779 485136249 453875263 835478209 903774838 289122160 306611858 86158141 911902871 759024937 423307211 961912602 523062241 53348649 822650293 519020999 839686276 309336987 809839956 176167574 905654760 621783058 989321587 516350920 350785984 535269236 677619569 524623512 511949598 764341225 171069661 319520853 897541927 220875320 869316708 325420553 936271314 442576899 23463487 913368426 241657809 892639589 64118643 786130947 371327730 657017156 826813738 155783459 194252475 102181700 310940021 269963002 906647562 238930767 656792234 601647600 976527594 317466997 445931088 63608200 22616101 642874460 679261290 484094866 535435840 23704616 985444317 931276793 186573996 245248531 773007996 918569449 351200856 70698242 138529658 855983441 837412091 366741112 287138337 344349019 334096314 119382845 704040690 850088739 595681490 617734272 790193300 422013412 934605215 896417527 928878368 68641022 127701341 244539425 44969700 587045180 686145407 150411850 166283675 624077577 467957695 336452936 973096626 896974968 756927475 543544372 680778570 246040447 743681392 747158883 376950061 353564710 909145141 625146447 758190520 911084737 369673483 583961736 321620826 717970460 933449968 464001468 897240492 861264365 373216480 603097446 605633071 189028770 928846598 693562646 174953829 735615700 616431713 297052881 715289729 274991429 621337641 267273029 286172217 770924685 905981130 702189777 21773409 235172497 244389040 560886552 383461110 918743698 697550206 994675018 963117062 117791633 615847215 326841361 257690363 515251733 430194641 917130592 42080224 958520696 742402946 162486772 533901577 600402217 757014004 575722312 884240254 570511909 20308379 236624610 130323774 599713520 954350350 946443624 723861603 130544307 887419132 614500238 419060130 467374060 338436557 346419564 47429434 101224634 511200334 185040919 138259435 929011103 910963153 44814700 414505102 277210940 296484237 102321864 256097951 836068732 643126750 424808841 738062357 257243309 711823733 147971331 411858354 218962492 464935556 772042515 931349923 318761127 65006647 481315576 162991816 743576120 237428074 475581932 940273621 428185865 461467198 410282991 848537653 93581407 129222688 770619312 643267780 682394562 183111411 214607530 881819491 621987001 797018860 395610126 88321471 738852844 711104577 850786554 160302298 15285000 892628973 591633531 524699574 178680489 664284848 62562533 905631488 799385170 516682405 57799844 746370818 4304118 616134515 767208210 580447222 677301679 627206041 278068670 354151371 272802304 502216522 661622240 763853673 532285125 273381447 191809125 679459674 627665184 566242191 628962006 631288142 340610508 853984844 454632205 19983519 738432772 61564699 780790699 919556233 445773139 812167387 361767988 567702973 984115171 286394953 496614499 949185022 162780584 614232039 542986475 926648581 254208478 675906411 423216049 487475905 396516056 163236869 284474381 246206958 651103255 886435989 343903154 626833952 824580374 38440280 509276117 239471065 574167551 13975383 247152592 544220996 714633595 38987181 934137960 216471062 783410058 441753334 933684060 751691337 249272678 355984205 139981871 330139678 70490895 979219136 701850626 517411001 737592046 690354310 686667756 398203720 772620865 91825216 565139703 241994659 781444808 966383180 912994404 976937334 961268879 591212355 911878852 405653924 91764935 490055152 793772399 520553803 373550474 467759791 655419663 542102084 642259499 358951538 998810680 429037985 409218553 894568171 649452962 682209945 658539899 735503423 592456944 543360144 81495347 713152406 323817402 942146308 580061457 453949568 186908067 720106709 952631860 656598644 919766012 8706740 2672342 543712153 47166464 102256940 537894441 540041271 54755102 268665156 644268661 999088220 754294687 622009740 555425778 777171180 939234623 137312486 842851193 480566347 638372675 563051619 596133301 235671334 836944987 575456900 672335904 84483640 885731754 85367076 266680551 405461029 792383725 15276108 31258179 891780494 40205216 850419048 213623953 330775895 671988507 980922269 754710060 2420536 424821052 649976125 37512332 528308761 367056675 729583313 974726608 540675315 232626620 705238631 801558577 599603781 117028058 821821731 753043700 139434186 979901741 828776465 385149114 297239776 334354747 911766768 505101984 114282605 604781516 329298313 925817918 694434353 324024666 659722642 155220685 520330410 139838205 679748249 113262174 660432491 245416789 528130515 72325957 162249321 310788398 463570588 125204430 385035343 857650092 551589655 928581246 820219510 568702801 749010638 827646569 321072085 666552201 494702617 213288976 153225469 317404711 178896808 544728458 531183326 785196915 211688841 82360854 482900006 720889156 234089878 683374049 321423250 504837090 351761644 903510186 635329609 840593519 544573446 350380066 547169030 349849323 728889072 431216911 428154464 774506080 435947694 795821471 276708151 317851143 8125416 383222309 615585364 766368979 120420237 264917073 3861176 624051627 41849417 518042140 173512398 512956930 294611711 264458343 263255514 871423497 863223872 829892179 834619969 591304529 343210134 374132234 565453844 816265731 52213256 207625798 294067873 293197637 553167652 19207741 798675746 239882975 153038542 116988311 226311702 106092374 744652477 247332118 574127875 661844117 169139430 920108774 260792522 69940371 409962156 945246251 590908218 329482636 354388200 458229827 322651076 110412165 151868321 917730378 670089068 641810891 142104114 954897553 339849123 923145001 530031890 365258577 242284551 497938876 699802018 163431850 865288872 896514401 752709379 135287067 1689294 990886933 994689942 327280100 194957640 572275436 304436061 994122713 458085725 889300891 612960112 654325264 591180302 138371099 625932977 813299251 991531431 699349511 759489749 16799528 853998110 678360565 445990841 304667177 701080484 189531702 740325557 75687183 138989467 884298344 841407021 654105662 673752336 118375854 144737951 506372048 749617082 842711071 701170522 262829701 873463084 33026110 778931755 433983702 488471215 690654934 530698710 683959458 93661520 340059523 703526894 532341319 725854707 661149221 421295543 416910105 852826586 109762770 124041057 65544729 113946045 754635493 548450620 986353477 562317015 495285697 230602321 99633429 55368612 231916206 226341315 528065903 255880235 675683911 498166839 279827380 76592263 931613504 676899351 214062073 878661044 86095123 891552988 846898830 141355770 787116918 602631269 112899153 752044446 418672174 673476141 137376959 231620971 841056089 280791963 104395881 343988539 504502478 245540423 963800195 361380867 911027064 859381275 84402942 389121547 19684687 953201337 861562317 100386952 695296669 892186117 935868860 187984253 700537606 407581799 808688384 993034058 432369102 586052830 29444579 306935788 134204096 551694954 828343867 718232811 138807632 305229339 555951044 857514261 737577640 399618184 156087271 742708227 787940588 980106161 56908918 7595687 428339112 930844251 311965619 926558100 729812057 124440342 525883754 694818007 155111969 672532011 132065753 642902435 327807218 944125050 884388705 169976039 351962455 692647620 277866781 622929900 613679782 202885765 347628585 485778076 341563212 188205197 159065432 353086319 396104430 157390691 332114 18848733 522741048 163566765 688356793 619137824 997192539 289539712 782224532 414426232 758341879 129735913 744928912 777984377 751679827 952685925 413352536 315322963 161693521 679780072 308258851 756405627 276080463 252954395 811596536 15451308 643646479 325157862 899749819 232029133 809732177 991529795 527537821 478722695 401573911 675043324 877879724 470952427 371722534 244082509 225222337 874544290 292948247 446038564 632597677 734450418 115065000 798663909 572010805 158790422 685946556 834996932 304046753 714952663 462689963 840931206 185000612 848749757 307354363 755995593 102522002 390720959 995620022 421713970 951332900 293117216 678114620 266918537 388822810 304723828 182316128 920674875 291977267 889071220 8732296 218047396 18432377 624024168 493155893 997447587 592418967 269130095 410408908 601705866 523883598 445548337 731532897 540362241 706618222 520151553 487854084 876874051 587703666 554489685 563407490 984563020 682024326 268116662 829854902 991673179 469807282 857843736 106373068 275667294 329386033 55016247 713825840 251563463 220587698 318001238 594571130 447885132 424314795 313347511 217186403 50856633 343214099 152227201 990478065 617198789 648834501 154075937 616732798 557859235 4148856 958434227 822750950 322072813 973851621 417998239 209660961 287457561 867603243 515512458 139527987 854698306 907055882 217473838 911714826 159745660 443410141 327505700 163389952 132207417 353762591 967078116 849660830 855963949 264014399 406041988 365415134 260506923 991150920 448590762 585822761 610358488 557640270 570240680 940572797 693483609 225900012 311362852 441016171 930499093 983281073 96453795 929548884 486159357 254954734 900426404 982259636 621292143 916535777 647502845 483434664 226512792 276211339 73921413 142284266 744862955 921708705 937751629 9124435 644940789 279238093 616377317 372998714 850218166 144789492 696949885 747655948 178698724 722900622 630167219 174843489 984378992 590062255 331767831 829819836 36821829 56948694 402780228 190285021 450226433 853878280 826723651 822748211 797519158 61906282 427392625 376665271 925113266 271720447 210237633 434696822 522738117 696067740 583153568 554143791 212600167 653849926 213150255 566461190 24358420 711478377 555420327 587843832 840888982 722822489 936855117 127376655 507990269 938055707 93512073 829229718 766232310 509996901 838617449 176402585 637873954 796268037 58054521 562110964 496218716 555377907 422340362 723052764 81931600 951668745 245436319 282264812 934123115 114853611 570336268 722097899 480475639 650580606 772706946 420840241 324912392 308093289 435126190 234219373 167001486 156118360 272013958 739089858 747376217 927779622 285857993 274308727 582733394 333667912 493523047 450093357 907806964 602785432 146904650 308636925 867083002 520090085 666508137 314247268 568683982 357766696 770279279 134384870 180079139 854283048 210413861 671501957 351422775 652876556 103638638 935241215 830969459 529183559 466468683 481217746 949135531 425689549 965384442 840297256 471285139 663024498 683304210 633952837 980207652 51656440 73314310 207303198 443166754 778854738 246752818 202168322 252478127 739677024 296838267 401125344 887456268 805761161 22072260 391993421 117118599 680972136 416420230 802566254 64363165 355861277 589890733 184214323 376764367 905372469 604880108 953791363 71918297 510843237 359314325 874315141 617626789 983382067 45394683 570272387 542933274 117072917 630598437 521812033 747159714 368382678 209791662 390470946 902206459 894279131 829191575 126176354 492945759 39345661 857164505 424697437 946016881 351275148 408152133 500950560 733405533 57193724 867512508 756142267 696194736 200682097 652432734 391032365 863431242 537973601 165328674 309863852 611743388 279161179 382848331 473731425 956560487 594682648 268780998 349655128 598728387 926841257 895042074 358914305 939056270 502884937 555447276 774319605 342810782 231680897 157289557 405647698 118981997 937625548 420969792 278721817 199022305 985279987 927026263 855305203 617044201 29113127 508949696 965429753 248676274 995046754 698950822 86118777 297924853 155204559 719330146 891659297 808726632 355900901 428737454 862997930 717806064 678679359 87408443 347233894 787270320 872770337 100156015 946107341 73479150 154997388 784958256 524723912 785386798 947018383 671390823 164566962 84664543 393230572 711492367 441793018 107916505 649626571 908856031 317373296 665005601 870991471 383427934 856382533 920510114 948758297 634210634 41375287 357277368 239838629 882913539 420654209 939438193 359087946 161987729 97687964 492050208 696636260 490749506 723043221 282297390 519874812 877697416 206434788 93001296 635426162 998042048 139726428 780800357 4207960 701818669 903606382 54464162 970578295 255269838 986722659 249812439 667675742 519122953 438720595 943693773 641303607 93069905 863364870 507563190 15679883 372496822 45694716 534739416 882818655 100896858 449517897 569237808 335044902 488437647 436906265 118615353 982014926 868194842 987511190 557044837 77135587 474715927 635857644 190738967 198105740 241141600 558625801 806817877 957133721 569480413 124644704 884085053 956465857 857545930 469306291 459461875 911527777 794278496 469996522 375573298 96230904 10513838 868106674 105533371 179893845 266879594 813694423 499691916 377862709 621950061 361615710 255224807 3156246 284262792 966508521 98445584 319356492 714434431 736174576 895763873 87593534 545155437 816505291 200801717 564210339 661599722 721214791 52338895 269036810 171909391 27692048 991070996 419130987 263163308 316809039 971753759 796233368 917054471 566335949 63750065 957325408 930722777 339222319 330991721 532464733 365244372 296286566 902111605 109926137 202402891 936741182 593699550 601916266 966176131 700574755 523813762 855505226 846809859 79636298 600562886 518520731 818790257 131992646 144587931 319836220 382521438 487973372 738519624 269492679 550205264 685992261 727345606 870410142 226045158 233840954 33555266 613169157 992726420 645286192 294774283 18328800 131504574 672522333 623705007 158397728 298761549 352584591 143918059 510422961 158938429 413241028 630496246 496479872 703406193 760101855 661309547 650697898 274806139 298403571 956325706 862614201 139770951 555978277 163604197 901051478 733989294 639714261 29463392 743070673 522466907 234284513 227519031 82011060 799270675 122297818 725849072 566420718 248821285 239162281 973967289 868991917 615090767 460875595 381233142 417951515 753841815 701563595 50841726 351063018 104279149 918290689 807745799 46690410 309772213 835127715 262426517 116495127 192461949 889260410 295360636 642956231 423127763 92854066 223870030 715792995 567469634 441300871 565039944 581351432 939012846 743857008 470652260 788615823 43963541 300284199 239946327 663496207 306134056 731736621 237018274 870998373 448924533 761988703 545389242 72957989 477419619 162515531 872946908 498296594 480078517 394264010 284561525 680549751 776654788 447958804 443263573 872941063 960343018 279705840 593747984 363857664 19160974 698715291 610404202 445004738 530454956 660493485 611741707 418440454 437893081 331624410 580660921 484563172 325989997 484128052 756846144 792191904 394270215 550092008 783921841 91620730 742285644 87839851 691573329 735849412 636296238 657631343 408503970 9515747 376137192 826941618 732753899 634270369 317321343 344969611 387501418 150610878 107624562 659928173 706915826 737806131 552123702 360899335 928037620 606575631 339428226 907251151 240432446 530630359 205214371 6209706 792554105 328723061 198017039 153995951 476518524 879125461 173232315 662702351 204655250 940595554 458049254 148874921 323963071 135247835 750479178 214675708 819626916 595440623 787240986 631889661 816626950 546871957 778078023 103707898 946505930 673069290 373611496 992846174 794678833 367517860 314102902 482178344 520148864 47035762 778422204 242634151 822011230 941325300 412096741 223658436 920122410 475302263 927119238 587226136 815208963 235307094 801432443 514981427 650973801 301741402 437786254 44496991 607988361 421794453 44167567 206957023 34832434 32920652 955905285 713643239 506467552 960400057 914607874 415474542 440543048 801459576 994230245 378329787 876219416 211470156 230237767 509937715 225381769 157212091 362945882 177240061 293317401 983884397 643353035 673010766 241110807 685896540 855764820 619290145 53895709 641310645 183935589 129947679 253553950 415845158 307204366 882607964 235105142 128921401 264073409 495746339 400765111 496754518 79413201 54757463 404108881 257207266 792814605 482970714 344774720 989665537 689223863 624126127 685851118 429110132 777548516 273972170 827879458 340493448 522981391 154337023 301387270 513833144 779751968 423166351 492412380 705602716 776646869 995818343 28843508 63083553 188828265 197080556 776183471 499412854 23548280 253153472 448455286 299593304 602939410 973491838 537438460 641770732 523118512 218011034 732940042 618552378 94730017 934980946 513327293 334431648 345651618 738285178 860136438 255922156 198083621 799176835 1358939 416713090 19364574 641999023 20984301 803087971 871828771 804979004 818131870 570699887 939867754 785049344 141531259 243205427 709241893 540852073 430600070 796935835 514030417 549200524 127822035 865409382 745502487 301017615 895616793 461350551 54865851 441152102 646462464 395482446 690055736 162044502 419531078 687055808 125265326 50772009 659351388 340066118 242647765 377136638 114370775 937079457 2203783 279430288 376340820 612646628 251856550 339597126 661485241 55663435 971365114 344847630 70274460 997408342 991649571 725518806 921049179 719015324 50638762 904860456 562923421 833448078 814181430 235405813 937162246 437731470 775846579 523527261 4089039 855139083 457872210 720420606 747756782 164892339 74655281 311342119 259945336 838994395 486623362 551471523 265335016 725871596 426677201 698106113 259000143 31276954 361045059 885156620 327437626 688237313 942688717 27501534 166893735 491386184 638110017 304549551 627457291 469336928 38374572 649716714 298318604 261524885 51307721 796420280 962698233 964783875 833420803 670519025 577405160 821310109 980203546 862544559 552681962 46183282 773751808 445573560 205248865 983115393 472150816 804670683 718226916 585538385 146346882 587125098 123324826 107341657 130593967 497084337 874442234 799137073 654743526 750192126 654617959 711741789 446805486 699732066 939032334 569625116 701733684 572662423 487788749 417015953 93394097 671626657 517880491 861530199 665648653 158499504 313669182 774874692 193598055 949014493 460840032 448102698 251051307 138110827 114480270 216155224 433244041 628345637 684177144 436244963 586848229 187015896 843885193 556854522 92858904 580561291 215256962 637133408 159983827 967812703 239684651 702041892 883206257 650082488 243518557 650547292 745987583 663890619 407002347 583096769 221127270 489744471 25442635 784030876 832074222 745436604 131464825 677172377 31290177 156335850 703032558 438781284 459004256 780765384 951672227 289560766 575237202 712007075 349042181 292244504 253864701 377525445 981707637 758556323 134951243 260679593 583307106 116585270 796881010 389862592 259247958 252019617 989723268 702203697 439647637 427562725 275024041 256592357 815617702 845560665 608585300 885796347 576726931 314152 668812985 498596934 897830632 450316636 115763193 318493550 332138507 597670628 448893426 238986739 242672798 32081642 208186445 410546070 556086480 805204636 922690758 27874334 973585627 1009756 126776487 828132158 295454947 551309288 768765341 238553294 83295427 314040094 647882898 23380330 270485943 192255255 755177242 298314447 578166857 251443275 747586167 49571385 242418069 537351447 260096876 259851730 731974998 507449772 175742892 884740883 713997850 509935090 35992311 984389596 985569687 239724191 585259707 835558949 407622808 382446243 176934440 146758 3881219 712472181 655753437 130875911 544433702 9335218 368418484 679023564 995680504 805026170 627190713 944484318 597429842 810717959 858139939 682784242 410348425 521629594 829052319 163898152 68953990 340084206 395449522 525240611 432190948 232171274 883678728 168657144 166752448 795484365 18902481 396015252 56164605 361078377 20554475 503138451 5405728 66292897 483270306 470524157 219492946 822373709 690878142 183160344 510759684 127214648 621747898 829085539 137551621 646415682 251456027 39451671 162431337 366656456 718146538 530134238 758259312 711774269 904616169 421388542 198360485 299659412 233955202 891509072 665949108 145772698 492592516 45232423 957775359 439517650 188424748 176095138 534314603 804670779 275359076 320955424 667979243 612149071 831876584 534908352 650787774 901679630 440035118 27227956 956894060 139897483 18055934 671244978 483109299 190871432 421201069 96326167 563475049 58310911 65190879 252822590 342009489 943632219 414484282 98187015 723444078 301119848 15799523 347691051 382730743 248338552 603130610 934752556 322265414 928298916 123482142 62475620 801429483 730650313 596394150 78106794 642770497 8154302 343922173 236720275 377839930 810197263 980003760 921777147 414572253 361848967 760431994 529487709 528234000 752082621 814985421 98647565 884587750 216854520 298814736 302657145 340562068 426291160 72708140 484439933 142697109 807663202 603931767 442094006 247370628 28562059 105353931 715295425 999310454 196459648 759884612 235280246 329923374 98228031 382467118 876767420 24802669 827923082 955585543 612482804 563360869 774864741 527527195 198596663 919341939 991838730 397478489 148378496 973970958 912346811 522780795 186203782 527969569 759080966 772380958 544269359 961531456 823507741 586451557 249127041 801650501 957149292 651259963 78462133 903001334 802395365 445650498 537209882 709514817 609707955 337278811 281164209 305005958 19411588 27392453 435825711 549912216 664742379 164979022 644767765 625206584 117071683 356077391 93065437 207380622 813880947 373705899 684977286 897860275 890277609 6651132 209876605 569158780 506158204 36975157 673367111 794786551 728897700 356252673 389654994 261331744 205512487 586754713 187997231 786966856 771973010 85306104 109499805 767270722 358117314 25310342 504557211 902208474 428952024 412845265 657830794 358199006 223083760 874945304 509397415 634485079 283446674 25563170 447657202 730535020 591091560 253236424 126433225 23630128 151158946 354707807 838127386 45329715 931223582 581929460 473722919 197166130 530555978 445458041 521986013 921596895 298951072 835968576 365108722 859890055 447082246 80611468 529684205 491119114 116082452 685992371 267279736 614235244 325453290 63919611 569716441 765648127 589647063 853608613 79746051 12719659 717396855 969742475 785636065 751339397 991589015 40219988 360783141 682824344 14799703 914302637 396009347 81986660 208978204 721244103 31403024 304351233 569094521 569122742 503897509 817543403 924394509 869657434 221866028 739502003 378636900 820978744 861288984 12873831 653582342 411099631 643095207 915512983 320407472 611743001 794885524 646537802 231572584 858936399 41277075 489447562 347018049 659758895 276731786 509995902 604225508 957996132 137806341 676916500 878373311 271055941 426530554 271285963 98729508 715210789 917336737 426035088 668415712 538635367 31863935 22499454 810613954 312231961 516268925 976645670 507949809 456622228 946803303 355760848 891744546 481653956 279549326 540053582 358074286 753296034 956844096 770657034 275266856 393721530 339538388 714949831 379103654 277569651 898620123 95866542 535029993 2970036 312214817 57071777 221753367 722881599 214287758 649145048 413603411 935895337 216594001 971668722 862607299 903621744 515627309 210812631 225613896 518956265 908138691 808093932 357047580 668806398 156919551 665199822 937572488 509898652 627342746 322134462 384811783 663705775 159223140 140045136 797416827 564625885 776494138 338941446 798974192 231636436 70421148 375349786 871750502 213339448 395862182 530263797 207946208 596363688 197009062 76441793 721501071 574213422 702511463 302124508 15419803 771871040 116758169 226203660 186258036 690614184 556562239 890911472 90311721 771994137 103935215 199203214 21228454 933849410 950273744 710501345 733650875 50585491 831993527 769796214 64712687 638995423 354361820 539703316 99519387 971943091 496529258 864010758 182403587 3096752 490013866 138752145 391291716 558894591 668222242 930343765 888114196 671158367 930578158 33747963 51079931 202790005 971344401 521760488 670391479 281673361 992213121 799462152 716565939 844068585 79976377 1773681 508764427 61113148 2767144 164983011 634793513 594200477 455592520 402394474 89762779 103756118 482340381 629101018 994208715 580500021 124318293 478465235 55237822 606681555 980536251 722238267 23558061 63660661 198227317 949689304 236851481 489473350 240910030 678246781 975811354 442460179 148057294 729428979 594046642 921020683 660655814 34612907 198536613 420329960 728955316 857349227 285173246 823469837 553169340 447751766 898701468 11210072 144181282 231030800 215029887 761762828 24047252 457123141 654552092 531140838 721603689 234614975 914516881 809669068 781641999 867911415 379260901 744899352 273053377 223768543 145977706 938844815 76722848 164305537 569726936 53919902 213811143 313285898 434827311 215937008 883097873 161623037 969961657 664472682 633480992 967553220 961635091 616261432 926368801 306607064 761909031 401676445 534376736 560972509 943296482 636940083 247200495 382739798 816485229 926244635 81805626 627126069 758674633 933999955 88738944 59246578 236652724 163513928 605730444 550969021 752407117 997426934 372264332 216393826 971559046 240809744 64878541 854709530 686905643 178725106 163042257 321497187 212581016 219067295 330057152 333433766 590749958 205019785 246553888 784770074 610256589 532520106 425044554 33159186 749924233 814271162 487332208 252146159 70947445 288384634 449062527 714121201 343308260 218097331 878391325 141128260 815772196 493222928 169144930 479810421 762350253 265984440 879269797 645193187 645125047 1666793 434433181 542396292 562396873 451210436 523711349 549210307 407557346 218290386 735996114 469911529 150376736 134146435 26640196 772627623 670177415 447001536 3910673 695672421 491903980 470988094 184056419 850566910 922383283 414254092 587666850 105054732 972916002 206737697 275224006 478150494 257454855 677992089 579555621 971610770 14601186 125857197 986523176 432134749 21724616 738269050 48064320 342371207 172098301 95844397 651441349 89918694 164587667 265384786 277837864 482301119 685475555 245012610 796380156 504876963 580062669 596647459 651433034 767360485 255769289 552465982 912236995 851107710 958646097 501885086 240176030 821513144 273274314 579837831 617008119 428251092 809326653 941613988 890610891 290998359 898354016 19873133 715012044 613314858 468279289 766674669 215326284 186494892 576719615 529118427 380896092 127765061 835696936 564306210 871903493 966268772 229901958 361516289 855508813 912981979 998572226 9784690 585945493 777628412 63243079 570558930 172272672 788613144 244858138 266919699 66839651 991665633 442974349 784083613 963673027 136980419 275765732 380316095 13867235 714833332 269787746 99992964 105177642 270512436 493184115 719852348 443725214 93651017 370281077 946626642 293406326 303811538 189198364 184166561 921356666 366584014 383780281 613118111 370665720 494129151 657149048 248100209 37377669 664664280 338302553 46789747 883877035 440344695 574243282 15779450 124855252 636249097 584451527 771091328 422026561 597013228 752756472 277393025 263523133 148481743 814546230 319486001 416517638 832862641 237874871 559171596 230284480 257242571 646117944 756351662 294769862 405171196 817230969 379460767 31981234 736449176 838399773 25536332 307939678 288990421 238636264 570780075 81098007 827258082 713235885 888126540 577254706 710481902 504122941 106717283 403301302 236566730 239361170 549503070 562164476 8667643 433290000 422228908 548920346 944293338 935293672 614570515 807367039 119360888 261612837 990773018 978152929 486089911 546400661 344301118 407475033 109472763 302132080 242305923 678006142 730731933 290731992 107142168 700924783 868968274 977196017 423385356 801262374 449391071 856407586 267017324 216885997 620990421 385045683 627537697 857665100 825136538 881678658 256993787 144200830 825837080 450201705 274445967 756470656 302343981 483445684 755981552 108953463 58712872 942383979 52821752 696858343 643412340 366411934 311601186 623316945 73743475 344764431 761885911 96241031 201322471 534642571 67664629 756721218 496393099 252280333 369527449 526183966 606040977 369405970 135292458 971811549 276445464 688979177 657078207 424107033 345931878 654991264 754317082 668618593 162327105 824068686 115501141 381017438 474076678 137454246 317219734 491513622 995765711 319467699 180052113 525866587 922170619 588573607 911976982 84837736 993555787 559160273 933854933 636131367 899745008 575023148 416899493 205361209 685667002 498082072 851908765 592977418 372183688 289549914 257767541 103201947 605585547 821753522 493755389 71981730 480992359 799744287 918815680 667822434 832451215 415579491 253340908 417583587 615512988 376867645 329229067 459200134 64003275 547556372 696771970 940508916 569686407 575381876 876960096 761548520 475989839 336504191 423330562 628132046 385529184 883328060 627385604 73154602 763813399 57048082 430202036 924961797 247709283 477171649 767161734 504650632 413351730 355167866 753989532 850106786 883662536 343674027 555008577 222031849 773369605 353366150 452964487 217617258 210261805 70369048 846512571 295501123 145634022 850363725 789469228 701045398 89909599 761693940 592286892 987412196 881933353 149753742 168218677 454393098 414346500 888076874 124495281 186966211 260972803 180258727 311753697 892951882 893599918 229117432 950217299 769605279 484492668 932246149 21077050 68495848 64914840 928251033 494272125 314055059 628045825 96680413 473053171 729084475 916842920 466953873 357037724 139042311 621917912 647213565 994004267 887603426 563334229 607337784 295766098 847889525 300989527 46412218 549036923 384953821 894907539 154330728 126957834 758478622 230266954 666627384 787914076 818183815 623336378 792481662 927106193 538528550 514558007 277911887 726598187 889402430 87942261 102870866 545614195 354443941 470250078 537320069 889450802 191041578 874987143 889550533 883421263 262561544 125639555 731773959 492055900 822892809 58029069 98112396 701811171 653191519 617203119 63080482 609717859 14098019 522691716 405754 45257087 62923635 424846449 661093615 130018745 255718496 372236847 304653314 819521452 952310195 321573180 381318763 352905972 81959999 275795776 535141845 327659890 261486551 357408927 69856722 138333648 21261031 519561618 572233401 809767218 224612769 578315292 372598533 805565298 727891449 932837882 683151802 686506249 432367879 581678461 741889937 716377248 149750481 181237409 738550946 252587745 916218630 571787585 376878479 652568207 619305703 244018136 730828026 61227738 708874516 990851152 220977494 98996369 635382260 615658213 95035110 831033900 950814589 635063864 997406209 403387171 579262418 67384981 978430429 381637061 713853823 403574787 123650372 336388079 375425466 908772188 215402500 427804520 980134638 980115150 212652131 580622839 300231870 240472326 131205298 42116549 97738531 41745371 671415548 341331222 891530439 414439275 759424455 169643348 692010596 477261624 786700599 939173306 883789998 86353663 163083322 357815754 523745164 568384664 679812862 57527439 48252794 548960331 157145684 323845990 199887776 611907759 41976846 367901371 227459348 270775100 818936169 881226337 823282343 376572793 57316395 918696650 134361794 984083435 784833569 32951025 591050904 830039411 399912709 420544345 392268995 529678847 105863878 304977832 361654032 298199258 422607767 385448613 302239785 183623061 586521339 660269042 929401976 422369013 30767621 980421038 387577420 441709719 378174184 832825188 194957871 589992138 707699859 5079395 910472407 551804163 388455024 120745113 725420933 521042159 704022384 942414291 453854541 834237019 252354056 506045620 782132302 122209562 833498349 622466599 357989232 361898523 783688719 545708681 918407496 795808308 138261276 874959117 86600379 743155307 588817221 262949094 122257991 896206713 359570049 626763878 181448207 749519196 283322505 694817571 201377125 673225490 269692486 928400229 58191670 578027021 674334191 827663921 555808770 162123432 488544188 562287896 844915667 658034826 586832828 512089591 432474944 131833278 376261492 645241902 408470142 698659350 323325141 944787491 368045039 144121676 66386540 794524625 481938985 570148045 356166257 383470861 358275004 627880419 179796038 677927572 633587310 765421793 249077053 746067336 404047342 843499441 482189713 75152377 35690673 533871406 400205873 532364727 393933065 10475112 301050170 869059516 826626426 240411620 571643160 160556678 523720125 628758051 908786821 880286523 598358542 453094625 839683816 183403927 561458248 705297777 352255785 250564510 144192174 759814330 379692706 759251793 283666034 626423502 423399120 440368398 281690673 219807725 938277386 226024024 460724810 222852665 115513474 340942448 918432947 910815715 594354825 402460722 697267174 440437634 437797355 438417903 32955495 339560714 311956035 23400255 434849165 742527378 991554762 175975850 563092408 80651431 123157 607290690 322597637 347290527 467109203 827679941 605364927 401450329 898360952 438093494 780706329 130814940 586113848 59320554 876350625 65715816 197536172 854224721 397013792 588143625 504858951 692014001 737391640 90717119 288934720 556004384 785460516 594057865 920820433 367001775 176158453 863869139 9057916 628021988 187055185 736251366 829664763 995740683 790361120 561527324 422064996 751255938 52082960 201511405 377672528 491897344 445419398 493284266 153068750 715552288 211317856 692643727 439339813 5098831 381605629 951584310 937890628 66268209 187318460 136884983 702320178 900036492 32269793 600107827 380961189 214810466 438107892 792166877 700655247 764855908 328489713 227519733 602003442 324293567 491215531 895137207 278590616 819961697 901604019 640890196 923117896 423099732 685077587 308740646 322436971 840952539 31524956 588651141 449622627 337771559 625912340 901501982 157708869 941595463 343909202 307232371 867469650 772556437 715458951 27680303 672618010 532553948 424712662 743430167 813353494 445754279 698660209 60436021 550457531 508935458 859663555 987020490 355889015 978745615 261264026 671297896 690244196 451592786 898230748 881992088 457462099 741649743 327679889 644603524 980139880 951138167 620690801 129986281 704915337 746101585 200482031 172123595 592693907 427317529 298316836 196696468 998407901 243872780 310287787 86206173 902580816 182539749 593104401 313702981 86545611 742012649 800385290 891518311 865371591 544310127 218203226 258516084 749338758 423402081 373296426 897584950 613852597 939734710 752076031 27895228 71051010 792620503 291323275 741067172 912795542 238027369 674145042 664558863 592292526 944589331 637036269 715497642 324082905 376859258 128915760 746710006 956816150 718103555 855925650 457387197 818500199 136607348 561273665 28803986 946923273 524978623 257212287 189630499 478238032 436386145 444303699 948569651 965212679 996285644 200041882 333994892 867432435 679346013 725136997 381885578 924585894 867100588 878838680 458427648 871198402 112035480 98469677 38091876 761406055 973781095 61445903 636966551 781295918 759862191 748137866 564511048 693077923 937099753 620390652 253719457 467117992 345948433 997410511 17131366 439465232 929519534 220849709 382161470 408337408 383350567 813939667 989365645 415810740 874016831 820898305 691391432 932922530 653516049 841551036 459293892 441743472 221578843 484229446 160557508 224549539 603962387 567123487 64967917 456252040 617316763 189378010 830376510 535644895 571297705 718193733 275027548 808252988 990667469 80400363 929767899 282453957 577016493 579107971 124889265 61022257 489893507 787267144 786128259 290598911 573348644 250323402 617307569 130161269 527135516 801094717 514141429 652105052 973487532 14938478 699279633 47769880 812695121 962512427 806290757 794040445 669800277 512708169 404277613 69688043 399685592 858106589 920292683 415201904 936484407 271666938 18840633 870984885 942724608 981628361 658653667 328647788 940624685 965859659 125647734 720736760 541518454 269630600 262751559 411976630 419749015 83466769 825410527 290305290 643195518 536273193 446590913 35985359 224331532 237000580 432501262 43198728 390634511 546573918 1265336 67065365 645994825 62376949 399393094 356023036 103446035 89460272 282018999 381079798 548948959 348544018 649143292 214783474 744680256 131263297 916136647 723306658 233317178 517310335 21475687 471020032 933394530 126990124 887873888 245439628 695137371 992011461 850604072 481809354 201823763 232238546 400105830 477792764 539103208 971496079 874123595 976293321 576007269 171365024 465974592 952377686 775073736 329199576 394832515 8923898 754903684 103762440 767899612 879090317 387965712 132209464 757438016 90310686 999409818 440458862 941250173 7832640 583131312 122423509 223495130 949976504 449270222 549656155 680015150 110737430 517113167 194306588 792678863 90519347 911288939 39386598 752079516 51204207 615962584 557801516 32293139 23848516 111852677 644090959 442959580 738409740 327963748 175163942 439662670 513728110 97721665 965650578 80412582 204876185 180451660 912168845 150268618 288120605 530595469 725863775 331070978 720479611 494070682 912781874 302184734 327269364 655337701 54860805 898005050 672304227 541412637 763356145 681333269 100100154 60889658 458743703 975353474 451189750 467229691 171764303 381801310 251683619 461705790 905074095 132407532 31955685 108430419 938133452 695513277 753535218 881519520 114779917 931183815 44994829 351330879 40405927 998697821 569308694 820776591 600476157 885941195 108732938 387658830 169801921 460422712 507361572 849885693 806515729 344252641 96987911 390595850 643414735 164794838 318805607 478620405 745752631 200311567 907400581 361461320 677664654 12491172 719024191 862388120 781064032 416700566 571021747 261019083 379648518 11479019 555538815 757080119 358016145 474137269 467823652 934973744 814567319 906661471 59190557 33412831 458650804 226119454 266514852 526177181 656996721 978123340 47081903 719652592 566119828 345563631 227171449 808893689 277305923 1985921 363401021 150391821 808569300 985028546 770146622 430677418 146155880 332017935 709162267 299688433 810784725 473259468 266912402 777990724 633790392 574172665 539238433 397733085 546038451 999116260 62154229 917872700 183807531 974028942 686002831 487884008 372092032 194406105 585292352 192639029 429083760 27790776 5695328 697062441 412266374 645512919 686247857 352688875 863865209 176603288 186742324 631740941 566028708 257841482 684633347 465494691 107664252 421998559 447147175 545414302 493364038 472938581 216883347 247657642 682622529 285188843 813928998 304906561 192251519 714148075 90694373 781147400 646079794 474949119 721268687 870478066 66351178 222909511 581770542 713022401 920094344 527549610 824344644 710878902 21149595 562954136 170490754 672163599 877165834 711412801 466478018 608442328 214718851 653394204 817044435 531597786 471588445 792233239 277628158 273456683 833663211 361849921 457525133 536005892 474290522 666832124 50142181 165105207 865966368 696065019 192431268 554215610 184516114 553045293 881385378 558743090 525179056 895096884 682294232 546388724 600081256 292822736 712924869 977584184 730221004 949517190 954673295 4578187 120943508 101719216 491161878 48283769 253562839 750431673 544221457 324828517 888376640 487362208 668741955 395260135 278253160 61871160 952544061 255317503 339960563 695682824 834529354 117008464 95528563 126813828 60625653 853940420 413021004 668439438 345908242 761595528 446315273 630899296 86713882 220308369 713926971 219762720 479416635 547643670 437931511 342116553 791531470 584814893 85559789 914257719 768777631 450045249 735791356 471116872 447411856 319626070 950733922 737018548 866936853 912757108 564250644 970913208 42914504 116077729 864610210 865086354 550579430 89311617 547016580 188971283 270407273 645289514 920392801 642374882 104372795 586898352 391580755 870742996 179971662 163491363 348902438 875601406 263240232 25241140 388384013 473858786 149237446 18680923 217239311 528175962 340312427 201041305 811888471 443743695 503334701 967693149 855412271 958874037 19441778 983937437 83582218 797136136 867356450 836980931 460469249 897184854 222579186 112990535 366527307 82569739 585694674 505994902 257788192 53277600 868084148 650554330 874626174 288766238 690830265 668419805 144629957 900135015 749061520 598633253 150228350 877116177 851211504 820826759 547430878 758020565 422706469 110826285 495893851 94453833 176713120 866242972 346042690 887087805 744843927 15440583 622587265 691221717 505637772 967842801 875591188 852168833 528903151 738332208 366614927 154420695 413754263 594175027 57013699 707038132 225163962 736817008 717021303 493839390 808663885 369573962 290098947 564355234 644090281 511178847 124323850 9490650 715502009 932737803 402781967 163271081 91015721 202133488 968712962 42665417 70109887 618989631 939381588 869688457 845670452 988608274 851765856 532074884 912246848 218598053 926206078 107591191 990007179 13855609 137744859 568905471 961453620 278915017 709212811 521713170 329636737 738685673 411212131 254744310 459182629 462068458 415291248 455285334 519325513 854229776 567069183 867330523 306527277 732793589 304388434 812439738 652330188 149675778 406117865 240143409 143044656 155064126 728951720 666246892 663972302 95180549 788868302 636936291 30280055 599496455 989716624 148511376 128397983 524961553 309094545 439278397 413257804 197448158 515806252 587168475 792258612 530946643 899906113 603179181 540123316 182939507 260820869 987865460 325077485 663636708 829284940 452045951 729176628 284068618 300933697 926363503 282990751 392658639 151467292 957073950 71583360 64639392 167180797 142490971 216348680 59987580 983350277 842288550 335304070 283087452 166264803 981283132 585044814 297303934 416505542 345685658 760684921 385370886 556272523 36928701 976627127 898130355 860305958 346805686 923371149 961792857 560314292 620917271 869876886 291366981 669230705 856945453 804804060 542302719 415131319 579077350 113099113 942846460 983381980 671274109 844298955 768710882 97072904 711149987 534243303 966779033 232810641 573265425 76309059 591542372 29654875 227631112 394450372 825726552 152807744 845838610 814303661 866824323 70742717 887726636 935344257 631217804 347268903 996497746 625811308 42096909 290378952 51669229 807551564 837092385 46012896 909405088 141434868 428367969 157507459 916905760 462448421 511179962 39031152 366450236 414343678 381903064 520246831 389384594 967954700 764243734 176964072 783611307 155925181 863320248 799091523 644774831 659382496 690601093 191652068 674249891 336227456 504932156 18658810 339292368 161320378 864481799 880920134 530219892 510024683 750463427 812441071 934272297 636545855 578824912 556481073 228364046 419797811 462459576 500214612 6622540 829622198 587229387 233801476 330994196 553760304 200622887 128179007 913156773 981324353 131221983 834548606 462848547 498418503 610739816 30234885 267856519 4735410 14029861 31296087 60061867 719891407 874322578 910001880 907000899 405831389 274181989 790644973 201309318 131387009 551204934 452708592 930344470 99978485 512566105 769929909 756789633 937295832 917834297 747923284 135430605 446309185 254765896 898136865 181908848 531937217 574267539 594673888 548060298 812945484 953002230 681387317 643173961 955437957 877377755 387399497 518958034 195975159 822824715 685524792 512204428 221458160 490848050 268327085 461662762 231935516 302170615 944888384 485563541 347118242 149977237 951124027 276421090 43939204 430694473 930590996 87699056 260920206 238603749 764132459 628735974 783013253 722554564 348426510 894946991 807973736 661222046 254106810 196309145 679080010 833312582 176206684 821633949 669614141 589049587 933045166 668959457 523665267 520094946 987846143 4446544 283677370 230664682 287897284 188502299 367830107 644151208 488261402 941936404 473954580 990048636 156230471 162131241 771222460 508051175 462804808 715305396 225370372 265011220 320382925 182032135 877184713 823559363 250233467 381358657 196308113 261929944 28969190 622640519 690432653 431059653 69765223 362677178 190872959 177586166 173134938 336398689 238727096 745255648 583847392 897526820 191271584 428106415 917771088 784603190 135010169 506175444 850994600 832385840 564812638 423365115 519250102 470169509 677663382 881833729 995396274 390900323 564698304 219687103 169189728 266905025 94859684 931172086 643249384 120737850 363883506 623669416 253829950 323075357 183719492 780487460 14398496 343412731 58242810 645926022 64558783 193344248 972571255 757882312 190905739 592492860 794592881 408241310 693259751 925993178 253808680 156252009 241181168 603684052 983622090 917664081 521276873 228516777 606175774 281739530 87544190 129956569 488620343 777238192 769149251 385773223 861647717 145751825 639775335 159855106 577088462 189728318 680402574 409543370 947166645 658969554 835328271 609050400 650690480 645977255 423328174 407397893 282803201 34979831 451534487 346245409 289164553 388393979 541796078 569527955 6246996 602986564 732564797 754564910 202537666 553159039 895778597 878617080 351236201 399976760 622702607 896720641 594149914 619260835 572457196 895926570 354882295 340257763 949599064 238319563 679060893 999260175 974784487 571904527 62750573 922719520 682866401 304023700 803490392 764036861 3005996 128284580 486610331 13723164 86432938 225517837 820897405 593180717 240671578 384906229 356537123 371882917 237152162 763637489 188901018 381740393 491207779 86131233 897549826 704933977 357837014 468185314 257530993 87802538 425332404 401885042 913116454 396796021 53177876 345967243 118144239 353085015 734046121 749976554 997000814 325278024 368440667 373080232 449215487 761500100 110483624 368309072 839348753 689516194 944805259 412631678 939270332 126849205 707490784 269206178 315337080 614964898 92015380 301994507 557991192 654784516 503603919 696654064 536585697 355023423 157694799 648787024 233160580 421230225 384652684 849934878 978307304 251494803 695721617 438618646 476874786 881966910 481385964 971721910 144246769 267631144 831615454 216672789 638386744 246917816 987355507 499788581 277512617 58280183 215103413 932312406 210870888 335927710 288043806 198274014 850718152 847394078 563739549 340683021 871767600 989766354 134850277 731338362 813684437 571658984 642770685 119055158 268800446 538931796 192353340 601069486 14279722 291249476 371131671 374763511 197762521 68177248 144162964 674295591 797497141 278955072 221083737 349337915 150846381 526821018 925008926 710131699 592956045 922694607 326999763 638809360 403384155 66446292 763908267 437783391 911284536 486703754 439665861 203429842 858987869 477595038 526234127 713669348 748230429 317125196 505004997 110304359 124751198 951857842 685710667 360755291 379141799 656235675 547454375 95224318 902523938 97227886 370246333 891635674 864800980 227929126 931012765 379561083 20280948 75183278 609717252 916071505 800519957 932560988 130581108 375134646 646030466 588427933 479513 282095466 765174613 132593223 324193274 780251427 511779140 822305829 626589408 326534981 187608592 533393833 10491151 580865008 233625797 115056366 356797817 526336639 688499488 661008146 192466373 214500251 330063689 853318265 264921921 247495880 240723934 454048871 409012319 384287661 63651856 458882663 611613035 364496396 247431711 631570042 54926921 578444344 361159554 467885917 439523924 628756987 456816154 821011099 368762236 987208630 966309727 887765061 16420087 206370776 328961077 388132623 96924868 633622406 353930878 581960981 640160905 917015847 864835733 924017187 435894312 966630722 710010983 575230086 845636152 628932902 613461324 109631335 523576763 273134624 793852171 583282691 709581593 488487239 173959248 75570079 795096268 95965140 23751179 176903373 492663824 945727209 44465311 940875548 481472202 557337099 224846859 433058446 431783780 491297711 279026537 331677442 599209296 830851178 692238816 358394326 728141318 418419930 532224439 233426166 157575199 318219952 990885811 223058111 273355750 887561426 952325210 503346211 629958828 961284498 78888332 383331795 930664807 442936163 733190516 679665611 221764554 628408118 129719348 350270547 998555027 87134156 568651474 480356838 638588125 493451100 472645122 792916639 804779984 484795790 948394629 177626286 312057583 805043119 269510140 84927250 694152260 646263080 909503571 506199201 200395531 176970985 59805884 984132273 966418831 488461779 119952747 600863653 721807035 274930242 722260603 558652088 359826674 357049705 61015353 966613633 393989815 315646522 872664729 964951766 661782290 22756782 985527589 618423447 192173079 922080831 705015609 682501880 540836102 463114126 549845853 900163744 128044837 756976324 810959375 565979349 316547225 263952629 670670806 241263782 33751135 370345368 901141254 559179653 103671752 551649457 216277052 13837239 767859041 495759545 668869600 952592990 10818863 880957014 821252171 577098713 624680451 63081927 222315788 446552614 687241199 964678078 973987894 941946176 593820460 719974167 633145488 502031936 103259311 370799458 713910963 517421464 556242837 379698475 857742252 405962549 563660724 564903200 35101375 898770964 351778711 518200169 825874350 598031361 933816137 25539442 293825888 669133684 248324294 125894592 231086307 568226141 472619244 588077711 793281353 447180137 537893956 720624465 235509109 357327373 78965423 491386874 900321837 41970777 408392620 136291463 926803976 125903417 217923184 236004949 746158742 503120263 292918075 960342419 195730972 726407596 702417956 449106129 332095919 79213369 347792250 351285685 629507228 32355320 955670555 753871372 705553615 422415994 229658271 231002970 789648 374861083 175675233 924278651 600532257 351618388 838337307 317029016 413325473 99391655 864354310 561924650 350786843 443818977 573440439 427445465 280321695 972577623 881790653 715902945 422561384 728654955 94022814 154833472 276447141 922000021 345091021 822692651 645211239 623663524 770951927 897025771 858857146 754254480 377472059 688062987 159050371 15946761 958100966 360037093 22997657 396305263 507270295 469987692 778628931 275056995 306754355 968028972 826776535 492919725 219329213 554371480 967454161 965794329 660210 701867216 88159468 467872274 802711924 274661554 587691093 588252151 378255813 855945017 680865247 814995486 47639080 857698525 893603139 440489418 585710935 156379928 175822662 346843847 916905154 589323492 662680930 815087773 721766037 86592704 344987452 882421784 828051103 307254217 875154827 849562046 544517689 717506085 334192307 437646551 718848066 668771480 710803141 973905448 172216312 938389951 706754145 972230311 137757173 412118784 260750829 328531148 807934517 445520330 199308144 254170362 915792482 853031817 660024861 744792309 983523094 204456279 787948541 295102439 419861381 392500963 29887409 636611890 799809320 883661996 382536779 833681247 56141413 441587837 512564080 303836485 782674444 797701125 889678820 460137441 818076643 185783335 519190153 670943947 545323638 504024189 970790637 779206459 227290219 197362386 259863764 210726753 398501843 605438242 856882747 664243676 17688433 561377237 705549434 890002955 136754794 429121451 717089286 38217538 884594722 420459937 543791465 30109080 128744402 660959978 260237872 656095284 689061953 517788259 354541998 797972883 345991448 359977127 756267804 15132092 120984689 862546210 298796131 481300991 688720395 537420556 537815874 559074350 349787476 360853665 398874878 633289328 614914401 969477611 239962457 273861579 415947012 309227494 337358744 927328858 215517982 234396944 378417953 331070272 191848923 172805099 674109822 323046760 942821438 66644419 894360820 55452607 696265993 600552595 621209223 877181704 186444598 600557161 373648862 720362619 653655276 37571046 971798173 317249731 113239332 649989272 936314610 747013959 296220437 877411034 895406652 487532186 917940838 787481107 326997029 479031269 164448073 539363937 147872709 693783407 386936915 485195962 239058497 161648746 315807572 588662363 176218548 391446116 133768754 441550190 185723864 105435741 58012027 882162231 777013908 35865807 129175941 928515167 148125886 129508860 562623665 117187801 898333284 287758325 929546812 125117467 953715996 918449534 65968120 26354017 440686584 603384558 422836693 540052240 187524441 497565406 704316141 864593583 958274024 456159008 11582489 573302310 220771324 530946139 427424759 731507205 173313632 787952266 175181188 632249871 316839945 737413292 53779400 756960498 161325633 877989432 953197502 129375106 669513839 353322021 743660696 349064847 455626300 717716605 684091089 816069647 979694212 174894606 245067938 569607076 954146052 886949392 566417324 21313245 893343003 806807752 890910371 18715104 236062270 383031543 521764357 876650233 993570920 471900945 346374892 335851718 199175763 210172003 789509827 838853296 220562712 720118514 679478693 773462338 953346305 663060683 594674615 51725572 345572540 378792007 978690780 811358051 702002547 772159770 808619295 310484914 654356108 579266203 657005778 44475143 446026881 916449105 68772940 753024899 503194396 223008328 54306846 968083559 403427503 675005964 258426297 579937052 262639376 363996298 197970000 953397598 632687352 938678510 996706728 242466036 397422465 44307844 199795519 387991004 84386333 606386283 321317816 909367898 753380325 421842112 548342670 180088461 129868514 47420383 360543685 730509305 431052398 360265875 879629108 357511604 483528132 517090517 921691417 19622453 649411162 110156690 300748453 288116541 867153180 351262822 904079425 38875499 521213723 514157562 985457231 337895600 729984805 377890674 12179646 835904933 975814315 341909265 132271885 168211294 64866551 475372680 858407561 307296869 652752671 936244430 35839169 779257005 638204374 93734776 950227204 52475316 100987266 21451095 689536672 954581589 234731121 310159315 550037042 178223049 50742800 463297788 289403697 180460698 436390388 35495369 290120741 570959727 920387911 942186585 620355600 211384741 918353620 752773227 610470710 970321033 547568276 462131295 61642559 550706636 547537478 282936359 794229445 139578090 905521311 303231064 256370674 917773861 623572297 11147466 824167666 880264363 339904727 882695368 975105944 617403888 300049956 157924598 579853148 605660490 347035308 846934839 785027874 726231609 881953137 200650231 952665467 543154523 368224042 897690566 766302468 463463710 714710217 702579230 52270180 53597708 277167692 884964354 414235904 318963709 71449426 893852622 476554020 951641864 843803408 335670153 936957843 33034035 938470523 203901544 864886723 306109242 324537073 766557767 231146118 135824011 35721748 860167384 235855194 940789949 705213004 441577849 221805127 200601351 923877905 763188330 918959990 405674496 233116863 895041962 997688984 482489256 128689934 808075059 100148561 100377942 692335366 983705870 576424474 792833326 47158219 562868229 947372655 799104475 875759039 949120526 394938453 840830531 945009771 643633377 214170747 878053310 133640784 582849528 745208295 523338999 153288312 441489069 351509528 784217762 547746257 662580883 264702684 55243878 505977577 928750392 845855870 735447064 582286408 917126880 958688962 609862119 204476674 691311141 346275665 365170030 258692832 168670451 708483619 380566585 654684142 176150382 172133291 116770081 958733030 119696357 892116234 545544398 620269004 550209785 64105541 540727172 400323864 51781686 471495016 791592779 915249402 317437403 55786514 468109022 34603350 242473456 681020238 715972836 648149365 294565824 634343824 452913372 694988410 262193404 799679427 308898574 272262247 924665341 303679043 999919104 795601191 186428291 255580694 827305771 909302833 609213291 884954170 380393882 162857320 556091666 793835021 997476884 266444167 735492029 34930318 113480171 732071832 711040605 276366586 657615120 603885029 674515484 305040641 438454397 808458662 737213060 627561498 644781007 528075765 930369111 83843657 887996638 422701673 87026346 715131050 327368683 251781815 557251715 497343322 705600349 777490072 734161167 408112336 430761647 383234581 120108332 529136798 498164812 640043861 59390848 539235548 401373479 911148845 911102879 160938270 311105509 730326350 508743365 790925883 878338990 409573226 714830716 773121727 399104898 414368799 595348496 57537833 573131425 305889718 588056854 233901741 48007737 428195915 140611194 762656680 338453111 602674105 460847206 314894379 846364479 723404375 571788650 549779102 448778470 85485262 841918035 801502577 831882129 190758976 208602454 256214487 325896331 924185869 26701190 669048679 805764658 43403523 446201313 947098726 240662744 258464689 348050325 235352407 750419037 254555240 59336510 331728224 5301396 944088866 483611224 923498118 261560531 78576601 796087376 160298133 440805500 532723479 217302459 132384417 595158057 688839794 715891190 252306342 399746898 207887329 756761027 948449498 781779862 284982697 629536279 862618097 528242065 138154564 534468874 989065472 288304908 418787803 306864995 338380481 688513884 623073960 897455028 918254258 424248971 417096749 202432136 329555202 934222852 454936452 259868231 415134081 495754983 362423512 615298134 729296909 93927755 329339451 536463763 309531699 188535825 607763406 4149484 21897563 445804371 571429834 127281834 157296239 255859099 882878992 468997577 325500221 871829431 279048715 450435625 725302864 672522803 810988627 650229756 998766015 632282028 340478765 385080496 607587603 296315050 860018361 521588994 656196784 6137011 963834278 451825383 686075784 517303735 609953550 474659339 747832338 495993625 111733052 546830392 84178000 852103158 627000798 973169170 157978737 647265368 613816516 123900790 494451218 911554842 231831272 811221439 721286634 390701138 846172855 975545335 322133938 621632181 594962766 313731048 178681526 55773403 191077822 91245929 648567172 26261187 426561972 131357849 350926209 576361422 177249357 256571731 101217038 219328273 677613784 960215972 951531333 79745498 39195564 124786106 207415038 456674012 637837026 645542307 322872342 157926224 1867651 694633668 191993840 637081181 36535506 258489283 287803321 651338491 744781195 983637728 31815270 135354406 126722443 606568276 119308118 740366159 355882647 560463886 16244650 603566310 979376528 12060003 47875509 572243992 72553870 717872633 580181383 936806031 178171534 716102770 212988163 480018273 288772125 904547927 117390085 264081632 446552781 913133571 444873516 964773701 844154654 681159444 463529027 694327499 405143443 308701713 557917584 418974956 585041750 983196975 916523012 236803069 93841215 835007533 207921772 629641999 705145002 526794994 7056522 226329867 3727306 670172550 494802961 395171249 492268495 108591413 532845924 447456214 171680648 985066270 268377487 701896549 773484995 111937069 721882894 768488795 603420559 420867903 603033248 602606237 18350935 93574629 50371848 426723376 366311421 793532922 966754089 679696522 514485230 17237145 514357074 229218550 401870073 985990363 979129046 106502695 64793231 675145553 316711291 653531494 389290023 473782277 610053848 534870019 283552979 564991150 935408676 812040456 635135337 31766204 491087628 374862151 896190278 817601949 353145278 47464459 334499223 406657449 214212645 60583858 849656636 907323961 435785822 286914238 148773716 985114630 870961631 862569268 280259669 216918910 240967632 208068125 93350009 242773387 605473372 290922744 346092747 871633496 726266080 366625687 113646307 257812549 441436102 923123244 343639923 58152706 756192411 542964486 748531162 837228680 836892138 243239746 147511832 894040398 929640026 559683377 59325593 255236568 461530316 248632231 136960835 96785623 885250917 381484524 107511478 795390270 409178143 179307512 749234653 340143974 632366254 10659561 532479941 973772871 861595782 330071972 469271004 446008624 329189549 14175619 87362194 359772878 184709052 229789525 325693706 375543495 16369221 888260198 312556035 100111821 155492746 591027273 602087720 529235240 253065013 445690029 739559823 287831070 94888744 215390139 39599999 232064497 179739681 830549994 504520857 49213539 278264218 420287299 51963788 447162849 560453756 233643814 336162215 780827845 31636755 214886620 790361087 453755478 859678461 720131260 783542465 8710772 712918110 106678426 222183555 923990565 856813394 643836065 986105237 611527845 967015601 64854101 260064078 489000558 358254683 373105067 50466169 60404647 281209597 613478734 920050877 305477026 42836368 514483086 748032552 73917034 838915853 517358420 435009188 371147412 462890890 907822318 894554997 291762837 543213845 113529725 981816698 760377514 735512113 735739430 939275753 364199762 673505185 148879227 474884137 426210365 783929841 690768897 383523327 324750097 477143021 675439456 333003971 245333356 892718771 676387121 645788926 334506685 932086282 76085257 305790607 9028709 860298466 78183726 347667548 708782055 834330164 681421626 656626747 352550272 583599526 42754528 770529407 596214817 133066655 912172392 64199642 474732134 304844022 624438158 371027060 752577782 329940965 976709156 654571726 103012446 510982622 369046626 279279936 326153860 315567076 464233745 898506146 402355080 726943229 188462936 978351161 697024211 441829128 42060814 155773365 339337328 203377367 139195074 556822438 894238200 930791120 545346822 292001999 160863148 812412228 778301079 518676204 663666881 279620204 757885725 706184433 859502220 8830543 993460909 748576933 502042037 838857150 135252442 676207237 718552149 991201773 68208669 174060916 43758383 614975322 102559009 5315537 130657668 584271495 26043668 780878507 981306679 808162564 981726275 166563369 457710285 808159334 848525204 997985873 105567645 588642236 743762110 436180035 397979759 826963898 243987236 803773635 573422656 222730678 117588974 255634934 755404024 406702747 853596216 315819694 410678721 575591838 387735125 625033744 508190027 550984590 970440530 536498982 594000790 990957830 679271561 572981333 765412100 274008144 633722055 3918276 648435693 544762805 451383961 389617853 3430249 924222667 718884622 55319228 574885970 882596420 225591574 566496461 126849229 506080496 32086773 702738808 301777278 683864093 421948784 323023472 469143606 943433042 396125631 358319360 463446720 271273278 394586756 23611907 343517549 143094882 995588368 54249281 399396847 388839709 521936743 837111059 171020195 369074706 379252977 286083891 508710206 494685999 277863999 479645983 223509852 258238931 497756883 898759478 122060358 959037439 898745551 178316855 737577228 492736044 911601559 685546335 515348146 697936149 559129328 553692972 104263074 252860690 663593747 112989506 527200865 574002864 21614925 611907692 100011843 834261751 353941829 891781630 63043851 33843377 613193692 85164792 382382963 709742608 545740673 434943940 972049853 589493417 550405673 744558691 2746660 853682345 58447494 132914008 528193362 65818969 987915654 111154162 625601602 26042229 716873978 946530709 370894361 638172968 150117277 116744874 686003050 133690753 569979021 353165623 388767116 781452451 694643812 449433125 726132344 239895403 479797749 236269971 553612004 563305528 117588714 449700742 257872767 768548044 828874583 378228384 169895928 18287705 597647590 806686459 188355222 259144645 481747300 839405368 440365577 245710386 518139414 492788255 313739481 747033324 388648593 197987342 785213706 988424432 388357955 888088158 122905216 208643405 166946103 69373008 260052681 651133399 395721275 598511441 144688906 122442709 583075981 486212316 232201828 416699395 957980633 325934976 98819462 985943399 353200424 256910039 887812229 131593765 641143176 707577851 630653579 406343910 810891613 232227908 292455225 471431088 811746593 754741866 514416906 358894288 246054553 458214658 549420101 749147593 793946237 979553040 545146650 120822887 416704104 184462701 421135742 216853277 706481948 302422156 844766018 493752071 992639227 586473840 384701823 918930498 199668058 997977137 7569959 68605123 948237424 932956120 795711001 500485242 188432877 423396061 279678917 454572228 42434319 61883545 918184782 508681980 237088179 953078706 866323597 227147669 212497664 582251592 756164791 754364445 726344797 966538143 986310040 113530100 239876994 461236118 296175514 452476149 777555312 708236610 554977215 79269911 222885636 529194361 372126626 663573337 52358900 72484942 751992155 216924013 922029502 272940544 351783663 293080260 748942872 658860276 700540783 294491814 820853805 992595456 879948078 696139604 688418859 3258876 765654633 256974334 449760322 65459127 281578093 980153804 632352998 253646016 331864262 420213071 878172167 276992464 188186420 518115429 574106735 342194316 576607800 584055712 317570906 186803643 385012663 262641017 642654211 177791793 190009778 375646765 280305821 771681284 18639851 638850413 245470806 235935634 292113250 47732731 859992976 665169595 400128182 961176375 732836709 929379085 919519837 817362195 390698728 974108017 443566115 585938593 91652200 441590893 235609640 607588612 655594130 396125004 430516610 572173967 747142695 43555414 822927282 149971393 424250912 716148461 43398171 11626081 546618722 883748433 850754365 61258865 766301514 831510470 681949814 663670046 577334256 6848019 730816582 478644417 396451396 751292044 498430693 762398995 465630931 209011494 567795521 174495071 218212264 862216822 315259253 566266988 578444785 98281119 136390780 546404735 502269022 621225213 665097745 428858234 513991300 656562478 390387853 329809706 595909364 39270290 349948906 231747626 36195593 195431210 885739194 937114050 957129234 239793377 188553386 927561814 437104485 134389405 630408405 568605890 285640687 882458745 771985407 811693960 314198516 491927476 999230647 737982353 525602340 441645760 696811795 437000366 578032967 298049702 723624563 194973332 822806539 754034378 637091418 70254560 822311448 628997891 105316589 789634506 998555602 989954386 319485922 887924074 379026680 731123605 737924956 853205033 64211419 558075296 442443143 842047621 453399883 671661843 432737250 314988412 698239673 997135647 828741569 976482204 560204465 19786305 17582176 218369496 798665775 188605930 886347946 558188641 983271413 947034679 88956153 840402582 416810676 136408408 731413200 653408796 517602725 798331882 596777956 778738013 455693190 495903041 681781017 941406906 385362434 488958790 86339789 665518481 423137619 857396290 133324925 334589699 716387074 583429060 215243979 152880217 299544786 827294198 665117388 73621146 214487134 21237562 783624580 592232046 789510691 365538234 846527299 15859079 251970628 170868393 532666636 472654265 485348349 531307424 375231227 361471557 692209054 945594376 58795215 875808645 369949955 336648976 475380135 814460959 156443365 942347691 771592434 26952212 404127766 769914017 799182503 881962321 60032310 365033955 704275116 616705172 560725653 160847528 654007961 215568301 771516867 613797200 886145258 512544769 598309040 211608376 844687634 232055050 817487796 614320594 706459075 473398201 252094682 219481889 635972821 594753845 187040966 229031150 864485726 707332326 708606213 423788903 510201461 947138 445990204 362672916 399504937 222784996 499479635 467961207 429794492 107510192 517810425 291539694 690769650 258060589 86520949 674272934 829552262 896174396 929527961 517986384 587345298 347265726 850926930 186390306 362502023 808260411 272470339 256296452 112273976 804809537 317357148 496494228 3547661 786266378 123852395 593785260 872104726 951182838 885317795 76701278 994975407 8375080 68439142 553540811 897642614 33103630 893962787 203645435 500326392 999542711 152922186 680043388 919909618 949335457 878010823 270159714 173995479 756716981 61912427 598404837 230302443 960326884 190698469 241741780 524011482 631201807 811998026 710872435 708361507 193295356 670359549 798279752 184125286 555146625 26505755 362934972 435841203 219808623 232328456 469580290 857904251 547944761 934052959 298329340 902607547 708471744 181853982 584289942 351180376 69904478 256596162 209734215 13959036 51985263 599249250 790503073 104347092 828021767 730616367 979284658 404659834 871049896 217676898 796174143 269282591 913515998 462241016 540088810 494859713 573609570 566808036 696572010 178880706 22808383 284790444 645740873 30915752 287518229 424735636 585633696 879142395 954008403 608237630 482210102 736450517 532778763 911915489 37434961 218808761 777668558 551426798 887216322 496210436 958887817 691903120 168126141 975905196 17121869 148369550 671384267 691706176 748177909 347479897 801630816 913430981 490463955 595105299 59039727 431861489 640927884 258158078 109577247 687099987 449474102 33330889 474722849 251754347 874849650 191537248 358938432 634765385 337593112 650086539 874728154 681112164 279471179 167692042 332980140 17588199 778973293 204838912 789301470 763730104 886248818 594689919 343992784 222895933 497837648 983660994 831723765 329170051 442856060 739127858 451642971 246668157 618802425 553311243 34787146 943662642 347012379 371897104 213100510 517382587 295972214 339729255 1371731 478502158 834692652 886361289 515853375 418720740 533750229 666670271 654152409 263297350 481618702 521422320 53470269 648175725 955720945 56722790 844570417 937347771 93198342 535763715 722790584 657785960 137908053 448613719 503398445 707630867 972068364 761403576 372937833 525002483 887024463 693679167 58025310 140404784 881297341 881008702 554229296 723449724 635647548 55339903 6816439 80305914 50943510 667751238 54734474 268994810 244774491 890960426 241610599 507719508 101752573 372755779 399377315 268192999 834561839 196341327 527809261 162355959 717803870 8785541 528031282 914294892 477130031 545819348 330778288 287147111 608456935 248059238 466952229 652068492 986214076 637621130 176053015 778203529 468382193 632148951 841396156 806301222 735389273 112958099 411680388 317077541 158409827 746492694 265803148 750298932 665657160 106806945 320569980 486902530 827108911 705965669 687622908 396089499 708935050 485740323 261478616 115159301 719631310 734822606 755044745 871566036 876074946 350799009 980958668 907982428 658208225 837698680 142741954 832653188 190823106 176720657 896451138 944281354 130262697 360403907 115306457 971696666 164611062 163510994 804819592 58295631 388418459 367858245 619153704 915110530 162598349 377065397 563551872 904350405 821376457 128996910 943319107 142513623 263152733 30264968 603087103 504999510 900744117 305385362 842833059 649383535 256233998 518337040 315111029 464537611 234281972 311027233 649962499 158558913 834134305 267980144 439269207 357181092 990934440 471600143 157837474 804098561 133127022 344424802 910429422 811898447 936818864 423823902 461897039 474304751 72633476 138960631 168220453 681314302 956864418 871142009 474044015 169724905 300329274 540322197 417296854 450838329 895906152 179346077 284103062 444898111 561866164 464567647 809977676 30975609 528589098 597467559 17785892 951475793 474346703 75601324 233704169 742181082 112001553 719805791 417016798 563710799 751636754 496254305 236154077 213122831 517149147 128765089 935278244 322082670 685263523 188013165 630272921 317545759 305212031 986465600 44647107 221655777 94373426 302453076 682444983 27443327 463142552 405103516 86418312 716075535 788938516 356572630 115776743 979484999 848369888 620791146 13230904 358603854 246482743 975888453 115213173 299357746 667467291 767862506 276981894 125090145 7966880 15836143 970691310 53050678 451947053 211151409 930103769 816848976 705218859 884916908 643104576 692359557 134534126 373231804 69570508 950181415 795396654 631916094 106840389 711159200 424980145 85044555 40677622 638326063 434650772 581732407 918990627 936865390 491621297 344896118 967921975 147524344 978291689 580484827 434535498 130178200 192297754 687845847 740301550 516946835 375151512 737674453 683179830 195062953 717064075 357545809 12871540 883682090 388693143 312677410 285727210 260057195 469087235 843720924 891890904 457432918 118925450 507199316 470517675 401123038 161535023 397329786 547442674 164513763 82297895 143235287 729126258 425443659 537555796 809788651 945892499 229291654 774696561 124438821 297598295 891919247 4177842 339247529 640860891 719800696 201918742 651036943 424831365 346821837 172925907 856751986 324930798 313397999 293929454 92714808 966409181 984544760 756288563 262504730 783487330 958771189 297573661 304093631 407140722 631212028 843077950 44944247 175009235 656444637 831783378 407512233 647311444 706511194 844758434 33857111 911312727 181469286 79873720 468978252 562479434 770184146 465343415 766391146 361769172 415429729 948436358 852260869 889523000 530870172 64201839 907923542 764814190 815411528 570130325 203616472 829285869 97543846 550956127 899178880 255701003 501259769 596883440 703097383 997212 749000924 435551110 334344849 248314625 314064500 823199552 591526338 944930052 902336726 32634368 989691874 529904397 644686226 168725053 57884367 141096449 873588577 587669328 936446676 540011134 810563623 345516567 150292212 290834952 955929358 58648141 108226639 606699716 865985383 605684288 882526341 922582536 61403335 179569117 774618232 713159227 231571575 831152716 407237534 68036068 607488815 614367430 479076002 819907522 523252470 128283914 441564835 810628000 472548456 516667558 13963858 414629402 315014540 483660799 241419915 808820786 60922664 45684912 398546600 912815661 687415550 245943386 166459801 537889174 983425860 528249474 205233408 372858262 544715123 117854720 393382423 549580098 945113496 692558875 25174177 400181857 378718693 527525602 909998377 339615671 426307718 736862665 840731675 499140547 726111723 844168521 619113728 909209586 694783491 328018096 364206187 555046826 125639885 302584147 702410532 135768341 870441180 871371439 557716506 833919233 275565890 433767891 653578510 88545937 247155959 895714209 84000088 886694091 349225174 995314099 894809485 507293389 951132807 98748837 855707829 338518815 469282857 134022321 8326958 30658958 842672183 715158118 165616587 807744598 965436886 481989391 811187904 352579714 311876606 203744818 116482482 783329169 478293873 196563990 516356369 127829769 812015759 500973247 716563261 748710967 769762584 528058570 454702062 865900504 645229686 397628995 734419148 916108422 386232542 100676584 240038712 910817021 46736446 582545713 143792174 292932102 682677058 97909009 754971994 156231260 443747924 731593488 580043317 562502941 769719650 700728784 642517397 86355744 20239343 444995446 506109906 747045763 342430953 209293569 645447159 926551930 833105553 151972745 201333264 676302217 940929117 180168548 891669544 268291434 233551015 724866519 250085928 972791816 480363669 545932175 540441509 451790167 755482554 949016300 101619641 153443196 705905754 963917333 463612338 139069152 104321112 5626101 863712782 777542271 315293634 659823840 998475860 962719378 674751137 774337626 771963187 82618302 698209240 2806866 486069311 518986051 629598556 242057956 488463151 802118243 465888928 342921396 391290378 479915482 250918571 717474705 956308169 323450324 327661542 863998486 546165992 676948140 924239669 716831830 801678138 186197526 668777242 100172362 627544152 936781413 387144330 938221218 140175873 609037831 329239347 989215401 817722694 714284112 118946228 918066253 213570665 491377869 98204997 991214850 393418707 478776726 725914646 245592917 753096760 104961427 479694835 510566447 203036604 779030893 420664602 600965472 940940662 793137596 980849283 350122395 928407210 275761589 778314321 975248768 587265297 959600315 474347528 686818586 548302957 893806639 438904658 788830741 241934310 858590549 365178952 594301114 814247039 707038647 741884308 614571726 609652649 540050629 619998684 567721128 18411184 227932421 696762200 345940807 985668454 126642451 2094452 972563237 938469572 202624869 386532978 496233320 958371262 54982694 407428445 375926069 768610412 10890028 732375272 582424344 459160374 232146585 861131906 878380914 871292443 889440592 862412740 27733040 321470384 264839518 909121961 232358507 20668296 88287383 822002989 495087038 401874908 995404390 919729415 591648510 894407563 107841266 585141922 461754596 604271219 680949646 930777996 87715211 769235570 50046655 186513353 118639769 296307314 981873710 580246804 732466676 141319289 609595906 817115814 502552601 172202181 68620416 944064843 582213931 769002882 529240579 636737799 65439964 344101668 290203247 630017505 379731698 503633281 509054658 579742964 396215732 521542522 822074244 515718382 22400913 670425149 953514911 644061382 176262166 472661118 548806625 323736235 675065600 340675342 453772191 168368004 820247750 666859138 430757275 477980460 843925079 83618876 640010709 549539466 446708120 713690675 240787690 76233341 196730228 679308689 510457069 817023417 153263072 851536497 192290892 406262492 592629516 994069462 39073576 500233334 448235819 67885436 381044316 600333665 244374583 544038536 4261488 672691929 347014665 287221847 213492152 700415015 366754299 155324579 673892312 22017675 675216194 415205721 515882882 608878693 283230874 533724681 945980177 681179035 585398053 339337291 981345177 603216846 306673433 674746028 901660837 807982584 428172859 768943792 628035008 820700420 902008382 717511244 656221320 53883656 448244739 297256799 217617445 355272373 191370307 171814567 745143467 900261471 93209163 291235660 397389542 555767768 756805562 563848180 710026732 897694909 356783658 732000887 742519295 755083424 461394468 298984134 25491981 26066068 305627927 903785719 452442161 98280436 584254152 608756784 687734895 876243818 969156477 24725481 3856824 437440846 88415645 606590762 119187805 454097804 728583035 797078992 310264164 609813405 700575408 444522 624362627 318585629 725095474 391490792 501167588 409184310 186391833 798909900 27960451 746350182 199932370 887949549 766963976 239939401 155566245 314673897 174639218 282612720 692453160 59890903 931493585 375028557 139708093 691350931 225581967 132138731 220062424 77330564 734517380 438429704 151479670 347950734 5407426 82219676 571345042 381719781 376154641 521481021 746385640 860463026 546707164 233733169 207900886 702270038 511731575 89553601 176341997 483351339 993028670 930330404 761781272 622324909 954516144 347644611 542454344 960990417 469825613 971765092 702797554 635085936 433294499 424329017 404029147 735666787 971707875 279772841 540594082 790603525 930914191 726633212 729140149 607323224 819011247 699467225 392819370 852076702 325780900 252519668 104073578 604783426 765510563 874124906 975678456 436198542 779747887 348804511 722472054 163845478 968746992 738221339 82311240 493860108 718267420 184794245 84596037 258726202 901624184 9017730 275109375 157349252 863086791 27182349 70323614 232401671 966279552 59473291 438191846 590536619 468356389 988355225 943832760 976087207 758266419 113908699 32693115 857484876 906487570 766548479 266598724 183621106 32918398 526902057 573834501 793018080 626334070 776929363 840212988 606408240 895007946 340961554 378783122 598256565 642248060 756539250 699579340 517096144 622446230 70588571 906324621 510561409 451333618 570042832 344742792 948834018 258246007 472046462 364430604 882320789 147339676 126147305 970943287 156590557 589065912 210121834 294955456 886843960 115771630 635906820 914032133 816487209 142019819 182074269 536717611 415254556 743572487 700240935 597364264 385769331 660130077 982337172 268346075 218075820 526690415 971406937 956039475 28995240 897536250 829731564 550148939 571652999 451584397 27983201 79163667 785352537 850528263 270472733 238052689 678828317 294841944 521750598 569574377 953238255 22329476 861480348 787357487 585461595 486653799 111287770 939840169 306504259 945454471 433325817 473302027 954496642 389630986 622846040 473426522 67209988 11021221 207916156 56656720 975181225 354182975 150851536 878265880 172481365 358520121 96081035 583976391 859001630 717636886 971457800 311482813 333971515 160266913 607587191 67861996 753475095 270469488 676000684 509699177 871229135 395529896 749660520 689517467 899997607 516776470 647991783 853334770 401654420 617782382 201193944 841006861 431860095 590248914 787121507 174090430 886687046 745920439 868356884 172216780 139801617 992240430 871778154 652912584 604820123 643344023 405743648 643656605 95730203 218970154 649795560 123235949 363609862 103009990 960662924 399911891 292990666 375140200 335375973 440686217 304126452 146511626 78263500 104078993 506500431 474026716 253589855 735342935 147781595 623697166 826114870 497751856 535858932 285323653 84268575 425063163 532505158 250567268 971830395 89467670 113752961 472873918 108296559 11036026 327724802 868210969 981890622 37525449 590012123 630555769 393377947 254388509 501701287 290449181 968807647 465000544 817245736 331900047 650030098 626251920 320995729 356404916 807492608 169105845 712531562 469814823 348862661 466866550 703343470 50065685 364676901 815005077 529067347 896431925 114725165 454984337 59756998 289520883 748535573 718382931 560770162 629207263 958710982 311737906 771701855 592802670 264634142 841144817 271891842 772387275 101223106 987005030 229504486 206073982 905573833 798514678 71160099 1608904 765897180 39135609 23729459 737746939 630766 737728409 791471317 342119328 745461447 351900525 543138787 376030520 102050782 595372011 149155735 822464828 781454617 531015454 396248300 400232558 51117370 531733556 182673578 477171235 665688977 577207537 239750621 473335419 836854477 377257331 477799466 600247201 535509557 910777579 446402422 140115179 69920221 125606210 282511426 819574399 893678591 849237407 401466135 908256002 73501221 265072274 644649687 36034325 490969379 74843831 127650528 878356529 334379150 318646284 658389303 127127526 421217901 16371078 417771393 270367833 344602078 143807200 606705087 448560326 775414769 672294352 76455133 349388105 866841589 866249235 399180653 401305424 764804879 957158554 5108244 633849405 953651516 460380430 339626741 37724243 450118784 261797898 626202430 802826730 278626105 452963827 999900155 521603667 546512232 112626735 35892505 24636283 36899387 335447675 742588462 558437585 707919853 502774632 851821760 164648618 565075346 257133041 175151983 969437741 854641989 867199697 831609010 855692274 857360375 878113776 767253357 621797664 912689576 357852801 728244350 379602575 612709081 550296005 712020242 498824723 457326584 559156269 532087701 702920759 613786276 233495152 517421768 21605464 4708353 757570077 589624856 698293704 706526896 389219933 184458343 53446691 285252927 489558722 217210547 966366216 415341972 114252442 412785905 684875830 301644619 529704751 652207493 707530911 864254120 510894197 611635621 307074881 320313511 391864747 612403625 332184117 725596020 772945938 501738411 50523214 14176685 697580715 996084561 666216766 354299083 878819412 521643113 491045658 966170815 536701111 950544749 257339076 901302770 759588997 268518478 818821413 850065281 791711260 404903607 589286194 108229295 183918371 407571574 323079445 557010965 400462739 221837394 153269156 643088933 491019789 860361630 137431977 659348096 947380420 56554569 578939472 763912583 17825033 699044140 772875354 976141073 152722885 858536390 538333799 779880436 193081139 844157977 113666094 347290649 796073824 858002706 435906873 475791059 997279115 286283624 241942818 936487778 837645211 197512101 593991334 510170109 516963713 137866829 616248285 461673767 68551379 600690345 46213551 158701352 871672419 684800385 191510911 351222927 69583348 571056292 173370006 214124815 741624753 401923693 873751224 879051631 671167521 628871299 856614232 59952863 90317900 185255614 917902511 446358662 127297419 56146107 993044238 364918519 441021997 388943253 517145775 218130202 527951616 315691501 118626243 741739609 612672497 147177876 849790986 52231774 264629362 61013876 172633496 444857501 864241235 221948087 105513153 191762239 839382762 976537896 607478359 408702348 73867254 408526966 522327546 555962093 322126912 15526383 642736078 285650122 952274884 177155339 542890101 516749540 184616490 788876789 149708364 146120067 74193349 469732933 434464915 39852599 881165973 171662385 181821288 396245076 747651151 302389509 172463005 177368035 497475869 828281133 202616127 654401855 706986596 356382635 348678769 925018961 31065387 665639572 90315189 949469136 344070756 38323939 424778906 51929212 945761157 540024939 457900814 227506068 418366441 870575337 470218579 545535030 854878442 7586540 183101374 413278823 353251516 834876246 661550811 136914549 937794919 550382970 159337204 296866248 483508665 71548920 634530852 390242590 63979823 140213557 491443699 848969303 608550267 597575980 197180085 623890768 283452092 17363604 406872707 958847453 791386056 347050811 894397583 357866669 338955287 610352372 571436578 952047411 130936339 323470690 728968306 227041185 624924808 774858168 93785145 551171659 479348859 711695616 104058775 794959367 53495074 507003334 653581149 653358579 771087505 458848074 256412579 824520857 94926238 85906730 378146341 229634808 113505653 775213684 190345717 71307382 776539567 338486991 137263053 622613034 836440128 659291505 892248012 785768024 661604817 198836993 316722006 756127051 620728639 615705140 675981951 869478041 640330126 466785960 667045210 613370529 697401875 74198286 815805223 671078120 829377865 969849227 355701731 810283089 244515184 205939075 583047752 803384553 633975377 503005613 37895327 184865041 572952459 663446467 988889869 644283234 871545664 724135024 260686107 585929760 402225107 576290975 51518593 873810377 773034944 194389263 147606402 100331707 652976473 757934976 245341451 714435853 578866276 906426525 375912805 220118152 893585689 432111230 955529748 29704298 885948403 521133434 515005371 36649093 923990529 390059991 39154925 135208557 999552246 975356358 377679723 71393840 183123690 567725809 194382738 364106071 37433522 144559745 687439687 9272794 898455469 236396460 406476899 202003892 490449561 447726071 61715892 993765985 77037977 541780554 984697133 837197105 87401114 67192467 310497029 277986893 605299230 878953283 605103747 457854630 658932015 847456422 850713141 111166747 77624177 366025458 175394520 585381573 931063702 997701287 325073111 98373059 122355683 3019929 294260176 2441015 31458805 607154409 168220081 734354448 928588183 335125016 738964926 153893901 819381028 644786174 283780790 989512147 885212116 153676117 708989818 70137237 920797146 802691049 751504924 975947698 896607910 842271643 612989320 515838387 665211991 282817586 926329654 440045201 956110561 26379544 726106075 975283690 312940601 9138407 620605739 977887611 867935283 129164257 868176000 73970778 282984572 276905766 837981467 670720181 292507906 247533012 51482505 439455881 333786519 318403620 832713531 657255249 261923654 112643920 402883198 549278735 652058783 673421874 529005867 251072493 384024285 396861311 395791153 693649789 423634686 985370956 552774894 53709792 475099112 245256716 935192816 193298390 737762153 74585452 646502901 418917970 311137081 933485985 934889766 205653854 779052835 229496623 849234172 436231862 253274694 15772039 11243360 401178989 765881690 643070390 15786251 530733673 706939634 226682736 915575855 444923540 935023183 453077663 888166953 208554774 772877680 236577717 185030714 806455865 10404048 872000277 913654404 344744219 107386035 570947642 180465761 503003507 371667521 586033631 356482513 481990967 501949630 628710887 325403021 263119118 50764830 592927181 223120946 928618159 811095355 445429588 430174406 143908448 266671893 800618425 490065557 111065865 803749968 67073954 443384262 637086001 942778411 203648148 457714975 770748137 503655180 191176863 4654286 585137190 689202058 954107896 107061736 347051804 768879627 618672497 671880127 439873569 384729227 723360342 949078732 733643970 193071792 629366034 778119257 53483430 942227068 369575964 443104548 548099422 904103237 377395534 864072933 762117178 168629346 132901961 820223162 904817266 907585613 980241847 375218040 490802321 94831686 507527028 672725379 917153578 772296449 389547114 331469557 932387459 929587228 491557993 412281527 393843418 337015094 984707077 245510950 421379617 133182219 503208342 973926298 563009147 761588750 419666715 932435071 233122692 456916504 587461681 393960736 256468121 575151310 906825471 410307623 935300260 342204745 447594715 576957655 18224331 764504246 420814010 888784398 299983400 426187157 992779876 615363158 841171693 90372795 799750133 804505635 179323674 925875852 116850663 200311355 888214039 651215155 262222251 80639381 931582390 302385176 892524913 906598189 476021535 183341045 335568556 563447835 97251272 479245920 92012651 140682220 720475242 290649591 682185314 255450238 472305523 5739021 714385917 868341594 935694321 452518176 415593197 687052942 779876317 959055549 158164753 996681375 620286149 191329836 499851015 532573225 501935605 599356029 487921375 162299225 624781184 501984667 587377790 456552709 579218085 220746977 335765763 393483096 476448469 814210357 944804300 564087140 489927549 571372748 759112297 919894426 248406842 599393235 537326889 101183235 614782497 677804209 695817375 143648901 288921851 837268581 366104192 3196816 968099799 283531871 635793847 32800977 341632100 195724569 11980322 985331006 159003239 260891130 920979253 849847316 550506726 794311868 189084585 46403335 444364363 256392952 103032959 118298764 550038514 56235040 77376604 365368974 345870276 978505445 246501734 317867108 956482918 949980886 19236870 566829559 601468013 850459808 706785374 439745341 550314948 963097795 364375147 607415197 197413152 465321117 172055964 752773815 130856791 25029732 550121803 571079645 181292558 21170897 695680398 177435305 106655416 739809878 677169143 737929794 170155215 260588505 3062213 995897137 122321080 376789991 309566808 827854779 60551879 252210199 11675758 167627473 538028648 662205190 831608435 331091328 443036455 228269812 908382174 165521827 168790627 147158255 546028493 423095924 386433991 50214606 149749113 136992254 715915784 433224422 538274758 737438778 65100393 414397302 342434635 208131232 810943061 220748917 378821460 649483652 654791791 329468221 728914570 976444524 733873440 972722832 868734241 194223257 506275538 888683777 527326182 608640137 873724458 11255070 43724473 123391171 753090904 993612876 625197160 501764739 788290435 849643746 53657568 254807706 65746445 752869883 316162331 167780028 544439537 841671605 424511363 279461718 619229747 935727844 623836027 228974384 219202175 521025445 38027797 60158249 705255314 964618420 626165717 901605740 464785867 578314554 64255398 630168728 154343308 436010055 763207360 48843405 399135236 867602479 678682136 895614439 116457771 371463399 360030154 899059015 828297803 366546271 507580985 699423420 623872613 305238866 454133166 270370324 294585721 81656771 944436856 541933110 946951485 283390432 867069208 472263556 306348987 190890710 682126852 525162478 614770277 742411389 68723641 87168199 541477662 117174515 213151191 114463152 178674917 272770743 453956878 34659619 57384513 469164927 516613923 677438539 88259887 67179683 24252640 825695935 713137138 300736469 935936404 848220301 408725845 111813758 808632989 355426109 115494978 409800725 54890824 281110620 479697698 181451753 740220659 181317580 85265671 940963529 112958118 24823374 363048075 673023165 886404140 817472594 618871320 549450183 308493525 64608955 946530335 474959142 337276046 83882028 890521504 387447029 402287413 368953813 782132820 370241295 28285593 211747944 308980994 357566961 776650885 754238832 733980326 226048802 393224882 985120403 248300908 108207408 820681956 482047369 447238746 640381890 610457523 661772379 549756843 19437249 169082780 325883065 127204820 106905386 434450140 406253892 594142942 778191800 26144166 865968078 87683692 714875348 801198247 251904319 512432899 21316765 827833560 7471973 419788736 223207930 29970146 301216781 164402114 940472420 283426670 712417935 531541329 36519067 673957939 984666584 110334618 738120054 752010659 338843679 452988943 212167759 27320244 58231962 363881600 683747925 557146077 92317450 80072833 177134118 844973206 677643298 749121575 887316252 320813399 228249155 336480301 107063638 189901727 33604245 351911304 98139242 101720597 829180021 519100719 553405250 587911351 671633684 760680247 172974822 716572373 395256476 631056245 164382720 899658792 926625082 332675519 718801934 397733282 422315374 836933272 33692433 721866754 709363587 438821898 229022244 393302901 836603798 950829956 83514301 968480101 20685190 711031605 580629 754341990 864927867 362444698 21777372 548089530 106193468 890700079 225008471 821306733 425223198 983318960 861065978 101437423 45280620 621137900 98948574 698902603 904097329 154771103 86967522 132331520 754204213 563046143 220272788 552044142 757260376 190663676 96620408 299978623 373622009 305065068 516939616 926204892 270099176 565147901 432562817 741701706 396316243 54306056 594084983 836061708 866135174 136168520 754060667 62121897 234591553 374156682 631949274 56790234 83607013 199312361 381971645 458213231 930489367 685981182 170091369 594235600 14911447 118204186 365212790 720704026 199715061 944575356 258104538 21495896 970247418 735393371 416126487 490068339 408918169 819751679 544583995 381170033 315356660 749897488 273912418 828946350 956550911 690932563 846646241 94299916 104926462 872678711 560385673 484034880 878980942 998201420 337475961 563917879 739751585 36740327 160980882 871806695 197485135 637239545 347186085 228848684 762584197 610800401 356067705 575835173 382420600 453604427 35345556 983953543 226424729 356252656 468427087 63256982 819870333 513852033 638783247 129291568 994108463 642790392 582898690 793030673 805574685 19859671 74040090 147537613 567239136 513037789 829014825 331936766 520428200 668279985 675818904 864113331 712267523 550887544 101840032 394056873 290831294 755679096 236673206 626143011 299350754 799973448 102674707 645278280 702917096 866971107 926215544 377406407 559829994 603798325 133126457 214752739 999191476 3509772 348795138 35343457 422565388 833848355 654305427 339078627 955270100 647194564 970104367 363735555 904198478 304498671 61724992 497645234 112475103 359174817 518881846 972753588 86054230 752768885 610753602 67231082 490613308 950045305 908156839 56565719 211658109 104261990 465667952 36599733 314370905 39072415 61089013 141858499 84541502 901166416 204008642 727043507 280858196 39004968 18822962 779580529 486531293 76495034 965770247 624856098 188869730 338039122 846691040 900018580 482445108 494379740 481884264 125813186 970625291 545768880 237996429 327516528 303084088 11747174 463027551 158412461 536958894 499043281 483052171 552077515 532650171 769004259 257417537 845734209 733669610 62864798 174166305 285500760 492084932 214431251 606666346 468214832 551492621 628443162 320603957 477941855 231233068 169767450 5784604 687564071 919557975 969803473 251516492 120714986 626209069 90828525 27315089 252422068 410543518 705194693 561939982 94666047 550946686 423643092 335320621 962039301 861654150 251904580 75341361 241874833 849944652 523889107 603204809 526397526 406575127 13120278 798621097 837709121 616804040 685296711 55243321 246531309 584888097 48258272 310060394 653566451 342160176 790570968 251710446 398968159 307852739 681971761 480032790 310017608 697548202 515658453 659916669 128457296 523067905 566009147 262497313 849887368 74382297 270381553 340038728 943194430 284728259 19026371 919906590 434730668 955609585 417403381 597066139 273539082 635449613 510236767 90675583 564561184 553572229 293661657 653661046 956263384 956744529 653983865 291884353 592935050 947146616 102151576 209419173 11827697 555225606 126645571 814137777 543066312 101813477 909977876 129604137 338162083 316204045 163180114 942838107 731182847 500139766 4504689 274760203 285377618 304134000 868349469 721341388 4193854 693870224 947142479 897869180 26047125 735531 166005241 160160605 429435804 215898875 567063974 204714125 474512222 97907442 260765609 80969166 293952987 356144785 454995564 113375333 418562379 328878073 948560281 896232675 495210607 904814581 421643534 622819106 259096584 669155561 860740126 897561220 793177168 890121776 596658821 368361958 190491609 703217774 266912673 733994998 161231365 842794692 723071238 572303403 90107313 332352716 972340298 114360543 473077480 8528541 47383753 650934774 715812536 165050232 542627764 585857181 681466936 852030572 762248162 761248039 826056155 55200701 408912358 390421288 300991348 861877133 268295842 490107168 866498377 815368315 322485924 869265142 614168185 939447489 37271228 10489484 264448213 706992174 455313679 219689778 54620164 188091339 716544639 401116474 8262870 264078406 203901914 91219367 540988648 5684636 657401582 481823609 14144780 397332418 928870418 368456243 631811960 535563696 850218294 18068531 573203717 152121170 759745014 541386417 564523700 737755951 310006580 314902355 199518014 874422453 270132081 10460861 503076947 141628223 714721339 501671697 120178324 966922472 231540330 431088072 397287078 332386342 665099122 5682595 80159668 180695247 719440813 407127585 865392026 68754603 358545684 460522751 630225503 527120688 612482951 862802274 459889999 857042376 66239595 540829675 649101933 733337249 832289008 741706103 5692474 387487362 948161471 77098804 424722163 346335293 401079364 406336602 623366824 155730572 995923103 283285312 514846220 535420622 446265719 895077528 974193221 851465629 665736776 122151324 603939957 373348616 669328185 684176037 709487141 633050587 253993840 57083792 22868021 369820782 294451146 637854162 270449571 667701262 593016864 160541516 141184627 971986038 722922745 638309282 471977218 448017698 378747715 694063095 67529297 760722416 596901985 446548966 246316210 905544157 731228083 414351595 409747058 752021044 789036764 337534167 406955805 375569815 124450052 267837816 549656135 256846178 425005339 42652867 649978521 805401772 119084431 569584583 769238856 259351698 577518046 22670191 466142531 17152270 555835987 794189875 904400728 643960890 67301911 905471233 675277414 578482253 981560405 367012341 955705083 304868666 321019342 532867292 6331089 307152750 381742929 253581417 843314672 295086028 767782336 507845626 324189291 696768255 127298991 83128442 265983592 925483415 418049849 933940020 474806287 694744335 36714384 637523881 885642341 213719043 47300992 913455561 699601911 712251310 766922258 543443334 655618851 424583986 740125606 75325890 188726214 625382769 146987077 449737702 629538621 131909170 979950774 18759857 799122623 593002676 295916641 808136425 951281348 537884024 696202245 234515672 615234504 197265817 82575190 751011060 137057284 304606227 11149629 892170730 871874657 627670978 846526394 581977368 506152249 582591933 257465486 36540123 430780836 548542231 325919434 863424725 464186310 463793524 122979230 316158204 872348324 665956754 988886305 211312764 146672681 43364551 627000707 893730524 999602649 980133443 642887610 267685916 515260293 364426198 782848569 114198626 340344509 878703682 580335963 96305111 90678124 823857549 86404535 404599704 376031670 641875622 300439840 77531173 401909970 789477051 164942948 27523819 703993775 430800335 594089523 162699439 515225813 941818387 984770952 569635673 827857926 101441763 511097556 554146788 196467762 86922619 751711345 238439322 758852508 749989482 477578483 503866561 69132602 583330234 542649564 489443448 558869508 674355519 603018045 652638225 750849023 210977192 595474055 138894127 95889980 709950919 451963190 768291930 904689775 6912964 401090285 876136314 241451568 943961306 60569854 482843083 274042575 344809555 285742403 186810021 646577025 207958031 523036098 858820861 371209366 881113407 854235094 391790440 189472088 421705343 487219880 359575209 848304850 983853458 145273351 875693545 865622201 247303600 196237596 221956494 686831335 108935419 247545364 303910102 785854488 429890602 871392956 595290830 675693415 108120791 273707729 835910247 882982734 332258906 221312127 345025598 632882804 530890331 284570177 84759156 984723498 177607786 934698875 905906569 681889453 41671593 968062115 654618318 846233365 801460175 393981126 252825427 39857808 167059716 492036036 483978044 22015978 626867122 125633178 819583514 967873169 478742561 888268537 331912133 843521791 507933268 370412145 523374034 355606621 728662347 458537748 478680809 245482130 975028380 505160748 368761854 412701346 256363765 347523439 950904706 749192715 439439139 770233245 509215475 167417663 479027646 612819043 78024124 578306674 417794286 388684287 367168865 749162311 596665019 984398133 877349744 672986149 133618916 656250651 395569457 377697507 797530495 753502186 891433816 94083048 156124399 105886513 408704208 947023524 761728741 466129416 417172413 72241298 976234550 339780247 1758265 221036382 199775436 149792150 698204729 65263111 347309834 160620135 820805698 432132519 459323633 820763768 245023228 495770979 280234918 222838054 388224798 159689290 879357204 556940365 457627082 754824592 342939758 306583411 378410264 226958475 9734620 288755383 858856599 659936556 588651070 69530676 455731772 881548530 793764646 870876597 439014860 695833453 865535509 25467628 607901498 907920650 764268181 141504734 696746642 924969913 847633511 283335168 584061478 555581053 934831624 183150859 730825625 239824105 930393206 78568636 375711578 40214749 898301532 591764521 115905365 403383071 143971282 946889748 532185286 247448888 603430312 89316667 811368048 171703486 798659419 996855738 82969231 220112808 947964686 591704533 879580689 725091232 156287289 858082176 546218412 254040875 422564061 662751103 446110663 145524765 919822826 443001232 695464919 268559717 996894651 554802248 215925543 145862743 953353130 123129538 977563607 80364658 838561504 653142163 390217837 686566481 183368833 688759145 577927238 690874202 418231366 823147121 621990614 764752173 294795950 630634592 819859650 425793421 508748315 390523609 457389781 707418967 614683399 565460936 880938700 278408796 447934180 464471173 61176966 870915650 705430191 489210375 289183615 450073546 343588054 150020539 301492079 609349063 488703962 469800697 328556320 171607156 301616271 602857477 697684937 992224336 521905467 737105164 543129405 917961968 826520597 334181671 483967084 467359959 665736335 278506624 377789492 286617752 821566807 142354395 656650667 550525498 709644240 618099770 237534379 412778401 25436754 857817555 835589631 163147673 238100498 929066905 294193160 639380253 942549665 489258267 155312612 132679411 568560835 479519873 353678748 617269529 329732915 968665782 626068948 793760768 9336787 321570958 183097199 380151806 568020481 854641981 56213258 974104148 191597477 524844147 255149079 140909429 39737391 482966033 213224135 495236910 440477506 89779689 364181235 45310393 11768085 779692638 251371024 718056288 943418128 998429415 686495645 893768365 57477819 260246765 541461234 312867453 372866867 663026175 655758708 879900724 879546991 747997167 578775461 79693007 315935453 554521110 115358652 805148794 306327608 349622262 544431053 358213675 584159051 737344962 151268566 210622009 520881442 504975098 990033399 521428044 619459446 257569607 379335451 414816237 808974708 67574950 160527630 320963794 446891011 301888201 564509313 491486323 74855137 910560931 886293686 136075974 110380619 41090292 685673773 449451980 832261385 873017709 880452457 182618148 905776203 407421550 495653214 866252649 130888452 567143213 694706717 540694228 316764173 666582987 22817510 102308907 528454402 359850081 55630627 981348369 961126001 363959690 762976148 82044182 262741581 712281514 160256095 314303821 688642575 250626016 757232534 896461830 606099431 67153283 571718371 132229886 569203651 551569568 298418125 307107641 395785246 251532648 916992803 939484269 60653384 852314886 470893765 952356656 544352920 266866248 670482861 507937526 888642538 423384995 246611019 170477235 568065631 203026064 136206179 563613317 697871866 939909671 902268962 996748276 387780488 629578517 393857921 10091171 918305127 898550862 881814383 463349057 158335770 418828488 79923308 118955713 307092122 69221738 827936193 550872326 316844633 834399161 223102952 866389226 361360926 235071837 577604901 239817819 700656150 325831951 298197926 393109041 822110089 972361098 757251481 516394053 361551446 372575011 501776953 266517825 214000658 560621908 19778633 815891186 175590248 484707091 747530897 170205894 615554657 552766163 38712012 818124089 694309568 745522044 752733539 208531848 84563985 5993755 650187739 871573909 763096292 205899791 321888563 988722058 820463933 157447599 519842535 488054290 640370345 471269957 836622768 525968045 993570942 30434070 468916367 582552829 209160014 556980840 889880128 210740778 373128285 255112453 680753059 386765979 861317330 897600792 451495673 574784686 993830276 930485952 549407359 199979201 469158578 166972095 122982749 788286117 717605973 652715656 676475110 136590733 539054279 733667010 196891892 306496286 685713233 918154034 376901360 668861438 940848914 818616818 374202820 445119042 946394692 542757403 633563698 983460964 664901189 82868343 351133307 146277629 497630235 548040182 838092010 763055816 789589508 687125980 661090980 431878096 214996065 512046521 732454936 419045949 134892858 807384250 479067964 236401529 836240364 53885047 172324767 962899391 423264657 290766922 328601515 465609743 762939092 756028507 827468361 155603733 512113840 457838529 797657281 908074997 306505343 951204385 428660168 622069981 18799489 606271639 427061605 789921551 111669925 545157165 480655673 523739405 312225824 63792839 820062081 928343847 798238455 806566780 242674736 908681157 978895832 721071780 287335237 951620828 714535313 226979498 304055193 106426361 482177386 441815764 119964694 62692155 272630072 341038923 930670495 229774515 387483463 943666035 918744396 217150629 557774983 516208904 994887033 394463223 81420355 28222817 184182012 539041755 664025897 891338759 89436837 76576312 675957557 526751023 408947683 765245822 267091080 79537293 551727923 574482556 197859300 103360834 325163791 60107770 142673288 694433322 341404903 918555385 639555140 41209273 31505567 619450308 255429860 362427273 552879453 788170690 513793304 211707395 955093218 846225207 704103838 400222754 603002060 412022750 956633063 480359661 461492768 727266997 268834055 367610515 384704087 663850504 207191858 527683302 607963866 716023385 968801972 275860443 93829154 693850718 366904558 351446802 358217826 32083842 674109105 804258939 553946258 223643433 257045550 588364541 467467082 764321268 333572569 519973032 461912763 311637376 439034803 630280006 885701719 440780332 889257512 117563786 670428622 450214163 180359002 966702451 574999712 211631618 588234891 626577526 608053213 86635880 731545209 646619000 399627713 462104155 212445391 50286006 821746473 773940453 433143588 707183222 779512259 412372420 479658677 339193401 581590867 290595834 18189495 442599370 446140172 862139122 804396466 72384673 779748278 822717935 189963123 931333083 400349555 351115813 542105556 835279949 508428700 66169243 180188060 419892890 448972101 858092663 361359496 346155841 375487578 246267828 806264662 647365714 584535227 475217631 944880856 16597544 373204509 636394576 650773055 747240858 72954624 435524628 854821183 394458574 150634352 905181282 168248695 679539601 397866374 399175184 42109235 639664358 469738609 707693981 257166415 960072764 120581941 190814616 162885171 480807858 64444523 939455438 600993561 149624472 573713920 792820849 221338545 369321431 864521131 669988154 24985395 239906157 76330946 711965288 408527909 981569006 396273966 336265060 184990762 212026361 606887399 514302323 913650972 779406112 740779617 72706389 361801258 436072837 53956624 97113306 997858339 686931722 379704748 207720301 433138350 862408864 500861478 591943832 767192296 403096254 800528718 485402237 173625050 981017199 863491523 700858082 813915791 194377480 424382899 895049237 546358124 53031395 999035614 167122855 343793351 15959229 625499429 610517418 212474268 96614395 486409795 441132958 636428834 124340551 431273043 842974380 868875033 193105441 266584719 165386592 956150257 525618165 987159688 42476870 688259498 591079050 611652012 9940089 569113872 920274493 902617863 145989869 824062426 159273737 974440179 4189068 942894638 935958286 707709544 816196606 682533355 622582002 271862802 593838880 128316771 702609889 509967473 230757105 646596986 27871409 660261084 932910773 690996248 812575153 561200945 159156622 372598380 146457570 215004930 71068810 167648923 95373262 190429140 377524191 835934932 472334237 447144236 667522478 914183691 937407621 315269222 766708320 72002767 534793505 453863352 520101062 924161441 792655046 873540696 697349050 240702184 464481199 283880719 534237043 989663419 503787234 590374301 498428330 8776101 191565898 877345379 401767651 49665350 711475617 984251709 637582344 644966566 791139409 141407886 534188572 619717280 388529351 876482556 543118479 867212575 757141580 534051796 547616613 666952472 909418152 821383623 818780966 448643706 163176126 215305671 176136054 419254053 601755104 665566533 695986345 584254530 446102078 675957170 178542911 247457972 780381584 902115576 851861853 830354829 169560135 190452898 195021516 488351889 460894617 443183802 495527417 289924365 331785850 710597097 215093868 445288933 261938212 742301854 757263445 763637418 854226204 907600703 696608097 703421615 380228006 931980772 220930772 152564438 982867647 354074956 201692358 106781251 2087576 699832665 176460257 528540400 109490147 739925046 404952235 808099948 66288909 791886818 708601580 738898717 97484054 928289787 22662805 147713409 646263584 835806208 918582781 882393925 497835668 545270413 470201628 74442719 690112557 320105560 52960129 640193285 228877098 744809814 126304404 943778892 872981706 246056797 300168848 924351553 534283372 980401939 410440435 532064003 567423410 626499501 700355658 403890648 896035577 180289814 170602085 951469827 317787539 505459593 550000368 784350324 651679313 344044033 800941054 976584828 58301863 158022374 777486729 632223086 975678084 204389651 437684472 257822046 552591593 396373778 40419038 117323592 4584218 553851924 445529892 894140949 835828879 452355481 452110707 498150698 369085760 478699062 435554718 924918874 854175965 738326607 232791640 331188477 265757902 857866341 248695276 43772242 744479037 996851626 738400591 882510431 93339581 471637019 268057601 650711803 4314093 532276752 740432637 743367645 465004762 651750947 543723702 595336124 393722094 506560339 402284616 56294340 674285931 276686238 928396694 907582309 816974459 41509665 189895194 888650302 340650056 97021839 718207197 194355595 984888911 685499124 108124304 599469460 770339932 782529973 868473474 451236640 805290383 184847076 55456777 896626399 557980429 38061882 820729552 477099459 23827990 553551257 40516509 894395260 680597797 13609058 735998712 375339944 474748285 848809449 561854533 856608017 741494098 376488299 385830699 677762683 302433401 21696388 455792339 82301617 157693488 647730000 968615901 83112102 685541664 89545224 158009880 860423999 205640559 332432030 637159415 169030896 911389935 11915335 716350186 123493553 460531711 718404638 254122333 27075068 379849020 329422332 795365373 446104518 17723178 308737059 597180364 361174792 796093206 753596799 58906990 879666266 666620840 602137047 185395101 316870735 173819393 207728001 36829662 853595902 468383588 210343370 97238859 758629658 163994219 760125925 175159074 728856064 609344006 697502035 649652126 415065276 915265666 725590991 325796862 478618605 931951172 699949174 318868829 733821292 353495310 940767549 234231710 764636412 39746691 306233954 330224634 905022151 524406071 224523991 271220331 767109054 72744609 985107870 306918796 30756791 976947721 697911532 757444932 685540756 95409539 182198486 283661515 244858910 498116376 821927990 63599514 809788830 768230888 623596112 989503532 493540871 679500864 170835608 666255827 299035611 933059559 822619276 258926168 997265943 934100412 578233639 368120279 521053452 548149095 804466654 478961176 432762944 641988026 959981 292105464 264287085 673974215 977981591 53327193 396989613 231536322 384213259 645815169 367019984 91126251 412512753 223582859 586112705 676720408 122976497 53009084 977088602 29773647 993794315 917694044 659537200 848736798 991718147 204487620 82557408 644859279 593423175 494083665 308528331 872019287 952756706 655250151 744045344 434590904 470295140 53726260 844250901 34745585 553324740 166402444 144232517 123987369 694884762 676325815 686075851 286241083 425000256 304100582 626484602 565452777 71515036 234230540 909148519 2233668 298018737 628314203 258684144 735699424 506503039 119017562 365446160 449591850 688548110 201660055 814969888 934156326 729309349 942443346 901774575 755442549 472703814 343883505 93735790 432877972 407599967 1131670 214753222 944283082 8851864 985569650 26118433 36626270 404945588 583804936 569189539 82547004 767794656 146300696 558321038 110827220 777596676 344895747 893105970 679485412 837309342 123663574 127563941 90526512 875406126 309749399 725697770 601990748 241341321 920869583 263590039 292244448 126822541 592420684 541722060 276921063 598906101 879629551 733521750 346606072 608484977 271399206 667752714 505399119 227512377 125165221 520933345 74139826 130337993 959599147 36077980 157578253 761410983 69509946 566525085 180675514 582467693 527522003 171726663 992934678 463800043 290534640 34099491 498191301 715140855 51977029 662804373 922936080 898229790 553268993 487199905 242556020 326210353 153340571 445030312 357063842 816076964 767752823 950826611 329042275 409372374 167930327 872847297 749366732 129397039 626200531 615032640 843692609 188608559 748614071 312340658 464787779 188907341 663686992 675754815 218105868 108990962 786076571 59723985 300837022 758044532 595862524 977516649 496980983 268799995 134732478 340677729 453213869 634213125 985993104 317040871 100686095 154608549 384349231 897660924 858554351 172590580 653257455 400899986 896266426 203991102 735342369 865764412 39685797 871864097 807514094 52937139 195210152 106229672 491992671 405578784 111172661 107370420 656853952 64711328 807989984 316469336 487060784 575528720 994340182 786441410 624326577 776355291 339845860 523410656 243713148 879316725 994152970 78377542 547095446 217509997 336979724 225912108 221547111 612684810 676616787 636116904 316534180 912225418 184128014 914015318 615643522 76746916 258096364 331309440 973934220 324069426 398986244 928184652 854379981 605737010 469469242 739252121 40593155 732025974 834548783 914768575 446598300 653245559 977883723 707959616 790626675 265285345 767163629 543355520 156912625 464980775 83546497 528943132 194909840 864550188 424249656 391831207 831757711 230350390 339607130 775807447 758209365 591538974 238573110 583266499 69920339 135465805 189236025 90865169 282781100 700848418 942263950 577589873 642940878 808285907 522043344 194592452 906343145 231369779 5836689 62946349 91150543 848860633 801031314 253584921 171906229 369758751 815768496 880281044 676787254 796729630 82449262 225111115 210898525 873903998 605802812 407094721 422574194 54807624 131295655 279127128 597738380 789852264 602716275 709998863 579348138 639639569 820306892 492041060 184535464 641341025 522496696 787198127 93777750 98541989 269139820 426396108 342868269 319317910 716533479 506147577 67971470 18869003 625522048 269428006 818959671 183202605 580147211 150349046 789296401 177502817 353802941 546388764 198911049 283775569 499691469 835200309 388119495 186890484 559101029 213484439 939443371 520514221 138561594 658080497 935338695 45993053 326745827 898641374 945953171 421121033 730748248 504450941 279933115 532781721 823495710 265046489 145968704 319037816 285898919 757674000 233482513 299500521 127729277 500733507 519093205 211346268 150151022 900588452 55236126 985639538 310031797 763055219 705932339 971093812 279095038 590597020 923451094 895826965 193368667 364698177 787885928 627702901 856340874 310199991 357736498 616706303 458463722 82500549 457518617 852815224 462362193 397659337 419554443 388494865 282627213 498638929 919753981 212637170 552889260 267650441 169044882 588964028 743174519 807397528 632949443 520241967 990040318 264182944 640673180 217564937 481697547 212904385 276445464 480763671 969425291 963608487 186887240 12319655 40477366 392374649 599499951 729663627 92570998 770254303 532090694 522892521 220600998 127467739 112719526 816133100 904774598 578493050 534087731 561152652 349911194 247505933 244969763 234502961 37511187 717022330 238929255 554318467 755778357 138848332 281881141 677176075 899199237 961357648 948502194 312755212 616249094 242236460 813767934 686267902 477967280 990611602 805874158 185392098 57365978 360290026 694905974 289198962 23157708 241820526 114040721 994004624 999209525 311187751 445427914 550078364 734609306 891181172 868780851 131454117 638294865 140968220 16782911 956972000 569749915 960344274 249688882 46232720 87321023 395564016 804277937 376443948 706912869 11346280 102342569 5689267 284699851 820269887 444335884 871429592 841835619 567348771 323358430 371123287 534633830 987555106 745095807 154037415 286943195 538482032 78004990 355965134 680360002 935065071 293412757 302845948 749229944 335904019 373327586 695983664 452413776 503898709 407030694 233464013 136649463 923083283 130962631 968479317 934864248 180784165 209046957 290250349 853353544 47872689 302563634 590136769 805918921 962914263 658383490 100073596 572227736 786984320 101777359 490815856 160142833 137195343 167076852 756680126 797355472 402028891 378470045 304478057 649291020 704015599 861537477 844958744 338432881 222558603 332722131 856070112 748442909 570973716 608438169 42184550 331095598 521836572 456293636 118413169 797556963 575522033 243249361 366804999 882582065 487736369 645091385 267220655 91482132 755575816 169770089 32936854 666408725 152548197 91967081 735883530 677685366 612257150 430616547 90715486 785306562 206145076 746240470 190048439 76804906 35212732 759339637 100206600 68761120 583464324 968078572 498663449 798831220 405851610 714378207 361113089 960955872 446386756 387168683 728905739 812633934 721698900 656701708 881433508 974526290 974364383 201106674 190719627 714417485 95558586 972054222 59971075 678110769 270857430 522355549 116241323 501641984 505523246 390390233 289503422 21365520 50433673 173681523 886811558 106358378 844985927 589722518 281161565 594225658 116348314 315408179 559094444 577738615 481455046 177899706 74210332 455130431 234411614 674475420 687896070 639849887 357199398 305682123 616841261 287182943 327880545 746949128 320132798 803805174 546298301 544441641 898017238 3226211 832512420 195007778 79740554 431250611 625933617 411383431 145045024 213289299 935962114 493082052 353719850 195191373 63516836 429183060 748398737 106462754 788249371 958188843 622475077 592355941 684104433 500237529 462978935 789595926 114725454 775597904 631278427 979824418 723807830 868326571 403866386 999935812 664565564 579845866 883145404 536809139 890298151 557799958 713185147 340433217 394434683 925706286 564483706 277788867 156418734 851926341 532587387 180195489 633639594 235928892 507956575 797741036 118300476 299556248 233889288 120449038 468638774 537186031 590636443 546220362 36470281 728531846 666882555 381430926 97818444 372752825 532070212 842837034 520727197 253262606 416106791 762833087 98208090 547252691 215712139 131066071 472674256 78538052 679307189 317286845 885190109 54992857 224376595 627746739 19297586 26364443 543498707 914856267 335820560 145456091 611034010 939418192 472117868 236443926 794993336 288605661 955991753 500774880 700084202 518235235 677177582 126738537 82880292 150295253 342259814 925550940 594431558 600908036 444510604 148240965 83866627 448763711 134837384 353534301 252963411 963006055 657507980 458174057 790135896 709463438 749828045 109848034 616296985 283094095 574130576 136794134 853510474 49777222 606832880 579106307 10360597 245667012 143990819 273033374 610077792 91038663 176222384 655924247 295140600 483749956 514061149 877667780 896939978 379514219 136804784 626393224 62471706 377880406 144830307 295211790 449093616 276178471 308512184 602428164 782148844 67053464 433895759 170307888 345199496 455746242 928069874 800123609 463430745 669476117 152194255 247588151 704092092 209425740 778440852 891618665 25450882 940586024 992539956 989905649 840845602 873249767 313013010 7283608 672819296 761234907 649340751 64922235 89017828 403464937 249786904 480873132 231772558 440863011 746987100 653710196 20804309 746447083 442873261 142314273 587828392 435671743 912800337 923399756 339622877 457144762 723401831 186094080 329608697 252313660 381902611 900481769 686140348 421897946 543111308 534648921 336398073 278972837 875700790 946225628 462541251 506727731 229625101 814510755 662012508 611564302 938412129 98153865 863674132 431207423 944215503 706139441 164194709 985543212 691126723 432003861 162132395 62624196 843280652 362321384 228667847 947255534 869383858 701313907 426010359 377721466 883947452 586157125 526110235 607044405 869589909 669055754 274763754 427605565 712836323 639507559 781668151 112120623 543523276 129670129 57799040 335676936 73744955 863601009 401714669 27984402 168912125 165992877 214454523 718553753 697664768 345109466 393377873 169861728 475710349 661554266 576063120 83664145 353384316 767732063 498653104 399338784 336447754 826866121 466033569 799568078 294426176 290588094 890198444 531139509 23740905 969204086 932256134 299358325 143734153 231420115 31771288 291702848 643448645 91392038 869789581 527908121 474628332 482845171 563568101 274702926 482445483 648886981 960928917 934156730 939867985 879558731 159319661 944021700 956159042 719616867 431836436 647311305 533841232 34226184 393454036 212782805 239687163 860707649 817822787 398382377 202938581 30866945 235894642 338200330 602261544 821920238 256767350 312185884 659072335 66996219 271221065 722954204 805434171 654716494 423224196 52270212 847276389 72953148 304054430 342824703 625243080 393693962 771739662 261951408 339430119 217472608 308707497 251909220 130594452 961204038 594212228 922601227 255313941 385679245 654449525 13038410 528659064 104765042 123311084 85653592 690789325 732831265 951109357 202805102 903859511 206455398 429054358 598040366 59123284 656170193 543935839 102200577 857060695 509471993 503652306 926761133 798250587 503557532 34178851 440425543 581331239 288693095 311210688 143781561 172717952 123064304 871153321 416701066 511181301 400127084 984837068 768084799 161529126 430969357 20920936 643594516 476690516 297926528 354703645 126646509 209214772 904170630 207907457 174553811 951475136 475580761 147470652 227342856 601762676 265647212 695606822 287645163 315515577 358303576 911370187 82611195 119020019 278875232 418067193 619399348 930650654 58767178 562453698 848108773 35806625 838001220 448235372 910402288 682794592 296214666 929208448 510977115 911796318 368663845 28266384 285206367 875431895 76491551 879017076 677459985 330119790 347494718 894561237 463152117 327888373 883292992 906634126 644206709 734163215 223345873 474819925 330187006 929522072 789588991 21068214 836233353 312039268 149378560 705956727 875423889 645641251 946541215 988406034 926124528 797403258 285062803 30741895 191210636 665190154 799837186 460505752 609525241 853132840 96422434 71839684 506625437 488900974 234564421 465744853 369908937 820925173 339804170 111635849 776138442 576339148 725958406 997331064 204303847 432360497 370562034 315797776 575840766 433567858 457647747 207614011 876084250 415555564 772181345 893167280 982203079 81799343 475922575 713730753 72606220 82950892 99424966 759618026 397373854 366889185 11017393 288818915 38537283 579796124 721426173 930272871 123626276 710092313 231811982 476323821 503916197 61460818 52718595 643278749 344528899 629978009 904896804 235522798 694332729 942422511 80131026 674679493 40694007 825451870 945204060 979011179 972749170 856736236 238496584 293955512 152861710 266398278 703410874 889958990 550951916 886916019 835474049 167420882 676261600 581449862 698318765 914177014 852097130 708195229 341992870 423491467 972247899 748764579 611787324 759851254 816385480 21956204 366709988 286674051 925419704 88968960 259001292 267977873 8067685 194199598 673283092 216890980 286843542 162101613 93250828 529475908 317935637 464271092 135069477 278068209 169555252 103840645 864102891 150795733 73467945 435546126 97987573 836444242 940986666 638997971 673003464 522730509 672143567 690014165 723730195 285889363 406742332 648284489 386743410 427306281 808202797 229713332 569190702 581881583 403339494 194118963 658093071 446779590 915367410 764803110 323470073 214383210 606337998 448797776 923987825 857625087 306120017 28950223 733744303 286632132 982079862 512478677 892071073 649578950 64699858 625901810 179863403 464873130 677533612 403160362 539287226 392253232 940847465 491712392 282652111 205856823 298894376 82834705 836008809 746576216 857448211 437116995 412818818 187497326 857323255 599365271 972581756 599128689 98794098 990989755 375862027 786996730 47579454 180666119 534242792 624040264 306521166 298563754 257395356 285192263 475695918 478493157 371426664 263063291 704513707 848720062 459510893 728627194 795992380 851735097 702428112 983254447 169895931 712409774 545609535 153847390 899531826 479299508 615818064 866394054 331982341 373354608 257938230 640137497 955218015 675880211 878419481 627641033 293521278 781605989 988066178 862266434 955133608 998045824 964393793 651040724 864446195 571386538 49526073 891311436 284259544 77800968 528998680 492321443 311046005 763317574 300719289 974549226 11718175 456175734 872070325 610495202 758693585 134236401 877311767 204073007 601219743 514977882 787620424 238809514 589811627 32151466 348058897 785161620 887948714 916099250 438233343 68492280 654767636 375610055 377243126 889525750 402879976 673771376 723618084 76185357 996037844 956385474 623690784 437710635 239163988 401566596 429577554 721128541 878343975 742369917 870206747 53643699 757203945 449021835 221985510 13724632 69507287 843502388 368335829 272027355 762339322 433736885 871924145 273293439 499433405 22619048 111524872 287001206 70678745 430450069 105365293 436452081 994786985 125905617 776449741 18858217 581490276 473975442 403791938 174796011 10327251 602423748 854785923 598546106 673218971 984530746 824362402 277204945 331928677 99875575 451646463 686026284 665537896 680832639 228515774 217676478 473779774 748541521 690892927 98209205 798538776 279307460 739249728 727635706 449496796 832729410 265203112 835082305 190588919 512145803 997013358 804755338 255229050 522999475 741564161 429863484 370201155 672989496 601319145 279969109 924379838 87707999 454027629 662569857 518463207 240856867 792523559 101418981 732435600 600166508 328385086 446948495 625762374 241215009 536452492 305336343 265395631 236662364 748973821 225406111 182530716 893364575 789898987 571329935 473328471 910125322 955732817 623909091 223765125 420860994 751457629 309706114 324892607 766609775 872266199 777867743 842105488 217795248 208739349 582327821 755049948 928722133 345719326 5123288 45094965 430434204 865463733 701765292 870758021 600536582 896680481 130239738 222242547 853676218 382997461 837124743 699018505 524548659 952213720 906370720 470757213 200624702 540302357 15333364 179478478 743284392 141237658 463668960 614375831 790725845 987213828 710338940 167147907 864581414 123839616 653183335 877240997 818838430 975826315 569322105 89135753 629285443 877523829 303414857 784585464 300614586 488681190 171328940 181545224 777476562 655532331 512381757 273211904 993462936 45209864 521590651 517190552 722036183 343049514 94138810 393650904 470156087 665587662 155031334 700481400 904957755 399438009 776003322 335631461 422860683 651061710 207983644 21295247 720835204 659392001 198733694 708814353 31886157 961789772 703909448 249953986 868686000 661228649 165290168 803740910 598253394 257370362 426603588 848731405 603540714 678150908 715436253 894567268 546723341 82866442 946012425 648760113 324791273 129143198 236217854 847985438 592242054 356902499 90756218 977389745 97353569 59060142 734444112 84896687 240605695 22471317 663160965 771427342 30336573 10922967 444932008 408686584 134844451 462944959 608072958 188477238 559921986 960475057 504294491 499833598 583108095 290690579 722087442 465094666 15119959 707308690 338907620 519157837 155710711 862628750 986123232 433746673 131296574 675351584 587028033 920683805 444574412 136131746 774281765 264333845 877535660 923255287 198115389 468642235 633525913 358996957 548462750 69814758 313724900 418927602 382911220 609691035 146980700 924967652 121581133 89957127 318869496 958946495 478125221 342164926 210144619 788944269 54177015 415554699 985392562 879243684 885820196 256463486 80987687 987499104 632846121 645217830 798092531 842170285 206744867 868474221 451414360 9096205 503085345 333301386 929406515 767682492 660275165 643892375 56491449 358423993 986256624 868606820 846198592 473119132 59668368 837002036 500679516 874305652 839800586 780597729 425259037 350792489 60655586 113914456 101782885 638392886 511517204 335191679 669908218 572501077 530943063 30765589 844321835 548668130 331394204 969268513 482313459 732651572 150099736 396477834 102776711 952241478 931999726 443337737 19348439 617136172 236593625 231460688 555845222 277883057 684993873 447820143 44285415 549577232 556216720 864400497 592259417 97776887 324832678 210498049 230281800 251712302 203720160 733926835 992027925 301445098 776965468 271041711 152013087 950312774 798425593 362560238 213657789 272060075 86284528 884894754 710163804 369447305 743958551 342771207 523150957 747104763 433870425 616158017 513555581 562632352 341214878 524366330 543421675 402768668 361174504 146258226 417168173 566264619 846497201 940882841 787381478 414688632 377416459 647581470 829992360 301383530 827355391 442479364 779805136 942469999 70760011 857325066 848871910 925573645 22757367 711530874 788637492 706328837 426468016 791240130 733447165 178256995 132617939 267972282 597114554 107943478 45848720 641332873 129900578 575980608 962378372 599062169 892576197 233622093 423160367 936041036 588827991 826620911 306464342 115579591 768933133 577374958 611269649 31777191 2463231 133795095 321710673 633397920 831252465 125478425 181533115 93121835 998258794 121315303 638472982 675496488 20084440 187639731 358409659 247548572 875733136 792582170 874151646 150351169 228089633 262275887 533012574 887623867 218221542 468168811 794824317 308504973 226247202 281822182 270786866 191283643 345953407 802299149 609611624 395498102 892364842 798151521 637906612 858890388 218610602 349123520 867803197 275722040 422082094 337867724 533665730 983966599 43812817 588476892 339075865 180436127 212568607 153838822 595973454 278236514 566536926 618680356 208927575 802651037 793969008 331543722 620793558 619701058 195789223 8197272 290653514 938310266 2711760 6738805 725020428 385488275 5062488 746122682 990066425 356524821 757257563 155872944 145849100 142480274 206301342 150680166 695802457 254365885 811510973 669664547 322289842 711298671 753856265 835049790 211670752 935451384 191844914 802550194 997691892 743607550 177243888 332768055 677655893 153215097 440831856 854829237 944538307 182731730 299238468 641928117 67064425 13253612 143696539 329570357 495241557 472109248 482554037 492580415 944758095 311696818 382605044 884283794 908365106 101205027 120381017 185175934 515036170 806053718 416262883 290574475 581910657 476284412 594139774 823030036 536430763 68646558 976298729 168564926 25977121 284764423 858535358 32967338 627958008 246359444 980004874 753547471 608196401 292104833 775515779 995592200 574916813 51296266 751529670 572270031 909392654 336016163 806152409 965474192 546163052 183194952 905314246 102876203 485513711 936303422 698607823 647183993 879964096 76871627 420198380 883976662 726441866 630312946 964946141 749991352 918610355 935496841 538715522 401275024 877454731 225968442 641930279 911024871 337569954 696604865 478050967 300677402 294522480 681576987 929104847 235851430 617181590 652980295 25587414 998647187 789137165 752160633 563173908 517023468 706513642 986016350 973620583 602997817 918967584 798936434 557079752 419291537 686763204 433157809 572762528 425211371 41404155 19208512 995925919 966782396 163781920 717458783 741233715 647288337 124047478 449804918 447164807 727436326 450448289 683014087 374148163 474284328 63264815 169302795 728445729 177877736 247016650 393871693 114095053 920828230 794805372 476816295 354832776 282104547 993671391 670607986 312294065 554735136 309116632 432110400 297738429 2706574 429246567 367441307 261954965 547900386 663600789 425630248 280955598 808490611 454648610 589429459 18291929 45045434 996411816 227807381 952484527 121905270 862549312 730770118 345035731 273638234 46262845 740880534 769380938 472006986 365929183 998881587 762479614 998814308 736749865 564828526 632786330 714038005 588713064 765219922 164499979 247844524 773640739 881748216 496336081 320671306 88379041 678273771 772419306 307654312 153453168 474789692 120608369 959298696 885673351 477185751 61333134 443059068 412937493 611608722 94299966 894035311 668742076 639238331 118134419 479718262 822069343 267719534 770821837 483625605 275055548 703984614 802985177 60644860 373188969 172776006 776171193 340786430 464878379 662050172 614972905 872991066 724972872 720257733 509090670 892520706 524068329 336489198 951499293 35495077 130008937 342472772 662625227 519313842 959777541 703145924 77606222 532908604 186400938 553000015 592802616 71140228 697970973 654361938 619800683 261865095 46446075 530574723 94703410 312313775 605925471 326513557 618261828 674146131 334698943 599030547 492082011 752096066 204209388 631085122 27259439 922702560 372805736 252969900 848928150 554843580 856676421 711239026 251494086 58378139 796542428 559047986 70453598 292450734 119976585 452876548 648564109 274141594 702022204 157380378 994242772 920463723 381663106 708791401 864865110 610372937 514780557 200817267 850538583 725372747 601656373 512104422 503163702 341141101 85711025 1518534 658976259 819136468 802665845 314856719 595602091 267518733 636782612 2946755 389617237 193541788 857531161 725559992 119382143 816617016 129971958 520671753 939389724 28186124 651602288 347227626 109214159 690582574 349414299 574983347 187764822 394874788 782256869 862531393 697625314 557171035 681923910 780595873 919721713 482036746 225396120 614906910 145097007 408434697 606950720 583389311 951430446 550977435 72719593 821989659 884439541 291750197 882817217 841170490 458125105 639359232 80927770 274194175 206176021 509701545 267471693 48445813 677064077 580348413 50397112 717955106 945802537 489693728 714511566 607652241 235375253 827983344 311056671 531932249 394223666 472375281 203681179 597254460 150201070 141921280 345433784 347398921 557443980 164021472 262770296 287416322 906809414 961039347 838578678 240420101 333524636 885405829 962905065 225510244 936368294 420946749 930780979 284935208 109553317 156691910 691185852 939450204 762593163 494258765 664448610 354936710 671988515 900019226 818098661 423680184 683365851 482837321 504586158 80344088 971940107 826847105 205780924 673885686 401233468 934863519 813903743 305312471 513904224 205507618 852360427 452130685 731593142 322296878 706392172 648124219 912066242 136211306 518362186 34888994 550589628 255956719 203408234 580017113 929643277 959418472 405079619 596997157 712537201 339962084 339143601 557596280 953536799 793510593 686232751 399064408 56134464 162771377 232297301 337748211 242397790 42947291 573816802 524502565 246301868 67382155 83835480 883585118 886516569 813554221 383498060 460493102 447714739 579868715 942174030 48622128 781751509 238009334 507261699 544084544 448588603 192312806 836930168 768971926 67110644 873068685 299026118 364530237 658427771 737407805 512666155 50464988 282215106 673691407 359732486 987661549 11571911 374961642 843795327 276910453 682532061 471987052 764531698 843772231 539693721 140071986 698922646 908607106 971507053 642156135 105102034 297304520 563312828 926314724 201622313 193240832 925606815 398766391 508153869 640969129 555718597 720223518 266869700 587999990 181886423 739697295 791700499 897708272 994759280 40803293 23225483 922701989 280623416 470415694 59541768 386930354 137966146 766292491 928213811 327577613 490538989 107366387 592534394 685240159 113138831 914336327 513344461 212492901 713562914 900732898 220520463 307382559 98247331 520749148 331423052 646119798 555045819 484857144 114830228 353616982 53682757 306869157 969727595 362285673 993486628 788712715 73516182 249577763 792861721 418841994 585509281 683072225 745790850 296687934 280892211 89658252 690012208 228847082 124384228 18965848 16186446 633175129 248645959 296579129 545743757 814415346 996626161 223175421 97389375 884286805 484675099 756029097 552085246 183351993 833307689 308087874 97734451 997911694 655151628 539394217 295448432 172145853 683606549 952071212 418354486 646817584 212343154 961099691 425885447 847744 704955591 183959416 312152372 594490401 28733700 400275188 655571411 539802403 882197353 489415914 70981928 706147277 245393373 616174567 630977313 590307242 403658232 785007449 976847247 276019495 288740228 45024667 368083451 269555241 136323657 90686491 509282062 259711965 970313730 253178181 580972532 768824097 202056810 772446007 167771593 668412562 341272746 89782352 662203370 517485303 682917921 157241871 162652951 795013796 127903919 255113614 979666030 171160420 474066961 887055994 707151670 660873808 270109356 6444776 492473409 178937128 483657260 283438411 22248797 999985329 716554345 835389671 190127505 299058348 549535344 130799813 83365138 175163392 414984891 823046811 662738883 234782011 700293126 847938625 487378847 68564700 72558982 354659303 473467144 426760314 114699858 567141769 353683571 820205348 657195383 534714849 309680867 798804644 912751694 226376730 502360100 843400804 84297837 302270125 991188126 831187362 330732893 809304714 348551519 878971702 849805441 919512818 526015461 607455948 36750520 334785490 687211459 123729995 19430703 453590209 465449250 855576966 783129756 989904806 767850198 237750864 998083403 134328767 750932980 627745103 201715307 297733571 509793819 487536391 851206055 993380541 519710452 211770391 455898941 609475011 323527891 521924652 14977713 701583783 537375174 797363748 72782549 329538380 841358566 79990381 596460453 619909990 864065136 359672186 63111326 300798734 458262847 498864915 779574943 600937849 119186590 8059638 423962929 622505257 171657683 620786993 444080130 402638352 480166636 172552002 561058364 67311043 281174184 455505795 468227496 679400455 69428698 160815254 612693960 985143987 442199338 242956288 667760508 34500947 883872508 770409737 512750376 77358882 958251372 808143841 327615414 956606069 524044355 937955635 13574749 885801511 342247732 607442955 672015365 585707832 503770541 350084472 717418661 356880827 442073989 961609239 530052937 748693996 668283235 229305209 268267360 648469146 104830120 350170327 430772207 408501740 901340147 903906085 585908769 286686056 7427909 812919873 392179496 542695899 4646003 139038083 734153744 673473231 876531252 576755377 216287196 554356533 462148884 776153716 447715338 459640598 972400364 273483033 503678180 193172583 314636883 45595784 366138458 548378252 202049784 393895060 420612549 148235534 648378568 675062121 504655731 407324383 618221434 751040512 163447380 964885894 656953738 992435875 141329267 7100315 121558382 176313787 942036767 797683507 656260043 12613838 892359846 482589040 322797505 686445075 945672218 480132591 123189156 351853454 334863521 246312090 708902605 841802483 782763058 773650638 63796125 35286900 764932366 818968729 116549929 534620745 733631402 605901519 402483799 183740362 295233151 362964782 874382638 382209120 554349214 993388338 697786625 140865391 113422691 477276975 98910553 807038607 548157824 910614069 595583288 45086038 505001731 696116404 871164451 676110354 407638584 890382492 683029184 435675489 920541708 686749028 11956726 491172943 396366215 211705402 522661608 18280459 916597225 302004045 531531358 630474629 962885041 331010428 529471159 439228332 275218998 423003819 325669131 447125698 792474923 433426548 781935704 462376012 218182434 496864480 57971480 940593388 244522998 542010730 529037577 560502973 945850814 325272074 110953940 537835726 370092861 74665170 481971905 225111763 17802671 750754795 199295450 917984569 88223472 116714869 385898964 300893451 511275919 998439126 801592962 734511681 123448822 19688769 217944003 433128252 516754377 939624078 55532512 159447821 363943754 868703199 811229760 828357342 647387404 836894991 403020909 251726667 181878461 607374400 160169612 84258062 798310442 114723307 217525109 294642422 311009055 298887655 66088860 697361848 80235335 287915910 811693706 431060818 582360599 361000362 847837855 380323177 989935998 71410806 885644325 383057850 934875515 97405495 959184007 219461681 562248460 46165400 986098653 779622304 224721223 713160026 301255197 438295039 363176849 820400716 125295654 55497508 475515272 553186475 257826244 606162587 36969128 47631769 510882956 290005871 420758676 495686895 410446319 328470199 84784315 657355048 896617595 518858305 67413846 273711191 312037348 244592084 370828650 51586326 486324485 379283236 421259649 49299194 259924125 488471492 813501970 963322897 32909460 196598909 409996435 652195691 223554031 306150973 466168273 712573808 859061151 583682165 992744592 810105689 318876790 399694913 221067735 107481470 64703630 74133704 96157016 360781237 914161624 178271184 710534822 75136871 784159473 133355125 789171830 422317107 344622609 441344240 522243716 548687607 88518335 709910833 590628982 146297464 392071458 715889055 178530316 376493354 775317038 62566247 773933099 718258102 543928038 152490340 492879710 661375843 128222770 395551895 535775834 314810460 449345932 188359729 340250053 237629167 264542837 749506546 82528530 527414173 761343525 294297744 571303612 237038414 295556901 447179985 273503781 303330704 39604158 647095618 769128123 276489714 44118463 591859352 257004232 718700523 194762887 349422836 285304620 336844307 245530942 951081190 277864084 637917834 380464864 526090678 701375655 731753135 954822875 195491725 595546982 640145218 612689154 107637236 741471581 713872869 746826046 243922199 303117517 497622247 208626647 984384001 527984532 770794164 239534990 698942727 360978830 60984522 128245306 91712873 379867820 443906468 771583980 537480062 783413145 545655824 997321854 298377164 483187405 849961295 98848692 577729867 457888404 176806313 53432541 976170668 286334056 560016476 527879344 525025302 828217647 914796923 728790381 322264778 705471598 870914395 669210255 465171278 186095108 703490369 182432929 636962601 897164423 551155638 653679130 171436255 4136094 547599231 476338276 260258037 677038833 925974886 11113893 105742319 687173143 877998512 121895381 946812402 662151712 309963332 501521953 120614520 587023009 655452827 756924340 651647156 351790030 883095275 903563161 803464441 341747533 809954100 716296780 350547299 666889765 542056046 321529812 612778225 771768618 728825970 520461376 85951090 296018305 282113009 873032142 117918686 806810936 509970090 232362848 559139891 231422370 166574349 365264050 450261674 249954591 858321430 702866942 773405241 277718875 339175264 149955934 16456223 87037044 501908022 104852821 995150510 753473505 347365147 459156590 607015631 593629168 680571481 52600440 943344080 84611581 286657918 451359719 10884687 81748550 449733114 998797460 902189976 447974978 286325617 935712655 386714230 81013158 998865645 176699836 914661159 679904903 847001413 12034241 309068584 807593398 125622614 740389788 828684449 374846581 519796517 458179993 193746606 817474244 774382402 227671472 46650760 565481788 467868679 975159468 660712160 673370575 365810586 769173049 472006663 164870577 229273120 78545381 389822180 721762116 330399441 108863040 732414774 836321638 721568262 521091815 277605659 703910117 665709132 706700968 632796404 567080843 994432941 535007578 990422083 152267803 720707409 619052038 4282635 52234042 644934646 765781351 592757832 675425318 403012594 576073629 914979108 767014954 908529963 799975514 158429140 906716455 83848539 79238534 915434651 975992502 101122497 362830550 508214139 46337944 65379996 739194092 571839210 749699431 373692803 5893695 259420854 792814355 173879697 70821365 985895194 657608167 163553872 422747095 559483530 314193799 851730803 269430048 268262566 752544272 845343680 436617652 130325011 841018651 895395848 672970309 604826428 751159026 773475305 873661252 365318664 458351056 902495132 234992567 989589654 302126961 268837818 23129995 811473844 155152353 500964192 96961510 940542693 375854647 748146474 856297004 737931045 273588187 372000682 472684344 766755544 511306789 581090222 398306262 942256509 510540009 9273493 741567622 162835011 304301722 14979837 718061459 81172371 480845569 113383891 774590732 217895197 287448692 502948059 797438357 862532351 438463773 983287210 859909890 832594577 143290247 984923410 352054831 389239513 12212264 894395976 950100532 182214020 291794196 398272352 676919853 686256443 823332097 700541086 998262804 886749613 935328169 213247574 59838738 542657039 856431629 444314910 203834613 517808382 977730837 357117680 194452499 510287054 460750683 830204139 117131400 745851399 958727889 496871004 110312799 92511736 349110974 950618284 2764574 637411420 987472912 794345768 341615543 378467636 862958227 78026035 252948643 510735188 482958440 895322001 550201871 248198823 936549818 319801993 347304414 133001809 365363867 197821452 115239251 497290355 555899455 395069747 680907374 983444152 557310889 857910849 26230646 532026468 393967873 500743712 92350486 815835251 861256399 246879009 461762179 168969806 231914867 730651675 129649096 222500788 644843755 927174749 961991710 271305802 472795833 325980278 38378527 765911115 523697284 291483777 632118844 902262118 331852412 904840083 583589376 395233842 656632855 882036536 632841955 758445743 48357399 669037958 23072851 932551594 51899526 443940552 147320334 505646394 479907994 860164395 751092884 350547812 186663511 892482529 969262987 921110526 654348615 781731915 444239156 553702008 172239322 725424954 97454505 25841927 303330670 940066886 805954968 830545520 925313986 262694734 963788372 542782891 575558757 555429578 138279288 662278271 480639347 926542940 357691628 270075855 505752130 292875531 163733971 99729681 772491152 786303652 751388639 701650083 445551413 687058962 257198362 708781908 961454285 261534937 20537570 41003031 587632833 459395953 731415194 401519722 328702820 719557597 636263764 430504603 791168134 641500664 383990317 86671164 207658152 370511512 675161969 441156419 641129855 104063798 676576049 125302138 381502045 530218854 656579439 384246809 438067287 404348228 754701044 486918740 49709605 719009818 121136785 875511937 45457821 265550266 238184760 442841363 737451466 242746558 686484165 518998820 468683814 601613567 345374292 121706759 356582543 370274443 847373072 988369539 128002550 189826213 420511849 454242432 927432348 827719064 277190256 884616616 8573835 454248077 370611060 945419151 357085803 426099882 204505727 99946410 250416952 319305785 864179043 459087702 651893681 595764636 654443984 369587090 419116114 738353884 352739893 843896171 178022389 292516577 98523695 236377674 980411212 236382396 890944397 636492484 367657854 441121722 137050219 664713923 71289903 141094476 391641424 41632839 663106257 792976105 224834774 965722899 659157486 375395189 963398832 884963949 322175194 666826912 354543833 379726254 724113464 130171464 211922922 313188803 432006138 781273171 13005732 277794519 519205212 320215281 813356197 519579011 50457500 937768714 378739153 73099914 452472327 779351404 480196799 80287117 886754952 898399717 102398288 424807808 166758624 51187278 280313468 221267637 689292689 826104066 394008169 542917855 442017157 819557150 463667116 719571027 428650031 856868019 254922754 792144138 576081433 110458586 607604752 397403890 83362612 304809873 36037956 795673581 787168910 487104364 659704836 487945940 935457962 640150367 561799133 76870746 458139704 718538134 935735062 280358118 239440701 647780380 566623458 885470240 9197471 663561095 567877177 192265392 962298745 909098338 706748796 565521847 97741604 566214912 203940072 323696620 465982287 408698388 819685287 180431151 281165707 348311853 82572580 14908142 640019486 531531496 211445358 419364112 898281152 911115175 367659828 708339777 334698463 439758976 651464657 442673482 534023940 991330358 241404949 486882793 152497305 783746510 766485810 431046648 854122983 584861575 98794212 918031943 371919123 333780359 36227457 930000234 956147007 66513055 797381273 266056573 904957550 547382049 598881684 595358588 518852693 833814786 826950754 847673002 120099843 582930920 605034048 632262694 800320220 547553859 110409193 852694448 695541143 626689564 378655100 794896709 461404042 587682893 377169179 842283602 526101372 605309690 934248325 665594283 594105448 283036578 308971876 912108238 914347259 723983232 864593411 620590544 287371573 279905264 823869751 345739034 642168340 123808963 177901019 223930369 151344201 687897665 422785934 132079607 7395172 325519400 903310639 89034339 68090713 183615418 612082924 13165340 763104161 988712907 247312914 351449776 710102035 989261758 836913254 700736381 325665839 220318831 110485217 815804189 173635265 170675032 751625763 493367373 495420787 350062508 651225713 175839809 117976735 654049430 431986972 99872255 926666311 950206983 16375338 913757774 501517082 157736705 356433425 6818715 185031625 391122065 212999893 589990498 866047249 944460138 893126760 918562440 884229360 620501557 490527539 940866151 829768918 965422464 505717867 900909432 359781630 436068942 985787697 43371896 788662517 8032239 838573764 59375364 256741296 365519809 657415965 920761289 297368028 282973126 909403400 582126804 591647407 343002928 858629125 234513415 867237031 376425413 867813305 768431482 144606444 369439669 127691449 312710874 448192012 218597771 36844779 712396523 431836554 208510399 391817101 521348402 897446961 233225128 833187796 890235389 967061611 94085262 137617690 624888711 448880625 586748394 651643637 67350610 338296020 863990340 824688541 746611532 443852974 169624711 302281398 52463602 479150001 321839592 251493750 120222448 801534888 180510427 891491328 698520892 390651139 74054057 853797843 301983819 851097491 898267181 782303286 137467684 349948460 106805466 660605042 241338269 566462755 859764165 712913080 543800630 850274510 99763306 140453292 795996203 702213126 94788173 859773108 642959049 616356200 603524994 247839071 586137566 493764588 97446113 486493806 927457055 102725121 898059899 715577475 94987508 982329183 690416361 617377086 68491227 201981980 46382322 19924160 708633626 34975416 673015697 318295596 278343540 150390389 499384235 666593766 108304591 441944213 16821891 437476566 367648896 371742952 623699959 330177533 418672980 429073627 571902335 602522190 992857654 926597060 557551178 16052512 661115613 829524575 504642280 126230518 193949705 380813045 657604202 349114524 549617746 866864280 543583995 247664673 464028528 610025921 411495595 957506717 391426152 169488832 214198999 185824602 591508695 139833325 157295962 313725298 610462414 504207568 576973581 38626654 67187964 216798111 217026508 706759709 823660400 617191685 798223067 936354 881823304 840905883 240597851 876276956 822518559 511384231 362412674 785258205 355370975 260657904 909200191 488261011 310253574 268782487 401406129 382942336 443662340 507794382 784561274 565692153 84138758 387169542 562482410 919455321 254743715 61539787 902966235 366562371 635602529 864290295 636697080 838212453 704452630 354543888 787864780 637161295 50075492 623795681 66569809 954878382 397507426 832010244 753666930 754823029 431759357 988213798 760250147 65212436 341994172 780318578 492696176 234979123 368371932 579144257 964542029 123860258 129456957 198719517 872148306 678876636 270662806 411675730 872307305 500708871 71367739 497284674 102459624 342189438 509612770 426771925 278830033 829062764 82812603 631518092 655860250 722590719 861371635 913680403 110083464 863246911 713229918 14969432 93685450 923414326 194993966 658420816 772281322 414171766 197297026 935591797 969791609 112275041 695868354 732565242 18933659 702492810 879066841 593346556 7195819 768669152 787423070 312178441 906846224 257935400 530955878 288705057 463103182 90218024 304677540 151362190 890087228 62576072 226156384 1011212 453609730 548744861 406072069 587090562 984763670 272848484 448889595 614886529 113300263 461209466 207779462 131406286 634159299 212146647 695638150 94135088 427437429 36176830 924722351 436182234 245257988 489925399 689143782 14847043 754937383 27049159 217513837 263675941 677676117 460531523 745882348 181267889 633839131 236303068 598929766 683012591 139034999 930971839 423016479 997406048 235573173 783673245 71482025 860103648 430664337 153892858 796617520 870319610 953156043 664786167 749734554 38752906 888476554 366580262 344837380 765771164 98844369 715894504 449763337 810361050 89335294 262219678 568901781 210803817 624223469 614117822 128611338 497552596 735713115 515395768 823024819 303788465 65791931 965483919 715033558 444943171 652427114 829645804 478343845 210582264 816379242 242650558 17890441 397986257 181878049 815040994 895130828 849345743 722658812 27751329 673002172 631426421 877505297 622432320 108223035 378322786 631325402 213284749 582997397 500160136 776438086 565133433 336465453 256413328 973837750 827193238 347324338 286821399 466019648 325572860 387205369 232737788 781366060 194043791 893418304 404498662 395741790 775836606 661571325 540593191 776671834 648854065 708706934 64322291 642550453 354688219 4827018 840189730 170545320 112334061 419805757 811344047 33358023 565755100 586383436 611923340 367267934 897357757 803731003 331863402 302674507 436027941 872433849 292142667 438011346 422089920 676049378 638943124 13404046 555224879 169578704 537249247 103521604 391422520 198159329 248043674 148248944 691896401 445131657 14442997 759171796 923503089 575016919 767886777 718175116 16358206 954408656 658473878 422936413 378749757 425197473 532895098 891222982 337267051 623546885 630331214 685363257 128638027 265338046 86242080 799540634 551841473 660121443 930178087 140644798 626757474 531742668 367599212 612214637 557586436 958127591 316616876 73651129 846560698 655821980 864707424 168411080 349878629 807119306 996455955 823772016 502007283 166337974 121878494 519349236 903203103 953727894 772083821 762426370 859023394 558802117 591245084 113065289 163390525 739370864 72152922 347801950 888568256 585427365 412176961 749974914 588206463 876283240 896685870 549238909 75442658 646953329 203125763 783503976 10173542 677679044 509228456 474323374 613073613 229065393 388641314 326107058 591227909 430990232 971295954 224607304 352127126 821574454 835117039 41296148 869579404 227566353 595206473 741781419 962420819 855505946 599107427 531864577 656652777 294911709 998955736 357649704 483459055 393697554 591899720 916761750 692631648 267219409 2153852 201673222 389810499 540185363 159926012 283599080 711088578 751288279 442246090 933729612 171385185 280377137 528087751 922754793 598459329 814712017 102876689 636075792 64000850 206593621 103904042 300629434 331270472 687487623 879248145 897466145 755841154 272231442 753752255 587948797 424777253 654531640 973659994 153127722 755428244 765457653 708065463 666529666 915490500 55852132 674204469 112442889 538335671 492359849 946068761 67274460 152451151 551068927 477923321 766675585 984898364 687034227 853489793 804821137 786574992 955736145 309581800 627914806 545639512 885496868 354964563 80592931 28746003 519132097 14210811 253255143 111134001 551309645 749566106 157804583 318241537 227077597 585996228 605966343 135593028 70050888 792234287 436867909 580283991 119789184 387585104 152868616 701492083 307749886 80116727 373515763 790562060 592121584 358003978 191415940 175159473 383076166 850490346 33648277 461620701 406869650 218835408 963309607 205647417 681311358 995002823 658575867 927579441 745889540 80780696 101240046 848579678 957368396 547149056 25491539 157361239 515706211 339047204 344665019 924236980 914664656 71923545 122714724 506519531 956190998 724674494 357510228 512997717 227765293 186628935 18788014 533267072 674298279 898969628 837080831 853909500 79648786 858911733 32023176 108445883 537948032 655015282 10571037 491234678 847385313 136686716 609965010 813172566 597749300 406204470 329803976 539130303 850059455 510860635 891194393 868242524 765956534 901167203 971938422 493043889 328148211 89417899 283780620 713859643 942602502 641607218 902944900 897838512 955072368 686353533 390516208 648995130 673980786 135777411 781107667 548814751 868175176 338717272 507100623 560444619 487378040 639484788 460119780 663692100 764031835 124064831 269274085 262113904 689864475 644605405 506303276 166323030 343954283 132385239 129728900 463081511 546054003 598780645 396438543 269501410 644969852 102823217 485767777 188963650 838210112 575674282 457479305 954242600 914508754 414261268 872913387 8153692 472390252 972518003 175465692 678406545 231568810 557042137 88119164 18109920 489734505 39620184 645616630 637160799 672195745 504029273 429114875 673979454 193562845 70330311 480211853 631059011 538968094 979188156 644953020 463406071 269784543 908791308 652950059 989332851 763374476 386264053 834915555 278491319 179112457 324674796 812966758 697966922 508960235 352455756 958738533 746374266 877893320 72846402 103087215 683753306 742573019 746822215 129314317 179949336 361040765 51395250 854680906 344005642 767488140 876509512 8029180 261962886 940149984 420610256 526622216 746889131 830248067 180810550 610866467 356708198 494134684 688975076 321633250 16247119 498244346 892109176 283216025 131570665 65077304 979435509 860476585 174398174 227182372 435158062 787204140 229869774 594726171 740431902 466572664 658090500 885835619 664606673 541594886 994358561 262186381 167664082 679293589 3647924 834998836 126977214 860682567 304668563 256945264 221322045 804132759 56371050 462417774 755753047 66537777 17583531 31717845 165961808 233000303 539878997 806208424 972172793 254977961 208941022 852860216 20645962 61449222 251747663 714358819 304306506 894934624 839783296 104480158 164475875 152243222 904448579 791629996 434872273 857232931 79247265 672544765 999953942 969861355 120439853 373560292 607603905 383631469 658177636 574166650 925836613 327395629 104995009 895146102 660251988 141545190 17100524 136210832 61345312 733883739 100048727 957657418 831673092 85992416 964129548 810590411 270043663 158258449 335332024 171153590 434330779 762410366 436296688 101974063 232534284 236677757 844034333 521825111 512169541 620988089 828128562 78429437 614922136 303359379 848119761 796140504 166136298 962767177 155510072 183262729 497443474 676386430 615364905 4408983 513130412 785434258 450389891 885258652 786351156 262523791 120497318 677615683 629117490 614726439 150897392 721968197 611323790 755692055 512276843 169877717 911000106 351387590 202384870 134139531 538823239 552548122 169083182 43140621 877107215 769188673 363538069 514819269 418485140 176674891 69203557 996488053 518039807 689443020 673305573 993397225 967385595 904823059 366885598 836988838 163419982 830327717 574025547 786149409 282004411 862378945 7601669 978028364 395589130 855560863 456026712 727232131 182015326 269980250 458636281 134178856 966826641 996508245 781196649 690896198 889875074 991013973 719265197 326812261 469195244 168474229 278340599 811538155 158762932 941770506 306128221 24788554 61011569 670707527 127570888 991112945 567992209 915161046 850035478 510107165 905032714 782209130 134178108 613045413 534146620 361768318 742123862 135347297 548985733 387625245 340589848 148382728 162723961 619386695 359023393 936409679 870255859 97064051 136893937 138921545 894886533 513608841 808143663 6907992 556066232 929344660 420572435 953944222 734190211 595903323 704450381 117891996 488286782 187736450 338612099 337018527 442475968 999863972 141871582 857285188 182238940 81414209 467539082 815128712 597103678 548607291 176077461 722300363 116455595 703270535 90753956 200373742 553776056 703974664 469033866 409557155 363083783 460388046 175400113 421502128 545290644 355290695 827434636 721128243 124860460 81333076 435163803 919078277 204676426 310410727 90521799 273204796 822010756 426860720 787375574 292638820 888193211 923724254 566876362 374289918 489149679 241673656 951743383 493593198 622677937 217869666 307252341 455505936 623244612 317491419 250859428 557683064 108243591 171992021 374482776 758633187 582661074 321853150 763197108 269440449 151581151 747321256 280226245 666891222 924688027 217636137 879244338 355000357 311319018 560927720 622326236 326674020 849588828 488627944 801311960 72463957 642015328 842261662 468587794 256969084 740407575 238058627 137682033 581366051 888900891 592577545 433858228 581114473 486397544 771927474 220973393 771395470 911144565 877901950 612824679 398860717 166554739 424468084 115582511 377137439 938913545 335564484 468764478 394516469 584079463 860485696 281075363 125174066 952525564 254539040 793492675 406736467 816769132 589500985 428322110 946374592 558086793 723543718 149535114 869646159 322334460 223167519 497330644 497862521 593149231 336461117 7836473 640170888 75979905 287300974 710377718 460581783 968960413 373592857 564672853 456298392 473188146 718021326 680680802 679014301 643724723 151775958 647828389 928556304 898232639 836638977 617906605 766043032 604268750 287823986 489185881 346084358 661487140 657245649 154796961 421702189 711697104 75198875 238931594 11151319 712743913 533097110 618579548 780106092 750828490 602670559 92877404 938354705 371982833 841773634 478370315 188028212 734320205 702600121 232447947 245740190 995276887 490510378 805331453 478554852 874171999 480026969 965454282 559742264 884124703 271271748 429702367 726324971 856361943 727873153 327257047 237233295 854699795 694614658 515839586 331038244 208819110 687351356 249029100 985864243 983407196 556172119 43874638 695473048 99178161 904716082 996350090 804006774 236872450 324121410 600722780 790118053 735647783 303213483 884248148 203471452 903901508 739169177 657240154 840537569 793145758 135468123 754887787 474425587 802390449 121009341 581089834 618967487 882134792 430141083 408780630 15275718 824337795 471814019 810917759 840463726 703931265 972926638 237007429 150317938 198835446 351853339 893668010 295953860 586100065 415284374 815088102 348987009 429830106 704817326 655716642 496625401 181022891 759971431 783989707 752054223 345740986 96190258 745874760 999342823 789380900 602166054 232883723 138479276 311287731 685195820 516117354 752893766 544388306 621327016 541958011 929042634 400772573 734513277 77217382 914003656 248402670 761687286 395775112 696567823 723059848 414180998 736765276 83140025 729836993 908555211 507725182 708215300 784832332 690052207 84328388 273405281 369110962 5363257 59135230 13266398 391069069 875653301 981114329 222662851 220100526 36272776 762135023 566822993 685907719 823988938 781015259 725046011 767295574 527145150 445983403 771225010 936434972 970917606 109414786 552249484 417115105 688457291 581748277 629832977 521942013 847175695 409999445 51177243 633713107 933044509 962119454 65606671 175902654 207164280 789811146 283564235 155191492 708697550 413205092 741443750 247634381 210205865 298140246 73093500 271113626 994990746 830620993 469114218 25009563 768683897 39052737 726467498 527085284 112525918 293591888 184235947 788817420 697215387 378293850 458449371 177045776 939468500 334041358 375882578 796659813 735983730 151727010 648428811 844736580 82859718 684614508 871710234 640839827 293491263 994640438 188245129 894465757 446627618 312141435 144667087 272183368 452463626 330108362 591721623 940214946 551029618 262283926 514063952 302787009 427461899 559291672 941728347 117573529 508535109 365129160 830742238 20192323 228970416 518490854 363490098 612335063 62239664 993739878 941676181 825323859 107064465 990724026 456540331 921354813 200072759 474799220 936414064 616753796 576877599 497041553 829537422 904411594 637536996 608751279 839543842 899225711 815764673 535121018 6850337 459684790 312140613 619881479 321418283 861446187 152144860 748229375 848591950 742026138 796310678 477045068 764944763 998377111 664135046 350538194 828202089 402024677 383209861 885321605 579571803 764753825 314109528 859413667 774003514 668644115 259302837 691182922 617550995 705961482 834101891 140460456 742352420 617155622 231046411 122997010 285358239 246769016 761352882 865262326 839586963 483536250 194733660 682248083 915621572 205475728 972125638 826252430 609177840 188562486 448219797 716423995 319472349 932722481 461121760 333873136 356155039 354280950 931995223 341803745 587134398 855468664 653508298 720276537 381215956 649770657 542547823 182089366 860544619 513822241 774198981 492307745 605444605 612934137 770724692 421077498 102740614 992964889 69570771 857849074 715353746 605988717 3728742 704500853 723454943 238131 580960030 39719925 686439835 333705610 540890654 727486277 78279486 912572666 319942932 132039378 544712397 514740774 529185456 84608907 291535957 801172074 978377836 102024938 305903702 99024038 293684480 349087801 750159447 777067310 37857153 622277537 359836318 490451040 172313361 632704451 737677867 281018962 644336247 631405758 86628396 29181851 998588626 275210691 976998729 528763283 873167029 940276403 949066894 430342201 434484532 819048885 621200744 605250146 990450270 986043859 359499950 594002656 72127441 716462040 413545847 965304032 386149611 822098667 655108286 909011423 249276907 604170673 978668253 84222819 551500381 808277710 410990480 290601402 109016849 696577479 365304761 229644555 708781247 312417444 890210290 514071608 397026667 876104340 747415582 443925526 78432988 387169082 84296210 735421729 699443223 546660552 157324526 998985081 781186397 791425862 518759402 699922466 701743663 81350565 956109051 831518749 898053079 809635005 396225796 385892388 745792718 821361195 163707454 38348389 595774991 575440036 858321725 322201362 614505202 234321738 455171151 470337129 448019410 71257258 427881948 833230675 939895383 356240848 948589476 963011963 650089558 401441613 686499545 926500462 10036022 521700789 495777345 915995803 149843640 396209814 485437743 815098707 812024160 730005640 208218104 905766129 707063474 941909465 681813601 822110698 574892393 452518005 535154961 678061602 82661988 218737687 837294694 867731171 862222681 474624712 930079835 47044807 427779539 428629518 383832972 900086105 844836325 64722930 944644306 442961028 584525895 484421670 795444419 238370550 589384156 888673897 110110988 162257920 487839680 773246692 86286033 225679786 155074885 432048550 35478259 59615886 837153415 800704314 954027297 289288951 493062213 176107396 813307939 231842061 609229836 65710713 161501502 622693402 233233761 93224467 30790255 284306880 280602243 864951304 253375936 987198237 78931903 596968918 988397677 216963007 109775331 227069458 1763172 11199849 891750065 769468490 344271917 935111282 270677854 722296627 338839951 248850865 283616860 465683498 701757111 924649532 208668322 580346498 153772151 269702624 251196912 398647158 654757591 250354279 625906028 386218803 953750012 527569667 911897312 130128580 82474930 414568482 25551957 56275992 549275560 823855736 547272919 326203046 250388567 321595467 887290006 687690417 3311840 933373800 310571017 207600691 909606334 231427556 489155021 602551408 615446917 638964759 60745276 331049911 593812170 15551252 744841049 532874291 622101529 866982577 679861866 115447438 862506021 374236805 800314021 711671601 911646582 529586261 285115353 448401219 232048040 272067319 695070724 578716224 610176652 876524468 237352487 611232481 652632472 481780163 903876889 427953766 579634972 323030661 45551582 802181772 798602128 79173770 998082795 686896174 488308583 416930921 659000045 207223609 59658021 870302145 348323223 17308280 650831588 850267268 369380763 489463812 946165867 878831164 351146302 919162187 616145846 810176052 840471525 132850818 190565844 856756729 444752312 936574730 347335528 724431129 986121486 213571079 973890081 868711319 502943281 684210629 500466897 228174680 499926333 515603130 802146230 674370165 567498575 715094688 178517417 825734060 331329028 504779408 169577339 280466319 537009413 732330576 138132813 858693848 113314261 43079636 601555854 410834803 470308870 282948071 894170335 672973617 174434035 758776924 976969498 121035792 342370270 761991124 407372945 556515261 529415563 509408101 101827570 259718599 785089294 751120271 552883908 579087976 320338137 97133130 339091121 150234093 247241730 687839759 605913344 744004155 990059350 517818795 269306249 512547063 846299925 517064065 671732207 130990080 897368927 22889436 452021524 527594845 947895945 54097460 555519869 717664034 684596417 545033279 386036087 319374251 953515001 231479058 974519038 414746060 372983657 812749111 978417166 354788415 71461843 728982973 913888985 207851448 387297648 732812046 875054648 560372354 106144049 762326475 200751348 916870456 11655821 325744641 941944718 665146851 56922372 570142722 856397350 576624538 934926237 764324848 237667857 829855886 821507151 706831534 761556113 843340828 26854737 524302242 513311628 58565017 693250938 424601048 476466373 459799669 616977299 829971354 382633768 468972329 893612874 18091193 415748298 238621929 961300301 540393569 290898131 124477167 696680472 141215265 544435466 371777715 700130361 962710183 684064741 581554058 993238503 613784458 388618540 658408795 972099719 504360405 362874889 146923596 675837550 223213234 513225113 686659955 30349414 113825561 643752160 197506442 410100837 252589072 496639837 577041594 430631860 275560766 667241078 403051549 62440062 498028509 293550137 754048352 54859227 206669818 452892539 931704500 387729578 489119129 102379312 114172602 750828706 19196010 919694772 99992496 633633163 312982729 441557883 534755278 880744374 882962997 882643014 530853665 390345787 266916605 428657230 285037563 302618988 500818155 729441978 933389474 768575376 12085120 746181534 515097649 461740477 998804351 595222882 851552439 356389293 866923601 695870874 189104366 452009761 38262088 944156175 675533056 829624348 400062326 98460815 579632752 346826711 876570408 944955698 622714050 458259059 308770633 95567481 677159712 465447325 360919043 324381173 812091364 727695517 353683440 115942923 872436195 429390042 377581727 412930435 537419084 480350905 944745705 14565429 909270070 813064241 929016612 814528998 94510301 626642314 942898531 785254910 259522045 743822609 374220853 621305557 446103154 32017692 227665149 847444538 994529622 770031875 627966400 963689555 308963947 677023461 84891108 651681352 471833903 557622312 942302430 731000876 295833653 806957859 616539285 731159587 764830462 359391016 22887225 781232764 886420802 725658094 796173369 492710038 133864430 843373360 834382863 143178918 60590929 498808660 896053517 144165138 268988571 170828460 682249030 334693365 149320476 425015662 309298354 424857189 375026232 900945430 83157568 526498345 723422096 470252278 691929904 360841935 328742818 934622044 765305360 182198678 263522556 470196813 542255970 553215186 942714731 247432643 108584622 508681874 728688769 464082871 610864559 464998236 450591088 853810632 585506883 104416482 197418073 347635280 662745029 1634923 792191104 973309431 61745093 92013918 35123351 942717879 953815520 618033761 706105500 912197813 258805967 628343569 165617189 251951211 980269061 787527734 233774577 767494498 433336531 975518669 761818841 4719752 540919992 447107646 422673364 204750639 710937877 575623658 435450484 715484879 449327709 724446813 624337980 172671846 927088904 829398249 911263789 622860229 335083901 295177654 353400579 475027950 709016915 59094948 891399899 832227185 946758114 731179195 464689673 340000494 787840491 775429700 414521211 608161970 340934723 704570292 741036352 426184110 603266610 918708885 169909049 25073840 668088018 749698366 538444797 263375788 944357641 487567062 241809606 125816942 314875366 557629456 690348130 990765699 122818240 910331927 333938750 885218399 678976241 249855843 353973291 640745116 442184324 253188233 698240063 749868090 356222367 916272427 966822334 129778659 278495508 241088460 509395535 451131520 747397404 252738827 742431673 355005990 656302575 967217604 752879017 698805531 740531897 126006018 609118904 647916710 298782277 370388691 175740543 133510469 305803651 321501153 453914837 972154570 161800122 306070587 264313638 245703315 228904697 423469256 790261272 990393524 849539493 761382687 459882838 887654537 281295353 701968302 15167603 527777023 860312615 621798433 444552004 267471782 848841142 699136216 309485933 794620774 738019546 743393177 98112517 14014802 266988066 14053271 214898049 494186514 315119309 553508372 457221378 993901246 126717839 693433921 976923350 434362113 127412454 657452841 17935427 580190459 705004758 317602027 144364977 723217493 648991216 803480588 499141196 670260982 75059568 144602285 746279961 722636982 264479061 574688920 912009065 184656232 986450881 589490000 218174448 233976080 930984446 763669638 770601311 81518924 456807877 591256937 264612253 450729251 863945735 484611109 950206768 600267881 269582944 273988459 450371280 751457374 50501454 33214249 791717389 279532206 61102392 928812132 841017237 848247383 835289947 906176569 709474213 915974860 54602739 760543296 781664321 370721767 892644218 725050458 543198703 412291315 833567916 537171435 275935694 397809387 699543426 235325347 663792595 596432085 405774696 551530956 782110519 493538264 216378177 940974008 474571376 544885652 132659888 294343813 51495860 925994692 40157244 556949848 728626346 340642609 104703689 829363806 198937251 738446879 528229737 652560872 718463724 829301699 46713462 466603929 833072142 902075970 170828120 425904416 999988049 544660939 88187253 286430781 849238217 20379086 987066431 875339276 295954468 437903578 334512452 988981732 880408736 597801666 769709045 893501515 95291632 837461369 584924649 914772177 243576379 669361402 635862037 363504058 359189842 230408221 773431728 387431868 423243892 83235303 822300002 871604441 582278871 602799641 214199155 911348920 595245436 264393431 338432124 167436180 100323897 967166774 809235053 116635663 39139745 767711977 876448887 9172533 974154683 990979091 946994059 261010082 595509416 99138440 479660091 309880463 444313791 760311339 37248140 993802307 677355044 784458845 311326030 695125863 390186011 549448610 630191477 572058932 186398758 260889901 601422468 499938812 231787050 94466385 823607761 56991454 453395979 22651769 382495328 720798265 988303858 617317743 453740665 538397672 99433756 70201624 813148817 78770888 178098412 38874684 735366437 367287670 305615162 992902226 970535238 690044227 320870988 467797761 526719934 413590516 994482396 587029251 502190598 879442919 163434941 419382628 256839683 989946107 957464769 933223673 442713503 314339448 926288529 496829756 154398464 395258990 694294515 250854904 730085391 650562360 656926880 709169678 862825138 82926964 773567251 327727395 911486230 570178420 836344622 413054556 662649201 869673434 330922204 88063324 729628108 322043416 474809790 517993228 969480891 125143338 915557649 199526852 826396389 433123002 715845116 706555553 175334334 249878992 606378307 337675319 998778714 42167697 566388827 932490952 728732962 612325161 243295362 587187307 407094287 719364630 751576400 399710068 243021670 478360937 124750219 378080946 471873381 263241989 182672809 357531429 809412953 866693075 954683271 734604449 738981973 492312592 11377916 363155620 219094927 622400188 84650448 60977067 897840813 595047523 257672222 801129331 221437963 954205268 978498731 121611133 981706518 207999352 323264346 874443562 54507206 801297198 42361606 393414456 897166072 520396413 674555008 81605773 370916397 163154182 603155260 394802414 464949802 181844549 100402691 528194209 856628850 307828627 43103960 780210497 803194402 340238131 523714744 676011798 801679830 583477051 835635787 403185327 464273499 382354820 478696829 139115972 742954652 390405214 619262735 985696464 831907298 939153959 531130254 839391172 763192931 802171821 92293266 608449178 211198898 980049934 920172743 922088312 360767310 518241083 507486555 550439053 897654595 938979626 293534924 620206052 224442241 316874121 221710813 218223634 109952428 263849125 69494484 48517800 692032256 335227957 658948286 36363015 871780989 809051797 382151956 735982491 96117395 142632058 395813807 680538030 670514618 657881164 671994142 742019947 720073163 820430517 646682192 926681321 210183312 307056398 340221224 427169548 403029473 964896607 200861359 870638749 317701991 60830308 135602640 125500820 73186015 615524706 144449122 531735862 806167467 190946938 531316487 277942666 253551134 124563294 480358082 670340656 366650245 244282905 425752062 957285507 184688784 412049800 660944355 974729075 957529850 159521097 408094669 533567530 12484064 58145240 150753942 371445457 695614767 859158753 887635662 147382102 289848431 135115855 250399884 123330807 610621511 597631756 445647893 397935395 96339150 100844002 995138626 152145064 959843650 849969285 589790172 651757213 204217666 724735727 340878113 749269320 613745377 916933595 302851697 854750287 31433674 861893993 773808663 78713543 187575007 466852479 216923001 301256154 630140525 481204303 726129981 94804301 604868750 560364381 196217240 475368701 19927489 801617405 124212568 988493339 246449652 765373698 111118777 825463478 200334902 628750833 749651578 715175350 965641948 896286785 610743950 407829541 405787059 643648995 969184316 874136341 257018937 749047358 521798738 441900418 267823028 884383289 232569101 533143436 932351894 569889771 746008474 707989070 825805055 470088007 110662438 871154812 613700240 640911592 659182127 710768589 27398558 588055147 295398202 759781439 74161479 161275000 406572042 748298378 740383993 947927755 284439487 429881786 159547505 245259744 30653847 190213455 496051341 869970578 957127921 663741553 909953158 460841068 740029737 984909786 143961667 655361010 726273892 236860180 378058192 237617963 185098595 324993994 806862080 364284654 433866764 27247858 438625320 618710183 616019558 305279913 523816412 868879542 861786575 766814099 686415876 772766288 295864930 175412762 234033056 280013768 479028062 58426708 39699550 698695789 396650415 225248978 837076797 32536860 736999785 366355382 731518791 14604493 977185479 363269172 48861985 739939982 943895798 827948567 423826499 300145316 224065495 171034594 68705391 828818395 857177691 746883563 539038036 935506930 355139980 169669317 252988182 218955344 150422869 330587062 436623098 7866096 640755953 18983733 882145969 585992143 708568700 566995622 274573775 544560867 504358685 43765806 789440238 550733688 793057248 80861267 273327280 618894514 964904563 558194633 122572125 16045808 758611755 359189299 329944472 571585808 169064602 586317082 893054514 758473927 818505051 919668146 297592494 981799552 281794552 30648404 627340471 297951248 438932547 284089112 5473534 541229614 618523978 95819465 515820056 568261852 667372329 346562594 530509392 285188758 773551214 178124059 41316524 760141549 749581645 260768269 437480796 394098963 481784923 114327746 57540972 204474500 69423310 376962555 548156482 213796073 998827212 962377301 706345287 57810352 273218333 538726856 425407801 448760506 854220981 752134270 699399975 281033225 301766980 413253768 524259396 939781920 912059849 623700049 645348950 400062441 301534284 1183575 452164848 290355020 18170396 907171150 847882836 921223504 317402165 623082283 347281335 41872965 187072287 875412037 123114564 783297175 820252977 819010232 455243089 86012161 294808987 918767455 327026251 466191535 604158364 351919094 946747944 885066236 593871085 92199607 76145605 785784742 343622168 641971335 637284690 468070018 380367368 715006660 841514790 676218631 380325250 384513779 721657816 628289903 975875480 369162817 866162537 958469080 427142239 930264633 249809808 606007937 314135363 987203534 453463908 526508281 430379815 643083156 918673500 599675621 510938065 679996049 486523962 7474096 894524467 331050302 758812125 316686755 145466743 48160032 886103287 988300383 311314186 715402180 736607002 488709020 146492668 450231559 362513267 940763056 775801499 508008234 319454134 221890350 560797830 328090669 937970359 83962711 956249082 991268598 296318840 505156372 581356330 235662029 755602128 534570156 70716130 339051991 929966145 524084480 806181968 621949757 699080648 550946521 945320704 311964002 729941283 804487410 718010772 374332948 5188860 111009626 985949217 835182507 834288752 812657684 967950663 828189705 480029006 646882263 975167227 395890436 612308563 799774399 571015759 29395997 859015214 934618998 631036713 211251621 174809551 521491483 923960515 902195121 318476921 99857958 917696365 990086958 560385765 80856524 492244975 428138832 89651938 267316885 533180022 285975503 807633180 965406064 156961501 708628295 722885520 611121702 565441349 951505332 153702255 164420116 451012766 234417793 546066910 445708236 959826402 44723645 468987631 481495627 910227656 321670193 701613167 422600581 776161631 718897112 46626213 457670530 555123839 214209244 725350934 932430109 416361430 760919374 835122761 329363748 960104546 717495699 429080901 735389353 63829800 829292971 386292544 883096956 727439415 658569015 889386550 327773077 511984341 69930550 894681157 158774268 64606301 365093951 6805263 260427730 14257281 858785578 90183482 34414951 205577755 41651309 864352140 933089643 45326022 631324449 369396427 477154087 772549730 626708594 103094785 732397784 172376567 550078350 767736827 151791819 44468911 459065908 668578842 507508841 716427833 903232961 301528919 57496004 235960212 856868530 255340239 32301294 162358077 940008130 862608080 219068966 711053390 857061408 946175658 987808854 833663754 221617012 139542932 968946305 767070031 479568690 385057326 677962198 593664348 462630243 974049689 797334706 363842297 920881888 464713999 42520583 442313007 160146236 107694214 740621476 597092577 775261841 348007507 254691664 381958359 8175824 135542322 843317017 901425923 983527916 868295238 5553741 898083317 455182829 584199971 630356783 37832666 795660415 641855769 658002528 53031996 686272915 765729328 537574819 74047195 359130518 941239942 463477838 52497119 984635539 999592549 864436932 613178409 203358142 284292386 367640197 671150594 223319859 714270977 565734395 285793981 548071094 731165163 701408756 278151518 307917143 297420410 314674107 211106890 825298590 239964858 141623405 17132760 912803169 181040951 525431629 836645881 227094178 361137578 22469588 558684901 420037259 232970964 923160585 495582960 989004603 386513606 982471770 4072921 210136093 43507977 403227502 474069270 822704379 886426981 357518146 774242444 260392370 321870766 390449289 466782930 724162193 574140248 964341166 754546241 942805154 621962208 946311371 443529236 294797513 286393445 124931647 533853851 486325761 883515149 518599249 311819941 606731700 961298194 74955349 156072880 537932549 648288265 355027133 521752919 212030553 406592420 325771195 315616726 375081820 793018031 541326313 763787879 963030033 742536007 757628930 922928116 617346108 913977941 34539068 524323394 427603616 33808043 923753989 653804437 389898332 350762217 602777353 252649026 613286217 205200369 433072089 534018536 796961766 882841865 159387656 191677945 958408639 463558752 78620028 954998421 893096108 532908619 317219316 845257026 104225979 734408693 88015963 414261830 418169996 632023615 611392314 247094221 934523463 72306489 680993308 197439167 932782424 203903692 453990036 893271662 115472136 671439255 486075342 911427492 246260969 462499565 705884395 611148959 295253422 758200439 341194450 65806911 217195138 630611100 100587760 903728902 317955102 404855429 863379564 765958305 827940863 323846834 39827358 192121936 735239449 517827647 216710323 887923904 145518259 35055233 240343567 782980703 898365993 529750091 623273485 1626557 743410173 206648802 330902126 306898285 971197990 483972044 214701640 56540965 225332279 922644469 660215806 196258924 510819638 549646088 981091681 278774260 629398331 801466976 434354314 297058864 328585243 831909015 921884201 437260437 11567872 447799806 195726186 565821324 117122496 199346551 450865478 532730711 119652886 58193508 464256416 341599160 246211388 826720494 338822945 819308964 633701708 713444210 789104942 135981039 514368203 929480661 639617736 492460978 229395635 646575429 438456060 461843904 731020124 9111968 789918919 532646235 650213010 970369415 597762678 28213167 827709226 927591239 620759491 204912968 981048281 346228827 116259104 308358244 680950116 676840039 865564992 709151290 183109616 979143667 438044478 48473171 62501336 468829706 77021706 3339019 831702310 335208598 527837235 86878716 656238472 246820501 264408398 116386966 355713340 943717964 560968018 498835634 800401768 404364924 745227979 878436342 654780708 470455003 956695242 399857009 233059246 757097353 59284769 342102696 968759386 872685689 758317738 451971905 653681238 774389141 462279551 972990420 998448301 53342267 737746246 911338050 922412002 683156376 275969537 166133444 447614601 353083399 67129167 567996522 232068167 950982768 583311471 950944927 801309144 142875164 793367520 598508300 30816399 82363792 397707114 218677913 808654203 703943248 945171044 248911260 237776605 435538686 629931756 809254571 126804230 295522359 919126750 540366710 324791643 984495990 54379052 928960725 840116027 544144711 204011309 705959909 748466446 604155777 17219176 38565776 774086943 412513302 472287614 722853438 755347240 702234084 579098951 702598991 354102736 277671540 936606124 449336133 774606947 269435683 585793117 808603989 249210695 457692273 178030601 222977033 631169389 843834838 901057055 662515619 962453221 653239959 472077220 840001091 68379261 663016947 545863461 440934041 823810446 682535168 967560322 973870972 553183132 691194018 920438482 837906060 268069366 564925845 657361263 50064849 156281942 661755413 279579271 434011772 304588864 525492604 612815241 654826034 642716277 748106154 116841296 10134424 69872121 4528798 578232063 211290056 928019255 756780457 947072365 970848797 351964709 679512688 59903377 94801212 219816777 59113800 575129974 215543021 538874041 638767137 528769179 513131610 325385163 844685090 146289698 167192209 688533838 208153409 575195342 177229224 602620368 849850463 918152721 609978587 910696223 486003799 427494786 114308575 744643118 514323866 581428805 559738838 604989026 742590109 707271623 528035116 129984147 892997231 728359201 542856871 214193782 507461242 904543356 453386727 168044395 754832056 882017101 519253005 11121492 218995406 850311690 913179358 29433455 848508806 481403889 716425042 920083543 514469223 182804778 795526900 708114701 559787807 499563227 209504178 266178210 591525090 889134755 604624157 312374471 303073987 739842183 124372026 175150899 230020228 187378572 105251053 840450642 408764137 317129873 652502568 103047036 180839166 117617703 589710096 390592562 494035181 76656524 172208159 389706858 616770938 927213583 654199394 954200825 22492434 705515886 182344235 969016662 176812410 954694622 206340463 725478402 615842915 19753902 950312744 97259050 480638158 454232002 613246454 976682088 664909647 99860347 481198062 96859624 208812017 608420654 777096502 682335756 296751846 895963720 731210678 4568132 195144858 665079095 556445308 414895268 274409907 98904787 802508261 235459217 580995424 248113270 720571897 781241421 540752761 669977386 401498890 441338066 514758594 686511974 966751443 809532802 951694768 345005129 896891912 111705531 16130129 27144384 946419980 198628409 306907716 942474253 762033614 843253490 615137352 832616855 539357515 957324180 18198860 399406634 26701742 896875273 678664169 540188745 493197624 388094922 104622340 496581293 539279362 452515276 101105243 262277995 780333306 49821645 696863113 198195320 82205182 454380293 919799062 274508577 868897062 600067211 219860879 410071712 833004147 982875167 822886885 336913104 66848769 433849269 166708668 317516741 538303156 208288792 805375731 632079437 479918264 62336759 680861689 434151481 262881530 881867674 748562803 542252674 994459814 600938389 450470370 361297467 896217541 677610211 466142395 642174184 972491839 152830323 654268394 847616110 913822427 477335024 137740332 366515522 804025138 72516322 452584014 471577573 654205760 947099231 980624644 377538233 137570951 518856625 723566451 513579500 849618217 460567432 558367996 640761383 931132221 157921195 945266483 897359269 885012346 506460178 748176871 212789876 381035037 933651661 44860627 702495853 660189020 635724814 144801681 717154005 676914607 544975421 388362307 803314419 38594190 398875451 805050752 307512084 560464461 52356361 171739171 474497199 378156087 450166179 340452207 134835994 149029987 59577087 940103353 75995491 623180744 672178497 979385662 61133163 66082223 775018344 652401935 726332454 345487917 57800422 722395326 454196697 858164513 440637481 933785653 389354977 78692792 332319300 664185131 466445693 950998788 604398864 823424999 187673862 472896896 280427011 916378832 750036770 995936519 715128457 919073021 447301614 583201470 38365613 68599357 417860394 944121363 502665409 25946603 673052246 991427680 764732386 449022211 798329134 629675775 943190749 372147639 698575941 901423213 833434852 575951921 399957394 876134227 936040139 130555367 80052434 263432596 940450185 325809378 802998700 908442418 173189322 533462173 42547509 989395632 864133206 145269988 152150003 734521771 239323338 723248977 676286037 642232376 587621601 701508457 53097204 433039963 891099282 861067039 263505911 301050349 488019991 308298469 759241853 185378720 380440849 873045076 837196675 909620331 136125782 934597986 602599806 639278560 397502747 531710390 375720903 78400672 748673579 137609429 335653464 384569744 225399930 699779814 424753816 56786635 737679281 336073384 558072302 151061704 384076305 755136498 28909198 446500208 529003910 394814171 288694445 855274271 324593076 748292561 764704672 376455501 412108150 849451645 264444803 503473411 793018450 539514326 116704761 157448484 857050079 24744957 904935353 352304687 82220316 815245927 250874503 43874878 69005059 945027093 428093088 775272856 683020834 974138983 965592639 230515618 406607598 396965435 901872068 657442467 399675812 656527842 136600747 602745204 277428985 238358295 628150260 595366552 655744265 796114550 169988966 35032652 809978234 415045766 61794579 630704083 57630127 302572642 580721171 264106906 926826868 900782786 764157861 322022384 298493249 191848220 51330775 572985666 237310849 545651248 211843148 404949380 443976761 608181765 794289060 525068388 818986414 262850715 371964377 39346284 746646041 253465276 99431093 192985758 395556754 527976447 858074425 790636442 183207077 606831840 815213896 946141560 864953 731187231 452373918 40726798 23900705 141474109 694655202 70390125 500547064 741337597 41770311 358569802 629159574 110035773 319328221 724780214 418500682 809333698 347193328 824146664 876761051 344667127 565069361 944711743 258921885 155090286 610251034 235034779 362203621 779292070 606068186 142740550 913397725 913403740 850097341 334015574 434992891 868431903 625230396 359648037 614407884 838179241 909412687 859778920 477419919 221986984 277003258 232964559 301532319 927267979 79169659 753868007 385571880 525546389 738781166 40633919 993582584 919432769 833578799 216990950 220857253 244820925 156376036 875908990 579651761 808043605 904397132 450206611 754025915 324389622 167070559 121914423 862205572 37371459 989874008 659893518 504914147 62733516 887740610 345267930 819204698 435108687 159877104 665333056 476430925 117057192 259670830 217414054 968516388 235307307 562428597 991051152 892992838 769052370 813420503 594977486 532393118 664689360 876480974 578895573 937808046 518625585 840323912 81411866 178922758 629730718 196620978 651894143 886330685 822594776 694823045 610804476 647310479 708912830 425807483 430117364 731196722 448590331 13076722 719298045 973614169 853990359 306291138 21121428 920625102 209359369 635244407 614077014 5051840 209893688 465778798 223102422 183888766 701608289 178197642 568843453 198986193 508965806 673558417 345865778 857362930 890238608 939672203 889666928 483555017 254670816 567314263 47501233 937490817 180229468 955463648 90705594 724151273 973166560 938356153 7717238 142826402 711116401 408966294 347734071 265315983 6472097 653427591 372251366 706750047 797605081 488052435 43265077 234535102 86896691 555704115 919000994 582860607 73693633 842221075 25007353 795009409 134905444 125137232 512268670 512786258 679104005 692044645 489147445 861054589 296712772 964245 884104247 288447663 614667486 446630464 579962601 468145549 72797741 228908242 846478299 332395162 640594326 780077494 319601321 491390879 212593347 174708485 844314127 709517010 871716059 612932982 532893523 277742328 152389355 666831369 441586880 355703772 654136426 387561634 967155861 490469879 51088764 944184668 298234191 710527827 278908956 462726917 364440822 686083297 713641649 958293286 713750444 686082111 869401517 325005179 722584378 7821617 289933550 675502169 493456399 348624686 679526255 946638358 590087746 685413498 57393602 75977511 445851064 933900455 881382509 56554114 249399 986475746 948875537 844660271 598070923 100264131 958922399 783840739 230670989 782466440 728306701 543046135 659498247 811454254 259668829 766631657 497256204 107016829 403229807 143865249 80693740 731015876 96300990 562410853 722321093 176380432 209896809 481211912 533841812 347410868 603162806 811434969 630351792 150820438 556326245 515531150 327943301 325967968 415611222 828674424 797008839 861966528 283151244 121557945 302251547 793640858 55732223 512600198 271165144 149658614 997933871 930103990 880914356 546676654 497436048 95797938 419320207 289935926 788389860 304142789 33627843 559373311 515327355 934092181 429717179 693814677 841838124 224162451 344152967 135517125 819553064 537349675 809368483 874516401 148735904 519695375 595499483 177072163 816650222 257227140 318741854 194601940 781852608 723181087 46393928 684466389 432955983 457007631 318609357 818723888 397133527 608929917 73886691 136677368 750233416 773009214 516456658 856435606 697228472 159750299 939659366 331804738 329300470 741082638 80054297 306298160 210883951 778556301 834044119 57210477 822777420 673778811 761357597 358521026 637215704 258213380 967773188 298997571 535916428 197206485 456318170 468002759 309108171 635812280 910507641 529058913 184731706 275173036 566222352 817002972 976206175 448988803 766736996 337153112 842702304 206613416 670436358 999586385 169773891 762457515 36371418 23309206 151423815 673947692 824861298 903419967 922730793 662497708 392605824 422920299 413692806 811305495 608527996 803715325 794164907 880296927 831382125 334605421 309243585 932447390 411886413 96598245 606818434 136836339 49936776 633422158 696657577 569100290 609305936 12293812 138018615 668646473 162995153 953855391 817679087 237898320 847777290 961627226 330231176 827734918 847271574 736231789 843894288 172992386 842026651 313184730 662285304 37282247 5216190 60908012 148646531 77765663 75079876 255049028 509007795 174001750 442842150 309852570 223385739 997571549 343280292 944018692 710287921 813452482 120424391 68419831 266551655 399680291 584503595 400901622 113624468 964649805 641908360 772617264 727823560 249102252 916066485 416847973 534848520 34077757 507319611 137982904 432262194 422491473 327408801 257828932 93823825 122896125 360445681 968671961 589852577 254870657 474339283 253621573 259060005 553164690 731553095 403787100 929438311 586479296 947754569 401902698 123125630 763749275 951973895 546299858 891350914 351787911 635299045 986391726 301129771 131477438 277934313 549167712 588625683 19615096 741692592 344555068 370664091 16000788 525357314 262859601 134774557 662037882 295051077 904554039 602773645 431519221 835595579 758162288 996231724 430714036 420922696 74591818 451061152 975673046 120573661 778899690 779171436 588963946 692198644 408337857 844584776 490026526 222002238 99813265 973431450 814879050 365686136 239126150 520205021 193089765 942585871 688602552 649209667 129543775 985098114 838664955 504206529 284760399 440307528 120820578 14555386 766011201 987521239 470814903 740304698 577212283 123304911 814617933 239102435 764740840 8011824 331635983 633662590 68158842 637993646 822201489 520572659 463302702 201756374 495514966 758816981 489427848 227084130 782535521 738464249 290146757 821771058 32972993 142443577 747534232 417368873 912025790 668683184 825927407 256622125 183357447 488346208 852712113 854563757 984784105 147922464 28118115 685211711 551647673 995194767 490819528 111359832 600344591 731581186 907803051 80826757 862322964 325600951 915476545 754416648 327626214 878854245 156603294 155407100 683318888 896513362 631766232 800313541 239935878 152066838 860175867 108869300 486411586 52171072 488991537 863049511 397126642 17923016 692365841 452208767 814775783 936198145 536628113 199450007 613830066 771251084 578807453 548118625 78050632 302282775 13763112 425626435 588564093 312890143 947354427 677195130 774162762 73835850 554463394 170148593 94742484 750153979 297306180 820911248 621971858 36784620 648209754 70197323 9667923 197676430 942340337 884051847 727430850 968757275 473733006 74339870 269415728 412932754 315329169 31360838 845066416 575267933 885368242 345200010 75648629 473375398 100936812 200776540 842316187 748665324 394463006 786970054 131674689 558129612 234943764 637882080 559681799 783105633 720691755 572136952 773075385 699441647 118143273 417389199 740164183 101637034 607422585 249056534 402528942 980046326 208684628 585654708 248533970 583470931 598236192 765444569 961976104 985589578 288112006 764180001 879081147 781271452 64045629 866454298 661983747 368744645 427680535 343556347 653685191 852993723 933792480 490430362 201304023 915216339 273296601 137598830 584651758 677833890 154741906 466216480 721416532 53518262 789706776 857819054 281160439 85175643 684020077 526031386 724218911 225265176 78508775 546361853 174361798 9007527 338510488 688645327 649215811 272322551 373752914 96209941 207877981 898221750 915463293 990409996 877854714 171103225 962909267 837544952 4981909 707252676 912272711 397643479 256667790 185295605 19682795 860257698 182013602 399354631 735499749 766347997 319779376 405259887 258103804 83657524 580901450 149323552 443724797 165209427 919495317 426465712 126909969 555516452 442734239 388053320 459626387 115588407 976244487 661666271 320484418 523348897 568058324 375144866 140018320 313078309 790603768 455120902 214183784 949087203 352265052 719187314 375213649 906706673 871310560 616979221 276958423 576190091 496219474 510502949 798911794 660487753 391553419 313598747 486087954 12105689 250083765 413322231 134562071 857894065 18222042 322876916 513205364 741593176 426778855 747083393 477207152 944253914 601242009 887732604 916297156 552467423 874241314 666674587 116049890 417220293 706317534 416523813 814918020 45973802 449944120 61045695 628527521 234407321 689093532 524947014 763114596 849518097 360286315 53889363 96841458 486135997 954238105 546833213 248118496 851738253 979538828 336102405 182654543 592115272 8346319 488463105 492871039 228751979 211039221 3958524 743431962 251934352 526798758 270976826 867312142 695345228 878594986 874409905 436411357 53763486 61895951 802480042 880353500 761409901 233749986 634005694 351683666 882556985 665654085 48883388 491589203 405481758 845135478 75940877 391872015 57867724 346460420 487901338 778753962 565297140 935242607 291610581 93375332 690106507 966610225 34323972 587790241 181973711 496894729 222360777 464424511 12754666 620049372 511517907 948312523 449595686 309116552 453285919 232244841 892538645 622922590 226117350 714064827 1242614 467885977 403064236 557412486 865796260 364636948 900318558 423647273 378967995 721749243 744299653 799740854 516556221 262202326 892750591 201317539 284609257 642057501 36913695 607890327 658275774 215810338 752719372 983059328 141307475 774887835 640868512 763245484 386021536 122009427 277149191 514739727 817363720 493171531 867196163 702312239 509234643 502007028 635845875 82788590 426462433 469004941 374292070 836382746 652068111 726899278 615584392 25455384 101800447 207618129 514427524 330270509 195647076 536200818 12329181 587464090 430328667 745586852 706753523 794148037 599163480 709523391 185517470 181208664 312513276 726521973 907202351 692885424 267439010 955745097 504793433 945794579 700587340 465575432 432214420 190859427 589259633 41912623 956066408 978647340 511201581 863964084 583663201 25391477 69233203 699982608 508155729 380801391 775168627 211932887 320746766 397272034 489182814 527603195 709458418 329183939 138318553 743615341 801866074 153704017 580948771 350396523 455529334 40312881 584320340 187022109 840730319 856332458 557325370 759549844 879149284 206032332 556679946 181417216 568311586 698304808 198053930 725709596 279549703 461867531 887577603 557028864 683755443 359391281 440856329 63456587 697853887 109639275 382653143 417913400 758153358 251975132 742019376 350714564 820498165 80399499 890343393 35108093 425973821 20502479 231482549 466892899 613617285 154985707 916923887 684508892 901941478 968534799 753853889 171706296 263916940 593570982 902923892 894579146 975913906 153275714 620689132 146497134 347677095 289165769 367152608 53232068 871422693 939895586 884789014 18026827 793421984 731629545 292292027 355056969 895099314 11297914 558327706 986907452 306582722 514115808 743738014 245520252 143999989 786788831 467363760 97410259 993645056 275384895 254365969 831600441 108133914 684353213 302501723 359050408 413192631 199429996 982434186 812328072 957803142 782987478 176851459 580761896 939233743 821210354 184247093 737074640 202308598 560576280 208668092 600023053 938323353 461228091 425441573 852354496 278080044 571557949 873336094 531423444 127209483 694298743 563592166 971004857 903228331 169567253 237126474 731079771 504956772 199680723 769229102 322188701 184724337 72831548 833001024 630285335 128058774 51596750 221204186 946325023 453829731 208038679 666487306 973461925 860431747 215317547 545059805 903425442 339221404 551808460 605978413 417801012 368333375 593529639 601828912 399768082 169184254 786738655 776309381 255951533 355615449 281710254 588798216 624179198 942458662 235403795 916889288 748987169 987370756 661646762 67264149 776574089 434852594 783496608 31398133 523939406 405182452 410700026 291162207 834557678 615188588 340037172 536252469 557594265 246932074 917857026 233713743 948080659 239961817 475854082 164273264 373628076 165647632 770706960 582672042 468128180 817256860 716092945 349918226 990741818 469951308 660082837 431708543 577647739 287208700 554814032 495017325 115738458 282835052 304297339 208644480 574819616 812404011 626916933 798315290 951045281 389503236 209205122 307700553 222813043 100097067 187733133 793398850 355306855 95884798 363281394 74998417 558399025 539589101 746275146 178186857 352151503 541152280 148551451 8018412 978989442 774969850 853065654 543827125 95831049 20918039 861126748 962598722 814834281 587030914 257136545 21127352 225476423 618095494 970987967 477863363 385293524 481112623 188864401 303706400 314544522 917222740 745787305 564386019 309835174 354537196 826459778 125746486 66059090 858772156 342185952 515662160 899346441 582195289 163249045 868148346 545720372 351417736 914873241 490277859 487844117 47677457 221783524 962957404 30246992 78481339 803698743 863888920 626368239 409672885 398612087 322467912 510888253 830023594 629358333 765795202 765149614 507891708 868534523 239775282 677354390 640987002 696055644 134074921 865894311 387182545 480370532 703765863 3075730 649584641 607706114 971230408 624511394 386013342 403266492 113398295 4588086 953184257 12945763 598262386 740722528 677843778 270373289 34750265 111241046 14983655 789171473 16137908 478039957 243855485 58270184 585517108 671779179 214159889 935904732 551117791 319753869 394104383 275778808 640840001 606005918 810751394 854169962 584523136 723134704 686116494 770301321 481421679 119467864 909352436 894420559 834322579 840170003 132405845 51061890 758667616 427301763 386262580 70381574 214440849 738112195 621445822 468522641 220169513 511519358 139619980 966626470 79202063 795867006 146569111 972443613 686370882 1264986 603736295 821815573 786509534 252679117 966001825 782446001 414303753 502354960 963203705 54151848 292829164 548153509 900308228 93939000 747262221 184125461 927186730 513302627 706263764 405979280 919795724 642704715 287990169 495394167 827923331 357815008 735588173 407092995 969500573 128138591 213931043 978464226 705072977 786527880 711784129 925527970 2694371 336943138 288251847 337902138 240891108 446370846 359852338 17765054 500842151 411266098 800945547 549503921 115889886 470818192 461326046 776543167 63234644 860277757 916647006 412435593 14474733 894334969 637307382 951917859 609072376 578607903 57792566 52113749 545684170 946536774 928408057 545425089 533968918 979111017 566095656 359411380 939745198 590637925 297908094 977111619 792345306 152200572 149932307 650354387 784094170 27203862 754135476 903640445 884999243 646611974 297985667 161111696 594488592 735571048 782432979 247311332 642472788 112101806 851622537 519798258 624444558 632239992 602076181 927545989 543343661 601128366 655869141 394199108 979745073 351809148 93803560 823171321 172311153 900797767 912762522 640858573 569500349 756245844 741812115 483450353 39595230 102856451 983697629 763073753 76353554 284527098 47985950 796639389 889744265 304345511 295791869 193832579 375608182 902591716 681948138 278300423 190323027 388389783 374281632 572073419 413188816 677046128 996759582 211807771 518325812 323606706 687462490 929579027 359906322 753857486 137415128 169918017 491692289 230777944 23081358 115562716 60336670 234584986 118939349 298110091 749113058 181545982 211259104 828148794 677874788 980562350 707961984 389111050 677753603 842714568 50176114 16874639 503368864 224892214 659822368 170659230 180166797 75206627 910918717 935750358 28199194 854388442 947507991 123426742 273364173 894342932 900311160 38092000 194134315 885958330 916891401 452097246 835111849 734055616 87278782 743535409 711908525 440115228 205115334 468596575 819995391 258469095 168377660 125530845 24077636 739831386 994044951 193727850 606975771 672031862 945494475 317688882 432801132 689673834 238615482 655828088 325992933 878836189 798274051 883157748 139686801 203212042 864896677 328622375 74048424 941935576 875072766 411282567 984648394 681753347 41095275 493524956 195010465 87650281 817552578 368597317 668847512 87237054 707660407 855271472 133816481 344331847 656706216 916099777 176317762 909168117 678586993 303311285 98581920 124286144 917729065 430081038 929783613 596724439 302733390 232836571 194321210 732291616 115427505 720736272 725578120 265188359 402292751 585469918 888296300 593143501 16434860 126268161 255787332 827707846 157716885 478241620 157203710 720091234 427731189 687797134 463342186 389731982 983545096 236563617 748851018 990753337 39687355 273006131 706103625 653690334 13347953 35376413 318120422 832485640 999373644 450661664 265892144 534493315 843212088 145117365 340544724 365107367 610655828 281171295 408421275 989524335 779953190 86387091 480625444 959790017 193411286 483024768 818929871 514800893 836582099 528075136 484788431 125288768 173378221 264740218 399187721 144170128 478779459 960912120 846374734 343842126 55657654 816814303 184627817 461725396 678045027 777998676 497472706 472990438 959732456 252538736 72529804 276247242 117687141 150140903 399504944 810071861 676001524 985068313 394703779 353575882 735272738 391604403 568651840 897541973 577332178 316402919 674143242 663000793 66842271 347492011 901571243 615789841 957809926 84412299 898053335 426701326 859627163 271677346 828812866 802265721 801298611 462619434 321525540 502032345 10545588 202278291 446499719 303007704 499329066 224140901 540691121 665497803 163147147 673169842 217158704 295012697 323244163 711479250 983790399 161929811 43453988 433896680 200126181 533467265 320098873 73550804 264964473 601666867 195840036 448005053 57966156 7759336 819278820 296454760 843318942 117996616 493494376 909606905 953098768 357031577 68137369 614252645 286023808 349381313 437405267 262937364 465830930 934501939 888248243 343344773 755560314 872548891 139195436 481238687 793592826 33233628 490672266 143801522 535758546 548173878 540434140 96610584 253940240 416878669 759162977 651116542 368500139 143813817 353909253 11477250 790165601 198468521 45616044 773876887 63456868 430386047 411516097 681483941 436543093 589803689 803914415 608046877 409236959 774528048 991117058 171382250 16776643 939359921 410364596 398287163 916521329 855100318 53250815 710617875 465877589 911641098 238305094 528663995 850277694 93281241 637986485 245913587 82839488 743483785 528122911 442029459 607949087 705137745 477920971 702075102 753941485 163393343 924203541 45627550 425536862 333623317 654298441 825921507 572577660 983891928 664610418 48964571 44835076 200864782 641105577 191091919 572770697 72809192 549505614 742578031 602991721 360085531 20238226 923724251 692455658 732447142 654464212 444792485 984953648 947899384 849804005 890249329 518745661 404345657 839166539 564402831 926649595 18381730 273193596 586882163 647398999 189970039 788435720 853299544 805100740 51655350 4446449 399887130 602176501 231398832 267761690 16139984 945814608 988774152 36116555 597376647 189017043 651667130 23294875 526876205 236703140 898970779 986166098 944955707 443411536 456487430 891801917 703038862 514050304 59298934 316388512 889398548 8605564 517141254 169459978 457153409 609656522 784439558 113264343 316103423 551687238 693794227 59052538 619406344 583795367 556537409 960070474 425601739 402409796 783054749 569736835 522883147 195093527 790261736 47432802 593034459 925538468 947993179 217494243 427752197 250061262 47378443 572600228 883179900 812254159 951797438 113589921 715654702 396479917 158306785 606910011 448216296 154795523 611413768 746119982 996906278 502231443 989310590 750755465 374977873 523582229 287383491 193502584 34690208 965132565 888314143 280247357 964215712 808228222 941875946 90841364 858852266 476475328 380492453 633757335 285655158 72738382 705998060 118688168 139449529 927836576 218255152 943460132 958563932 204421187 727859539 664839932 272407205 697110686 358963027 884124593 709344359 173687647 732649382 258841296 733353067 593507901 832148580 722166644 696886223 263772353 135143473 574987225 926212236 700369630 735275982 115983559 836400082 494120212 327075778 641970164 579571846 503212622 561784188 992172711 58788448 605217386 637736046 630013542 52102095 590720733 262143089 567689909 169163499 37249583 483472107 300539156 749693450 227459193 812912548 749871266 599168089 972236726 20375739 572278635 32609622 632719957 106550474 491490372 151247619 232257881 106552906 414060450 880259470 31178901 474059338 877159343 913377889 894228587 533187301 318796193 545588683 362173243 288761348 105147048 203061305 903307733 696727678 781529228 671168036 620322724 931571985 92742323 756699956 920949157 189699969 863864105 851358505 741242314 378247079 76373025 275436960 535271165 461806365 428861698 542996226 979886179 161293389 687484149 523644347 801616167 39764313 782184709 156310370 669076855 404756614 658327141 717699845 760459397 682499525 273952785 758052127 147078718 165557401 16327053 65495905 152631022 128972598 434682668 229945124 289118910 749186514 462415680 607589972 613103241 460515078 56484734 130421064 1435874 365108102 564332108 450110081 926108230 938196289 517243039 979211458 640968833 812879511 874810009 22631430 667160744 960452019 480720270 138476246 624994671 299346586 116839361 327629347 672135424 706866062 983191515 697136747 745502890 998058796 147719406 117567667 414794318 670569135 78022809 506637240 136225803 548365756 98429769 235242296 322766704 959156127 594882162 256256551 788410325 468647195 866680878 772081565 742102491 412583552 974006650 267391451 558170978 131628954 50773473 38488982 577987290 194890302 30911376 558886846 932684959 268036024 705584897 29764396 509881491 537803264 775343596 508730574 133858544 234671619 734455145 281103832 515824579 786560438 301537638 890645589 877958914 378971066 609794752 347622674 459386564 513704346 571182009 104807581 998133014 807018451 738622779 676956113 832085426 770715636 255615879 407758625 682403178 669450504 340512700 829336624 640393979 213701259 994737146 572974522 861476957 743135785 506825283 577841839 281714062 872152799 599725495 522337690 482506641 600111617 875023491 519599369 24669839 15290490 289654943 959060619 550344514 808549843 619759708 682271737 163530519 109351300 898073828 962675010 558484978 206617707 684751130 655801591 436382295 94269603 330000543 497750602 810329510 855324892 602119948 297504619 917230714 589598226 293616979 309699633 756670221 107497896 883801103 432976769 356263771 21595782 356976717 342664271 844134592 495169533 65319044 307748269 796276729 118951126 701792711 476915840 424548333 220809541 887480926 195214668 309300915 356201101 430526780 331602857 368523979 204154451 491955953 359241150 805542984 426578815 403142548 151583837 994738323 964703717 148970408 786290634 800341915 525990550 251890854 784505792 761635642 763194223 335847128 945624649 725781873 709357510 115923738 25302924 242009380 278633365 322636288 454894757 137594615 635419135 860626502 697412650 50257359 938496058 767873836 42226378 698531174 426617053 851843168 431872833 147890773 327937490 242378444 461047575 34013019 708781744 1920397 428359073 130832682 763527566 966933107 12154450 499058677 475248269 221314218 592227107 827530720 773799446 656170822 720412666 854310434 382583204 125086887 83967639 539304639 870048275 585708724 628995597 131433901 382911111 74910971 532619316 188919403 109522037 892360817 283663120 154885145 840138032 218687601 380489597 457788528 807568258 23736709 755339550 937143407 785479398 867505303 164529928 691118984 772741266 863587911 93997804 175070234 930424025 894119490 435789574 752755241 510605344 265726329 510646773 32798073 255755929 465139425 724777041 160617592 802762850 602435841 209191369 218496980 443019430 775575733 95881774 951200289 493476738 137648731 685663105 178259489 966717950 249356290 859032575 142231318 187780986 854003842 182464773 685093095 91769385 965983178 35364609 655879101 771912243 874153560 363833579 666729614 559485458 278580988 409556992 571544692 190217786 218469357 869290954 198387608 243170673 348634915 177043288 215359064 376425049 356432202 462523915 365514678 501047522 693602135 923746150 719278030 288669745 265765088 293105790 590413867 859019630 508950391 187871457 294152750 70885914 702801736 143326942 708175728 517781017 438110817 145268863 281022479 861913891 885143442 937750965 211353369 623234409 593448652 102525747 449952461 967332038 975341774 842026672 11614790 845280884 996254433 141549986 687039263 788496260 299910939 194072596 309890834 701130222 902835813 875628034 287821747 436863600 844186513 881207063 920340097 602738171 376675267 305178095 201829379 642450955 640946269 218468577 837648850 912174587 945497598 56419170 612481268 33018606 518888069 90371769 317363845 964281726 737443086 628183670 539954173 602509046 239513912 228014008 920011456 598852580 830066026 334464264 458110510 921849512 515799681 482093771 790337746 741208256 833807518 888146231 401487248 464865960 790207187 651010429 635100900 489760450 944919459 794770112 885721253 44449504 995158283 566718482 585765531 481004147 224589262 690773259 512843993 406679198 100055801 341403105 25175562 78923381 109697503 326942553 62570817 418703997 807706549 40043893 892079120 172974190 64594579 286461377 129113562 801659280 696561930 398879376 158815169 600875982 725582096 790389319 704807654 282881961 777771982 337767836 621937151 334533560 800843452 16344502 474435632 911613538 372640907 768552156 970331023 970079576 960168175 902825114 690476125 636696401 732203016 250683055 679363502 134461346 716873546 541465266 210471779 925914595 760711041 677323875 933497954 153636307 502267158 692877682 447833778 180641525 520667462 849080561 880629822 431379636 365290592 557826073 193617503 600397958 409819651 571211704 108226046 487922592 283866806 963983198 873969446 30655890 11159495 865461104 57551052 865042323 245052227 847580590 799928678 866520855 85498864 601197370 788156745 425146353 463840096 647956194 872687246 665705057 433687312 966350685 346321168 63573749 737187875 217884680 113416960 542361197 221674142 97938737 820130693 823523648 406732265 562381853 145226430 594715884 275226813 438778706 621225985 53182183 589789498 292282786 132574968 584107500 434340304 772769500 633295483 157892086 721374257 200431575 546993255 56156844 148336181 741457343 418584219 731732685 752764597 201009610 788100284 194724986 28836212 383246651 380228359 455111563 519448614 798281750 19118258 621241682 819157932 784579798 48267783 664491003 208501723 302862347 748278603 490180810 515616067 291767932 739350654 157480589 747358288 966243253 62525581 922010160 165268548 735961681 841568797 638505332 146886974 824280515 750255900 683030409 794293242 298719873 451871320 130743284 17419955 415063025 755247466 129228599 346598381 494003603 433813752 829776208 149314951 942457307 342023039 973889666 12027906 728359600 224548742 614761212 528686813 752234832 145216671 637541143 81467666 148308124 266176416 236757968 720406314 925325876 873142191 302706751 638258314 93650569 717398842 8084459 146479738 287408729 239245242 96739165 527529934 785112863 980845244 283253073 569009837 36035953 537562002 648940256 342921327 225213112 691431529 657850284 197132790 867516724 833072080 435448323 360501682 111202462 847110864 339102392 678438347 794778497 289202614 995178283 636653975 875681561 60446387 923815602 313141037 383534749 75486632 968478193 585773922 327834174 950397255 24921994 302414707 299343149 227174096 638606445 327575980 257823897 459646942 587564122 302672214 510822378 733499135 972326828 51496826 586532737 74149644 244049516 435300386 360855748 722066763 553481450 922040229 459906261 9622540 932726477 487639882 318095562 138965500 803531834 84704439 472302801 654898072 257678801 531525707 360412623 882147973 713005683 852638071 874675786 877930383 31027587 351793412 469397380 110992746 216660889 195409231 840058715 612684147 125396985 83702212 954192599 114889413 178700792 244854877 377321054 577899577 803262828 416940841 816443362 561225010 302220704 473210418 406876782 138249794 827842968 506959909 222766649 662704470 664466994 688343241 609193603 632117974 529998798 655303687 497045559 222662168 423843322 662804657 858631113 951315034 352592573 173474607 231094566 301875437 789302158 873979301 171986371 47296769 135984331 303744026 329474275 253706866 925073307 203537679 171747492 571729018 952265723 678932029 838113374 919729424 605268939 163920591 247191861 26890570 907256217 746326512 205624106 598576510 126642198 418384115 428360772 836953133 673012546 90280326 96442990 783494700 345288611 329922212 223139240 338715239 902230429 791903911 577955074 300795035 245215355 456285574 338836015 783853201 588862414 32774949 282752323 749526053 119353224 440303731 51740788 843769467 948087368 195624820 143531729 28757794 919163873 381588078 566050599 551357362 452859567 182127139 409971547 719489530 214145233 204231302 104114955 351524118 384460266 937783832 737453272 638242896 823804335 920299339 446699435 543278017 159774821 555940048 346942601 197038442 795407789 823126245 385101455 612735350 96143990 937967753 461099799 21270780 413851128 370128170 341298922 560226455 604405447 317511659 359378285 177926098 267167688 864057557 652879270 515338916 192605113 620296615 208317448 473248847 978674771 989686378 808711268 427684608 955856641 840886734 733595579 732251956 170625680 939758315 905980607 825052022 704012960 963768791 228080403 470196161 558762117 565713019 202499048 712963201 753147226 194759873 950619185 316871894 182609366 630779064 809033858 29980956 528798898 293407078 64877888 540828494 663661488 345460575 870634567 162945060 693629308 546442654 961379391 318850713 16455838 355822260 653118476 791080033 325266222 169195870 913952997 784911726 167165403 527807721 455073449 925976161 897701498 422692658 843759072 834407193 640003510 474467158 548804065 881949543 600636116 395073245 85630174 624251187 197686767 356426202 601828483 63360904 417525598 21127967 234878400 119139986 512241613 126288076 381802845 860525663 990275793 362455172 862547560 279011916 170721421 524597128 355826462 642066141 482337454 987787554 22718432 34792665 50135320 310585214 932656140 695637171 457132749 586391303 686103874 103502586 138075585 593880236 469508555 854998515 435558037 32519303 952286832 938580241 374726129 566192056 793422183 572805005 611128032 712554467 111956432 20849729 403374040 187045919 113399942 437000897 668310294 742884291 284157023 894342574 797308977 346707833 741479642 525905663 997078221 370433063 113132593 136667303 105481736 115302386 878681323 49623856 208945065 504694539 799597172 297737190 417522481 382195858 448691551 141902911 549368778 878346964 584697776 8155431 702592259 629117749 271325186 636685695 939515139 199714342 339916854 394031799 302343599 72940079 867767198 736677288 550458476 361296953 222551077 203138295 716102792 657212952 574533267 190870900 809050624 306736283 291352591 216147158 788203800 683040162 734753661 410129747 832229098 45272707 131213634 211006554 110446191 690077724 268913678 250956783 640550619 594648435 518405159 123927082 983746758 542790333 893855689 256595794 443607036 364815463 243998661 231454777 765460988 918005591 595026723 541881357 120218888 758976505 237641003 178772296 354266853 141371261 470307688 8158043 636092764 656431306 345154264 895002592 315983739 441347582 222866328 964755767 229249110 778906312 650649514 655478547 885683083 163357925 710581326 373873546 217964560 912438178 79750158 634446209 207324915 969809132 468450039 17841492 580438374 989950293 345662330 53164272 95315619 191518656 433176614 575268252 63847177 42877095 885165712 226594703 613150537 361608216 587459201 676418941 290514546 566559470 451274807 705749348 271379256 601433861 754336637 304078396 480123755 579007540 851505566 742326360 89943135 794584936 484196860 502639349 980686643 70714274 469915320 161841259 881594949 436522757 96672261 311740841 63223022 652993095 705013731 674374992 684336817 442970747 412440424 30551403 705196212 483793935 941866869 297354100 867697139 15219741 568014784 207047785 603500777 873306896 546664557 564267472 3969022 733631468 258601724 450591678 469717852 324922478 211818134 364751676 209935920 270566940 23897680 247490168 402229123 70880086 167796523 469254020 164617213 805572894 897857195 598506805 89576272 638184191 996763718 900129370 128956121 670148018 487918290 37005590 243227963 531668435 332350998 595938776 183608427 238332247 390813055 799772972 268369316 548669172 780467523 40539043 103002575 315262046 191612485 28324602 852040750 985886116 834463381 597712071 933700343 460966015 184723641 506525115 599191445 11713569 90962145 618688088 652479451 143375004 268296887 994496407 990801646 293951187 448264383 174364793 512072806 602656024 343028078 396265043 238186850 156257985 22886865 795451339 999728835 517084023 694026204 354061052 452140829 945202620 488334132 9098697 615781143 898573669 368165610 19395005 272829781 546740050 248113821 611663997 881076514 7437858 641299814 934130620 602316087 617894580 315299858 786943471 512140558 434171375 173188856 615614109 223266721 755511425 157909636 756037725 160408255 512310550 220888657 278589438 184049336 638688276 130643689 946955212 567607239 767395076 43099983 197662753 975789662 975446483 2545337 60455146 735061290 558618720 180388420 656107687 535569636 139737371 544672022 559802255 371550925 573922212 616505631 286575410 386484764 59716387 681385099 937377441 553561050 645287174 789185169 995808843 332302803 38352618 28373465 600678990 652596642 880591618 675012170 92628738 920658931 59786843 934852636 352064221 661904351 330067653 435887853 82964855 657721292 454842516 902631387 715506808 937409283 53350948 945504166 596205785 124094985 874553845 653413066 526477864 264787461 228371774 383802977 272494911 114612142 855593266 26227384 547407586 364079244 588822405 63363669 570422449 989171992 835539226 472185573 299683390 402203316 196198090 697835318 476071723 178409741 865241240 598868180 505311036 852389626 170219204 698111495 987421281 377599912 321268192 122741044 889001214 964954605 884103047 84759880 326855985 919929210 70926448 400375553 18002127 236576490 894677971 677570862 650150227 931697821 376428289 144273866 771286308 233962689 35840349 439289539 52722207 71805846 903150414 609184344 986590679 192354147 735335152 553927629 317826935 718334178 587070634 774368969 660171037 878735343 19377862 665121011 42366581 455886478 433976955 340092689 557547525 229415263 562137258 743841029 344978130 83435263 699316140 950971061 12328573 650814407 917758302 784876367 188948742 362705936 948203575 525494731 443614287 312728309 584691960 549577499 673590911 736434289 918632854 176191841 933588599 182779803 34802688 381547376 108086747 649661673 896122489 351695745 637293111 722166973 659939236 362624059 489080767 772578376 934991865 368196770 219484767 204675609 397754956 317106008 740542376 414217610 338628106 173914625 239757077 204310317 253765728 572077057 695277539 650253402 99376971 315774953 452469772 744580739 893875155 92342815 638023861 648608203 989936882 414606114 93716694 972381734 616965881 89947052 66950215 93541442 985801836 830898115 481089065 822949535 528747792 225510855 655389408 23319617 781805736 367334999 502188867 904018337 826080844 635971343 621530233 905083932 478055347 739724412 590510080 264967301 892347228 711066956 632756201 815405555 703717063 193577186 352732384 331335582 654596566 963245324 351542022 347475765 893289720 372836182 201262225 548391358 732790859 108891471 34770693 499416005 579079076 839989768 900160672 989409377 234549917 397562536 662174337 205094689 48233654 408105895 123392585 425883557 484582054 165723489 339902269 436915270 90991098 496165885 33995987 514450318 143492427 633336795 485785017 448910721 159032165 228311573 37346322 804675277 378072140 944093349 57017028 733854583 12349015 937493184 76714294 470895796 144960656 973909820 314989152 991617956 903099158 879176492 159379440 482309133 520023610 914660425 232249302 622177884 648131027 941303131 693744273 473893211 771215715 315624732 390479394 232463533 937096600 98946510 880273181 764862083 834990005 273337725 929406499 225759642 450649849 913066826 441946546 580889092 279259465 856700480 692550523 940975900 376351999 846236319 251327533 450291069 360591318 535451508 714772971 148267543 640286067 644116957 500071998 288977088 724865878 930416808 714203396 872679199 295669842 62148521 142445616 664710061 924379808 426810595 797688855 79590953 242961014 668870405 525084375 102566001 351023534 250823709 10354170 740821370 725479560 145038124 391828913 972631961 787873577 330521770 683233090 542069729 279271756 332568032 408204744 421077997 580327591 713483991 220153737 701720207 938753038 404762762 186001761 497447146 886047657 435387859 62226474 861425501 136182117 3657461 187224647 494071635 868642326 317273772 163378563 331467456 347833552 59696509 104930622 754202876 523339664 819894340 789236110 46400842 188749366 711096485 103428694 549623211 41142198 131866174 351976788 233840192 775579916 188389990 974933207 690950155 576520389 573682130 36948849 145057314 959650177 571041717 732679360 341813009 110095694 313107548 68532161 39229826 522160365 805384112 22242318 355868447 721782440 305033675 599404398 531888690 377272118 655529657 800217936 573093218 261194997 122085347 842641619 537887396 616962541 401216297 12912605 954961605 763286856 492346362 444145160 868462820 449840526 958061222 340386720 928997124 886828700 26770430 269820715 226926818 311488436 669446831 102185436 672005242 422848512 595042710 165931942 86038527 271183531 40011658 667111566 305089560 735093259 774121027 529556799 731616711 850067083 407346172 382813622 207554277 332021044 169745552 345803730 76020023 578870264 301515473 885819866 211013037 874009705 484274565 479785113 299324113 380527459 544217171 524675092 85060107 271837893 577062988 745411874 937410660 521245186 490006729 366620558 265742950 169809419 138391032 633919449 748265775 706180594 942357236 160706588 426036804 859581644 755419844 947810013 440361984 475165384 406984754 768451753 571852133 669701063 247660554 113659455 31852494 132365824 881407101 670345585 207702449 945817332 345083775 844737034 262922296 202996100 946747565 450983903 919058132 479342939 112910324 896176352 843203700 816323690 919449239 790902433 681658346 181230781 307143748 572826261 452727281 402108774 49499609 500592049 984974773 132171844 440547438 444170520 749371040 933924658 981732854 684604913 120082946 659425098 852468778 40048135 550619638 951422473 685409073 88562139 593978989 501869555 198728954 570405864 126650603 954669340 607996259 590328871 570734689 924563356 563998301 898006113 620156454 113734393 505589565 837793701 852187229 950879595 295021276 913283504 790276465 813757295 839517771 424015108 495591746 286680744 976700564 413590495 939281551 72701579 845699609 586884351 90784695 271026254 518059174 110819843 354867225 424283149 112267780 965587716 709755597 523671524 410617813 535001603 321456740 426864581 68806893 561888439 452973144 302937654 445025963 148625788 205239709 812650555 735572263 754055942 517257815 776806282 620871569 791310849 155340907 338196757 626628308 6231568 328272288 341256705 994214466 329903429 586050422 300004326 164623566 845575538 911415914 714378264 212545983 760612773 683498048 484470558 955135855 689636208 143528571 584210542 558462768 930671540 533191485 282542876 315917106 811655272 122821498 298210962 796509524 585536013 256045453 307506790 382234286 490000584 888196381 986505055 835017008 725497411 569496961 393718274 552205352 128693458 909637559 195782006 278523862 382689325 964172941 484280876 8457397 459893187 661871661 806330012 515198496 42759056 61537857 998259285 522439022 472622814 587476767 868672716 104045101 506841246 138172645 920197175 104581429 996154939 859657870 624420966 134014914 787423605 925104217 280130944 875678743 928331232 106006608 799025711 947340448 436375221 5665206 398726449 316639376 37135331 554376014 735877321 73539362 814469689 2207129 26410195 237019362 275109509 379383426 336663079 48730415 192335145 948970250 261914226 893509721 956930003 271929356 623486274 526105413 125204495 398559592 397449966 141940195 749379193 585940648 202739174 252521705 45780379 318095430 814622335 463189356 949750737 268391867 755089578 661698189 853349161 961988056 82318395 85028309 862823561 676371847 238849198 773182244 515440344 916719884 392394221 556856557 657366073 75122178 416825168 70906020 652072675 985944843 559639731 108615604 994107562 333820650 966832397 771274980 13394412 403948431 640076036 641142062 528509426 456356030 955582197 854110801 43810035 390085520 818456449 648858939 293112679 465655711 605582081 785004372 789811985 896339997 784828293 318269702 568406977 948178402 433596750 203662247 208995217 351350459 743102581 978356097 434072526 854981207 934245538 324844547 712067105 663966086 656799940 429715520 787154335 120156893 446125573 869713889 432504042 808702367 138442028 979580255 561727068 345576847 535566535 822961092 567567947 839995420 780672124 996697527 899765832 576286534 726868944 137747193 620687277 508958370 590519526 634019858 398730534 475187915 146551386 153178422 322731480 673948489 549754691 458888107 645847206 923176708 261689819 488831357 403716266 259986207 581009 461332546 841608835 376310884 602466938 379345867 715405637 304764330 66030117 863088906 448622884 433288532 847530488 531816425 352576550 888069578 449735056 338726465 851617169 290551459 73415589 811417844 491418061 109554598 104072103 454082357 943074829 56147019 854253736 760432262 805498887 84489284 684449040 336563035 714139007 488616255 118320235 504217086 637965372 787124114 455572345 617061639 416988522 904590455 695660403 67178664 377699106 125973941 791043820 506795129 723562796 843264113 568430228 491398933 106749932 246188057 135513722 375767656 801514431 126296852 866839184 42671812 105073482 34656546 41910779 369300846 65132412 228727268 14304257 616795387 445407910 876309075 468760506 432966226 913741978 205130313 209682452 817250145 115976869 912618441 543690035 303972143 961042980 736409280 511100817 573109192 652363417 434815314 150503563 525726535 102858947 378329853 402676949 562381956 368590263 291091141 607299639 164591386 138176498 469647020 833699961 312263682 952301113 400653567 155450125 917958009 449906891 743283683 843486150 490409574 591725476 350053995 125190779 392227407 278157345 222533999 676322687 670609013 513440237 987100803 344040826 1504700 596850040 666323509 663042615 894469062 103143759 210413235 768115572 725930 571750020 546727211 2712241 554105878 391709636 442784670 511445448 826765714 253625910 680601048 672226268 559541668 162964001 536469354 921820234 578343682 402214908 2723996 469557200 299613446 94668695 207141332 28778725 138703314 500300754 695876776 390280364 396814410 302359954 231515410 294734987 914427353 615251075 832117215 11907073 461861134 842858273 953167291 528933031 155579107 19891004 457994221 761102823 729256304 940077372 765972457 763940268 116711345 270218864 716131953 674897017 908847203 45224210 468211262 903869416 316900551 476309799 360732149 443535330 655548489 634406351 392999774 116714344 695326497 634027220 990656616 577643147 312630486 360318695 975705401 660568076 905149802 617814449 824212883 910056982 530592706 862158760 458229589 848038689 173846770 159168803 611937169 528454632 453114064 723372812 840160570 226228282 42470777 345651723 142025498 175424510 725336608 769410714 682422745 291076996 7480973 477153130 834213796 151005013 303090363 192668397 258589978 936477150 160809090 598592631 561397996 920977457 638985384 353821344 7816607 342114616 837186610 37839553 463321539 950045893 781863204 760734243 100485372 374325575 451511385 325409384 770108768 828347086 935115892 597567856 485475863 865522611 970310015 153085447 132467917 999516206 735254845 463386534 431606780 4745868 611656443 751934670 424882291 839749912 879456442 334820972 390140619 418884952 122204516 889095546 132570647 711922292 613141491 886720891 62409834 232307618 920263056 259376912 580988039 202996488 861355599 24175760 278594360 140512675 829110501 638948927 693211801 5921335 164114639 416326342 234236311 610690149 997367677 253705615 208949999 173935912 990264559 266179814 749778560 902429910 733366492 718985564 471465993 307864233 460205314 95873886 223058787 975078444 166111588 924083208 111483815 783969761 882168575 434616918 419520651 9081830 897411583 532792904 669808098 67827985 610329139 620151898 541768234 628520646 184263764 574551606 115654673 502069755 979093202 181948998 803905121 621827121 719532382 410371104 809636117 289210051 116726003 505865576 415283038 599741197 951788893 824868247 527588568 653856925 801911167 597509027 894478846 94854993 435205433 892161807 874168638 177435516 20738488 210063223 596979267 376321981 129250324 489961412 803195698 810601846 990691809 74527946 789114747 225851378 506970242 867272687 205072244 356606951 399936407 174322707 773478432 745427010 943879319 99849640 732755729 819689447 761632374 316871128 204906355 6127483 639928539 584851020 694229465 338963376 269947881 272140630 426825581 461562511 990463223 805077922 986958000 8131577 674177365 921248653 652272452 5151063 719795537 147248564 524451342 72866802 943021248 45006590 214158909 912944844 982388552 682571689 273379839 713375258 412627657 281136854 879764401 509092106 120531707 64551784 706447244 653091025 830436717 900413373 487818394 450707667 511553949 99733165 205489684 554388292 156687556 945134465 168385990 189821307 274609910 962001521 314627775 318169126 387524814 594502812 528527976 37893938 501628545 875037794 581044811 645693817 665973507 970135035 71922641 988321704 223225409 931298967 408308966 143432 94098924 737801883 914151285 686175615 191128773 598194544 426731809 229221275 200827917 368383634 728881437 895864703 23724688 723278302 811316336 754766429 514184344 174010508 894776629 466738249 540425123 158425626 416503751 381135847 116447440 172989986 888819320 186660100 620200663 239641853 568395349 955207992 692456478 585340826 629567936 940209368 709081671 236552691 353046403 557196139 725424971 283223174 38017911 13988058 152111585 762669827 63977935 243225037 901843044 293090639 351868838 384288237 762319872 348941404 978628858 943220924 311140815 164701201 387885731 305558746 81490453 731617539 525420566 479693857 374065504 966327947 270923892 941366555 752809433 320959486 723718137 728175605 553348463 973941832 423016467 693341764 955449330 62633732 285047715 961936706 628533695 2984352 56807237 158606019 541423274 313283930 565309346 206077146 856565553 977702765 85010334 851576450 16044464 841966866 292669776 305994840 820714726 646765105 927368297 216000127 361154501 186903012 561017094 993096079 644720741 621118673 90818323 836361537 540487132 796692512 336757052 243689611 123590380 115206230 101235573 189513636 995271959 350932722 386240359 657840541 190063670 763651845 461998229 264316587 990543157 926980674 912378294 36156391 48126483 493184394 561016290 391687042 57404841 212164870 828801049 917410505 360852120 373889993 324686732 474043552 393384627 286265999 374569647 953808311 457960878 878736106 774037251 579816938 8743572 955837022 779267641 107480551 225058591 947842697 924515116 170107490 683289333 85772913 681610447 808183601 343650052 580531501 895128940 305075602 363457316 262579605 975712187 761317687 733098663 522449060 615679192 462065485 118299256 296121899 442602635 311313498 154143958 483863546 682537057 406661043 392820282 77286562 959516098 531065032 85798056 506547670 53163613 90652086 490586552 225494836 758208327 964328877 813766134 232127117 971933166 601643079 893316765 721154696 866898207 355527713 734576933 150908396 395522231 760278133 101642021 630068751 492725333 742007597 613815188 65516059 535522256 693234475 393024935 223207357 503605707 360310926 210610815 575338342 784075444 507703352 691033303 414505331 247914647 605454685 30503542 280625138 936320682 146793050 751128991 790911842 780566995 47727198 606720582 162393519 210612753 48688642 123366571 652448264 446131876 392696155 674372299 474333831 41374395 841185559 122826752 69281481 538190194 688403196 616236596 815282279 229185312 66423945 726892594 346948269 373126298 521570432 445535385 611267440 18924210 19308662 967270094 446251753 289411146 155462634 874295605 414706575 646434509 458304542 746274269 919727249 17639219 941032802 489113515 91418155 919767881 609069950 496820564 260226748 671256387 471238461 576956683 935865900 319470810 709989469 565177072 628472441 75596799 671302919 480903580 838392530 237807366 812465888 479614419 895633231 334468829 255265032 230893198 836110800 958570525 492434443 193501326 477025999 719939479 141068624 939674922 423451374 261921427 772226476 319905663 264484580 997870697 247964381 652259841 979251933 416956382 336446550 732517467 869553367 780804649 31833742 321782646 497126265 355211871 226751505 757726512 285093171 862035895 241398117 240629997 368142784 512263091 74658168 491585960 77246416 645921868 426436023 113372151 17975178 937375131 35043232 971557818 461298775 512604571 561637652 433032362 102506269 625880900 697830122 219249124 417580336 520553551 853964374 287628678 685418394 394696758 237697974 273714320 920699608 501199365 488173934 597745366 182192308 13493392 309844911 309520837 555508699 715637237 526567545 795471933 355142916 730323062 884954336 181750299 761120821 543727796 206272033 269211286 36689877 724795303 289964512 499328779 832376749 246960541 694368106 182474620 999460168 228778856 255172530 103963570 248436393 494310374 893353438 7004754 115925401 370778544 176230541 932091714 276803692 633344603 370101570 195438491 46562129 8922758 210853526 517550672 402819187 384611217 96664738 586864402 393008345 166188884 206270181 420742258 573627978 981155576 399381318 314206661 878645481 839728447 557611277 642346656 878903911 383148603 94662095 749508769 676046231 556692078 439324780 502567179 969141721 662747555 608374159 967145004 612360053 371399368 100368816 635929473 409463056 910384141 568944699 537750234 808020431 743127608 748295282 553363550 644157457 723576285 442446901 651090994 968311760 764356911 434878592 353854203 973328694 842130439 831026881 754796055 719246437 761601325 743499424 61628818 369681230 225009453 668157501 864760857 127712200 422054661 884120450 486038118 64166761 61143893 952151550 423902634 932367891 544802333 839568821 238083024 820029576 812447382 603953331 182081934 25689483 955373963 290898459 329247000 77310010 36566773 505667167 427343332 65559935 656830911 550517116 80031674 773474111 430306603 553709227 971055464 582415418 705773138 149109060 242135391 565145640 728615568 859038351 743050797 548218412 384431129 308474745 833421389 342116632 1474262 797626371 993295260 358206682 144735724 632308026 909993225 810138735 123538670 396215110 140740400 194610206 17960944 39497794 749680988 59520222 804440591 745417836 997053469 217131296 949537499 783744659 81614780 591001651 471548969 555966853 150266978 251988569 769443187 288147402 93704827 955550649 464736157 555374745 756527583 945767067 170349072 743848125 287019474 37321254 33779515 209519563 749622860 638086041 319106230 144264285 806224264 826919048 532579049 214063052 170842219 929910166 64131616 957715335 369796651 107611948 435221333 872818476 757915328 304271566 86529590 421498427 95306080 217955862 374845902 354541804 22821730 450041934 591377359 575863086 172643193 20477567 401092685 269741430 455702945 94681721 795385759 541319023 923515327 143939025 898697283 981468905 888639273 830186355 931706393 912607987 871863050 464802568 317252858 846465698 149441804 939201314 579642204 13120536 756271040 458419179 807076418 588494444 972891548 319215872 863771988 398662446 556885176 313004992 163502455 923480926 782796701 900241902 343415181 297331102 415035285 397333882 306332055 726919691 643851828 944543494 319331157 607710500 14901603 80004797 44500138 258928669 417028027 609724081 225951907 939544408 983266822 338001361 971218244 82610717 446842573 178080087 908632504 186247167 476121749 148786100 575407084 443302135 789040921 112718604 449746587 442625614 53979285 609586918 380745095 601164143 426311090 31177312 948960358 976530819 464011876 774655763 534825037 644565707 321589370 250820941 393956511 708889801 324930344 90662323 209077005 565100458 953050725 382122620 343374666 777631390 583522133 546412417 383366259 911894128 410153185 973018116 536768010 924441065 677743441 452700760 827821819 270128424 999000438 353512711 805186356 509240627 283792158 210941324 11566337 599894594 502662996 114337437 14572725 23339716 63907806 221811507 486610028 213795501 393900097 300510898 896821531 288361240 637112258 428757328 894254431 505206494 258281279 937125362 765016550 417112457 822898666 66027812 27469991 513030647 161695025 712918652 612211236 632427 568952478 944206068 45128373 224362679 986981074 949455780 81085583 965957555 658404840 610777304 107354525 421499848 416594724 512296853 761764303 328360079 276377763 944602074 194641712 440773905 474381482 611546978 716088709 667732292 27126172 419396693 7826124 431886135 768543468 349791381 640608574 315832866 947097662 8105997 34604488 926260399 642071059 948420315 691559094 291715961 306262441 343775261 489643225 592023989 974192733 688696837 319186993 141459031 408955006 616078904 438573326 323411591 675286815 629234505 660762250 226745875 281307977 109097191 911801061 148150649 688522463 104514127 743387016 861609795 826809 906905475 955870865 835445065 333353053 388255214 440468554 418115904 996599202 966775944 800264706 837293143 155328386 770333966 782397654 312970611 349848251 97358208 881162462 609870674 967637421 211022243 888866082 375256306 527977947 898581790 272516563 634688134 740494125 778802150 77601135 586425880 9218214 445107329 637788740 405504491 460736867 729976389 12638 165157771 562713909 638384335 290828880 363047837 134613961 867604199 347396888 452342137 226237 443349643 440960074 451304108 48412260 785618428 763257156 166091290 568004877 86241249 718130690 309140384 639445128 235712680 399803745 425386690 16142516 334439133 108710731 510416630 541498906 783112767 20813024 631506610 597734518 498693899 90866095 73692459 97399717 622914983 193150998 199710087 696534042 805178156 893300723 931079483 109292093 678478632 149945581 96211288 99899920 545938857 290319141 665240145 149723770 642003024 369752981 920629547 348408888 180734324 559816716 278680265 956957018 8061324 688239917 796152142 382248409 757670091 999759859 749345201 852984513 75963730 781565296 532661507 559787546 518674007 168363430 46913988 2933904 596518684 465953043 940667716 308305149 134161416 971623339 324750752 783571305 488914926 183436224 127943263 275703275 880974503 728700517 408057572 503625368 215318748 146193896 87643175 374505869 291775703 343842214 286308561 473703630 103741123 660262158 402099671 236458654 915110233 820366844 303822620 657586854 486332541 68037961 179790876 550309724 768257229 671515869 966404333 27981898 177525061 549856684 384108604 399722313 867120300 449541230 555876458 611804609 611564137 886503391 263120985 518057706 983819237 486222628 380910190 513478148 429428473 829984242 196595972 47602173 531982961 663804142 810798448 73770942 590038526 250721846 137515070 603619319 575348146 77220590 19590270 285441440 416166076 885006807 272976282 862589580 398854509 218568074 905142583 74224734 852494845 909691751 478506925 586980157 653242559 51896323 928427692 184416191 799661134 692500507 685203813 47897308 204236222 725438625 632378964 766902851 658464097 57962252 201929060 404982058 884548351 539315843 238824519 938970354 911692769 873482985 544280848 52522510 186406787 157240104 381329914 843644795 236912252 610986961 865134345 344380993 650053782 325114363 227955651 151881228 663288 127557841 192104037 422595392 284751163 165204586 634593158 768759410 907175846 971878226 473423477 228338621 572394914 106699172 716724943 629724317 168423093 94802156 413327094 929523173 773091451 901906112 149942715 793386734 470373572 884425627 564527211 574431907 106884279 819985796 262705438 62029159 270815997 124113003 686038398 162701722 402539972 18627499 268301265 727117532 149193697 970520191 867880218 711003427 78018184 897885535 895078976 437988616 347188702 893555050 99145034 186152210 417921473 849060700 148478364 541234402 898139304 224026739 934372311 368087509 8965278 885046278 32770965 91941803 798528991 532418098 493423207 70766069 19738833 401466830 42774204 787973780 909943885 588367007 536193058 160223091 148397698 123395628 558273099 564539856 241452954 839544203 568115415 916653825 227002991 664402293 699999726 614348029 842564809 361509077 204338800 425334877 644094918 422683846 895554871 262764837 3063660 209078346 789797220 366398470 990634485 508879861 831141746 338171571 887971815 256316148 406670289 554775307 383438749 692121115 401020864 849882887 775017123 648482532 52079348 273124565 191498938 775621672 371957291 485045051 126255713 998210603 23661625 495488280 365643182 48393914 448460130 72925921 853215554 746836920 619802500 510675016 797611861 163519049 46999788 888579666 763333989 767211037 914115986 880528814 177501242 154030768 747398924 654734643 143300142 690205726 536939735 696042559 308876105 302748358 756492078 226271107 596627698 842004073 23853348 163625627 951602506 322857281 512602563 898232174 544498821 171477745 7125616 247125022 442974431 169988372 541048981 532552582 285346275 26428920 186577970 969601971 741617057 438866871 148623838 358623116 588890642 897465406 833482489 967499069 291798440 750250475 354373413 9480003 193775995 913986664 860741120 422569187 40997222 947397953 750388623 693348927 900600394 335037573 105888967 522786103 347332898 228151587 475136826 646839582 192334851 672948501 971693498 853431692 845850668 911674247 704112102 228700132 503468456 182426697 984486805 987563596 480171120 699298963 844160917 573680126 594080610 249949653 305272611 30446060 198398732 255976275 108313191 694738379 756209128 972831105 700113703 760236756 399438382 227589702 363464472 266409092 913748478 532157069 685845101 671158843 221541509 894419578 592459240 754811684 490615579 266885386 366782375 687259398 752392603 607024223 934413790 858757678 399162845 348816940 317853699 960090232 877977894 516664316 184992431 592479131 848110522 125026293 337293374 735619427 633114725 470683670 815150785 62073438 995708800 617682006 101653465 386424914 855560616 325584587 246246318 641571404 518740172 906294989 569041158 591151405 521977780 333330072 895725992 7302695 958268711 222823725 362704514 460350412 530693464 346194305 255671934 706097140 18718606 710720864 155624297 94652042 540730114 165398941 418066902 55319243 293027836 603254050 26005603 280113978 195883878 643767997 465872639 524115567 340410950 525351234 272016333 90896652 70261081 711328377 971085830 986848488 939006392 737820915 926779264 295449246 385279352 380436810 170995203 703103643 673955118 523876874 43628982 570378325 307447948 659782505 270982112 582744413 589132697 901630742 262730396 605034996 163616722 209268908 348728750 802010669 960773235 35868519 465237808 269884869 190394797 471168812 793434481 761490993 327515055 860541485 61307889 568157836 466743510 282155644 824712809 928312769 994151582 121579113 201087762 941166047 93522735 687430953 704508796 336725141 954026913 877567250 81052389 707299454 356474168 575998102 157791135 503324283 961982680 938097633 736159293 893127443 454751918 990230392 896696736 621193580 626910430 95776412 547392042 290738636 925289551 646653430 457775498 874161950 951098482 18417735 934067475 547117125 804263352 722864134 973488547 853465807 214572434 408404856 720583205 487480696 118586651 876357513 432478406 240224022 272388275 476964201 305415301 390477426 306631572 755062573 412472819 527343454 281594109 355999314 568764949 852406766 37096637 298566594 241009756 584898305 184197338 307771137 599063494 244822684 260428232 411446542 279192023 941811178 816319023 750646345 911853650 602044376 217756993 816887226 428497399 427509161 462710412 180908085 13824652 771199930 295197600 408452838 662217031 949783558 153979414 779883662 781939223 993914971 863440251 394448101 894259034 309280323 721911986 266279825 953113643 818346081 288535788 569373708 388448507 503454125 65192034 79491851 829520067 487378452 141631805 191725906 239521017 890877602 316481122 430421259 827164777 448682254 115353354 274518309 838871489 529849206 241422805 345065083 551379513 195241003 133960816 170060317 184023364 563469884 399098768 809051636 91477540 417381792 424714304 402262407 428640368 6148619 839170991 687153120 615413336 849804294 996100810 56813982 931280614 288019078 720000240 270105394 471298195 953453530 78966737 609844581 599419391 252678435 870844330 456187286 399822745 548367547 936755785 687241296 262026093 88670898 408464465 892320108 574104462 560017641 834330252 507403227 528247795 947193923 793958421 751082572 975315245 728494059 255594655 801838668 962221874 155403715 498796887 176091838 933381622 806716746 926082071 908106038 958676102 656404793 170512994 504941829 203238512 277520555 537990118 279557527 640224191 780640307 845433794 476039279 31717872 189277454 428133688 302624116 268955405 196956486 151131468 783285900 240342577 6116916 134732470 292132478 181211189 641645589 962949994 843797402 267555439 663488660 805444287 610397689 757511915 780404528 209039689 823022057 485463027 717128282 299555013 260331958 492238531 602781672 575481281 183904126 3826704 515641281 110633751 743742496 479933244 670804148 432059067 457474841 767877318 571377220 119521799 562103888 77118221 530585296 585272582 273684485 952920323 211486454 870215049 637839129 536500637 861419017 214171158 331731640 484468332 403773035 793330327 495050484 330332257 272733962 155797184 326911733 603234080 241710973 611038906 125065455 660360050 945998204 915599092 845514081 986508554 518810837 562700037 133032041 165486081 987137560 781773643 803011989 990791285 12360131 712104955 205183251 634169064 419333113 73506189 332934435 590252288 818500852 225138807 449968271 363519285 308094109 454632001 126510899 195930287 964002472 44178604 697107503 324838722 697661212 660606276 739175291 157725411 864298376 860029041 703073570 952669183 371599525 568915900 60872227 755109631 816797251 684184634 977863927 786726698 438912489 369968743 538298784 920481535 575859135 90008460 491505686 277353006 279409967 665456394 898448009 964503135 329332649 185021803 815843548 103411470 197909898 40116887 187176809 119558428 678643233 918052163 393306674 584367915 444907295 234244841 514601387 700983970 505782728 621484147 710667621 594087984 584134921 571412698 771863999 713736492 415699511 219971853 929861880 3729614 953305362 936383938 255272450 571473725 134303846 729732084 128816193 543533972 833221725 864435032 958919615 848925234 705204122 623226603 59197964 458303704 372663039 186596840 210122543 842040278 459169957 350546363 807859045 970956204 409074613 63177006 443362426 116140572 432426986 907326459 418850185 870797162 727823848 435090870 139187029 961578626 46501311 784673714 430809921 596187217 672835959 244964261 686695885 949352389 501425042 751513229 770390698 686508497 272728708 176167875 301019447 875490783 384757791 668576371 169005354 190907035 581045304 885721518 620381176 301031136 918824783 544022182 208805932 513531286 40430519 21806554 589875286 393402414 66445824 487812041 504539558 897547963 568060804 861054369 189887670 251355211 22857766 498935086 562863500 991352654 890294164 617630060 545823302 106630193 172711776 731934362 506619935 337296117 203181361 803560207 743831974 63955395 134474085 967791461 289096355 556019267 816542360 88954980 627483777 197353813 182556597 842508216 276918075 11496715 893487101 69286001 667595369 560552580 534680802 872674695 674780635 138808942 690542522 608623966 274734935 233396019 145649209 303398736 512231176 767773096 47231669 450577707 555718977 580683751 62424228 514238972 327980868 886754517 104279573 295987527 354084183 783028692 684913454 85100951 555177604 518736367 253126498 334407007 2308339 74143382 126557832 783542718 145337333 750958899 924393199 36781145 960058212 734737221 501374378 596320640 347633635 908742948 554215084 480396727 21636191 828548773 457227273 56740569 269070358 706551282 844847394 598252097 110520277 790674070 598525265 624718959 982267519 682129544 821923958 338830085 957014397 575287508 733892909 963046737 656578171 913110529 914155519 798509951 327534021 851918923 69450354 131318005 133107225 471794890 447593571 425493372 119688166 713627907 910693439 558409255 395996104 910086286 46111600 966751833 276037012 122133818 442808558 733349288 332053813 687842396 644100185 333463810 604564241 96152397 983582999 448336573 609783966 97690860 272429224 570178503 962032937 659317017 739790345 404571961 61374019 892146743 6101288 208486012 380453563 456805280 235263937 332076560 178915819 954464743 615012901 892910909 679336836 114991489 137530702 315804562 357178384 254148988 339887378 406136633 753744577 391209815 582807570 175764982 196377524 319792500 59089333 729819246 819691829 342672580 683122914 664932943 980795459 432358857 557788296 545310876 950623126 442344488 794458079 271635508 23681305 269424890 868845073 207483342 29341047 591537663 849227931 116459549 290234412 937340390 987172789 858750443 725919079 823803694 180250317 954541036 67508632 462469928 944992701 364311175 200724190 490307256 666188690 311849875 800876832 651374756 879056245 132213787 865881396 94830303 386179925 849760499 463229037 241779960 890513457 230930075 670331339 978712174 120911862 897653423 140398760 754582242 343146213 143241743 714945386 767803651 763399841 26883378 891202098 463885427 428288006 216762705 765168478 946882942 648764664 173345039 271877081 696438789 7954776 727636173 516829238 173249625 783757432 671940008 797907962 123122355 874819827 43697726 360579855 902775997 394899567 512300612 969341375 601944032 3820813 670024896 163090754 205496115 467966755 897878408 274295126 369771857 815045315 288261573 788691398 62952746 918162678 684921420 86911063 349654168 140830590 320289396 947680681 791719597 393350342 330646917 503661270 743379154 439838187 252500642 224416291 837650192 819121366 381229565 956269518 659213857 341150354 290803818 799292614 49851497 730462048 438277620 437289877 895938263 690758162 461730536 233713805 905370877 48957252 854660988 812568284 925461350 640975710 356344108 146069909 158957676 641574273 413858403 770677856 971575676 641782514 985723209 959656529 647362685 339547852 361454994 318111297 471952981 582544993 372671206 11234928 56254066 561515946 173752325 435539079 575079607 686248889 734965852 850433936 35409653 395755385 909337092 432598153 900089389 105543720 307155150 500008116 874520323 517575412 209364997 337040755 362314896 116044698 369750418 401697979 757415826 799698948 96980162 107090060 562186117 142262257 260788131 377716805 998125481 122621294 983491244 434105303 950963349 408077606 295837033 406139554 215183437 473697763 360277040 8686808 128692786 310998248 633260173 659249902 898476361 776718613 314157154 195628899 463940475 111718579 190608961 724110010 369374010 593631603 243979681 379880774 254004679 265644900 617273389 114812696 529490677 940022598 383766922 492404266 561943875 945229080 306395151 802225903 98637397 489092725 704545033 532013144 705719359 220369814 631387048 645716298 71936063 119966768 402228906 947559970 143425115 644350630 552137961 644062456 313474002 866856460 349757210 111072002 627307245 320128583 813168785 687531377 222597504 648945221 95508970 89129467 895617794 899087456 314960785 671631181 31708644 176429517 883728490 518557044 849658776 62636993 684586228 507354609 372781878 933260083 709106050 861047593 42829705 28268105 460610076 715765177 527673904 882164103 456421343 656543427 702798820 966552988 733771934 998020849 353991078 160554305 767536961 751893832 261908838 382136484 205087242 697994504 168736017 866935716 669195774 363471733 153086546 472425885 219145120 590667359 626794827 96536387 892319464 106904533 657256301 569886799 153060869 632665317 128302599 902755021 964546724 742778596 781483006 369828104 550903275 881309500 550821761 81258206 458287860 645008296 37189178 454690593 601532990 164873331 682211617 218841621 863993901 425638321 508205325 562205710 612246700 856820585 30603470 372473796 24044582 969613838 307001652 921170491 545268695 603410665 866685815 84339044 470869821 410456380 703600254 875153544 727268898 393128639 65369984 582749174 268805951 902668953 813483796 554237998 98629725 391537796 560983857 956731023 367338020 164262975 547943418 405587345 871211095 321729382 795856203 597782584 37461443 174083877 780692850 510949923 873924291 997518011 90274361 19269799 744642159 344578861 278324518 801791634 334858090 63516541 770416012 529918233 941732476 892723789 120591190 58819921 314352863 371806178 467387386 946519060 460666156 653915023 457199267 285725811 4207202 938221018 899633498 982835525 994031637 784423666 119104567 552473011 21728959 333670087 269090923 55174516 790326134 486649405 526961346 583101711 313983582 552996710 355768752 266059921 722255721 548504475 510806172 852203719 814260062 442079502 24395772 685295887 923799973 268678052 69376997 964224953 947454872 712352164 565986858 167241757 401412196 251032091 923340342 913313134 212509594 534321416 908493483 491921593 79003840 926144804 284156011 100679144 947361638 887519523 449704312 870933228 342532700 806806022 919228872 140299495 788049914 201073751 360737769 915862979 805791361 848606998 694793760 67654940 652782218 834081932 666366901 936709780 89144760 273024127 844411723 948991751 550053437 917251919 909739873 573593006 774059202 883209375 135294681 358469124 873996976 246163387 150329161 913297671 151764521 900216847 961132565 114162469 443686814 537898389 472060879 852656285 683772967 734598507 374457722 382973072 263435997 284651769 548584235 274114746 20929288 511288123 801486273 282645229 713579147 334265847 880763327 381183202 397815681 222273196 374541014 310140287 689715805 47161186 757189184 397663626 676368547 125283369 969445878 334083257 827839751 441527724 215650922 310335614 175142177 139137862 771200967 551510884 450131540 693043213 741531103 768341485 374567875 911442591 754504893 168399118 31627057 334061016 428656282 500431985 59299661 901728313 163014667 357512766 123439948 237638884 431078590 740156636 668523259 502121393 243197167 47252534 582398923 706196370 713313263 206587119 367791509 935079074 379657641 132023518 556212086 883984524 312467725 466495764 160044564 728032222 49692898 338150272 479560764 694169635 121067182 405976959 100513189 831552237 839282473 921854762 676338025 247405971 8410701 217415970 738244798 73354912 903527271 107951344 429659853 355746232 521609401 717958018 142089872 935774185 851036514 146922006 279030583 199682518 886823413 792585601 186031911 333916615 267697965 439077078 178606052 548115161 954534796 696230584 418433113 562093832 606029037 314839134 757776047 12753723 637036458 482557122 974708870 60665502 992299138 154610364 425327277 703170619 177552143 425782745 348748734 889906104 278942710 605464830 402140013 963016498 841731356 357746345 556226208 800349829 959920916 572133251 298105631 347561983 851862343 263223282 83659594 142962515 821144929 17233603 889807246 122331984 479735314 135512811 64254619 775150207 255180903 290828978 759927814 250568247 67367989 566067763 435073019 45293038 529876609 541449872 712948746 565334777 639858867 356691648 751968893 125706774 193799024 488945465 345108951 589745349 743804180 95534973 625669899 910953480 360324059 807076414 623170900 900837863 802351051 161523317 335678813 929389663 748707963 488210800 45595667 940559360 667574340 809999297 198967364 490209187 751162255 582667267 968997080 807398041 340221781 91444992 999989216 695683606 638872463 646927899 385675377 107461292 126163763 358104943 381710775 435039397 888230952 177818992 927084578 780071973 625620124 771476774 17490410 718765175 234483014 207923773 171368290 993498988 747496025 704132745 451484066 443913529 360550022 75620113 865380251 591046308 245016590 563023810 90926361 251115698 207930185 375273483 944796671 134912120 75708910 807359392 12537973 929903297 848943958 971320476 658970993 760947550 675408565 97654215 322218187 883767756 426870439 919224887 95225236 129537796 165348808 883769988 16582478 231767788 315097798 645283229 773230702 939450881 354862787 466673665 907187986 75447181 550247561 677300459 159592687 322209008 588339076 510139704 183359403 897036801 366208066 249388765 503863563 878957791 742902475 240293231 188891623 889250895 536129560 258203078 301817030 196973090 376000406 459212752 937603871 456622312 704528064 286357463 356891439 93403744 353596480 688118164 481977985 923732901 128386776 739982166 789556351 105035938 985997642 147342030 230559419 124078819 337958928 307820808 357791709 160514749 424725570 530752723 205228392 225603030 598735702 756838161 416104696 553333454 572922953 638990567 127457400 185810113 191690363 693542015 967581950 228881094 946799216 910645055 990776683 681399673 872583119 561572051 638118091 331259109 29073042 384112641 48885955 537644021 626824478 323828048 585804370 227582690 202460953 637989786 106695295 907239708 441944529 57014967 673498600 893847336 971187230 856318996 313308846 322746430 506755838 329900903 377870001 686000301 338767850 149819970 624051231 447432911 799819706 912946889 752462827 411631398 320174817 968060483 5373141 283716172 939668987 919838459 794736313 70272779 270025624 935306561 187621041 158670217 528026823 194360417 161074512 23015474 913803482 333265047 619382421 200971673 376099539 814759161 944641770 425450658 693046889 275226483 415221329 6682077 278185670 51722488 450739775 182930328 800950826 373716450 558941826 497251812 677953167 850596120 212209087 906261487 257075145 710950042 978380423 351955380 326570371 352075187 710273782 494134465 564946869 113861881 511232356 497050704 961610712 726138325 240547795 520011616 931758248 158156013 238985543 907879775 877093660 199323790 690906392 446185997 246150150 835672073 981690411 578523237 169614530 624408629 176632581 943453627 630470089 207041640 264939474 507773877 972709122 280892059 63403063 320753545 503760980 962401512 644401357 788102627 840322094 818643089 547012086 211031154 417021059 701659859 424493818 431331434 82900548 149736046 812434737 233331006 898244961 209289151 332319639 19009761 24851614 699436031 673822603 254475785 330044255 713745053 934214849 362427022 620328860 974641870 676350287 749741082 68302083 576010192 398788021 863355249 832768043 352640593 995475678 424718952 414600847 602787050 796400828 988001469 44163349 214183459 379048983 718611478 761874453 628429042 725822274 649530985 916733098 852053668 219614619 302577627 698058113 533057290 696675882 994948506 356673167 294236882 203871070 838519043 943721777 393983515 772994252 728457209 883587607 79371623 471083085 561000749 123677542 304532887 591867735 842933043 422067993 135868591 710598634 885872454 312738632 538568811 707020480 102895941 756177391 283588863 993848501 179631971 746570624 786196653 858839180 220186606 621082604 949308441 63749185 630010951 936142141 195966122 613093348 410196308 521005250 916331399 161138832 867813409 60261168 762306614 224782695 811375629 306238162 944917736 295384488 169747070 728352947 453222199 892955723 237790037 829127187 623488941 689194055 437450903 475764081 241811558 676930998 176753252 811485349 977712506 9268059 5911035 963290322 774060729 897074914 193331504 753998778 124802964 626343610 796094833 176756922 593546347 969442738 446609920 777263241 745939116 949772195 574360538 634966553 777323701 804187075 367919980 687286418 18812513 501293796 847150546 886101769 572872998 589091683 511576866 183392630 585777616 81562100 806387850 747973256 254167445 655807838 995818820 333827843 675765276 867970036 831947953 167242391 297769715 866618198 342880597 755330461 470310682 215443415 743439022 820626996 592549951 750618078 597602694 11052900 586599131 343326716 821887565 419764084 508987888 892956787 105446567 877450178 388635369 216679187 713131486 638269033 653112818 967844492 34220375 201650351 576091561 334283492 994572987 439697332 962380136 740979278 659335321 161567127 320104625 769345912 144601578 927427334 156062938 504383061 669746694 225868528 758451226 489800242 636461242 8378306 172699338 171906633 535539619 789753439 819588156 122690336 949182235 798161325 287582956 995607604 278290833 688371759 33334302 451327604 795445579 496597064 401486561 245285910 535155646 718191912 978327290 544583355 20386760 269249209 999612194 624153636 50202808 731391775 959904071 782680710 874721005 693527409 952306669 72411319 79216546 585567508 121867571 137368518 847201918 584260046 438488800 433746169 641858010 508721315 676399047 686917083 737429418 148474760 552863443 268340292 800678855 709928635 189696238 155727823 756649950 998841151 888157447 44920130 445243674 379628616 409597300 858987994 35736807 233961223 896122218 605751135 253545451 944871750 460101152 783021293 986990001 708350538 680556188 664063738 523907328 386931675 943981656 742211437 133325104 759969255 235907123 291724069 922269770 9861321 97696303 847320381 833005844 75199159 311083823 67577800 422458841 777303818 178998387 967509467 390578341 301977682 496299540 86363110 787906516 256520194 219889097 900732556 31874133 605731795 726071833 912903632 772788505 926573639 804977375 580622684 267887645 427263584 747314762 928296087 606513136 778686238 944439075 805570969 795232249 615818720 58227409 509720729 569606968 376984811 45616927 909706764 685727899 162678112 533466127 334971698 557995410 32473903 215415672 912896257 375202292 203374530 521236785 667527251 494727426 725618682 936602213 552766679 691662699 742551804 513466324 90524723 905129093 995913418 861263115 865076411 974011963 364628634 423564368 820352395 496524880 618826590 441400369 189561425 869262797 513230414 341106038 740163036 761283892 810894764 48903305 408527124 954270307 689869068 739507720 561400291 783260928 754291917 197348049 843588517 622368081 298944307 836385497 523046898 519293757 661742280 429608203 963091069 583413816 128657594 49883977 546932875 318886964 786175420 520318769 432897737 250591877 577106649 430040325 461230409 179286313 693021902 789433280 139658855 82053441 538335967 40324678 886956544 927745960 34178422 18644459 419265173 711425359 702933948 462106388 976612612 97328544 45036185 227272827 852942209 251107540 103243622 864264517 411489453 828885454 517325052 542913614 407289145 579461343 797852066 74761679 358979568 215173664 109237654 300162625 286953623 106925131 510737724 592394759 849881774 8841843 375749278 954557610 764799277 353129669 928279033 190694886 452031122 6233964 982578773 23966786 853926930 240849704 714990846 573355920 157985277 447896375 55421219 581992113 959535905 307503312 54072122 101530950 880761848 238568893 285011091 187704634 260734970 858858756 190702764 231674168 671561685 578513302 519443806 279787145 511580702 446819495 676934150 934796385 936641749 453654844 332064842 976845831 126698680 732865014 442301360 423441377 675030276 650449226 92383072 922819879 305176273 514774884 280853027 441978082 82402799 929512912 449946321 588148229 490117440 320856029 939650977 188543742 618028952 216335100 537881920 550382001 788815288 563180938 990853014 426029002 757051468 498567616 652602351 751406468 754345257 924981130 126897834 401714244 542613232 585009143 630545906 793747642 372442864 751064208 964767099 642012963 820878340 102203112 223206263 317069785 765634763 83041136 725150226 867514811 944936212 109372233 599756 784998791 87367678 725021574 478685609 833731155 850939691 205374288 642574170 525952827 401675834 457411831 65331002 825328331 227063559 429619502 779105143 606589758 84024233 571885667 631358980 787742711 956308133 218745888 716175317 961654348 214554123 299978232 477348486 917168904 400382143 539513771 914478533 908396856 7738897 207084026 689240397 291074878 158142081 465762469 132765422 186376706 990716519 619240396 825017710 377767122 848523199 133203345 782454473 451022558 142682149 34975518 937993118 278882250 927755439 79297466 627506767 499207647 770088043 220845890 777795860 480173898 232139634 224423601 787462968 836227282 851877814 887172640 353639133 910850017 303572622 781874743 642078950 906053075 989607343 491253296 790316274 161337041 981748939 182486369 595860088 898943196 758763059 187120167 505614631 659400751 960133764 296637085 705270446 237439369 208846638 234735758 270626575 299598713 193784921 901005605 618327473 286798375 979352806 96058606 103824943 4424442 242964898 659495686 946851901 974448462 322908329 187857367 399157730 571871788 386440034 928254286 468957246 54648587 561884136 597799064 982381330 376671124 720310244 170071575 120207194 864021172 655471138 726463479 607274895 559769229 551292908 399305266 98267697 597045950 780957410 691386838 386407234 304890235 450204579 997057420 502434472 406292013 945096015 685114304 674803989 274824296 357704281 186033284 832026003 644389670 131918009 344882055 12728086 444177421 151802016 637979598 569751643 865498497 703142162 696498212 500137041 829911532 989965796 249020393 26863856 878791835 113411447 868634222 59826587 310290840 662921510 319669419 430779429 707103278 457534521 455581470 299388625 504960722 355645977 439789680 781050434 691464655 805524375 495390334 990172439 539539410 745332811 131790577 874680022 272227456 713219918 626488594 919421080 39875958 753056788 493307648 128128317 91194898 103017614 692559302 830519828 581193613 47280543 142858524 719455212 536588795 482559563 296869669 177426440 491576241 381730035 204723964 126961202 825916071 463581297 827032922 41462717 586522448 506687990 1249519 238712158 933450250 507137989 467518283 105142915 42597755 502564151 291466885 174532181 873648310 867759125 106965250 416102437 872390201 647421804 578787183 157406976 296787738 236628493 516451382 482288493 565978463 421831053 205443330 8414385 873300641 720886157 876728772 334432934 353975616 275581443 994298087 96069672 758386294 408572013 686676663 480678382 323344315 675416671 560499205 320530180 334899870 95299213 932475680 830702805 271657316 411462755 36407015 733969335 776036497 548460421 211362405 855719229 80437203 93468027 368041169 818571683 558829902 935422056 566844428 359509118 830463842 783615098 423511173 789081737 156992706 647204391 49639397 854850058 564800875 5926534 20144660 473362550 85687693 472501493 850321379 117232321 668479368 791932388 249247060 483509484 841022344 954016990 273539589 975966626 741946891 680788683 189776908 918586624 830531976 206973769 260040936 368523087 911117193 424091061 212348914 330034739 873520281 737363548 698504870 807785873 47356303 288323058 720082338 791805640 799763823 199694034 783031899 10455233 491281999 578210995 250645121 444095277 619247384 11682796 641937558 370802982 188722807 520223290 955431767 925319104 446159760 433292367 852673570 581180875 756550811 911791573 135797742 726715811 836620151 92934128 564051074 244030720 426206929 709696669 413290515 191520272 558539247 239266329 349367462 294202166 826090070 167699822 893847815 8189583 201883552 622274459 597765984 638849048 294502080 230453491 18783720 103029577 534584071 837889363 80570626 554157676 650844757 350453501 778079148 2003658 615825301 584809352 483347830 145499957 805722012 474478400 251615881 469176359 92467004 643491158 662496018 698452073 743634192 260798485 520482399 799948936 466634270 662473401 939048668 425342727 112782313 330620650 384794692 548523640 219041689 967235867 169392124 542232291 522589429 502267771 464135877 964242708 299787423 608543415 837179296 512671447 195241737 603179575 77553607 152128341 544647683 795001789 224255760 526467466 185867127 297328754 354898870 266717414 990048164 233311369 900883163 676900841 860606224 734322057 301314383 897125911 749474622 624902559 938449905 903162696 484371899 634439101 739433588 208816761 371501772 11138011 338504969 342433218 347825960 675217799 286664618 640922345 576509577 283495009 564094522 962321260 519867495 26851566 753725381 461984323 375230382 557799824 23167530 974596191 666631669 463054577 697551797 770580920 758831446 756052794 397752476 927761838 347460772 821140383 264974255 392087257 115264410 582366987 666303086 755787950 369174217 888814570 690083159 204431307 491970703 903714755 255617745 631731860 927381810 932198184 129193767 138869024 863370228 414557637 681595065 678620040 907172443 846530026 980740102 129009583 789206825 488220415 95111554 97591670 234680808 805443197 582789706 697233151 583772531 436263983 30803797 28403676 100475926 95882777 356821223 640532730 100314638 533164432 287487348 666095799 74755817 602228140 428932322 919701068 252119066 256413474 325990802 568674394 488473137 725408433 545617329 254683230 592880281 532507283 900279682 835746731 585474170 634030954 683020979 527875619 153517178 390521528 47158368 257900399 748064089 474277292 798790508 831887422 884540179 150305968 65788158 31933921 678727284 505446648 683262156 144918552 119666256 302486886 38347036 551888038 714545502 786416191 480133879 55731088 72145105 750226206 28791683 714283758 658579237 58211385 753279448 79333123 735811974 353100751 385856762 62807834 434113427 403437379 506538259 694351241 879482906 159495990 79272779 713115422 586712260 733848280 58033280 110878161 960587030 141689574 367689670 93868773 373886697 653061671 960213029 683706008 902590004 419858964 384431552 474747373 644648223 634528298 961927544 680711150 321501562 70438735 952443046 853612579 389241633 62881368 395957142 688461562 14122468 430253701 849741011 515511596 988597401 378954930 815617161 20800446 996432581 429992289 28863596 505794777 751447535 75676288 845310880 281502106 477755767 83106201 466397220 263937747 600879352 13745765 791387844 641205153 822205272 783435788 721205719 23583983 263720007 529765428 465670739 636854716 567493730 861669800 412883246 56136796 617894999 558725960 382779707 469388240 381619318 417006302 150370524 992198652 782668182 253572834 936849901 612627874 102646759 920090488 916185628 399830753 216002803 872263436 785484462 465087359 582287766 358800514 447501620 40592906 401405819 685969327 188810538 337331781 240179401 509336787 356192769 935748192 812574789 80774432 551396263 774294801 395563289 445540705 698817309 917423862 522712600 183288621 32513707 613637265 702958019 547124413 108810932 965439084 635197941 968857471 821549590 381289183 716643881 170427998 13723759 193110340 165758636 135859209 689837714 744895646 133760511 666994989 298685429 549672555 146928920 272415050 909141034 972973855 678980589 465751367 925024139 270990460 815921247 229830124 69638418 557061786 430815617 15311633 675952409 134509860 244521908 892002220 583590636 637608700 318536555 644897107 230629553 651142223 653639197 983442057 3879729 369592015 653666395 114708464 277958855 577079901 619739942 528201283 157567454 805608620 937168485 500893518 279256576 884929124 987063511 601330824 703283108 895138199 777817965 177355069 180184330 749451013 748377087 870376048 903069862 311804282 209623269 430238575 610334612 667712249 137671443 608888409 262629163 342396450 788064693 751002541 752536043 700888259 908333149 911978628 623413820 315982196 393884252 545986656 456524734 921732843 760496852 171241213 579368965 219217509 970788060 713514606 266940424 703857017 742437483 408148979 155227769 808771891 29946476 333608519 244579942 667935702 279183956 332159537 715828670 44176936 739809506 854044780 670686762 97754199 230386438 790184150 512744833 85247501 472502256 276039129 687372004 846435901 920322497 369028482 84428057 654990151 999874099 854318179 283792911 583058606 333861808 759651533 986980940 63981754 992709211 624145772 690626932 964966997 67511295 247653880 233839184 1895501 453039070 458372942 744875691 219910180 627163688 429880972 571344797 418849591 974543595 78498272 426251681 571390423 666947126 473294616 593493011 707944196 282297354 462996498 718661629 970374424 29528023 612136238 613966371 861506528 558495508 265627161 190524748 913964207 581635127 288649844 989189949 82935037 416623157 150575089 213001255 967277452 820149361 958731174 753708861 17768015 440845058 214934520 843351862 107232947 520017471 255289943 165164443 711822098 348422905 585964428 996563861 901158046 817844692 691448464 212234818 443118467 94748864 910784295 887335602 112612881 502408110 45940638 344788694 943552202 646938164 607008144 429689072 338486742 827839040 134508902 295771077 450744565 513166620 912442521 182921670 356580444 92371039 569404752 903567319 252339400 392437365 750847758 373970991 402001767 63760546 1147768 693564920 4112608 988328024 866756554 63706986 482820965 804558298 249930727 234988263 975276251 208877939 349435727 987765193 703591877 815533382 559684419 975775959 350683741 575232577 180812905 700350587 544634571 578542845 997137044 812799997 169474425 81356685 995938022 648001441 315598771 774946303 699877047 477598694 372927743 196843538 566352726 681259942 408735566 754844874 563541024 798870640 361102682 165099090 371353334 485409215 528710257 537203163 79643821 217628307 92876468 629916027 262560110 176046922 438650098 968724390 988456914 475792889 681355933 289304352 123991929 942653467 484447399 10870791 61436874 526708688 90405648 419210427 74490229 316978382 384760969 612881298 357627871 751788840 507035103 17296224 31725573 148576632 222913766 587409243 529095236 839120200 164831029 176906296 689164334 397255499 399588001 974261993 842010815 350228693 15241748 960438012 649343135 201279154 572287099 620548017 803451779 746542608 475381351 819124617 647149961 940204589 832105214 633900211 441249472 301084077 930675369 627111386 257217082 870417240 638164079 330677709 994526953 750091915 880677306 958039942 158624930 825421234 890502105 537467490 761227934 70961948 629127315 333490905 523838543 773414918 139379136 656346220 873318193 180632518 90903913 538648401 841803068 49326226 358939850 745702297 309510456 761534874 998194654 240209177 956730527 122862470 943740391 579745716 282397489 157086575 357206356 714927724 556476879 640623823 210490611 4430616 987633565 909626448 82177274 15219754 416374374 736753355 827083429 582584353 134410787 299919759 416632626 327485296 44262504 982088809 364773038 69954095 838263405 44347693 448509291 923020173 769058842 324564305 118838124 759283977 925705924 646873466 871873006 870662306 917250588 920926468 993377640 234348267 336760722 561354846 944823681 936885766 297696282 82376195 210740659 817130959 752630333 636835160 139589486 930716978 273419438 964941005 320473703 119381703 340834014 308827380 936394821 303482316 24987621 284964832 278174996 206091701 227757506 826835755 543595157 520086649 630987867 254202967 809716938 13852865 29710608 34105419 978666387 644935091 801428160 173156838 462053317 127573661 122938863 434442706 898643504 157047024 604639101 918599148 460791992 296324787 233315686 286224156 720500488 75112041 6265052 800974141 698392221 449279128 576326408 373712669 135062533 927225770 841407407 749272622 325112387 172538671 956338535 770847899 747311857 13404165 985733713 246336671 232294520 609880190 266158600 150433525 619939939 255860356 324646906 119491255 964473782 389897408 944192224 239638157 708505979 972425137 295513065 31470014 948548833 235768744 721830975 991391961 839875323 465872464 16454759 445450444 103849284 823202442 301323081 573813275 178054676 66347439 325367247 250422156 746158540 873836409 395972054 128684627 508032686 666637007 374302315 955256194 872164888 7636672 75949094 360413656 945210461 778454794 28829944 555635498 260044076 628268318 908926939 108596874 585779294 870422334 918680764 310567534 371044393 338437397 55068301 219845337 350499230 664282643 387389183 893873319 952820887 986960298 697034859 739147753 859994589 888439315 181597665 266275351 416466963 597493167 346268771 834175846 196825784 582314869 872781227 764016650 706218949 548407198 656154598 798557250 407309922 462738343 275668416 409253491 608299863 443275287 787210986 991335923 635411250 421989400 452452036 24027417 873339043 114201885 821306521 812989188 465989916 929527326 380240437 610351115 324653207 677246157 574357384 274084241 773666031 427274959 654955445 476071163 131745039 832435274 107214779 956510602 808104168 848099829 868543266 418883294 718481117 91857816 689298505 690276367 942167497 184081110 210120800 748935481 929292545 246376255 153687063 883006952 32040243 990750023 200122296 90481090 781844157 731658081 596748132 489529556 511661140 952107283 951037431 45158922 574688630 948030154 592745155 780909892 123551979 862677 746122018 343033190 950348482 262676619 486819979 51452447 338389903 250756741 738135247 695632076 641259848 600285012 175743339 132179767 680027323 69234500 575091361 440468530 893866398 768622530 566285235 373060968 686795710 278636281 627839523 801229800 411300536 324634221 725943279 317375482 370814499 934450024 548937794 703567032 738129897 453694334 107405904 32890362 378399907 417589997 113976708 502990693 583203903 152376046 679989554 531150071 674867153 540151503 738884295 390650867 506055455 789243094 143753939 867726415 342904163 708386463 168678303 619870056 461620017 422940923 140729462 766276027 506106490 174077386 670597598 532891024 578556924 247280206 669253892 791317563 992076191 30574982 995123196 682078724 275216705 777952992 462559669 645388273 529934574 161651827 427874918 145744457 176992880 810594500 787668527 361732687 902561639 778794378 974799685 684178461 323797040 895289692 39418886 501317681 438143918 878518833 680130402 727181990 608930254 52195374 288939249 492838635 221748606 664360353 607306858 584064150 195429918 388343845 946064597 956545146 808587789 257130633 54354559 387917786 317805109 827440836 142536578 417144457 564319311 23966256 789813426 369027760 217470006 31111630 573770595 6019138 477299314 130728608 635463931 293129576 444994458 485923278 598035250 234873623 993368179 293733374 199024765 957764256 64940195 801780545 981406559 569532987 427295600 297832609 730833840 749761248 440839427 725324312 190811095 401685512 843000824 313213224 247298877 77188350 426406249 650030198 784344911 180904280 148735849 999285951 3551452 766369106 325185688 45963441 39655791 225532156 241595898 524763543 90131514 524414985 700828838 706887584 739939015 237422689 232487656 41866566 688948737 995049577 847072687 351294903 861327485 15671033 402538945 748490631 483186666 289318872 828326135 161001664 773657192 366007130 505169902 605010229 169461322 214083882 506256944 982905904 129873610 713655225 909549960 74559094 362332728 783385796 991065410 491506191 404268124 246687779 495439493 987987272 653087079 294714899 635692419 254888572 147345929 263854824 669210245 214789365 38402697 885245838 873198743 118394671 401783699 554626173 978282323 745444688 752592706 928531630 329634120 421656702 365183265 905463522 341302183 308192236 784103712 531927687 844087698 805294061 52085013 692041336 266629374 639740407 87458670 715779516 363558741 242556596 943649993 75481978 181316155 283808596 352781039 193599472 641872895 934619182 196743797 530286404 868709725 703440964 533007099 335891814 559936903 470566360 476363935 882245808 840157746 152157795 624028657 850422368 861408810 414069790 588481895 586325626 371586674 115518680 806828577 539832288 307315134 544630626 532344734 957685072 442905145 486495673 139681394 173302952 304136133 475395544 788038869 924805163 39639082 258493424 391496655 86743797 455761449 529339976 199943483 715458115 956854133 294566932 563688915 663246600 996114143 495775907 71019557 6667175 113664553 301737690 113499342 897846869 946559596 41250428 880596999 102748629 425610637 227235163 263334827 17606393 887805306 322377223 879593303 130868676 623202530 325496883 452367122 780371418 314054754 877661896 54550673 710850317 843100095 14441368 300264726 584815043 909853623 838796494 523152816 749832497 360892264 857869403 822856048 28982008 628077937 631383244 694699788 28503714 155231739 130570038 828634845 530416319 656788242 589699825 837268635 113810625 436463650 722195402 509842117 437784290 576501607 995640658 601500207 932653710 221842484 837327732 736627129 469938124 308185427 762671621 912089664 418526776 11900972 959640843 663691875 632841310 560275152 514314231 274674209 133534599 478427131 869128240 398955715 250315812 850230711 96856620 154540249 284319101 4643663 39504833 766734145 407332914 275688330 120427029 215011096 957774577 538375898 517766352 717167198 925505572 411685854 782262988 73146676 712445131 536350907 557890537 25781650 734140036 855530244 843073814 148499683 773403597 432181150 104966373 502750668 167899045 63073399 832599056 416779039 775286338 301290653 721293540 643057761 265900794 73189898 437921317 258593789 183304499 777268124 374353345 56194577 61861561 839717638 578912614 343909708 810444517 169971526 32602873 529294737 245335124 68983706 263804698 490406756 303862135 735964063 972957780 176985861 61388294 844981348 229845433 824782369 849391745 266110280 663447284 596066669 303762658 918259434 791831413 651522205 463920352 303117465 756356279 87497315 156075997 515269717 51449010 361403356 205034795 604187858 585071068 486095479 99465593 917766291 739261106 873608295 584166850 126497219 459908022 810514455 514940578 693344630 3311089 688464191 370344857 886454798 479724209 955898568 975192140 552964317 881786001 256189116 762347070 436904636 304820245 207467273 362241353 529886810 803212905 600654778 697417940 245700425 865817876 626498801 810881657 396515930 945825125 571586037 22140848 645860323 506740416 268144309 350042893 363909671 205661528 946400744 731979748 602843379 849955425 355733904 581517197 843262842 963025378 134075737 817599664 658797752 572996059 4192812 902412775 980778254 508800731 550697657 101542834 834412267 899837035 933308412 657219242 13977741 803496208 423132095 453277934 761842784 577051256 950746290 911550735 117803669 945686954 32907602 971449242 367570228 272018092 479873714 314685562 146849941 412195208 503350677 126590222 145626248 196944078 486355297 706798874 627507284 292115699 785415150 617795710 154227482 249602587 415040667 833429205 4110249 519788952 17934170 502828839 757155886 101729225 304167375 571231773 392115972 106612626 50882162 510566673 813184300 560358279 476901983 511048938 682138598 804922339 892485627 462300984 989618543 871528900 334772466 810007964 979935732 836005454 61261041 42545303 664372430 385972742 776656883 854721232 983353031 86627301 959865375 608912989 169680026 704888223 778798771 691842179 518352625 36067779 683928280 126302721 756029627 835365748 549583976 442499436 115103594 375905275